今天为大家推荐一个实用的GitHub项目:TensorFlow-Cookbook。
本文代码的github连接:https://github.com/princewen/tensorflow_practice/tree/master/chat_bot_seq2seq_attention 1、attention model原理介绍 1.1 attention model 为什么要有attention机制 原本的Seq2seq模型只有一个encoder和一个decoder,通常的做法是将一个输入的句子编码成一个固定大小的state,然后作为decoder的初始状态(当然也可以作为每一时刻的输入
第 10 章介绍了人工神经网络,并训练了我们的第一个深度神经网络。 但它是一个非常浅的 DNN,只有两个隐藏层。 如果你需要解决非常复杂的问题,例如检测高分辨率图像中的数百种类型的对象,该怎么办? 你可能需要训练更深的 DNN,也许有 10 层,每层包含数百个神经元,通过数十万个连接相连。 这可不像公园散步那么简单:
摘要:本文主要针对Batch Normalization技术,探究其对神经网络的作用,总结BN能够加速神经网络训练的原因,并对Internal covariate shift的情况进行探讨,同时探讨BN在Tensorflow中的实现。最后,简单介绍近年来对BN的改进,如Layer Norm和Group Norm。
Python API Guides (仅记录日常用到的api) TensorFlow API 树 (Python) Tensor转换: Ref 生成tensor tf.string_to_number tf.to_double tf.to_float tf.to_bfloat16 tf.to_int32 tf.to_int64 tf.cast tensor形状op tf.shape tf.size tf.rank tf.reshape tf.squeeze tf.expand_di
之前在基于Tensorflow的神经网络解决用户流失概率问题写了一个MLPs的网络,很多人在问,其实这个网络看起来很清晰,但是却写的比较冗长,这边优化了一个版本更方便大家修改后直接使用。
github:https://github.com/sladesha/deep_learning
训练一个非常大的深度神经网络可能会非常缓慢。 到目前为止,我们已经看到了四种加速训练的方法(并且达到更好的解决方案):对连接权重应用良好的初始化策略,使用良好的激活函数,使用批量规范化以及重用预训练网络的部分。 另一个巨大的速度提升来自使用比普通渐变下降优化器更快的优化器。 在本节中,我们将介绍最流行的:动量优化,Nesterov 加速梯度,AdaGrad,RMSProp,最后是 Adam 优化。
作者:刘威威 编辑:田 旭 前 言 本文将详细介绍 tf 实现风格迁移的小demo,看完这篇就可以去实现自己的风格迁移了,复现的算法来自论文 Perceptual Losses for Real-Time Style Transfer and Super-Resolution 本文分为以下部分: 第一节:深度学习在风格迁移上的背后原理; 第二节:风格迁移的代码详解 第三节:总结 图像风格迁移指的是将图像A的风格转换到图像B中去,得到新的图像,取个名字为new B,其中new B中既包含图像B的内容
TensorFlow 的 Eager Execution 是一种命令式编程环境,可立即评估操作,无需构建图:操作会返回具体的值,而不是构建以后再运行的计算图。这样能让您轻松地开始使用 TensorFlow 和调试模型,并且还减少了样板代码。要遵循本指南,请在交互式 python 解释器中运行下面的代码示例。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_25737169/article/details/79192211
本文结合50层深度残差网络的实现学习何博士的大作-Deep Residual Learning for Image Recognition。理论上,深层网络结构包含了浅层网络结构所有可能的解空间,但是实际网络训练中,随着网络深度的增加,网络的准确度出现饱和,甚至下降的现象,这个现象可以在下图直观看出来:56层的网络比20层网络效果还要差。但是这种退化并不是因为过拟合导致的,因为56层的神经网络的训练误差同样高。
[1]stackoverflow上tensorflow实现BN的不同函数的解释: https://stackoverflow.com/questions/48001759/what-is-right-batch-normalization-function-in-tensorflow/48006315#48006315
min(max(features, 0), 6)。即对 tf.nn.relu 的优化,防止 relu过后 某些 极端值 依然 大于6
该文介绍了如何使用ResNet和DenseNet两种网络结构进行图像分类。首先介绍了ResNet网络的基本结构,然后详细讲解了如何使用ResNet搭建网络。接着介绍了DenseNet网络的基本结构,然后详细讲解了如何使用DenseNet搭建网络。最后通过实验验证了这两种网络在图像分类任务上的性能。
前言 这是 上一篇博客 ((http://fengjian0106.github.io/2017/05/08/Document-Scanning-With-TensorFlow-And-OpenCV/)) 的后续和补充,这次对边缘检测算法的升级优化,起源于一个意外事件,前一个版本是使用 TensorFlow 1.0 部署的, 并且是用 TF-Slim API 编写的代码,最近想使用 TensorFlow 1.7 重新部署一遍,本来以为是一件比较容易的事情,结果实操的时候才发现全是坑,首先遇到的就是废弃 A
Seq2Seq全称Sequence to Sequence,在机器翻译、文章摘要等领域有着广泛的应用。其本身很简单,是一个如下图所示的Encoder-Decoder框架。 本文不纠结于Seq2Seq的
击球手击出垒球,你会开始预测球的轨迹并立即开始奔跑。你追踪着它,不断调整你的移动步伐,最终在观众的掌声中抓到它。无论是在听完朋友的话语还是早餐时预测咖啡的味道,你时刻在做的事就是在预测未来。在本章中,我们将讨论循环神经网络 -- 一类预测未来的网络(当然,是到目前为止)。它们可以分析时间序列数据,诸如股票价格,并告诉你什么时候买入和卖出。在自动驾驶系统中,他们可以预测行车轨迹,避免发生交通意外。更一般地说,它们可在任意长度的序列上工作,而不是截止目前我们讨论的只能在固定长度的输入上工作的网络。举个例子,它们可以把语句,文件,以及语音范本作为输入,使得它们在诸如自动翻译,语音到文本或者情感分析(例如,读取电影评论并提取评论者关于该电影的感觉)的自然语言处理系统中极为有用。
使用VGG16作为预训练模型训练Faster-RCNN-TensorFlow-Python3-master的详细步骤→Windows10+Faster-RCNN-TensorFlow-Python3-master+VOC2007数据集。
从 MobileNet V1 到 MobileNet V2 ResNet、Inception、Xception 追求的目标,就是在达到更高的准确率的前提下,尽量在模型大小、模型运算速度、模型训练速度这几个指标之间找一个平衡点,如果在准确性上允许一定的损失,但是追求更小的模型和更快的速度,这就直接催生了 MobileNet 或类似的以手机端或嵌入式端为运行环境的网络结构的出现。 MobileNet V1 (https://arxiv.org/pdf/1704.04861.pdf) 和 MobileNet V
作者 | 李秋键、出品丨AI科技大本营 近几年来GAN图像生成应用越来越广泛,其中主要得益于GAN 在博弈下不断提高建模能力,最终实现以假乱真的图像生成。GAN 由两个神经网络组成,一个生成器和一个判别器组成,其中生成器试图产生欺骗判别器的真实样本,而判别器试图区分真实样本和生成样本。这种对抗博弈下使得生成器和判别器不断提高性能,在达到纳什平衡后生成器可以实现以假乱真的输出。 其中GAN 在图像生成应用最为突出,当然在计算机视觉中还有许多其他应用,如图像绘画,图像标注,物体检测和语义分割。在自然语言处理中应
本文介绍了tf API中tf.nn、tf.layers和tf.contrib三个模块的概述,并指出了在使用时需要注意的事项。
在对神经网络的优化方法中,有一种使用十分广泛的方法——批量归一化,使得神经网络的识别准确度得到了极大的提升。
今天我们一起学习下深度学习中如何避免过拟合,我们多多交流,共同进步。本期主要内容如下:
本文介绍了如何利用TensorFlow搭建一个简单的CNN模型来识别MNIST数据集中的手写数字。首先,介绍了CNN模型的基本原理和TensorFlow中的Keras API。然后,使用MNIST数据集训练了一个具有卷积层和全连接层的CNN模型。最后,通过在测试集上评估模型的性能,得到了97.3%的准确率。
……最近在学习yolo1、yolo2和yolo3,事实上它们和SSD网络有一定的相似性,我准备汇总一下,看看有什么差别。
过拟合的原理:在loss下降,进行拟合的过程中(斜线),不同的batch数据样本造成红色曲线的波动大,图中低点也就是过拟合,得到的红线点低于真实的黑线,也就是泛化更差。
Keras是一个非常受欢迎的构建和训练深度学习模型的高级API。它用于快速原型设计、最前沿的研究以及产品中。虽然现在的TensorFlow已经支持Keras,在2.0中,我们将Keras更紧密地集成到TensorFlow平台。
我对他的框图加了注释,便于理解,红色圈为yolo_block,深红色注解为前一模块的输出,请对照代码
风格转换训练包含了所有转换步骤,有图像风格特征提取,图像内容损失提取,图像风格损失提取,图像内容和风格损失融合等过程,下面针对训练解析各个过程.
TensorFlow 是 Google brain 推出的开源机器学习库,与 Caffe 一样,主要用作深度学习相关的任务。
在本文开始前,作者并没有提倡LSTM是一种高度可靠的模型,它可以很好地利用股票数据中的内在模式,或者可以在没有任何人参与的情况下使用。写这篇文章,纯粹是出于对机器学习的热爱。在我看来,该模型已经观察到了数据中的某些模式,因此它可以在大多数时候正确预测股票的走势。但是,这个模型是否可以用于实际,有待用更多回测和实践去验证。
实战是学习一门技术最好的方式,也是深入了解一门技术唯一的方式。因此,NLP专栏计划推出一个实战专栏,让有兴趣的同学在看文章之余也可以自动动手试一试。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_25737169/article/details/79616671
在现实场景中,由于光线、视角等问题会导致我们拍摄出来的照片比较阴暗,具体的图片如下图中的1、3、5列所示,然后这些阴暗的图片不仅会影响我们的观察,而且会极大的影响计算机视觉处理算法的效果,2、4、6列表示的是使用了低光照图像增强算法之后的效果。本文主要针对低光照的图片展开论述,对经典的一些低光照图像增强算法进行了总结和初略的分析。
为了避免过拟合问题,一个非常常用的方法是正则化(regularization),正则化的思想就是在损失函数中加入刻画模型复杂程度的指标。
下图为我们了展示了2018前常用CNN模型大小与Accuracy的比较,网络上不乏介绍CNN演进的文章[LeNet/AlexNet/Vgg/ Inception/ResNet],写的也都很好,今天我们为各位读者介绍几个最新的CNN模型,如何搭建以及他们的优势在哪里。
深度学习在 ctr 预估领域的应用越来越多,新的模型不断冒出。从 ctr 预估问题看看 f(x) 设计—DNN 篇(https://zhuanlan.zhihu.com/p/28202287)整理了各模型之间的联系之后,一直在琢磨这些东西如何在工业界落地。经过几个月的调研,发现目前存在的一些问题: 开源的实现基本都是学术界的人在搞,距离工业应用还有较大的鸿沟 模型实现大量调用底层 API,各版本实现千差万别,代码臃肿难懂,迁移成本较高 单机,放到工业场景下跑不动 针对存在的问题做了一些探索,摸索出一套
本文介绍了TensorFlow在机器学习方面的应用,包括CNN、RNN、LSTM、GRU、DNN、CNN、RCNN、YOLO、Inception、ResNet、EfficientNet、GAN、GAN-2、AutoAugment、DataAugment、训练加速、多机多卡训练、模型量化、模型剪枝、模型蒸馏、特征提取、特征选择、Feature Interaction、Embedding、Word2Vec、TextRank、CNN、RNN、LSTM、GRU、Transformer、注意力机制、Seq2Seq、BERT、GPT、Transformer、BERT、CRF、FFM、DeepFM、Wide & Deep、DeepFM、LSTM、GBT、AutoEncoder、GAN、CNN、CNN-LSTM、Attention、Attention-based LSTM、CNN-LSTM、Memory Bank、BERT、BERT-CRF、CNN、CNN-LSTM、RNN、LSTM、GRU、Transformer、BERT、GPT、Deep Learning、机器学习、深度学习、计算机视觉、自然语言处理等技术。
slim中给出了resnet、vgg卷积网络的快速实现方法,定义的位置为:D:\anaconda\envs\tensorflow\Lib\site-packages\tensorflow\contrib\slim\python\slim\nets,构建残差网络主要使用的模块为resnet_utils.py、resnet_v1.py、resnet_v2.py。下面
在定义卷积层时,可能总是使用相同的填充类型和相同的初始化器,甚至可能使用相同的卷积大小。对于池化,可能也总是使用相同的2x2池大小,等等。arg_scope是一种避免反复向相同的层类型提供相同参数的方法。
法一: 循环打印 模板 for (x, y) in zip(tf.global_variables(), sess.run(tf.global_variables())): print '\n', x, y 实例 # coding=utf-8 import tensorflow as tf def func(in_put, layer_name, is_training=True): with tf.variable_scope(layer_name, reuse=tf.AUT
TensorFlow 1.9.0正式版发布了,下面是更新和改进的细节,更详细的信息请到网站查阅:github.com/tensorflow/tensorflow/releases/tag/v1.9.0
上周我们讲了经典CNN网络AlexNet对图像分类的效果,2014年,在AlexNet出来的两年后,牛津大学提出了Vgg网络,并在ILSVRC 2014中的classification项目的比赛中取得了第2名的成绩(第一名是GoogLeNet,也是同年提出的)。在论文《Very Deep Convolutional Networks for Large-Scale Image Recognition》中,作者提出通过缩小卷积核大小来构建更深的网络。 Vgg网络结构 VGGnet是Oxford的Visu
权力的游戏第8季确实令人失望,似乎导演无法学习前几季的模式,但担心的是,LSTM从不会错过任何模式,并会帮助提供一个更好的脚本,一个AI生成的脚本。
【导读】本文是谷歌机器学习工程师 Chris Rawles 撰写的一篇技术博文,探讨了如何在 TensorFlow 和 tf.keras 上利用 Batch Normalization 加快深度神经网络的训练。我们知道,深度神经网络一般非常复杂,即使是在当前高性能GPU的加持下,要想快速训练深度神经网络依然不容易。Batch Normalization 也许是一个不错的加速方法,本文介绍了它如何帮助解决梯度消失和梯度爆炸问题,并讨论了ReLu激活以及其他激活函数对于抵消梯度消失问题的作用。最后,本文使用Te
可视化 batch normalization 过程中的 tensor演化(以输入一张[1, 4 , 4, 1]的图片为例)
【新智元导读】TensorFlow 今天发布最新版 1.2.0,公布了14大最新功能。新智元带来最新介绍,包括 API 的重要变化、contrib API的变化和Bug 修复及其他改变。附代码链接。 主要的功能和改进 1. Windows上支持Python3.6。 2. 时空域去卷积(spatio temporal deconvolution.)增加了tf.layers.conv3d_transpose层。 3. 增加了tf.Session.make_callable( ),为多次运行一个相同步骤的运行提供
确保你已经阅读了第一部分(http://camron.xyz/index.php/2016/08/22/in_a_nutshell_part_one/) 在本文中,我们将演示一个宽 N 深度网络,它使
我们在网上只发现比较少的信息与资源,最开始介绍 Colab 免费 TPU 的内容还是谷歌开发者 Sam Wittevee 最近的演讲 PPT。因此本文的测试和探索都是基于官方文档和实例所实现的,还有很多 TPU 特性没有考虑到,感兴趣的读者可查阅文末的参考资料,了解更多 Colab 免费 TPU 的特性。
领取专属 10元无门槛券
手把手带您无忧上云