tensorflow的学习笔记--初步认识tensorflow
几个概念
TensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实现,由谷歌公司开发并开源免费使用。
在接触到的智能机器中,我们都需要先输入一段抽象的数据(语音,图片等),然后机器识别结果,输出我们想要的内容。
在机器诞生的前期,需要对机器进行训练和学习,使他有能力去认识
识别的样本,然后由样本来预测其他的结果。
在tensorflow
中使用张量
代表数据(可以简单理解为参数),使用计算图来搭建神经网络,使用会话执行计算图,优化对应的权重。
首先我们先介绍张量:
张量 多维数组和列表。对于不同维数的张量有不同的名称和表示方法:
标量:
一个数字,比如:1,2,3
向量:
一个数组,[1,2,3]
矩阵:
二位数组,[[1,2],[1,3],[2,3]]
张量:
多维数组
tensorflow
的数据的类型很多,与日常编程的数据类型也有点相似之处,先不一一介绍,先看看怎么使用tensorflow
(使用pip命令安装对应的依赖模块)
import tensorflow as ts
a=ts.constant([1.0,2.0])# 定义常数
b=ts.constant([3.0,4.0])
result=a+b
print(result)
打印结果:Tensor("add:0", shape=(2,), dtype=float32)
add
表示节点名0
第0个输出shape
维度(2,)
一维数组,长度为2dtype
数据类型
从上面的打印结果可以看出,result
不是一个具体的结果,而是一个具体的计算过程。
简单的模型
看一个简单的数据模型
其中:
具体使用tensorflow
实现代码如下:
import tensorflow as ts
x=ts.constant([[1.0,2.0]])# 一行两列
w=ts.constant([[3.0],[4.0]]) # 两行一列
y=ts.matmul(x,w)
print(y)
打印结果:Tensor("MatMul:0", shape=(1, 1), dtype=float32)
获得运算结果
计算图的值,需要用到sesion
,具体代码:
import tensorflow as ts
x=ts.constant([[1.0,2.0]])
w=ts.constant([[3.0],[4.0]])
y=ts.matmul(x,w)
with ts.Session() as sess:
print(sess.run(y))
打印结果:[[11.]]
具体的执行过程是:
tensorflow的学习笔记--初步认识tensorflow
http://blog.laofu.online/2019/03/28/2019-03-28-tensorflow-01/