![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
tensorflow
brooknew
这个作者很懒,什么都没留下…
展开
-
模拟 Tensorflow 神经网络的训练
模拟一个Tensorflow 使用 平方差错误作为 loss 函数的例子,模拟的原始代码是基于https://github.com/cj0012/AI-Practice-Tensorflow-Notes/blob/master/tf.zip 的tf3_6.py值模拟第一轮的w1。import tensorflow as tfimport numpy as npdef forwardnn(xa, w...原创 2018-05-17 13:47:21 · 477 阅读 · 0 评论 -
关于 tf.get_variable()
参考 https://blog.csdn.net/u012436149/article/details/53696970/对同一个变量名使用get_variable()不止一次时必须放在 name_scope里面,并且要设定 reuse=tf.AUTO_REUSE,这样多次get_variable时采用的是同一个变量。import tensorflow as tf def fun():...原创 2018-10-18 14:05:12 · 1496 阅读 · 0 评论 -
Tensorflow 使用 pb 文件保存(恢复)模型计算图和参数
一 、 保存:graph_util.convert_variables_to_constants 可以把当前session的计算图串行化成一个字节流(二进制),这个函数包含三个参数:参数1:当前活动的session,它含有各变量 参数2:GraphDef 对象,它描述了计算网络 参数3:Graph图中需要输出的节点的名称的列表返回值:精简版的GraphDef 对象...原创 2018-10-15 20:08:22 · 4098 阅读 · 1 评论 -
Tensorflow 中计算图Graph,会话Session,变量和操作的关系
计算图描述一个问题的解决方案,包含变量/占位符(统称张量,数据节点)、操作(运算节点),程序开始运行时会有一个缺省的计算图来收纳这些节点,也可以通过tf.Graph() .as_default()来创建新的计算图作为缺省的计算图。一个Session对应一个计算图,在tf.Session( graph=传入的计算图)中传参数达到,如省略参数,就使用缺省的计算图。张量和运算属于计算图,要是没有活跃的计...原创 2018-10-16 11:59:22 · 3295 阅读 · 0 评论 -
name_scope 定义新的变量
tf.name_scope('scope1' ) 可以产生新的变量,这个块里定义的变量假若和以前的变量同名的话,在这之后的范围内,均是该变量有效。 import tensorflow as tfdef nameScopeTest() : v1 =tf.Variable( 1 , name = 'v1' ) v2 =tf.Variable( 20 , name = ...原创 2018-10-16 15:34:32 · 1569 阅读 · 0 评论 -
Tensorflow 实现迁移学习的例子
本文通过代码展示Tensorflow实现迁移学习。数据是使用程序产生的。该学习例子中,输入含两个分量,对应学生的单词量和阅读量,输出是英语分数。就是通过单词量、阅读量和英语分数的标注数据来学习一个模型,根据该模型从单词量和阅读量来预测英语分数。神经网络计算图如下,左分支是原始计算图,通过pb文件把该计算图算出来的网络参数和计算图保存,右边是迁移学习的计算图,它把左面学习出来的w1,b1读出来,以...原创 2018-10-17 13:42:17 · 2834 阅读 · 9 评论 -
如何清空 Tensorflow 默认图
tf.reset_default_graph() 可以清空默认图里所有的节点。下面代码transferLearnRetrainLayer2()里是要迁移学习(重用)tensorflowMain()训练出来的模型,见https://blog.csdn.net/brooknew/article/details/83107491(Tensorflow 实现迁移学习的例子)。若不包含上面这句的话,在t...原创 2018-10-17 14:42:05 · 4782 阅读 · 0 评论 -
tf.reduce_mean
https://blog.csdn.net/he_min/article/details/78694383转载 2018-10-29 17:04:49 · 439 阅读 · 0 评论 -
深度学习神经网络收敛的经验
本人训练过一些深度学习神经网络的例子,既有单纯全连接网络,又有卷积神经网络加全连接网络,也有通过迁移学习来构建的网络。有时会发散,也就是说有关参数越来越大,产生Nan溢出。表现为激活值(也就是前向网络的输出)和代价函数(loss、cost)溢出。基本上可以通过修改超参数来避免。1 全连接网络的乘法因子矩阵不能初始化为零,要初始化为一个满足正态分布的随机数集,标准差不能太大。训练mnist识别卷...原创 2018-10-30 16:11:44 · 9699 阅读 · 0 评论 -
反卷积,GAN
https://blog.csdn.net/gqixf/article/details/80403809 tf.nn.conv2d实现卷积 tf.nn.conv2d_transpose是怎样实现反卷积的https://blog.csdn.net/qq_35082030/article/details/73438109 一步一步实现自己的GAN AutoEncoder详解: ...转载 2018-11-16 11:43:47 · 448 阅读 · 0 评论 -
解卷积
import numpy as npimport tensorflow as tfdef convOne(): input = tf.Variable(tf.random_normal([1 ,3 ,3 ,5])) filter = tf.Variable(tf.random_normal([1 ,1 ,5 ,1])) op = tf.nn.conv2d(input...原创 2018-11-16 17:08:07 · 4901 阅读 · 0 评论 -
sigmoid_cross_entropy_with_logits的计算方法
sigmoid_cross_entropy_with_logits 可以衡量已标注过数据预测的正确度。比如一个(x,y)数据项,x表示输入取值为实数,y表示标注取值0或1。根据x算出一个概率p=1/(1+e^(-x)) 。 可以看到,当x=0时p=0.5 ,标注为1或0的概率各50%;x>0 时,p>0.5, x越大p越接近于0;x < 0 时,p<0.5。所以 L=ylo...原创 2018-11-30 17:08:02 · 4556 阅读 · 0 评论 -
Tensorflow 中滑动平均恢复到原变量的方法
通过saver将滑动平均 恢复到变量采用这样的方法:saver = tf.train.Saver( ema.variables_to_restore())或用用字典算法:saver = tf.train.Saver( {"w1/ExponentialMovingAverage":w1} )字典法其实还可以恢复到其他变量:saver = tf.train.Saver( {"w1/Expone...原创 2018-09-29 17:01:47 · 920 阅读 · 0 评论 -
tensorboard 的使用
https://blog.csdn.net/akadiao/article/details/79535638转载 2018-10-12 15:56:48 · 112 阅读 · 0 评论 -
将mnist数据集按标签起文件名输出为一系列png文件
mnist 是手写识别样本库,包含0到9手写图像和标签。有三个数据集:训练集(55000个)、验证集(5000个)和测试集(10000个)。含在四个文件里:train-images-idx3-ubyte.gz ,train-labels-idx1-ubyte.gz , t10k-images-idx3-ubyte.gz 和 t10k-labels-idx1-ubyte.gz 。可以使用下面的代...原创 2018-05-18 14:07:39 · 2394 阅读 · 0 评论 -
tensorflow 输出一个2x3 的矩阵
import tensorflow as tf#w1= tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))print("e2")with tf.Session() as sess : print( type( sess ) ) w1= tf.Variable([[1,2,3],[10,20,30]]) init_op =...原创 2018-05-13 11:09:58 · 3409 阅读 · 1 评论 -
mnist 手写识别教程
http://www.tensorfly.cn/tfdoc/tutorials/mnist_beginners.htmlMNIST机器学习入门这个教程的目标读者是对机器学习和TensorFlow都不太了解的新手。如果你已经了解MNIST和softmax回归(softmax regression)的相关知识,你可以阅读这个快速上手教程。当我们开始学习编程的时候,第一件事往往是学习打印"Hello W...转载 2018-05-20 11:43:12 · 1750 阅读 · 0 评论 -
softmax 的计算
softmax 是神经网络的一种激活函数。本文给出一种使用 tensorflow 计算 softmax 和直接使用 python 计算softmax 的例子。import tensorflow as tfimport math#a = [1.0,2.0,3.0,4.0]a = tf.Variable( [1.0,2.0,3.0,4.0] )y = tf.nn.softmax( a )se = tf...原创 2018-05-22 16:46:45 · 1322 阅读 · 0 评论 -
tensorflow 的argmax
Tensorflow 的 argmax 接口可以返回一阶以上张量最大值所对应的分量索引。比如 tensorflow.argmax ( [1,2,3,10,1]) 返回 10对应的索引3 。对于超过一阶的张量,需要指定要搜索的是第几维的元素,这个维是以0开始的。比如对于a = [[[10.0,25.0,3.0,4.0] , ] 这样一个张量,想找最里层的元素的最大值,可以tensorflow.a...原创 2018-05-24 09:33:33 · 3787 阅读 · 0 评论 -
Tensorflow 的 saver
Tensorflow 有一个用来存储Tensorflow.Variable 的类 saver,把变量存在文件里,称为checkpoint文件。初始化一个saver: sav = Tensorflow.train.Saver()保存变量使用:sav.save( se , checkPATH + checkFILE , global_step = i) checkPATH 是保存checkpoin...原创 2018-05-24 16:05:38 · 269 阅读 · 0 评论 -
机器学习的超参数是什么?
https://blog.csdn.net/u011501388/article/details/78447839转载 2018-06-07 10:06:03 · 1959 阅读 · 0 评论 -
tensorflow 的 control_dependencies函数
tensorflow.control_dependencies( tasklist )可以把tasklist里的操作作为预定操作。一般是这样使用:with tensorflow.control_dependencies( tasklist ) : trainOp = tensorflow.no_op() 然后执行这个 trainOp (即Tensorflow.Session(...原创 2018-06-07 16:48:40 · 866 阅读 · 0 评论 -
Logit 是怎么算的?
从知乎借几张图来描述,先看看odds 是什么? 然后Logit 就 是 Log of odds:原创 2018-09-06 16:03:24 · 12809 阅读 · 1 评论 -
softmax_cross_entropy_with_logits_v2 计算的是什么玩意?
Tensorflow 里通过softmax后再计算交叉熵有2个函数:1 softmax_cross_entropy_with_logits_v22 sparse_softmax_cross_entropy_with_logits均涉及两个参数,logits 和 labels ,logits 一般是神经网络的输出,是一个batch乘待分类类型数的二维张量。而labels是已知的标注,同样sh...原创 2018-09-06 17:05:57 · 6157 阅读 · 1 评论 -
基于 Lenet 的CNN网络对测试集以外(自己写)的手写数字识别问题
使用Lenet 的CNN模型训练mnist训练集,训练1万次,使用mnist测试集验证,准确率可达99.6%。然后识别mnist数据集以外的手写数字,效果不是太好,和手写数字在画面的位置和手写数字的大小有关。比如,这个不能正确识别:而移一下0的位置,并且把图弄小一点,就可以识别:...原创 2018-09-18 14:46:33 · 669 阅读 · 0 评论 -
tensorflow tf.train.batch
代码要改一下:get_batch_data()里把images和label写反了,将label, images = generate_data()改成这样:images,label = generate_data()。同时把随机数改成了固定数。epochs也改大了。import numpy as npimport tensorflow as tfdef generate_data(...转载 2019-09-06 11:19:03 · 145 阅读 · 0 评论