tensorflow
我是小蚂蚁
努力提高自己,加油。
展开
-
CIFAR-10数据集目录结构以及数据组织格式
关于CIFAR数据集的基本信息就不详细介绍了.在官网上下载很慢,这里特意上传了一份: 下载链接:cifar-10-batches-py 这里主要介绍一下这个数据集的目录结构以及内部数据组织格式.import pickleimport numpy as npimport os# 目录CIFAR_DIR = "./cifar-10-batches-py"print(os.list...原创 2018-08-28 10:46:19 · 7101 阅读 · 4 评论 -
Tensorflow使用Resnet实现CIFAR-10十分类(2)
前言在上一篇Resnet实现CIFAR-10十分类中,一万次训练的分类正确率是75%,有网友想复现何凯明Resnet论文的正确率0.9+结果,所以,我又把代码整理了一下,看看正确率能够提高到多少。步骤第一想到的是data augmentation,使用了颜色增强,对比度增强,但是在实验中发现,效果并不好,还没有不使用时候的效果好,后面会有对比。还有,随机上下左右反转的那个方法,不能传入te...原创 2019-01-21 08:43:29 · 3470 阅读 · 15 评论 -
Tensorflow使用LSTM实现中文文本分类(2)
前言经过数据预处理,现在开始正式编写代码。。。整体结构代码流程图:对词表进行 embeding构建 lstm 层构建 fc 层构建 train_op训练流程其中需要封装的几个方法:数据集的封装api: next_batch(batch_size) 获得样本batch词表封装api:sentence2id(text_sentence) 将 句子 转化为 id类别的封...原创 2019-04-21 08:38:25 · 6278 阅读 · 7 评论 -
使用Tensorflow构建LSTM模型所需要使用到的API
前言在使用tensorflow编写LSTM代码的时候Tensorflow使用LSTM实现中文文本分类(二),使用到很多新的函数,在此将用到的新函数整理一下做一个笔记。重要方法tf.random_uniform_initializer()功能:生成具有均匀分布的张量的初始化器参数:minval:一个 python 标量或一个标量张量.要生成的随机值范围的下限maxval:一个 pyt...原创 2019-04-23 08:54:14 · 1869 阅读 · 0 评论 -
Tensorflow使用LSTM实现中文文本分类(1)
前言内容接上一篇:Tensorflow使用LSTM实现中文文本分类(一)上一篇中对训练集和测试集完成了中文分词,还要需要两个操作:将 词语 转化为 id按照 id 查找词语的 embeding统计 词频词频过低,贡献过少的词语,就直接忽略掉。代码演示# -*- coding:utf-8 -*-'''中文分词 词语 转化为 id embeding matr...原创 2019-04-20 16:09:33 · 6069 阅读 · 14 评论 -
Tensorflow使用Char-CNN实现中文文本分类(1)
前言在之前的中文文本分类中,使用了LSTM来进行模型的构建(详情参考:Tensorflow使用LSTM实现中文文本分类(2)、使用numpy实现LSTM和RNN网络的前向传播过程)。除了使用LSTM来处理时间序列问题,也可以使用在图像处理领域使用更多的卷积神经网络来处理时间序列问题。LSTM and Char-CNN在Char-CNN中,词语embedding的每一列(每一个特征),可以...原创 2019-05-14 15:01:29 · 1838 阅读 · 0 评论 -
深度学习代码实战演示_Tensorflow_卷积神经网络CNN_循环神经网络RNN_长短时记忆网络LSTM_对抗生成网络GAN
前言经过大半年断断续续的学习和实践,终于将深度学习的基础知识看完了,虽然还有很多比较深入的内容没有涉及到,但也是感觉收获满满。因为是断断续续的学习做笔记写代码跑实验,所以笔记也零零散散的散落在每个角落,查询起来也非常不便,因此这里再做一个目录进行汇总一下,一来,可以方便自己以后查看,二来,也希望能够帮助到需要同学们。格言:时间就像一张网,网撒在哪里,所获就在哪里。一起加油原创 2019-05-20 08:57:10 · 16693 阅读 · 15 评论 -
Tensorflow使用Char-CNN实现中文文本分类(2)
书接上回上回说到 RNN 和 CNN 在文本分类上存在的区别和联系Tensorflow使用Char-CNN实现中文文本分类(1),并准备使用 CNN 的方式进行中文文本分类。在这里把代码给补一下。代码如下代码还在是之前Tensorflow使用LSTM实现中文文本分类(2)的代码中进行修改,其中关于CNN的内容写的比较简单,只使用了一个卷积层进行卷积操作,后接全连接层,其他代码还是使用以前的。...原创 2019-05-15 08:42:46 · 1039 阅读 · 0 评论 -
Tensorflow图像生成文本实现(1)flickr30k数据集介绍
flickr30k数据集是什么这个数据集的核心就两点,一是图像,二是图像对应的描述语言。先上图:在token文件中的标注信息:667626.jpg#0 A girl wearing a red and multicolored bikini is laying on her back in shallow water .667626.jpg#1 Girl wearing a bikin...原创 2019-05-16 09:21:06 · 10686 阅读 · 1 评论 -
Tensorflow图像生成文本(2)词表词频的构建
前言了解了Tensorflow图像生成文本实现(1)flickr30k数据集介绍数据集之后,需要对其中的token文件进行解析,对数据进行初步处理。词表词频构建因为是一句句的描述,因此需要进行分词,并统计出每个词的词频,将其对应的储存在一个文件中。这个文件的作用有两个:在后序程序中,需要中该词表文件中读取内容,组成两个字典,一个是从文字到文字id的映射,另一个是从文字id到文字的映射。...原创 2019-05-17 09:26:45 · 1862 阅读 · 0 评论 -
Tensorflow手动编写LSTM单元内部结构实现中文文本分类
前言在之前使用的LSTM是通过调用了tensorflow的api实现的(详情参考Tensorflow使用LSTM实现中文文本分类(2)),如使用tf.contrib.rnn.BasicLSTMCell() 用来构建一层lstm单元,tf.contrib.rnn.MultiRNNCell(cells) 用来将多层lstm单元连接起来。为了加深对lstm cell内部结构的理解,这里将构建ls...原创 2019-05-13 08:41:10 · 1450 阅读 · 1 评论 -
Tensorflow图像生成文本(3)图像特征的提取
前言对于图像生成文本来说,除了预处理文本信息,还要对图像特征进行提前提取。这里单独编写一个脚本,对所有图像特征进行提取,然后将提取出来的特征保存在一个目录中。代码实现这里使用到了预训练好的 inception_v3 模型,并且是一个带有默认图的 inception_v3 模型。inception_v3_graph_def.pb 该模型不光带有模型参数,同时还带有计算图,将这个计算图载入到自己...原创 2019-05-18 08:42:46 · 4335 阅读 · 8 评论 -
Tensorflow使用Mobilenet实现CIFAR-10十分类(2)
前言数周之前,有网友在博客(Mobilenet实现CIFAR-10十分类)下留言,说Mobilenet训练cifar10出现了过拟合,我这里倒是没有出现这种情况,考虑到之前写的代码比较粗糙,单纯的以重构模型为主,没有什么优化,没有图像增强,训练次数也不足,最后的正确率也算高。这两天趁着碎片时间,把之前写过的代码重新整理一下。Mobilenet的完善在上一篇博文的代码中是没有添加batch_n...原创 2019-01-19 16:24:56 · 3789 阅读 · 8 评论 -
Tensorflow+VGG16实现卷积神经网络特征图可视化
使用Tensorflow和vgg16预训练好的模型实现了卷积神经网络中特征图(feature map)的可视化,可以更明了的知道这个黑箱中到底发生了什么。卷积神经网络特征图可视化代码如下:# -*- coding:utf-8 -*-import numpy as npimport tensorflow as tfimport timefrom PIL import Imageim...原创 2019-01-03 08:48:03 · 22571 阅读 · 132 评论 -
DCGAN实现手写数字识别demo
论文解读和原理介绍,在网上已经有大量文章,这里就不在赘述。论文地址:Unsupervised Representations Learning With Deep Convolutional Generative Adversarial Networks论文解读:深度卷积对抗生成网络(DCGAN)(个人感觉最好的一篇)各种框架的代码:【theano】 https://github.com/...原创 2018-12-27 21:52:06 · 2668 阅读 · 1 评论 -
Tensorflow单个神经元实现二分类
使用单个神经元对CIFAR-10中的两个分类进行逻辑斯蒂回归,代码如下:import tensorflow as tfimport osimport numpy as npimport pickle# 文件存放目录CIFAR_DIR = "./cifar-10-batches-py"def load_data(filename): '''从文件中返回数据'''...原创 2018-09-01 17:44:53 · 2759 阅读 · 3 评论 -
Tensorflow单层神经网络实现CIFAR-10十分类demo
使用Tensorflow单层神经网络实现CIFAR-10的十分类,虽然最后精度很差,但不影响对Tensorflow的学习.import tensorflow as tfimport osimport numpy as npimport pickle# 文件存放目录CIFAR_DIR = "./cifar-10-batches-py"def load_data( file...原创 2018-09-07 21:50:08 · 1524 阅读 · 0 评论 -
Tensorflow多层神经网络实现CIFAR-10十分类demo
使用Tensorflow多层神经网络来实现CIFAR-10分类,最主要就是使用了tf.layers.dense()方法.tf.layers.dense( inputs, units, activation=None, use_bias=True, kernel_initializer=None, bias_initializer=tf.zer...原创 2018-09-08 09:26:01 · 2161 阅读 · 0 评论 -
Tensorflow使用VGG思想实现CIFAR-10十分类demo
因为CIFAR-10数据集的每一张图像都是32*32像素,已经非常小了,所以在进行卷积和池化操作时,存在一些参数会和论文有一些区别,那都不是关键,体会到VGG的流程就好.import tensorflow as tfimport osimport numpy as npimport pickle# 文件存放目录CIFAR_DIR = "./cifar-10-batches-p...原创 2018-09-10 10:58:13 · 6253 阅读 · 8 评论 -
Tensorflow使用Resnet思想实现CIFAR-10十分类demo
关于Resnet残差网络的介绍已经非常多了,这里就不在赘述.使用Tensorflow写了一个简单的Resnet,对CIFAR-10数据集进行十分类.关键步骤都写了详细注释,虽然最后的精度不高,但还是学习Resnet的思想为主.import tensorflow as tfimport osimport numpy as npimport pickle# 文件存放目录CIFAR...原创 2018-09-13 19:23:34 · 5705 阅读 · 25 评论 -
tensorboard使用方法以及代码实例
介绍Tensorboard是Tensorflow的一个可视化工具,有效的展示出Tensorflow运行过程中的计算图、各种变量指标随着时间的变化趋势。实际工作中还是非常有用的。方法在训练过程中,主要用到了tf.summary()的各类方法:tf.summary.scalar(name, tensor) # 生成一个summaryname:生成节点的名称tensor:需要展示的tenso...原创 2018-09-19 11:17:58 · 4032 阅读 · 0 评论 -
Tensorflow使用Inception思想实现CIFAR-10十分类demo
使用Inception思想实现一个简单的CIFAR-10十分类.最主要的是领会Inception的结构. Inception结构图如下: 思想: 分别使用1*1,3*3,5*5卷积核和一个3*3最大池化层对上一层进行处理,然后将输入进行合并. 需要注意的是,因为最大池化之后,宽高都会发生变化,在合并的时候会出现问题,所以需要使用tf.pad()进行补齐. 上代码:# -*...原创 2018-09-14 12:05:31 · 2118 阅读 · 4 评论 -
Tensorflow图像增强的几个方法
在Tensorflow中提供了一些图像增强的方法,比如:缩放、裁剪、反转、光照对比度等。# resize 缩放# crop 裁剪# flip 反转# brightness && contrast 改变光照、对比度import numpy as npimport tensorflow as tfimport matplotlib.pyplot as pltfrom ...原创 2018-09-25 10:29:23 · 4304 阅读 · 6 评论 -
Tensorflow使用Mobilenet思想实现CIFAR-10十分类(1)
思路:深度可分离卷积,拆分到极致. 做法:将每个通道拆分,分别进行卷积,然后在进行合并. 优点:计算量比较小,但是精度会有所下降. Mobilenet结构图: import tensorflow as tfimport osimport numpy as npimport pickle# 文件存放目录CIFAR_DIR = "./cifar-10-batches-py...原创 2018-09-15 10:16:49 · 3208 阅读 · 3 评论 -
Tensorflow保存和恢复模型
方法saver = tf.train.Saver()获得一个文件句柄,将训练中的某一个快照状态保存到文件中去saver.save(sess, os.path.join(model_dir, ‘ckp-%05d’%(i+1)))将训练好的模型保存到文件中sess:session会话参数2:模型保存路径saver.restore(sess, model_path)从文件中恢复模型se...原创 2018-09-20 10:52:58 · 905 阅读 · 0 评论 -
minist数据集的获取方法
在官网下载minist数据集,速度感人。因此特意上传了一份,供需要的朋友下载:minist数据集第一次打开这个数据集,也是一脸懵,不过还好,脱坑代码如下:import numpy as npimport os# 训练集with open('./minist_data/train-images.idx3-ubyte') as f: loaded = np.fromfile(fil...原创 2018-09-26 18:18:45 · 4122 阅读 · 1 评论 -
基于Tensorflow的图像风格迁移代码实现
图像风格转换的概念部分,可以参考博客:图像风格转换(Image style transfer)这里是手动实现了这样一个demoimport osimport mathimport numpy as npimport tensorflow as tffrom PIL import Imageimport time# VGG 自带的一个常量,之前VGG训练通过归一化,所以现在同样需...原创 2018-10-04 10:24:21 · 6194 阅读 · 30 评论 -
Tensorflow中的tf.layers.batch_normalization()用法
使用tf.layers.batch_normalization()需要三步:在卷积层将激活函数设置为None。使用batch_normalization。使用激活函数激活。需要特别注意的是:在训练时,需要将第二个参数training = True。在测试时,将training = False。需要特别注意的是:在训练时,需要将第二个参数training = True。在测试时,将tra...原创 2018-09-28 10:53:53 · 31665 阅读 · 1 评论 -
Tensorflow图像生成文本(4)计算图设计以及训练流程
准备工作数据集的获取。参考:Tensorflow图像生成文本实现(1)flickr30k数据集介绍词表词频文件。参考:Tensorflow图像生成文本(2)词表词频的构建所有图像的特征文件。参考:Tensorflow图像生成文本(3)图像特征的提取训练流程按照代码编写的顺序,依次为:载入词表,构建两个映射关系。word_to_id 将单词转化为id表示id_to_word ...原创 2019-05-19 15:06:42 · 1484 阅读 · 4 评论