美文网首页
cs20si: tensorflow for research

cs20si: tensorflow for research

作者: laminaria | 来源:发表于2018-04-26 18:37 被阅读0次

    ref:CS 20SI: Tensorflow for Deep Learning Research_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

    我在b站学Tensorflow😂

    写在前面的碎碎念:

    打算在简书上记录一些自己的观影、读书的体验,和学习的收获经验。

    第一篇献给我敬仰的TensorFlow~希望project一切顺利!

    (还不太会用简书,以后慢慢熟练,争取有好看的排版(๑•̀ㅂ•́)و✧)

    (ctl+B竟然不能粗体 惊了!)

    前言:

    用tf在搭网络做项目,之前一直都是用啥学啥,一开始还行比较快;但是到了后来,需要refine的时候不清楚底层原理还是难办。

    这系列的视频我个人认为说得很不错,相比一些网上的博客教程,更生动好动,推荐!

    (主要记录一些我觉得需要注意的地方,和看视频的时候我感觉以后又补充上来的点,因此,这篇文估计不会对除我以外的其它人有太多帮助😂)

    终于开始正文!

    关于tf中的乘法

    视频中用的

    弹幕说是已经淘汰了,遂Google,结果如下:

    tf.multiply(x, y, name=None)

    Args:

    x: A `Tensor`. Must be one of the following types: `half`, `float32`, `float64`, `uint8`, `int8`, `uint16`, `int16`, `int32`, `int64`, `complex64`, `complex128`.

    y: A `Tensor`. Must have the same type as `x`.(注意,这里强调了这两个相乘的数要有相同的数据类型,不然就会报错)

    Returns x * y element-wise. 

    tf.matmul()将矩阵a乘以矩阵b,生成a * b。

    格式: tf.matmul(a, b, transpose_a=False, transpose_b=False, adjoint_a=False, adjoint_b=False, a_is_sparse=False, b_is_sparse=False, name=None) 

    参数: 

    a: 一个类型为 float16, float32, float64, int32, complex64, complex128 且张量秩 > 1 的张量。 

    b: 一个类型跟张量a相同的张量。 

    transpose_a: 如果为真, a则在进行乘法计算前进行转置。 

    transpose_b: 如果为真, b则在进行乘法计算前进行转置。 

    adjoint_a: 如果为真, a则在进行乘法计算前进行共轭和转置。 

    adjoint_b: 如果为真, b则在进行乘法计算前进行共轭和转置。 

    a_is_sparse: 如果为真, a会被处理为稀疏矩阵。 

    b_is_sparse: 如果为真, b会被处理为稀疏矩阵。 

    name: 操作的名字(可选参数) 

    返回值: 一个跟张量a和张量b类型一样的张量且最内部矩阵是a和b中的相应矩阵的乘积。 

    注意: 

    (1)输入必须是矩阵(或者是张量秩 >2的张量,表示成批的矩阵),并且其在转置之后有相匹配的矩阵尺寸。 

    (2)两个矩阵必须都是同样的类型,支持的类型如下:float16, float32, float64, int32, complex64, complex128。 

    引发错误: 

    ValueError: 如果transpose_a 和 adjoint_a, 或 transpose_b 和 adjoint_b 都被设置为真

    more graphic:当前面五行完成之后就会建立如图所示graph

    sess.run(op3) session运行op3这个节点的时候会反向找所需要的resource,

    所以,看起来只需要sess.run() 中只需要填最后一个node就行(当然,括号里也可以放整个Graph,不过具体怎么操作 还不太清楚)

     lazy tensor flow:useless node won't be executed  计算useless,将其加入fetch list  制定certain node运行在GPU or CPU上

    多个相互分离的model需要多个session

    每个session都会尝试抢走所有GPU资源

    创建no_default graph 可用这个语句还原原来的环境(为创建新的)graph

    总结:

    1. 主要内容:session graph

    相关文章

      网友评论

          本文标题:cs20si: tensorflow for research

          本文链接:https://www.haomeiwen.com/subject/wlumlftx.html