TensorFlow的安装与初步了解

今天终于有时间一探滕三福了,TensorFlow(腾三福)是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从流图的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。TensorFlow可被用于语音识别或图像识别等多项机器深度学习领域,对2011年开发的深度学习基础架构DistBelief进行了各方面的改进,它可在小到一部智能手机、大到数千台数据中心服务器的各种设备上运行。TensorFlow将完全开源,任何人都可以用。

说实话,今天安装TensorFlow的过程并不是很顺利,因为我犯了一个非常非常低级的错误。我的Ubuntu是ubuntu-16.04-desktop-i386,也就是说是32位的,但是TensorFlow目前只支持Ubuntu AMD64位系统,所以安装了两次一直报错:tensorflow-0.8.0-cp27-none-linux_x86_64.whl is not a supported wheel on this platform.如下图所示。

因为感觉之前对于TensorFlow有一定的了解,所以对于其安装的环境配置也没有仔细的看。所以出现这个问题我以为是由于Ubuntu本身的依赖库版本较低导致,所以就开始升级相关的依赖库,sudo apt-get install python-pip python-dev。问题依然没有解决,为此重新查看了TensorFlow的环境要求,看到仅支持ubuntu 64位时真实焕然大悟(这个错误真是。。。。。)。

所以重新安装了Ubuntu,以后的就很自然了,安装很简单,如下所示。

1. sudo apt-get install python-pip python-dev

2.sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/ tensorflow-0.8.0-cp27-none-linux_x86_64.whl

然后安装成功后做一个小测试,用numpy随机生成一些三维的三点然后用一个平面去拟合数据,具体如下:

import tensorflow as tf

import numpy as np

# 使用 NumPy 生成假数据(phony data), 总共 100 个点.

x_data = np.float32(np.random.rand(2, 100)) # 随机输入

y_data = np.dot([0.100, 0.200], x_data) + 0.300

# 构造一个线性模型

b = tf.Variable(tf.zeros([1]))

W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))

y = tf.matmul(W, x_data) + b

# 最小化方差

loss = tf.reduce_mean(tf.square(y - y_data))

optimizer = tf.train.GradientDescentOptimizer(0.5)

train = optimizer.minimize(loss)

# 初始化变量

init = tf.initialize_all_variables()

# 启动图 (graph)

sess = tf.Session()

sess.run(init)

# 拟合平面

for step in xrange(0, 201):

sess.run(train)

if step % 20 == 0:

print step, sess.run(W), sess.run(b)

# 得到最佳拟合结果 W: [[0.100 0.200]], b: [0.300]

原文发布于微信公众号 - 机器学习算法与Python学习(guodongwei1991)

原文发表时间:2017-03-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CSDN技术头条

基于OpenGL ES的深度学习框架编写

背景与工程定位 背景 项目组基于深度学习实现了视频风格化和人像抠图的功能,但这是在PC/服务端上跑的,现在需要移植到移动端,因此需要一个移动端的深度学习的计算框...

4398
来自专栏媒矿工厂

视频编码的GPU加速

前言 随着视频编解码技术的不断发展,视频逐步向着高清晰、高动态、高数据量的方向演进。这对视频编解码终端的计算能力提出了越来越高的要求。同时,在GPU领域,随着C...

6694
来自专栏新智元

【解放程序员】MIT“创世纪”机器学习新系统,自动生成补丁修复Bug

【新智元导读】当您辛辛苦苦写了大半年程序,终于要享受一下国庆长假的时候,别让 bug 把您的假期毁了。MIT 研究团队开发了一个称为“创世纪”的系统,能够对以前...

3725
来自专栏新智元

【深度学习Github 10万+源代码分析】Python是第三受欢迎语言

【新智元导读】编程语言是软件开发的主要工具。自20世纪40年代以来,已经有数百种语言被发明出来,每天大量的各种语言编写的代码活跃着代码库。本文作者从 GitHu...

3748
来自专栏AI科技大本营的专栏

详解CPU漏洞对机器学习的影响:几乎所有卷积层都受影响,QR分解降速37%

作者 | Mikel Bober-Irizar 翻译 | 刘畅 编辑 | Donna (备注:KPTI 在计算机中指 Kernel page-table iso...

2948
来自专栏磐创AI技术团队的专栏

Tensorboard详解(下篇)

2715
来自专栏AI研习社

让 TensorFlow 估算器的推断提速百倍,我是怎么做到的?

TensorFlow 估算器提供了一套中阶 API 用于编写、训练与使用机器学习模型,尤其是深度学习模型。在这篇博文中,我们描述了如何通过使用异步执行来避免每次...

1542
来自专栏CDA数据分析师

工具 | Python 和 R 数据分析/挖掘工具互查

在此总结一些在数据分析/挖掘中可能用到的功能,方便大家索引或者从一种语言迁移到另一种。如果大家已经熟悉python和R的模块/包载入方式,那下面的表查找起来相对...

2457
来自专栏慎独

Python科学计算和绘图入门

4404
来自专栏数据小魔方

think-cell chart系列9——折线图

今天跟大家分享think-cell chart系列的第9篇——折线图。 折线图是平时用的频率比较高的图表类型的了,下面教大家怎么在think-cell char...

5247

扫码关注云+社区

领取腾讯云代金券