大纲
-
Neural Network Components
- Simple Neuron;Multilayer;Feedforward;Non-linear;…
- How to Train
- Objective;Gradients;Backpropogation
- Word Representation:Word2Vec
- Common Netural Networks
- RNN
- Sequential Memory;Language Model
- Gradient Problem for RNN
- Varians;GRU;LSTM;Bidirectional;
- CNN
- RNN
- NLP Pipeline Tutorial(PyTorch)
Neural Network
- (Aritificial)Neural Network
- Inspired by the biological neural networks in brains
- 一层神经网络
- 叠加多层神经网络,多层隐藏层
- 激活函数(sigmoid、tanh,ReLU)
- Sigmoid把R——>(0,1),Tanh把R——>(-1,1),ReLU(把结果输出为0)
- 输出层:线性输出层(回归问题),sigmoid输出层(线性层,输出y(0,1)解决二分类问题),softmax(多分类问题)
Training Objective
- Mean Squared Error
- Croos-entropy(交叉熵——衡量模型正确分类的指标)
- 最小化损失函数——梯度下降法
- 链式法则——数分三
Backpropagation(反向传播算法)
- Compute gradients algorithmically
- Used by deep learning frameworks (TensorFlow,PyTorch,etc.)
- 前向传播
- 反向传播,用和计算图相反的方向
Word2Vec
- 一般由两类模型——CBOW、Skip-Gram
- 有两种方法提高计算效率:负采样和分层softmax
- 负采样:不把全部词表作为softmax,只采样一小部分
Recurrent Neural Networks(循环神经网络)RNN
- 处理序列数据的期间会进行顺序记忆:Key concept for RNNs:Sequential memory during processing sequence data
- Sequential memory of human:
- say the alphabet in your head(容易不卡顿)
- 倒置后会更困难
- RNN update the sequential memory recursively for modeling sequence data
- h0随机初始化,h4最终结果
- 运用场景:序列标注(词性)、序列预测(预测一周温度),图片描述,文本分类(情感正面or负面)
- 优点:
- 可以处理变长的数据
- 模型的大小不会随着输入的增加而增大
- 权重贡献
- 后面的计算也可以使用之前的信息
- 缺点
- 计算时间较慢
- 随着信息增加很难获取到之前信息计算
- 梯度传播
- RNN的几个变体:GRU、LSTM 长距离依赖性
GRU(门控机制)更新门、权重门
LSTM(长短时记忆网络)
- The key to LSTMs is the cell state C_{t}
- if f_{t}=0,forget 遗忘门,直接丢弃不要
双向RNN
- summary
CNN卷积神经网络(convolutional Neural Networks)
运用场合
CNN vs RNN,RNN(不能并行化)