Chinaunix首页 | 论坛 | 博客
  • 博客访问: 179968
  • 博文数量: 61
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 725
  • 用 户 组: 普通用户
  • 注册时间: 2017-05-13 22:10
文章分类
文章存档

2018年(8)

2017年(53)

我的朋友

分类: Python/Ruby

2017-11-01 08:51:54

循环神经网络。https://github.com/aymericdamien/TensorFlow-Examples/blob/master/examples/3_NeuralNetworks/recurrent_network.py。




自然语言处理(natural language processing, NLP)应用网络模型。与前馈神经网络(feed-forward neural network,FNN)不同,循环网络引入定性循环,信号在神经元传递不消失继续存活。传统神经网络层间全连接,层内神经元没连接。循环神经网络隐藏层输入包括上层输出和上一时刻隐藏层输出。按时间顺序展开,下一步受本步处理影响。网络训练误差反向传播(backpropagation,BP)算法,参数权值共享。反向传播依赖当前层及前面若干层网络,随时间反向传播(backpropagation through time,BPTT)算法。加载网络时序信号按层展开,前馈静态神经网络转为动态网络。
《Supervised Sequence Labelling with Recurrent Neural Networks》~graves/preprint.pdf 。


循环神经网络发展。


VanillaRNN
->增强隐藏层功能
  ->Simple RNN
  ->GRU
  ->LSTM
  ->CW-RNN
->双向化加深网络
  ->Bidirectional RNN
  ->Keep Bidrectional RNN
->两者结合:DBLSTM
《Recurrent Neural Networks,Part 1-Introduction to RNNs》 http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/ 。


增强隐藏层功能。


简单RNN(Simple RNN,SRNN)。3层网络,隐藏层(上下文层)增加上下文单元。上下文单元节点与隐藏层节点连接、权值固定。假设当前t时刻,分3步预测P(wm)。单词Wm-1映射到词向量,INPUT(t)。连接上一次训练的隐藏层CONTEXT(t-1),sigmoid激活函数生成当前t时刻CONTEXT(t)。softmax函数预测P(wm)。
LSTM。一般RNN梯度消失,导数链式法则导致连乘,梯度指数级消失。引入单元(cell)结构,RNN改进模型长短期记忆(Long-Short Term Memory, LSTM)。Block有1个单元(cell),状态参数记录状态。3个门(gate),输入门(input gate)、输出门(output gate)处理输入输出参数,忘记门(forget gate)设置选择性遗忘权重。
GRU(Gated Recurrent Unit Recurrent Neural Network)。隐藏层不同距离单词对当前隐藏层状态影响不同,越远越小。每个前面状态对当前隐藏层状态影响距离加权,越远越小。发生误差,仅更新对应单词权重。两个门,重置门r(组合新输入和前记忆)、更新门z(留下前记忆)。重置门1,更新门0,得到普通RNN。Junyoung Chung、Caglar Gulcehre、KyungHyun Cho、Yoshua Bengio论文《Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling》 。
CW-RNN(Clockwork RNN)。时钟频率驱动RNN。隐藏层分组,不同隐藏层组工作在不同时钟频率,解决长时间依赖。每组按照规定时钟频率处理输入。时钟时间离散化,不同时间点不同隐藏层组工作,所有隐藏层在每一步不会同时工作,加快网络训练。时钟周期大组神经元速度慢,小组速度快。周期大连接周期小,周期小不连接周期大。隐藏层神经元分组,记g。每组神经元个数相同,记k。每组分配时钟周期Ti∈{T1,T2,···,Tg}。组内所有神经元全连接。Tj>Ti,组j到组i循环连接。按照时钟周期递增从左到右排序T1

双向化加深网络。


双向RNN(Bidirectional RNN)。输出与前后序列有关。原始双向RNN,两个RNN上下叠加。输出由两个RNN隐藏层状态决定。Miske Schuster、Kuldip K. Paliwal论文《Bidirectional Recurrent Neural Networks》。双向LSTM、双向GRU。
深度双向RNN(Deep Bidirectional RNN)。隐藏层叠加多层,每步输入多层网络,表达学习能力更强,需要更多训练数据。Alex Graves、Navdeep Jaitly and Abdel-rahman Mohamed论文《Hybrid Speech Recognition With Deep Bidirectional LSTM》~graves/asru_2013.pdf。


训练学习算法, BPTT(Back Propagation Through Time)、RTRL(Real-time Recurrent Learning)、EKF(Extended Kalman Filter)。


TensorFlow Model Zoo。


TensorFlow模型。很多图像、语音处理模型。检查点文件可作预训练模型。比如Inception V1,inception_v1_2016_08_28.tar.gz。Cafe Model Zoo有很多训练好模型,作预训练模型减训练时间、迭代次数。可转换为TensorFlow模型 。


强化学习(reinforcement learning)。AlphaGo改良策略网络(policy network)。强化学习介于有监督学习和无监督学习。只有很少标记(奖励),有延迟。模型学习环境行为。游戏、下棋、博弈有得分步骤多活动做连续决策。Q-learning、Sarsa、Policy Gradient、Actor Critic。包括算法更新、思维决策。深度Q网络(Deep Q Network, DQN)。


深度森林。周志华论文《Deep Forest:Towards an Alternative to Deep Neural Networks》多粒度级联森林(multi-grained cascade forest, gcForest)。只有少量数据也可训练,超参数比深度神经网络少,超参数性能健壮性高,训练容易。


深度学习艺术。


绘画领域,艺术风格神经网络算法(A Neural Algorithm of Artistic Style), Leon A. Gatys, Alexander S.Ecker, Matthias Bethge论文 。绘画风格迁移。把图片风格和内容分开,组合不同图片风格和内容,生成风格化内容图片。美图秀秀、魔漫相机、脸萌有应用。。
音乐领域。大量MIDI音频旋律训练数据,RNN生成旋律。 。
深度学习可以创作艺术小样作为灵感种子。


参考资料:
《TensorFlow技术解析与实战》


欢迎推荐上海机器学习工作机会,我的微信:qingxingfengzi
阅读(1002) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~