无人驾驶系列——深度学习笔记:Tensorflow基本概念
随着无人驾驶的火爆,深度学习在无人驾驶中的应用受到广泛关注,我在工作中对此有所接触,因此进行了相关学习和整理,给大家大家可以参考。
TensorFlow深度学习框架
TensorFlow基本概念
1.TensorFlow计算模型——计算图
Tensor:张量,可以简单理解为多维数组
flow:流,张量间通过计算相互转化过程
TensorFlow是一个通过
计算图
形式来描述编程的系统。每一个计算都是计算图上的一个节点,节点之间的边描述了计算间的依赖关系。
计算图的使用
Tensorflow程序分为两个阶段:
定义计算图中的所有计算
执行计算
系统会自动维护一个默认的计算图,通过tf.get_default_graph函数获取当前默认的计算图
2.TensorFlow数据模型——张量
张量是Tensorflow管理数据的形式,功能上可以理解为多维数组。
0阶张量:标量(scalar)也就是一个数
第一阶张量:向量(vector),也就是一维数组
第n阶张量:n维数组。
张量中并未保存真正的数组,其保存如何计算这些数字的计算过程。例如:
一个张量主要保存3个属性:
名字(name):一个张量的唯一标识,同时给出张量如何计算的。通过
node:src_output
形式给出。node为节点名称,srcoutput为当前张量来为节点的第几个输出。例如:add:0表示result张量是计算节点add输出的第一个结果
维度(shape):shape=(2,)说明以为数组,数组长度为2
类型(type):每个张量会有唯一的类型
3.TensorFlow运行模型——会话
TensorFlow通过会话(Session)的方式执行定义好的运算,拥有并管理运行时的所有资源。 会话使用模式2种:
明确调用会话生成函数和关闭会话函数:
2.通过上下文管理器使用会话:
Tensorflow不会自动生成默认会话,需要手动指定
sess = tf.Session()with sess.as_default(): print(result.eval()
tf.Tensor.eval()函数计算一个张量的取值
4.神经网络参数和Tensorflow变量
tf.Variable(): 保存和更新网络中的参数
weights = tf.Variable(tf.random_normal([2,3], stddev=2)) 生成2x3矩阵,元素是均值为0,标准差为2的随机数
TensorFlow随机数生成函数
TensorFlow常数生成函数
tf.initialize_all_variables()函数初始化所有变量
小结
计算图是Tensorflow的计算模型,所有程序都会通过计算图的形式展现;
计算图每一个节点都是一个运算,计算图的边表示运算间的数据传递关系;
计算图保存运行每个运算的设备信息(CPU?GPU)以及运算间的依赖关系;
张量是TensorFlow的数据模型,所有运算的输入、输出都是张量;
张量本身不存储任何数据,只是对运算结果的引用
会话是Tensorflow的运算模型,其管理程序拥有的系统资源,所有的运算都通过会话执行
- 区块链学堂——公有链、私有链、联盟链、侧链、互联链
- 人工智能将让我们更擅长辩论
- ASP.NET路由系统实现原理:HttpHandler的动态映射
- 腾讯、卓健科技、恩泽医疗合力打造“互联网+智慧医院”
- 区块链,不是比特币(1)
- 小程序缓存 删不删你都该知道的事儿
- 32位 or 64位:Apache CloudStack系统VM架构选择
- Apache CloudStack系统VM架构选择
- ASP.NET MVC Controller激活系统详解:IoC的应用[下篇]
- 使用Docker的Alluxio群集设置
- 通过重建Hosting系统理解HTTP请求在ASP.NET Core管道中的处理流程[中]:管道如何处理请求
- ASP.NET MVC Model元数据及其定制: 初识Model元数据
- 如何在企业中融入机器学习
- How ASP.NET MVC Works?
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法