概述
代码实现
tensorflow版本的hello world
# 引入tensorflow
import tensorflow as tf
# 创建一个常量
hw = tf.constant('hello world')
# 启动一个session会话
sess = tf.Session()
# 运行计算流图
print(sess.run(hw))
Tensorflow的编程模式
一般有两种编程模式
1.命令式编程 -> Torch 机器学习框架
2.符号式编程 -> Tensorflow
tensorflow的基础结构
图的基本构成
数据流图
Tensor(张量)
输入 输出
Operation(操作)
数据模型 -> Tensor(张量)
计算模型 -> Graph(图)
运行模型 -> Session(会话)
图(Graph)和会话(Session)
数据流图
data Flow Graph
数据 流 图
什么是图?
什么是会话?
python常用库Numpy的使用
Tensorflow和Numpy有一定的联系
在Tensorflow中的Tensor和Numpy的概念很相似,也有许多相似的API
Numpy它是一个科学计算库
官网: www.numpy.org
什么是Tensor(张量)
张量的维度
tensor的属性 -> 数据类型 dtype
-> 形状 Shape
几种Tensor
Constant[常量] -> 值不能改变的一种Tensor [张量]
Placeholder -> 占位符 先占住一个固定位置,之后往里面添加值的一种Tensor
Variable[变量] -> 值可改变
SparseTensor -> 稀疏张量 一种“稀疏”的Tensor,类似线性代数里的稀疏矩阵的概念 [在矩阵中,元素为0的数多于其他元素个数]
tensor 表示法
Tensor("Mul:0", shape=(), dtype=float32)
里面的是的意思是:名称 索引 图形 数据类型
图和会话原理及案例_1
import tensorflow as tf
c = tf.constant([[2, 3], [4, 5]], name="const_1", dtype=tf.int64)
print(c)
sess = tf.Session()
print(sess)
# TensorFlow中有默认的图
if c.graph is tf.get_default_graph():
print("c的计算图是tensorflow默认的")
图和会话及原理_2
# 图和会话
import tensorflow as tf
# 创建两个常量
# 一行两列
const_1 = tf.constant([[2, 2]])
# 两行一列
const_2 = tf.constant([[4],
[4]])
# 矩阵相乘
multiple = tf.matmul(const_1, const_2)
# 尝试用print输出
print(multiple)
# 创建session对象
sess = tf.Session()
result = sess.run(multiple)
print(result)
if const_1.graph is tf.get_default_graph():
print('const_1所在的图是当前上下文默认的图')
sess.close()
# 第二种方法创建和关闭session
# 使用tf.Session构建会话对象 with [上下文管理器]
with tf.Session() as sess:
result_2 = sess.run(multiple)
print('使用with打印的结果: ', result_2)
# sess.close()
可视化利器 TensorBoard
使用tensorboard读取并展示日志
** tensorboard --logdir=日志所在路径
summary
用于导出关于模型的精简信息的方法
可以使用tensorboard等工具访问这些信息
命名空间
name_scope
它很像一些编程语言(C++)的namespace,包含/嵌套的关系
模拟游乐园 playGround
JavaScript编写的网页应用
通过浏览器就可以训练简单的神经网络
训练过程可视化,高度可定制
官网:https://playground.tensorflow.org
常用的python库:Matplotlib
matplotlib的含义:
matrix 矩阵
plot 绘图
library 库
一个极其强大的python绘图库,官网:matplotlib.org
它可以用很少的代码即可绘制2D/3D,静态/动态等各种图形
一般用的是它的子包:PyPlot,提供类似MATLAB的绘图框架
Matplotlib一般绘图流程
准备数据
构建图像
tensorflow中的激活函数
主要作用:给神经网络加入非线性特性
使用原始代码实现激活函数
activation_func.py
import numpy as np
import matplotlib.pyplot as plt
import tensorflow as tf
# 创建输入数据 np.linspace -7到7的区间,等间隔分布180个点
x = np.linspace(-7, 7, 180)
# 激活函数的原始实现
def sigmoid(inputs):
y = [1 / float(1 + np.exp(-x)) for x in inputs]
return y
def relu(inputs):
y = [x * (x > 0) for x in inputs]
return y
def tanh(inputs):
y = [(np.exp(x) - np.exp(-x)) / float(np.exp(x) + np.exp(-x)) for x in inputs]
return y
def softplus(inputs):
y = [np.log(1 + np.exp(x)) for x in inputs]
return y
# 经过tensorflow 的激活函数处理的各个 Y 值
y_sigmoid = tf.nn.sigmoid(x)
y_relu = tf.nn.relu(x)
y_tanh = tf.nn.tanh(x)
y_softplus = tf.nn.softplus(x)
# 创建会话
sess = tf.Session()
# 运行
y_sigmoid, y_relu, y_tanh, y_softplus = sess.run([y_sigmoid, y_relu, y_tanh, y_softplus])
# 关闭会话
sess.close()
最后
以上就是包容橘子为你收集整理的Python Tensorflow框架入门-案例实战代码实现的全部内容,希望文章能够帮你解决Python Tensorflow框架入门-案例实战代码实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复