8 风翼冰舟

尚未进行身份认证

Machine Learning, Algorithm

等级
TA的排名 2k+

Tensorflow 指令加速

一直没注意过使用Tensorflow的时候有一条warning:Warning:yourcpusupportsinstructionsthatthistensorflowbinarywasnotcompiledtouse:avx2fma这玩意是可以用来加速推断的,分CPU和GPU版,业务相关部署在CPU上,实测使用CPU加速能提升3倍左右,但是编译过程有点复杂。...

2019-10-14 14:54:53

【TensorFlow-serving】初步学习模型部署

前言初步学习tensorflowserving的手写数字识别模型部署。包括简单的模型训练、保存、部署上线。因为对docker和网络不太熟悉,可能会有部分错误,但是看完博客,能跑通整个流程。此博客将详细介绍流程,但是不详细介绍每个流程的每步的含义,因为这些步骤不会随着任务的不同而发生太大改变。在后续博客中可能会精细介绍每一步的含义。国际惯例,参考博客:tensorflow官方文档:低阶API...

2019-09-03 21:13:42

【TensorFlow-windows】keras接口——利用tensorflow的方法加载数据

前言之前使用tensorflow和keras的时候,都各自有一套数据读取方法,但是遇到一个问题就是,在训练的时候,GPU的利用率忽高忽低,极大可能是由于训练过程中读取每个batch数据造成的,所以又看了tensorflow官方的加载数据方法。主要是利用了tf.data.Dataset这里面的一系列操作。国际惯例,参考博客:tensorflow官方加载数据集方法官方文档对应的代码images...

2019-08-23 22:07:11

深度学习特征归一化方法——BN、LN、IN、GN

前言最近看到GroupNormalization的论文,主要提到了四个特征归一化方法:BatchNorm、LayerNorm、InstanceNorm、GroupNorm。此外,论文还提到了LocalResponseNormalization(LRN)、WeightNormalization(WN)、BatchRenormalization(BR)。国际惯例,参考博客:Gr...

2019-08-20 17:34:46

【TensorFlow-windows】TensorBoard可视化

前言紧接上一篇博客,学习tensorboard可视化训练过程。国际惯例,参考博客:MNIST机器学习入门Tensorboard详解(上篇)Tensorboard可视化好帮手2tf-dev-summit-tensorboard-tutorialtensorflow官方mnist_with_summaries预备知识根据之前学的知识,创建一个卷积结构进行手写数字分类impor...

2019-08-09 22:06:36

【TensorFlow-windows】name_scope与variable_scope

前言探索一下variable_scope和name_scope相关的作用域,为下一章节tensorboard的学习做准备其实关于variable_scope与get_variable实现变量共享,在最开始的博客有介绍过:【TensorFlow-windows】学习笔记二——低级API当然还是国际惯例,参考博客:tensorflow:name_scope和variable_scope...

2019-08-08 21:10:19

【TensorFlow-windows】keras接口——ImageDataGenerator裁剪

前言Keras中有一个图像数据处理器ImageDataGenerator,能够很方便地进行数据增强,并且从文件中批量加载图片,避免数据集过大时,一下子加载进内存会崩掉。但是从官方文档发现,并没有一个比较重要的图像增强方式:随机裁剪,本博客就是记录一下如何在对ImageDataGenerator中生成的batch做图像裁剪国际惯例,参考博客:官方ImageDataGenerator文档Ker...

2019-06-10 11:49:07

【TensorFlow-windows】MobileNet理论概览与实现

前言轻量级神经网络中,比较重要的有MobileNet和ShuffleNet,其实还有其它的,比如SqueezeNet、Xception等。本博客为MobileNet的前两个版本的理论简介与Keras中封装好的模块的对应实现方案。国际惯例,参考博客:纵览轻量化卷积神经网络:SqueezeNet、MobileNet、ShuffleNet、Xception为什么MobileNet及其变体如此之...

2019-05-20 20:31:27

RS编码-Python工具包使用

前言最近学习二维码相关知识,遇到了ReedSolomon编码,简称RS编码,中文名里德所罗门编码。遇到的问题是使用的工具包返回的编码是bytearray类型,而二维码是二进制01编码,所以本博客主要验证,如何将bytearray类型转为二进制,随机污染,再利用RS编码纠错,最后解码为传递信息。RS编码使用的工具包戳这里reedsolomon直接安装:pipinstallreedsolo...

2019-05-16 17:22:38

【TensorFlow-windows】部分损失函数测试

前言在TensorFlow中提供了挺多损失函数的,这里主要测试一下均方差与交叉熵相关的几个函数的计算流程。主要是测试来自于tf.nn与tf.losses的mean_square_error、sigmoid_cross_entry、softmax_cross_entry、sparse_softmax_cross_entry国际惯例,参考博客:官方文档一文搞懂交叉熵在机器学习中的使用,透彻理解...

2019-05-13 15:58:16

【TensorFlow-windows】扩展层之STN

前言读TensorFlow相关代码看到了STN的应用,搜索以后发现与增强网络对图像变换(旋转、缩放、偏移等)的抗干扰能力,简单说就是提高卷积神经网络的空间不变性。国际惯例,参考博客:理解SpatialTransformerNetworksgithub-STNDeepLearningPaperImplementations:SpatialTransformerNetwork...

2019-05-10 20:38:40

【TensorFlow-windows】投影变换

前言没什么重要的,就是想测试一下tensorflow的投影变换函数tf.contrib.image.transform中每个参数的含义国际惯例,参考文档官方文档描述调用方法与默认参数:tf.contrib.image.transform(images,transforms,interpolation='NEAREST',output_shape=...

2019-05-09 16:17:17

【TensorFlow-windows】keras接口——卷积核可视化

前言在机器之心上看到了关于卷积核可视化相关理论,但是作者的源代码是基于fastai写的,而fastai的底层是pytorch,本来准备自己用Keras复现一遍的,但是尴尬地发现Keras还没玩熟练,随后发现了一个keras-vis包可以用于做卷积核可视化。以下理论是在不熟悉fastai的运行机制的基础上做的简单理解,可能有误,欢迎指正。国际惯例,参考博客:40行Python代码,实现卷积特征...

2019-05-07 16:46:06

【TensorFlow-windows】keras接口——BatchNorm和ResNet

前言之前学习利用Keras简单地堆叠卷积网络去构建分类模型的方法,但是对于很深的网络结构很难保证梯度在各层能够正常传播,经常发生梯度消失、梯度爆炸或者其它奇奇怪怪的问题。为了解决这类问题,大佬们想了各种办法,比如最原始的L1,L2正则化、权重衰减等,但是在深度学习的各种技巧中,批归一化(BatchNormalization,BN)和残差网(ResidualNetwork,ResNet)还是比...

2018-12-27 20:30:28

【TensorFlow-windows】keras接口——卷积手写数字识别,模型保存和调用

前言上一节学习了以TensorFlow为底端的keras接口最简单的使用,这里就继续学习怎么写卷积分类模型和各种保存方法(仅保存权重、权重和网络结构同时保存)国际惯例,参考博客:官方教程【注】其实不用看博客,直接翻到文末看我的colab就行,里面涵盖了学习方法,包括自己的出错内容和一些简单笔记,下面为了展示方便,每次都重新定义了网络结构,对Python熟悉的大佬可以直接defcreate...

2018-12-14 15:20:07

【TensorFlow-windows】keras接口学习——线性回归与简单的分类

前言之前有写过几篇TensorFlow相关文章,但是用的比较底层的写法,比如tf.nn和tf.layers,也写了部分基本模型如自编码和对抗网络等,感觉写起来不太舒服,最近看官方文档发现它的教程基本都使用的kerasAPI,这就尴尬了,学一波国际惯例,参考博客:官方开始案例其实网上有很多博客了,但是为实验了一下跑不起来,而且按照官方文档理解的使用算法和网络上的博客又不同,比如这位大佬的博...

2018-12-11 14:13:54

强化学习——Qlearning

前言在控制决策领域里面强化学习还是占很重比例的,最近出了几篇角色控制的论文需要研究,其中部分涉及到强化学习,都有开源,有兴趣可以点开看看:ADeepLearningFrameworkForCharacterMotionSynthesisandEditingPhase-FunctionedNeuralNetworksforCharacterControlTerra...

2018-10-27 17:13:05

【TensorFlow-windows】学习笔记八——简化网络书写

前言之前写代码的时候都要预先初始化权重,还得担心变量是否会出现被重复定义的错误,但是看网上有直接用tf.layers构建网络,很简洁的方法。这里主要尝试了不预定义权重,是否能够实现正常训练、模型保存和调用,事实证明阔以。验证训练与模型保存很简洁的代码直接五十行实现了手写数字的网络训练importtensorflowastffromtensorflow...

2018-08-29 17:49:41

Openpose——windows编译(炒鸡简单)

前言最近准备看看rtpose的代码,发现已经由openpose这个项目维护着了,由于经常在windows下调试代码,所以尝试了一下如何在windows下编译openpose源码,结果发现,我靠,炒鸡简单,Cmake一步搞定。写博客的目的在于,为了避免后续openpose的项目组各种维护各种加新内容的时候又改变了很多库什么的,比如升级CUDA版本、Opencv之类的,所以这里记录一下当前配置...

2018-08-27 17:00:10

【TensorFlow-windows】学习笔记七——生成对抗网络

前言既然学习了变分自编码(VAE),那也必须来一波生成对抗网络(GAN)。国际惯例,参考网址:论文:GenerativeAdversarialNetsPPT:GenerativeAdversarialNetworks(GANs)GenerativeAdversarialNetsinTensorFlowGAN原理学习笔记理论粗略点的讲法就说:一...

2018-08-21 11:28:29

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。