tensorflow简介

原创 2017年01月03日 20:45:02

你正在了解的的tensorflow项目可能会比 Android 系统更加深远地影响着世界!
缘起
2015年11月9日,Google发布人工智能系统TensorFlow并宣布开源。

机器学习作为人工智能的一种类型,可以让软件根据大量的数据来对未来的情况进行阐述或预判。如今,领先的科技巨头无不在机器学习下予以极大投入。Facebook、苹果、微软,甚至国内的百度。Google 自然也在其中。「TensorFlow」是 Google 多年以来内部的机器学习系统。如今,Google 正在将此系统成为开源系统,并将此系统的参数公布给业界工程师、学者和拥有大量编程能力的技术人员,这意味着什么呢?

打个不太恰当的比喻,如今 Google 对待 TensorFlow 系统,有点类似于该公司对待旗下移动操作系统 Android。如果更多的数据科学家开始使用 Google 的系统来从事机器学习方面的研究,那么这将有利于 Google 对日益发展的机器学习行业拥有更多的主导权。

基本使用

TensorFlow五种基本特性:

  1. 使用图 (graph) 来表示计算任务.
  2. 在被称之为 会话 (Session) 的上下文 (context) 中执行图.
  3. 使用 tensor 表示数据.
  4. 通过 变量 (Variable) 维护状态.
  5. 使用 feed 和 fetch 可以为任意的操作( operation) 赋值或者从其中获取数据.

计算图

TensorFlow 程序通常被组织成一个构建阶段和一个执行阶段. 在构建阶段, op 的执行步骤 被描述成一个图. 在执行阶段, 使用会话执行执行图中的 op.

例如, 通常在构建阶段创建一个图来表示和训练神经网络, 然后在执行阶段反复执行图中的训练 op.

构建图

构建图的第一步, 是创建源 op (source op). 源 op 不需要任何输入, 例如 常量 (Constant). 源 op 的输出被传递给其它 op 做运算.
tensorlfow显存管理
1. 按比例
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.4
session = tf.Session(config=config, …)
2.按需求增长(theano那种)或者干脆自适应然后自动增长:
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
session = tf.Session(config=config, …)

实战:构建卷积神经网络用于mnist数据分类

这里写图片描述

反向传播

这里写图片描述

  由神经元i连接到神经元j的突触权值的校正值Δwji(n)定义如下:

(Δwji(n))=(η)×(δj(n))×(jyi(n))

  • 如果神经元j是一个输出层节点,δj(n)=ej(n)φj(vj(n)),输出神经元j还是用了非线性激活函数,其实就是softmax激活函数。要不然没有倒数求?
  • 如果神经元j是一个隐藏层节点,δj(n)=φj(vj(n))kδk(n)wkj(n)

softmax函数

softmax(x)=normalize(xx)

softmax(x)i=exijexj

tf.random_normal([1,100],mean=0,stddev=1)
和tf.random_normal([1,100],mean=0,stddev=0.1)结果如下图。权重初始化时,方差尽量取小,0.1合适。
这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Tensorflow 分布式部署简介

tensorflow-0.8 的一大特性为可以部署在分布式的集群上,本文对tensorflow的分布式的相关文档进行了简单的翻译,并加入了一些个人的看法。...

TensorFlow的分布式学习框架简介

摘要:从0.8版本起,tensorflow不仅支持多GPU运算,而且还支持分布式计算,包括分布式多GPU计算。可以将其部署在分布式的集群上。本文主要目的是简要介绍tensorflow的分布式架构。来源...
  • lenbow
  • lenbow
  • 2016年08月05日 16:42
  • 5800

TensorFlow游乐场及神经网络简介

TensorFlow是谷歌2015年开源的主流深度学习框架,目前已在谷歌、优步(Uber)、京东、小米等科技公司广泛应用。本文将通过TensorFlow游乐场来简单介绍神经网络的主要功能以及计算流程。...

tensorflow 核心流程剖析 1-- 简介

这个博文是什么和不是什么对于大部分使用者来说,tensorflow就像一个大黑盒,我们平时接触的只是一层python API的封装。 概括来说,python API只是负责搭建好要运行的神经网络模型...

Tensorflow简介

1、Tensorflow作用 Tensorflow 对于机器学习英语来说就如同Linux、IOS等操作系统一样,一方面为用户构建上层应用提供接口,让用户以此为平台,开发出各种各样的应用产品,...

TensorFlow 简介及基本概念

一、TensorFlow 简介1、TensorFlow 的定义 Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow代表着张量从图象的一端流动到另一端计...
  • mzpmzk
  • mzpmzk
  • 2017年06月22日 22:53
  • 403

深度学习小白——TensorFlow(一)简介

我选择tensorFlow作为我学习的第一个神经网络框架,恰巧最近Tensorflow支持了windows,所以让我的学习变得更加便捷。 我的主要参考文章有 http://blog.csdn.net/...

Convolutional Networks卷积神经网络简介以及在TensorFlow上的实践

Convnet BackGround 人眼在识别图像时,往往从局部到全局局部与局部之间联系往往不太紧密我们不需要神经网络中的每个结点都掌握全局的知识,因此可以从这里减少需要学习的参数数量 ...

TensorFlow简介

初识TensorFlow2016年3月份,Google的围棋人工智能程序AlphaGo以4比1的大比分,战胜人类选手李世石,在全球成功引起广泛关注,引起了一波人工智能的热潮。从智能手机的语音助手,到相...

Tensorflow结构简介

Tensorflow: 1)使用graph来表示计算任务; 2))graph中的节点是op操作,获取的数据是Tensor,输出的数据也是Tensor,使用Tensor表示在op节点间流动的数据,可...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:tensorflow简介
举报原因:
原因补充:

(最多只允许输入30个字)