Tensorflow学习
老司机的诗和远方
非1即0!
展开
-
ValueError: setting an array element with a sequence.
这个问题主要出现在于要将list转换为numpy.array做一些数学计算时候,出现list的某一个维度上元素的个数不一致,就会转换失败。解决方法;请确保list的shape没问题,他能够有正常的shape表示,也就是是一个矩阵而不是一个序列...原创 2018-07-05 09:58:17 · 44710 阅读 · 0 评论 -
tf卷积层外加BN实现
def conv_layer(inpt, filter_shape, stride): out_channels = filter_shape[3] filter_ = weight_variable(filter_shape) conv = tf.nn.conv2d(inpt, filter=filter_, strides=[1, stride, stride, 1]...原创 2018-02-10 21:39:30 · 1458 阅读 · 0 评论 -
深度网络训练小数据集技巧
小数据集训练深度网络的小技巧使用小数据集训练卷积神经网络时最大的缺点就是很容易导致过拟合问题。因此在这种情况下,常常会采用面几种方法:1.per-training:微调对于没有足够训练样本时初始化深度网络参数的一个有效的方法,一般都会选取与之具有相似结构的网络模型训练结果进行微调。(类似于迁移学习)2.data augmentation:使用data augmentation通过一些操转载 2018-02-05 21:13:29 · 1607 阅读 · 0 评论 -
tf的pad函数(填充)
今天用到pad函数,看文档看了老半天,后面终于弄懂了。以下是本人的理解总结文档的内容:# 't' is [[1, 2, 3], [4, 5, 6]].# 'paddings' is [[1, 1,], [2, 2]].# 'constant_values' is 0.# rank of 't' is 2.pad(t, paddings, "CONSTANT") ==> [[0, 0, 0, ...转载 2018-02-10 18:16:29 · 1238 阅读 · 0 评论 -
inceptionV4及其tf代码
1. inception v4图1.1 inception v4 网络结构图 图1.2 图1.1的stem和Inception-A部分结构图 图1.3 图1.1的Reduction-A和Inception-B部分结构图 图1.4 图1.1的Reduction-B和Inception-C部分结构图import osimport numpy as npimport tensorflow as t...转载 2018-02-10 16:54:00 · 4234 阅读 · 2 评论 -
tf图像相关处理
"""图像的预处理过程"""import osimport matplotlib.pyplot as pltimport tensorflow as tf# 读取数据def get_decode_image(file_name, dtype=tf.uint8, has_eval=False): # 读取原始数据 image_raw_data = tf.gfile....原创 2018-02-10 13:41:10 · 1853 阅读 · 0 评论 -
python优美的语法结构欣赏
[fn for fn in os.listdir(dirpath) if fn.endswith(image_ext)]列表初始化用for,同时还带上了条件判断!简单到哭,美得不要不要的原创 2018-02-10 11:25:52 · 675 阅读 · 0 评论 -
tf线程管理器
"""提供了tf.train.Coordinator和tf.train.QueueRunner两个类来完成“多线程协同”的功能"""import tensorflow as tfimport threadingimport time"""tf.train.Coordinator主要用于协同多个线程一起停止,并提供了should_stop,request_stop,join三个函数...原创 2018-02-10 11:11:26 · 595 阅读 · 0 评论 -
tf队列使用
"""队列和变量类似,都是计算图上有状态的节点,修改队列状态的操作主要有Enqueue、EnqueueMany、Dequeue。多个线程可以同时向一个队列中写元素,或者从一个队列中读元素。"""import tensorflow as tf# 最基本的例子def fifo_queue(): # 创建一个队列,指定最多可以保存的元素数量和类型 queue = tf....原创 2018-02-10 11:03:20 · 455 阅读 · 0 评论 -
TFRecords学习
概述关于Tensorflow读取数据,官网给出了三种方法:供给数据(Feeding): 在TensorFlow程序运行的每一步, 让Python代码来供给数据。从文件读取数据: 在TensorFlow图的起始, 让一个输入管线从文件中读取数据。预加载数据: 在TensorFlow图中定义常量或变量来保存所有数据(仅适用于数据量比较小的情况)。对于数据量较小而言,可能一般选择直接将数转载 2018-01-20 14:38:29 · 352 阅读 · 0 评论 -
tensorflow如何使用训练好的模型做测试
方法1保存 1、定义变量 2、使用saver.save()方法保存 import tensorflow as tf import numpy as np W = tf.Variable([[1,1,1],[2,2,2]],dtype = tf.float32,name='w') b = tf.Variable([[0,1,2]],dtype = tf.float32原创 2018-01-27 11:18:58 · 43326 阅读 · 1 评论 -
tensorflow训练的batch制作方式
对于数据量较小而言,可能一般选择直接将数据加载进内存,然后再分batch输入网络进行训练(tip:使用这种方法时,结合yield 使用更为简洁,大家自己尝试一下吧,我就不赘述了)。但是,如果数据量较大,这样的方法就不适用了,因为太耗内存,所以这时最好使用tensorflow提供的队列queue,也就是第二种方法 从文件读取数据。对于一些特定的读取,比如csv文件格式,官网有相关的描述,在这儿我介绍转载 2018-02-02 14:40:46 · 2505 阅读 · 0 评论 -
手撕CNN常见模型
最近在折腾CNN常见的几个网络模型以及相关源码的解读,以下是这段时间对这些网络的认识总结。谨用文字描述如下,望能对你有所帮助。1、Alexnet是一个7层网络,5层卷积,2层全连接4096神经元。包含特色ReLu、LRN、pool。同时该网络卷积层采用的是一种并行结构,并行运算使得计算更加快速!2、VGGNet根据卷积层数不同,有几个变种,经典有VGG16和VGG19,是AlexNet更深的表现,...原创 2018-02-10 20:39:31 · 707 阅读 · 0 评论 -
ckpt2npy和npy2ckpt转换
1、ckpt2npy转换import tensorflow as tfimport numpy as npimport sysfrom model import AlexNetModel# Edit just theseFILE_PATH = '/Users/dgurkaynak/Projects/marvel-finetuning/training/alexnet_201711转载 2018-02-05 22:10:48 · 5728 阅读 · 1 评论 -
tensorflow 指定版本安装
sudo pip2 install tensorflow-gpu==1.2制定版本安装原创 2018-07-02 20:29:09 · 1608 阅读 · 0 评论 -
TensorFlow实现对图像的预处理
图像翻转 tf.image.flip_up_down:上下翻转 tf.image.flip_left_right:左右翻转 tf.image.transpose_image:对角线翻转 除此之外,TensorFlow还提供了随机翻转的函数,保证了样本的样本的随机性: tf.image.random_flip_up_down:随机上下翻转图片 tf.image.random_flip_left_...转载 2018-05-04 16:21:13 · 765 阅读 · 0 评论 -
full paper、short paper、poster、oral & transaction、Conference、Workshop:
full paper、short paper、poster、oral:而CV界的会议一般分三级:oral,需要作者准备PPT上台进行presentation;poster,作者贴一张海报,如果有人感兴趣就会到该作者的墙报前面讨论;workshop,一般都是某些大牛觉得该领域有哪些方面是研究热点,就向会议chair申请开一个独立的研讨会,值得注意的是workshop是独立审稿的。总的来说,这些都算该...转载 2018-02-14 20:04:38 · 5624 阅读 · 0 评论 -
tf打印调试信息方法
Tensorflow之调试(Debug)及打印变量参考资料:https://wookayin.github.io/tensorflow-talk-debugging几种常用方法:1.通过Session.run()获取变量的值2.利用Tensorboard查看一些可视化统计3.使用tf.Print()和tf.Assert()打印变量4.使用Python的debug工具: ipdb, pudb5.利用...转载 2018-02-14 09:59:41 · 1701 阅读 · 0 评论 -
tf创建tfRecord文件
项目详细请猛戳我的github地址,直接可运行:https://github.com/SamXiaosheng/create-tfRecord下面是main文件代码和create tfRecord文件:import tensorflow as tffrom tfRecord import *import cv2FLAGS = tf.app.flags.FLAGStf.app.f原创 2018-02-07 16:23:32 · 825 阅读 · 0 评论 -
tf实现在上次训练结果上继续训练
代码很简单,只需要执行下面,自会自动将参数以及计算图恢复,准备计算。ckpt = tf.train.get_checkpoint_state(FLAGS.logs_dir)if ckpt and ckpt.model_checkpoint_path:saver.restore(sess, ckpt.model_checkpoint_path)#自动恢复model_checkpoint_pa...原创 2018-02-07 15:52:29 · 6338 阅读 · 2 评论 -
tf反卷积及其使用
函数接口:tf.nn.conv2d_transpose(value, filter, output_shape, strides, padding="SAME", data_format="NHWC", name=None)这里必须要注意参数的设置:除去name参数用以指定该操作的name,与方法有关的一共六个参数:第一个参数value:指需要做反卷积的输入图像,它要求是一个Ten原创 2018-02-07 14:10:53 · 1254 阅读 · 0 评论 -
tf三种损失函数
昨天复习几种常见loss的时候想起在tensorflow里使用常见loss需要注意的地方,主要是三个方法:1、tf.nn.sigmoid_cross_entropy_with_logits2、tf.nn.softmax_cross_entropy_with_logits3、tf.nn.sparse_softmax_cross_entropy_with_logits打不开的话可能需要转载 2018-02-05 20:00:58 · 2068 阅读 · 0 评论 -
npy2tfmodel
# Copyright 2017 Chenxi Liu. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in complian转载 2018-02-06 11:00:13 · 486 阅读 · 0 评论 -
caffemodel2npy
# Copyright 2017 Chenxi Liu. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in complian转载 2018-02-06 10:57:21 · 4719 阅读 · 0 评论 -
deeplabV1&deeplabV2
DeepLab V1:SEMANTIC IMAGE SEGMENTATION WITH DEEP CONVOLUTIONALNETS AND FULLY CONNECTED CRFSBackground: CNN的一个特性是invariance(不变性),这个特性使得它在high-level的计算机视觉任务比如classification中,取得很好的效果。但是在sem转载 2018-02-06 10:23:25 · 1259 阅读 · 0 评论 -
tf.get_variable和tf.Variable函数差别
在tensorflow中提供了tf.get_variable函数来创建或者获取变量。当tf.get_variable用于创建变量时,则与tf.Variable的功能基本相同。#定义的基本等价v = tf.get_variable("v",shape=[1],initializer.constant_initializer(1.0))v = tf.Variable(tf.constant转载 2018-01-07 22:04:38 · 3193 阅读 · 0 评论 -
tf.train.shuffle_batch和tf.train.batch接口说明
capacity是队列的长度 min_after_dequeue是出队后,队列至少剩下min_after_dequeue个数据 假设现在有个test.tfrecord文件,里面按从小到大顺序存放整数0~100 1. tf.train.batch是按顺序读取数据,队列中的数据始终是一个有序的队列, 比如队列的capacity=20,开始队列内容为0,1,..,19=>读取10条记录后,队列剩转载 2018-01-22 10:33:18 · 1232 阅读 · 0 评论 -
win7配置tensorflow-gpu版本出现问题解决
安装cuda8.0以及cudnn6.0之后,使用的Python管理工具是winpython,安装好tensorflow-gpu版本之后但是在pycharm下是使用老是弹出显卡问题!老是弹出一个窗口 今天下载驱动人生,让你不在怀疑人生,更新了显卡驱动,重启了下就可以跑mnist了,好开心!好像哭! 讲真还是建议使用win10,没有这儿鬼问题原创 2017-12-28 17:14:19 · 514 阅读 · 0 评论 -
提高tf代码效率
转载:http://blog.csdn.net/hjimce/article/details/56292982转载 2017-09-08 14:22:49 · 410 阅读 · 0 评论 -
tf官网进不去解决方案
相信很多搞深度学习的小伙伴最近都为访问不了 TensorFlow官网 而苦恼吧!虽然网上也给出了一些方法,但是却缺少一个很重要的步骤。接下来,我就给大家讲解一个完整的过程,大牛绕过。1、更改Hosts 在Windows的host文件(位置在C:\Windows\System32\drivers\etc\hosts)末尾添加如下内容:#TensorFlow start 6转载 2017-09-03 20:54:27 · 16232 阅读 · 0 评论 -
tensorflow:ConfigProto&GPU
tf.ConfigProto一般用在创建session的时候。用来对session进行参数配置with tf.Session(config = tf.ConfigProto(...),...)#tf.ConfigProto()的参数log_device_placement=True : 是否打印设备分配日志allow_soft_placement=True : 如果你指定的设备不存在,允许TF自转载 2017-08-26 09:49:31 · 577 阅读 · 0 评论 -
ananconda安装tensorflow-gpu问题
在anaconda的navigator里面创建一个Python3.5环境,然后直接到安装包里面输入tensorflow检索,会出现tensorflow和tensorflow-gpu,前者是cpu版本,直接点击安装gpu版本的tensorflow,会弹出一个安装列表,包含cudann6.0以及cudatoolkit8.0。不过我安装之后使用的时候出现问题,主要报的错误是无法加载。尝试下面的错误修正:原创 2017-08-25 16:45:06 · 2708 阅读 · 0 评论 -
Python 解决 :NameError: name 'reload' is not defined 问题
Python 解决 :NameError: name 'reload' is not defined 问题解决:NameError: name 'reload' is not defined 问题对于 Python 2.X:import sysreload(sys)sys.setdefaultencoding("utf-8")1对于 Python 3.3:import转载 2017-08-15 17:16:38 · 3613 阅读 · 0 评论 -
如何应对训练的神经网络不工作?
I. 数据集问题1. 检查你的输入数据检查馈送到网络的输入数据是否正确。例如,我不止一次混淆了图像的宽度和高度。有时,我错误地令输入数据全部为零,或者一遍遍地使用同一批数据执行梯度下降。因此打印/显示若干批量的输入和目标输出,并确保它们正确。2. 尝试随机输入尝试传递随机数而不是真实数据,看看错误的产生方式是否相同。如果是,说明在转载 2017-08-15 16:44:16 · 791 阅读 · 0 评论 -
tensorflow语法学习
摘要:本文主要对tf的一些常用概念与方法进行描述。为‘Tensorflow一些常用基本概念与函数’系列之二。1、tensorflow的基本运作为了快速的熟悉TensorFlow编程,下面从一段简单的代码开始:import tensorflow as tf #定义‘符号’变量,也称为占位符 a = tf.placeholder("float") b = tf.placehold转载 2017-08-11 14:41:30 · 1630 阅读 · 0 评论 -
TensorFlow常用函数
转载:http://blog.csdn.net/wuqingshan2010/article/details/71056292摘要:本文介绍了tensorflow的常用函数。1、tensorflow常用函数TensorFlow 将图形定义转换成分布式执行的操作, 以充分利用可用的计算资源(如 CPU 或 GPU。一般你不需要显式指定使用 CPU 还是 GPU, TensorFlow 能转载 2017-08-09 22:19:07 · 598 阅读 · 0 评论 -
TensorFlow初入
介绍TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可广泛用于其他计算领域。它是谷歌基于DistBelief进行研发的第二代人工智能学习系统。2015年11月9日转载 2017-08-09 22:04:35 · 431 阅读 · 0 评论 -
TensorFlow学习之会话Sesstion()和交互会话InterativeSesstion()
今天学习tensorflow时发现除了Session()外,竟然还有个InteractiveSession()。这就让我这个初学者又开始抓耳挠腮的想了,这两者有什么不同呢,还要设置两个会话类型。现在将其两者的差别简单写一下,后期根据自己的学习状态及理解会不断的更新。在教学网站上看到一段对InteractiveSession()的描述语: One major change is the use of转载 2017-08-08 21:01:28 · 550 阅读 · 0 评论 -
关于One-hot编码
关于One-Hot编码(独热编码)在机器学习的应用任务中,对于非连续的数据经常也会使用数字进行编码,便于处理。例如“男性”编码为1,“女性”编码为2。但是这二者之间是不存在数学上的连续关系的,然而如果按照上述1和2进行编码的话,机器学习算法会认为“男性”和“女性”之间存在数学的有序关系。独热编码即One-Hot编码,又称一位有效编码,其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都由他独原创 2017-06-24 17:23:24 · 2089 阅读 · 0 评论 -
tensorflow-gpu环境的两种安装方式
Windows安装建议使用win10,cuda和cudnn对win10支持比较好! 1. 使用winPython来制造,直接上winpython的官网下载并安装,安装完毕之后,可以到安装目录下启动控制台,这个时候可以在这样的控制台上安装各种Python-package,至于想要什么样的package可以到pipy的主页上去寻找和download,当然我们下载应该是tensorflow-gpu版本原创 2017-09-03 11:09:50 · 685 阅读 · 0 评论