TensorFlow实战第一课(session、Variable、Placeholder、Activation Function)
莫烦tensorflow教学
1.session会话控制
Tensorflow 中的Session
, Session
是 Tensorflow 为了控制,和输出文件的执行的语句. 运行session.run()
可以获得你要得知的运算结果, 或者是你所要运算的部分。
我们首先尝试将两个矩阵相乘并输出结果
- import tensorflow as tf
- # create two matrixes
- matrix1 = tf.constant([[3,3]])
- matrix2 = tf.constant([[2],
- [2]])
- product = tf.matmul(matrix1,matrix2)
因为product不是直接计算的步骤,所以我们会使用session来激活码product并得到计算结果。
有两种形式使用会话控制session。
- # method 1
- sess = tf.Session()
- result = sess.run(product)
- print(result)
- sess.close()
- # [[12]]
- # method 2
- with tf.Session() as sess:
- result2 = sess.run(product)
- print(result2)
- # >>[[12]]
2.Variable 变量
看得莫烦的tensorflow课程 讲的很有趣,有兴趣的同学也可以去看看
tensorflow中 只有定义了某字符串是变量,他才是变量,这一点与python不同
定义语法:state = tf.Variable( )
- import tensorflow as tf
- state = tf.Variable(0, name='counter')
- # 定义常量 one
- one = tf.constant(1)
- # 定义加法步骤 (注: 此步并没有直接计算)
- new_value = tf.add(state, one)
- # 将 State 更新成 new_value
- update = tf.assign(state, new_value)
定义完变量后,最终要的是初始化!init = tf.initialize-all_variables()
到这里变量还没有激活,需要在sess中 sess.run(init) 激活init这一步
- # 如果定义 Variable, 就一定要 initialize
- # init = tf.initialize_all_variables() # tf 马上就要废弃这种写法
- init = tf.global_variables_initializer() # 替换成这样就好
- # 使用 Session
- with tf.Session() as sess:
- sess.run(init)
- for _ in range(3):
- sess.run(update)
- print(sess.run(state))
注意:直接print(state)是不可以的
应该把sess的指针指向state再进行print才能得到想要的结果!
3.Placeholder 传入值
placeholder是tensorflow中的占位符,暂时存储变量
tensorflow如果想从外部传入数据,那么就需要tf.placehoder(),然后以这种形式传输数据
sess.run(***,feed_dict={input:*****})
- #placeholder
- import tensorflow as tf
- input1 = tf.placeholder(tf.float32)
- #大部分情况 只能处理float32数据形式
- input2 = tf.placeholder(tf.float32)
- output = tf.multiply(input1,input2)
- with tf.Session() as sess:
- print(sess.run(output,feed_dict={input1:[7],input2:[2]}))
传值工作交给sess.run() ,需要穿的值放在了feed_dict={},并一一对应每个input
4.激励函数Activation Function
激励函数运行时激活神经网络中某一部分神经元,将激活信息向后传入下一层神经系统。
激励函数的实质是非线性方程。tensorflow的神经网络里面处理较为复杂的问题时都会需要运用激励函数
TensorFlow实战第一课(session、Variable、Placeholder、Activation Function)的更多相关文章
- tensorflow基础架构 - 处理结构+创建一个线性回归模型+session+Variable+Placeholder
以下仅为自己的整理记录,绝大部分参考来源:莫烦Python,建议去看原博客 一.处理结构 因为TensorFlow是采用数据流图(data flow graphs)来计算, 所以首先我们得创建一个数据 ...
- TensorFlow实战第二课(添加神经层)
莫烦tensorflow实战教学 1.添加神经层 #add_layer() import tensorflow as tf def add_layer(inputs,in_size,out_size, ...
- 1.windows-oracle实战第一课
一.oracle是目前最流行的数据库之一,功能强大.性能卓越.学习要有信心.oracle也做软件,不仅仅是数据库.比如ERP(企业资源计划,用友.金蝶) 二.目前的数据库 相对而言: ...
- centos mysql 实战 第一节课 安全加固 mysql安装
centos mysql 实战 第一节课 安全加固 mysql安装 percona名字的由来=consultation 顾问+performance 性能=per con a mysql ...
- Tensorflow学习笔记02-Session,Variable,placeholder
Session会话控制 使用tensorflow创建两个矩阵,并使其相乘 matrix1=tf.constant([[3,3]]) matrix2=tf.constant([[2], [2]]) pr ...
- CODING DevOps 微服务项目实战系列第一课,明天等你
CODING DevOps 微服务项目实战系列第一课<DevOps 微服务项目实战:DevOps 初体验>将由 CODING DevOps 开发工程师 王宽老师 向大家介绍 DevOps ...
- C语言基础课程 第一课 Linux环境配置小实战httpserver
网段我需要改成如下 10.重启网络服务 并且查看ip 11. 打开windows的浏览器数人Linux的IP地址出现REDHAT的欢迎界面 11.进入目录 12.编写一个简单的html脚本 13 ...
- TensorFlow实战之实现自编码器过程
关于本文说明,已同步本人另外一个博客地址位于http://blog.csdn.net/qq_37608890,详见http://blog.csdn.net/qq_37608890/article/de ...
- TensorFlow 实战之实现卷积神经网络
本文根据最近学习TensorFlow书籍网络文章的情况,特将一些学习心得做了总结,详情如下.如有不当之处,请各位大拿多多指点,在此谢过. 一.相关性概念 1.卷积神经网络(ConvolutionNeu ...
随机推荐
- docker下安装运行mysql的过程以mysql5.7为例
一.查找mysql资源 docker search mysql 其实这步顶多是看看有哪些mysql资源,除非你自己commit过一个特定的版本,否则直接执行下一步 二.安装mysql docker p ...
- 题解 【NOI2010】超级钢琴
[NOI2010]超级钢琴 Description 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以弹奏出n个音符,编号 ...
- Spring Security 解决X-Frame-Options deny
错误信息: Refused to display 'https://github.com/hwclass/awesome-sound' in a frame because it set 'X-Fra ...
- JVM(二),Java怎样实现一次编译到处运行(平台无关性)
二.Java怎样实现一次编译到处运行(平台无关性) 1.java平台无关性原理 Java源码首先被编译成字节码,再由不同平台的JVM进行解析,JAVA语言在不同的平台上运行时不需要进行重新编译,Jav ...
- HDU - 6183 暴力,线段树动态开点,cdq分治
B - Color itHDU - 6183 题目大意:有三种操作,0是清空所有点,1是给点(x,y)涂上颜色c,2是查询满足1<=a<=x,y1<=b<=y2的(a,b)点一 ...
- Spring Boot教程(三十八)使用MyBatis注解配置详解(1)
之前在Spring Boot中整合MyBatis时,采用了注解的配置方式,相信很多人还是比较喜欢这种优雅的方式的,也收到不少读者朋友的反馈和问题,主要集中于针对各种场景下注解如何使用,下面就对几种常见 ...
- JavaWeb_(Hibernate框架)Hibernate中对象的三种状态
对象的三种状态 瞬时状态: 实体 没有id.没有与session关联 持久化状态: 特点:持久化状态对象的任何改变都会同步到数据库中 游离态[也称作托管态]: 实体 有id,没有与session关联 ...
- Oracle 表空间扩容
1 系统表空间扩容 注:表空间监测或扩容方式很多,这里只提供一种方便使用的方法 1)查询SQL 注:需要输入百分比,如:90,就可查出使用率超过90%的表空间, with t as (select b ...
- Java-JVM 栈帧(Stack Frame)
一.概述 栈帧位置 JVM 执行 Java 程序时需要装载各种数据到内存中,不同的数据存放在不同的内存区中(逻辑上),这些数据内存区称作运行时数据区(Run-Time Data Areas). 其中 ...
- 如何使用word发布blog
今天使用onenote的时候无意中点击了发布到博客选项,知道了word可以直接发布博客.但一直找不到选项所以google了一番,最终找到了.帮助连接 这里 这篇博客主要记录一下截图. 1. 通过one ...