tensorflow
纸上得来终觉浅~
周围的人都比你厉害,你才会慢慢变强
展开
-
FixedLenFeature 使用
为了解析每个输入样本每一列数据,需要定义一个解析字典。tensorflow提供了三种方式:FixedLenFeature、VarLenFeature、FixedLenSequenceFeature,分别解析定长特征、变长特征、定长序列特征。FixedLenFeature() 函数有三个参数:(1)shape:输入数据的shape。(2)dtype:输入的数据类型。(3)defaul...原创 2019-07-02 17:17:59 · 12795 阅读 · 0 评论 -
Error:No dashboards are active for the current data set.
运行tensorboard打开网址:http://localhost:6006,报错如下图:我执行了两步操作修改这个错误:(1)之前的summary是我手动创建的,现在改用代码创建(2)仍然报错:ValueError: GetLogdirSubdirectories: path exists and is not a directory, /Volumes/XIAOHUIHUI/p...原创 2019-07-17 14:47:48 · 217 阅读 · 0 评论 -
踩坑 -- 用tf.train.batch获取批数据
获取批数据的代码如下:# 获取批数据def get_Batch(data, label, batch_size): input_queue = tf.train.slice_input_producer([data, label], shuffle=True) x_batch, y_batch = tf.train.batch(input_queue, batch_size...原创 2019-07-19 17:47:44 · 670 阅读 · 0 评论 -
tensorflow保存模型、恢复模型
1、模型训练(部分代码):X = tf.placeholder(tf.float64,X_data.shape,name='X')Y = tf.placeholder(tf.float64,Y_data.shape,name='Y')epoch_num = 500with tf.Session() as sess: sess.run(tf.global_variables_in...原创 2019-07-17 17:53:41 · 504 阅读 · 0 评论 -
tensor转换为numpy
假设data是tensor类型,有两种解决方式,可以将tensor类型转换为numpy类型:1、data.eval(session=sess)2、sess.run([data]) 这个函数可以将数据还原成原来的类型原创 2019-07-20 10:47:46 · 13087 阅读 · 3 评论 -
踩坑 -- 程序run卡住,变量必须定义在初始化之前
我的错误代码是这样的:# 获取批数据def get_Batch(data, label, batch_size): input_queue = tf.train.slice_input_producer([data, label], shuffle=True) x_batch, y_batch = tf.train.batch(input_queue, batch_size...原创 2019-07-20 19:51:36 · 730 阅读 · 0 评论 -
tf.variable_scope和tf.name_scope的区别
tensorflow创建变量有两种方式,tf.Variable()和tf.get_variable():(1)使用tf.Variable创建变量时,如果检测到命名冲突,系统会自己处理。(2)使用tf.get_variable()创建变量时,如果检测到命名冲突,系统会报错。tf.variable_scope和tf.name_scope的都是让变量可以有相同的命名。(1)tf.v...原创 2019-07-21 12:41:17 · 237 阅读 · 0 评论 -
tensorflow中 padding='SAME'和'VALID'的区别
"VALID"= without padding"SAME"= with zero padding原创 2019-08-06 09:32:38 · 2909 阅读 · 0 评论 -
tf.contrib.slim常用方法
slim是一个轻量级tensorflow库,封装了很多好用的api,常用方法如下:slim.arg_scope():为目标函数设置默认参数slim.l2_regularizer()slim.conv2d()slim.max_pool2d()slim.fully_connected()slim.dropout()slim.flatten():多维输入一维化,常用在从卷积层...原创 2019-08-10 17:00:34 · 632 阅读 · 0 评论 -
tensorflow遇到ImportError: Could not find 'cudart64_100.dll'错误解决
版权声明:本文为CSDN博主「精神抖擞王大鹏」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/qq_29027865/article/details/93236034当Tensorflow的版本>=1.13时,CUDA的版本需要是10.0,同时cudnn版本号需要大于7.4.1;安装c...转载 2019-08-31 11:44:15 · 653 阅读 · 0 评论 -
tf.boolean_mask()用法
定义:tf.boolean_mask(tensor,mask,name='boolean_mask',axis=None)参数:tensor: N-D tensor. mask: K-D boolean tensor, K <= N and K must be known statically. name: A name for th...原创 2019-09-03 11:06:17 · 1016 阅读 · 0 评论 -
可视化工具tensorboard使用
tensorboard是一个非常有用的可视化工具,使用前需要安装。基本操作如下:1、定义计算图2、创建FileWriter对象,用当前计算图初始化writer = tf.summary.FileWriter('./summary/', sess.graph)3、训练模型4、关闭FileWriter对象writer.close()运行后,在当前目录的summ...原创 2019-07-17 14:45:44 · 279 阅读 · 0 评论 -
TypeError: Can not convert a float64 into a Tensor or Operation
我的代码如下:_, loss, w = sess.run([optimizer,loss,W],feed_dict={X:X_data,Y:Y_data})报错:TypeError: Fetch argument 0.9993150684931502 has invalid type <class 'numpy.float64'>, must be a string or T...原创 2019-07-17 10:58:48 · 1601 阅读 · 0 评论 -
TFExampleDecoder 用法
TFExampleDecoder() 是一个数据解码器,完整类名:tf.contrib.slim.tfexample_decoder.TFExampleDecoder(keys_to_features, items_to_handlers),它主要是用来解码TFRecord中的tf.train.Examples。它有keys_to_features,和items_to_handlers两个字典...原创 2019-07-02 17:59:28 · 1120 阅读 · 0 评论 -
学习率衰减函数
训练前期学习率大,可以加快收敛速度,训练后期仍然使用较大的学习率,无法收敛到全局最小值,因此要减小学习率,保证后期平稳训练,更加接近最优点。可以人为经验指定,也可以随着迭代自适应衰减。本文介绍一些 tensorflow 常用的学习率衰减方法。1、指数衰减def exponential_decay(learning_rate, # 初始学习率global_step, # 当前...原创 2019-07-04 16:07:16 · 3119 阅读 · 0 评论 -
优化器函数
训练过程中的本质就是在最小化损失,在定义损失之后,接下来就是训练网络参数了,优化器可以让神经网络更快收敛到最小值。本文介绍几种 tensorflow 常用的优化器函数。1、GradientDescentOptimizer梯度下降算法需要用到全部样本,训练速度比较慢。tf.train.GradientDescentOptimizer(learning_rate,use_l...原创 2019-07-05 14:48:04 · 628 阅读 · 0 评论 -
tensorflow中的logging
tf.logging.set_verbosity(tf.logging.INFO) 可以为将被记录的日志设置入口,在程序开头设置。tensorflow中的日志类型有:debug < info < warning < error1 --显示所有日志(默认)2 -- 显示info及以上级别3 -- 显示warning及以上级别4 -- 显示error及以上级别...原创 2019-07-06 09:36:05 · 1781 阅读 · 0 评论 -
tensorflow损失函数
1、softmax交叉熵损失函数tf.nn.softmax_cross_entropy_with_logits(logits= Network.out,labels= Labels_onehot)参数为网络最后一层的output和经过ont-hot编码的lables数据,softmax把一个k维的真实值向量,映射成一个每个值都是0-1区间的k维向量,可以取权重最大的一维进行多分类的任务。...原创 2019-07-06 10:39:15 · 318 阅读 · 0 评论 -
tf.summary用法
summary作用:在tensorboard中直观展示训练信息。# 初始化summariessummaries = set(tf.get_collection(tf.GraphKeys.SUMMARIES))# 添加summarysummaries.add(tf.summary.scalar('learning_rate', learning_rate))# merge所有summa...原创 2019-07-06 11:11:19 · 1045 阅读 · 0 评论 -
滑动平均 tf.train.ExponentialMovingAverage
滑动平均用来估计变量的局部平均值,使得变量的更新与一段时间内的历史取值有关,得到的值在图像上更加平缓光滑,抖动性更小,不会因为某次的异常取值而使得滑动平均值波动很大。在训练过程快结束时,模型早已经训练完成,正处于抖动阶段,而滑动平均相当于将最后的n次训练过程的抖动进行了平均,这样得到的权重会更加健壮。tensorflow中提供了滑动平均函数:tf.train.ExponentialMov...原创 2019-07-06 13:16:47 · 445 阅读 · 0 评论 -
tf.control_dependencies和tf.GraphKeys.UPDATA_OPS
tf.control_dependencies 该函数保证其辖域中的操作必须要在该函数所传递的参数中的操作完成后再进行。如:tf.control_dependencies([update_op])tf.GraphKeys.UPDATA_OPS 是计算图中内置的一个集合,会保存一些需要在训练操作之前完成的操作,配合tf.control_dependencies函数使用。...原创 2019-07-06 13:39:59 · 234 阅读 · 0 评论 -
tfrecord格式文件生成和读取
一般情况下的数据集分为train、test等多个文件夹,每个文件夹有很多个文件,依次读取非常不方便。tensorflow的tfrecord数据文件是一种将图像数据和标签统一存储的二进制文件,只需一次性加载一个二进制文件,就可以实现快速的复制,移动,读取,存储。tfrecord格式文件生成和读取地址:https://www.jianshu.com/p/b480e5fcb638...转载 2019-07-06 14:03:18 · 1075 阅读 · 0 评论 -
tf.Variable和tf.get_varisble
tf.Variable和tf.get_varisble都可以创建一个变量tf.Variable通过变量名标识一个变量tf.get_varisble通过参数name标识一个变量,tf.get_variable的variable_scope,可以让一个模型使用另一个模型的变量。如:with tf.variable_scope('test1'): get_var1 = tf.ge...原创 2019-07-16 16:49:54 · 151 阅读 · 0 评论 -
TypeError: 'module' object is not callable
import module 方式引入模块,使用共享变量时,要使用module.变量名。from module import * 方式引入模块,使用共享变量时,直接使用变量名。在我的例子中,其中LSTMRNN是我自己编写的模块,import LSTMRNN model = LSTMRNN(TIME_STEPS, INPUT_SIZE, OUTPUT_SIZE, CELL_SI...原创 2019-07-24 10:07:24 · 605 阅读 · 0 评论