TensorFlow
阿卡蒂奥
这个作者很懒,什么都没留下…
展开
-
TensorFlow学习-- 变量Variables/ Fetch/ Feed
Variables:参数是在图中有其固定的位置的,不能像普通数据那样正常流动。TensorFlow中将变量/Variables作为一个特殊的算子,可以返回它所保存的可变tensor的句柄。#!/usr/bin/python# coding:utf-8# 变量Variablesimport tensorflow as tf# 创建一个变量,初始化为标量0state = tf...原创 2017-10-25 21:36:55 · 585 阅读 · 0 评论 -
TensorFlow学习--VGGNet实现&图像识别
VGGNet相关连接:1.牛津大学计算机视觉组Visual Geometry Group2.Very Deep Convolutional Network For Large-scale Image Recognition论文连接3.ImageNet-2014大规模视觉识别挑战赛Large Scale Visual Recognition Challenge 2014 (ILSVRC2014) 3原创 2017-11-24 19:10:30 · 6267 阅读 · 11 评论 -
TensorFlow学习--tf.FIFOQueue队列
队列tf.FIFOQueueFIFOQueue类基于基类QueueBase.QueueBase主要包含入列(enqueue)和出列(dequeue)两个操作.enqueue操作返回计算图中的一个Operation节点,dequeue操作返回一个Tensor值.Tensor在创建时同样只是一个定义,需要放在Session中运行才能获得真正的数值.tensorflow使用tf.FIFO...原创 2017-11-16 16:24:08 · 7099 阅读 · 1 评论 -
TensorFlow学习--tensorflow图像处理--随机调整亮度/对比度/饱和度/色相
tensorflow图像处理通过随机调整图像亮度/对比度/饱和度/色相,可以衍生出更多的训练样本,减小识别物体不同的大小/方位/色彩等无关因素对图像识别模型的影响.且调整顺序不同可以得到不同的处理结果.实例:#!/usr/bin/python# coding:utf-8# 图像预处理import tensorflow as tfimport numpy as npimpor...原创 2017-11-16 10:43:23 · 4463 阅读 · 1 评论 -
TensorFlow学习--GoogLeNet实现
GoogLeNet实现原创 2017-11-27 11:40:45 · 11393 阅读 · 2 评论 -
TensorFlow学习--MNIST入门与提高 (附脚本input_data.py)
建立softmax回归模型: y=softmax(Wx+b) y=softmax(Wx+b)\ y=softmax(Wx+b)损失函数采用交叉熵来衡量: CostEntropy=−∑y′logy CostEntropy=−∑y′logy\ CostEntropy=-\sum y'logy 其中y′y′ y'代表真实值.由于真实值的类别通常采用...原创 2017-10-26 10:59:23 · 7009 阅读 · 2 评论 -
TensorFlow学习--学习率衰减/learning rate decay
学习率衰减学习率衰减(learning rate decay) 在训练神经网络时,使用学习率控制参数的更新速度.学习率较小时,会大大降低参数的更新速度;学习率较大时,会使搜索过程中发生震荡,导致参数在极优值附近徘徊. 为此,在训练过程中引入学习率衰减,使学习率随着训练的进行逐渐衰减.TensorFlow中实现的学习率衰减方法:tf.train.piecewise_constant...原创 2018-03-15 21:27:39 · 25221 阅读 · 3 评论 -
TensorFlow学习--SAME与VALID区别
在CNN中的卷积层或池化层,涉及到padding方式的选择,即对应tensorflow中tf.nn.conv2d()与tf.nn.max_pool()中padding的参数选择.padding = ‘VALID’ 时,没有填充.因此输出的size总比原图的size小. 如图,3*3的模板作用在7*7的图像上,当步长/stride为1时: 由于没有填充,最终得到的就是虚线中的灰色区域即5*5原创 2018-03-09 16:54:29 · 4076 阅读 · 1 评论 -
TensorFlow学习--LeNet5神经网络
LeNet5神经网络简介LeNet5由Yann LeCun于1994年提出,模型结构如图: 在模型中,每个卷积层包含三个部分:卷积/池化/非线性激活函数.并采用MLP作为分类器.同时层与层的稀疏连接减少了计算的复杂度.网络结构LeNet5神经网络结构:C1:卷积层 输入为32*32的单通道图像,使用6个5*5大小的卷积核进行卷积,得到6个feature map.feature map大小为原创 2018-03-09 21:54:31 · 747 阅读 · 0 评论 -
TensorFlow学习--指数移动平均/tf.train.ExponentialMovingAverage
时间序列模型时间序列是指将同一统计指标的数值按其发生的时间先后顺序排列而成的数列.时间序列分析的主要目的是根据已有的历史数据对未来进行预测.处理与时间相关数据的方法叫做时间序列模型. 当一个平稳序列 X(t) X(t)\ X(t) 中混入噪声 Er(t) Er(t)\ Er(t),变成如图所示: 此时引入Rho系数 X(t)=Rh...原创 2018-03-18 13:18:50 · 2885 阅读 · 0 评论 -
TensorFlow学习--tf.strided_slice/张量切片
tf.strided_slice()对张量进行切片操作,就是从张量中提取一个片段.即从片段指定的位置begin开始,以stride步幅提取,直到所有维度都不小于end为止.tf.strided_slice( input_, #输入张量 begin, #切片起始处 end, #切片结束处 str...原创 2018-03-18 21:06:23 · 10181 阅读 · 2 评论 -
Conversion of the second argument of issubdtype from `float`......
本机:ubuntu-16+python+pycharm在安装配置caffe时,操作失误导致原来安装的TensorFlow不能用了.于是删除原文件,重新安装了TensorFlow,安装后TensorFlow能用,但是一直报如下错误:FutureWarning: Conversion of the second argument of issubdtype from `float` to `n...原创 2018-03-23 13:50:44 · 1200 阅读 · 0 评论 -
TensorFlow学习--Summary
Summary在TensorFlow中,Summary是对网络中的张量进行检测的一种操作,不会影响数据流本身.利用tf.summary.FileWriter()可以将检测结果序列化存储到文件中.然后可以在TensorBoard中查看结果.检测实例:#!/usr/bin/python# coding:utf-8import tensorflow as tf# 迭代计数器global_step =原创 2018-03-13 16:59:16 · 2218 阅读 · 0 评论 -
TensorFlow学习--tf.summary.histogram与直方图仪表板/tensorboard_histograms
在训练神经网络时,当需要查看一个张量在训练过程中值的分布情况时,可通过tf.summary.histogram()将其分布情况以直方图的形式在TensorBoard直方图仪表板上显示.tf.summary.histogramtf.summary.histogram(): 输出一个直方图的Summary protocol buffer .name:生成的节点名称.作为Tensor...原创 2018-03-14 14:42:12 · 31280 阅读 · 6 评论 -
TensorFlow学习--tf.nn.sparse_softmax_cross_entropy_with_logits
tf.nn.sparse_softmax_cross_entropy_with_logits() 计算logits和labels之间的稀疏softmax交叉熵. 一般与tf.reduce_sum()结合用来求交叉熵损失.计算交叉熵假设神经某网络最后一层的输出(未归一化的概率)为[1.0, 2.0, 2.0], [3.0, 1.0, 1.0], [3.0, 2.0, 1.0].对应的标...原创 2018-03-20 19:58:52 · 1095 阅读 · 0 评论 -
TensorFlow学习--CIFAR-10
CIFAR-10数据集CIFAR-10数据集包含10个类的60000张32x32的彩色图像,每个类有6000张图像.有50000张训练图像和10000张测试图像.CIFAR-10数据集 10个分类明细及对应的部分图片: 教程代码其中主要涉及的文件: 文件 作用 cifar10_input.py 读取本地二进制文件 cifar10_input_t...原创 2018-03-20 16:25:25 · 20768 阅读 · 5 评论 -
TensorFlow学习--AlexNet实现&图像识别
论文:Imagenet Classification with Deep Convolutional Neural NetworksAlexNet主要使用到的技术点有:使用ReLU作为CNN的激活函数,解决了Sigmoid在较深网络中的梯度弥散问题(vanishing gradient problem).训练时使用Dropout随机忽略一部分神经元,避免了模型的过拟合问题.在CNN中使用重叠的原创 2017-11-22 18:59:27 · 9393 阅读 · 28 评论 -
TensorFlow学习--tensorflow图像处理--添加标注框
添加标注框tf.image.draw_bounding_boxestensorflow通过tf.image.draw_bounding_boxes函数加入标注框.#!/usr/bin/python# coding:utf-8import matplotlib.pyplot as pltimport tensorflow as tf# 读取图像数据img = tf.gfile.FastGFil原创 2017-11-15 20:11:36 · 5136 阅读 · 3 评论 -
TensorFlow学习--张量的数据类型/rank/shape和常用API
TensorFlow即张量的流动,即保持计算节点不变让数据以张量的形式进行流动.张量tensor可以是一个变量/数组/多维数组等.一个tensor包含一个静态的rank和一个shape.tensor的几个重要属性:Data type/数据类型即tensor存储的数据类型. 数据类型 Python 类型 描述 DT_FLOAT tf.float32 ...原创 2017-10-25 18:53:35 · 7470 阅读 · 0 评论 -
TensorFlow学习--自编码器/稀疏自编码器/堆叠自编码器
自编码器(Auto Encoder)神经网络常常用于分类,通过定义一个目标函数衡量输出与目标值之间的差异,然后通过调整系统的参数使系统尽量拟合训练数据. 而对每一层神经网络来说,前一层的输出都是可看做未加工的初始数据,而这一层则是对初始数据进行加工组织的更高阶的特征. 设由无类别标签的训练样本集合 {x(1) x(2) x(3) ...},x(i)∈Rn\ { x^{(1)} x^{(2)} x原创 2017-11-08 19:21:50 · 6156 阅读 · 0 评论 -
TensorFlow学习--多层感知机
多层感知机在神经网络上加上隐含层并使用Dropout减轻过拟合,使用Adagrad自适应学习速率,使用ReLU解决梯度消失/弥散问题.ReLU对比Sigmoid的主要变化点:单侧抑制相对宽阔的兴奋边界稀疏激活性采用ReLU解决梯度弥散问题参见深度学习--采用ReLU解决消失的梯度问题(vanishing gradient problem) 单侧抑制:从函数图像上可以看到ReLU把负值都变为0原创 2017-11-08 19:53:07 · 565 阅读 · 0 评论 -
ubuntu 下TensorFlow安装
本机ubuntu16.04自带Python2.7.13,已安装anaconda: 开始安装:1. 建立 conda 计算环境conda create -n tensorflow python=2.7中间 Proceed([y]/n)? 选 y2. 激活环境,使用 conda 安装source activate tensorflow中间 Proceed([y]/n)? 选 y结果报错………….原创 2017-10-09 08:16:41 · 481 阅读 · 0 评论 -
TensorFlow学习--tf.reduce_mean()
tf.reduce_mean()对应API为:def reduce_mean(input_tensor, axis=None, keep_dims=False, name=None, reduction_indices=None):通过张量的维数计算元素的平均值. 相当于原创 2017-11-01 20:05:24 · 6047 阅读 · 0 评论 -
TensorFlow学习--TensorBoard神经网络可视化
本机:[ubuntu16.04 + Pycharm + python2.7 + tensorflow1.3.0 ]TensorBoard是TensorFlow的一套可视化工具,通过读取 TensorFlow 的事件文件来运行. 一般是先创建要汇总的图(graph),然后选择需要在那些节点(op)进行汇总(summary)操作.例子(具体见代码注释):# TensorBoard可视化import t原创 2017-11-01 21:10:00 · 1895 阅读 · 0 评论 -
TensorFlow学习--创建多层卷积网络
使用TensorFlow创建多层卷积网络相关API卷积:conv2d(input,filter,strides,padding,use_cudnn_on_gpu=None,data_format=None, name=None)input: 要做卷积的数据,为一个4维张量,类型为float32或float64之一,shape为[batch, height, width...原创 2017-10-27 16:32:19 · 1775 阅读 · 0 评论 -
TensorFlow学习--图graph/会话Session
张量tensor:TensorFlow即Tensor(张量)+Flow(流动).Tensor即张量,TensorFlow中的所有数据都称之为tensor,程序中数据的流转都是采用tensor的形式进行的.图graph:TensorFlow用图(graph)来表示计算任务,图中的节点被称为op(operation),一个op获得0个或多个张量(tensors).TensorFlow中有一...原创 2017-10-25 10:37:15 · 1066 阅读 · 0 评论 -
TensorFlow学习--卷积神经网络训练CIFAR-10数据集
CIFAR-10数据集CIFAR-10数据集包含10个类的60000张32x32的彩色图像,每个类有6000张图像。 有50000张训练图像和10000张测试图像。 10个分类明细及对应的部分图片:CIFAR-10数据集连接卷积神经网络训练CIFAR-10数据集论文ImageNet Classification with Deep Convolutional Neural ...原创 2017-11-12 16:27:27 · 4937 阅读 · 0 评论 -
TensorFlow学习--TensorFlow模型的存储与恢复
TensorFlow模型的存储与恢复 最简单的保存和恢复模型的方法是使用tf.train.Saver对象.模型的存储用tf.train.Saver创建一个Saver来存储模型中的所有变量.#!/usr/bin/python# coding:utf-8import tensorflow as tf# 定义两个常量Variablev1 = tf.Variable(tf....原创 2017-11-12 21:21:14 · 531 阅读 · 0 评论 -
TensorFlow学习--tf.get_variable使用
tensorflow中tf.get_variable的API为def get_variable(name, shape=None, dtype=None, initializer=None, regularizer=None, tr原创 2017-11-13 16:11:19 · 3196 阅读 · 0 评论 -
TensorFlow学习--tf.add_to_collection与tf.get_collection使用
tf.add_to_collection–向当前计算图中添加张量集合tf.get_collection–返回当前计算图中手动添加的张量集合#!/usr/bin/python# coding:utf-8import tensorflow as tfv1 = tf.get_variable('v1', shape=[3], initializer=tf.ones_initializer())v2原创 2017-11-13 16:36:38 · 12060 阅读 · 0 评论 -
TensorFlow学习--ResNet实现
github上用ResNet模型对CIFAR-10数据集进行分类,链接:CIFAR-10 ResNet model CIFAR-10数据集,链接:The CIFAR-10 datasetResNet结构从AlexNet之后神经网络有两个发展方向,一是调整网络结构,二是增加网络深度,如下所示: LeNet→AlexNet→{NIN→InceptionV1→InceptionV...原创 2017-11-28 19:32:44 · 8140 阅读 · 3 评论 -
TensorFlow学习--tensorflow图像处理--图像读取/格式转换
tensorflow图像处理 一张RGB格式的彩色图像可以看成是一个三维矩阵,矩阵中的每一个数代表图像不同的位置上不同的颜色的亮度.但是图像存储时并不是直接存储这些三维矩阵,而是要先对其进行压缩编码再存储.因此读取图像的过程其实是先读取其压缩编码后的结果,然后将其解码的过程.读取图像&转换格式#!/usr/bin/python# coding:utf-8import matplotlib.pyp原创 2017-11-14 21:14:26 · 9604 阅读 · 0 评论 -
TensorFlow学习--tensorflow图像处理--图像翻转及大小色彩调整
翻转图像tf.image.flip_up_down()将图像上下翻转tf.image.flip_left_right()将图像左右翻转tf.image.transpose_image()通过交换第一维和第二维来转置图像随机翻转tf.image.random_flip_up_down() 将图像上下翻转的概率为0.5,即输出的图像有50%的可能性是上下翻转的否则就输出原图. tf.image.ra原创 2017-11-15 15:59:02 · 11004 阅读 · 2 评论 -
TensorFlow学习--tf.train.batch与tf.train.shuffle_batch
tf.train.batch与tf.train.shuffle_batch的作用都是从队列中读取数据.tf.train.batchtf.train.batch() 按顺序读取队列中的数据 队列中的数据始终是一个有序的队列.队头一直按顺序补充,队尾一直按顺序出队. 参数:tensors:排列的张量或词典.batch_size:从队列中提取新的批量大小.num_threads:线程数量.若批次原创 2018-03-21 21:02:48 · 16401 阅读 · 1 评论