Natural Language Processing Lecture06

Natural Language Processing Lecture06

Some training tips

在人工神经模型中,由于参数过多,很容易导致过拟合。所以在此提出一系列优化方法。

  • Dropout

    在全连接网络中,每一层随机去掉一些节点

  • Regulation

    在 Loss 函数上,加上所有参数的均方差或者绝对值。减小每个参数对训练的影响,减小过拟合的可能性。

  • Back normalization

Convolutional Neural Networks (CNN)

\(res = n -f + 1, n \ 是原矩阵的维度,f \ 是 Kernel 的维度, res \ 是结果矩阵的维度\)

一张图片进行卷积操作,带来了

平移不变性(Local invariant):虽然图像变了,但依然能够识别图像的特征

参数共享(Parameters sharing):减少了参数数量

Feature detection

卷积操作可以检测出 10 与 0 之间的分割线,在 30

与 30 之间。

More about CNNs

在卷积之前,会加上 padding,扩大原图,卷积后的维度不变

\(n + 2p -f +1 =n\)\(f=2p+1\)

加上 padding 使得图像边缘得到有效利用

  • Valid Padding = No Padding,正常卷积
  • Same Padding,\(f = 2p+1\),一般 \(f\) 是奇数

Strides

正常卷积时,Strides = 1,但可以将 Strides 设为其他值。(步长)

\(res = [\frac{n+2p-f}s+1]\)

Receptive field

感受野

卷积神经网络每一层输出的特征图(feature map)上每个像素点在原始图像上映射的区域大小。

Pooling layers

max pool 取最大值,average pool 取平均值

好处:无需参数、降低维度

Feature maps

亦可以用激活函数对每次卷积结果进行激活。

与 ANN 区别在于,把单纯的线性运算变为了矩阵运算。

Recent development of CNNs

  • Dilated / Atrous Convolution

    在原来的 convolution map 里注入空洞,增加感受野。

    Standard Convolution with a 3 x 3 kernel (and padding)
    Dilated Convolution with a 3 x 3 kernel and dilation rate 2
  • Transposed convolution

    假设有 4x4 image, kernel 为 3x3 , stride 为 1 构造卷积矩阵如下:

    将 kernel 转换为 4 x 16 的矩阵,为了矩阵乘法将 image 转为 16 x 1 的矩阵:

    乘结果得到的是 4 x 1的矩阵,再将其 reshape 一下得到的即为上图 2x2的 feature。有了上面基础,目前的输入的 4x1,想得到 4x4 的矩阵,那么需要构造 16 x 4 的矩阵,该矩阵正好可以是卷积矩阵的转置。那么转置卷积矩阵里面的参数和卷积矩阵是否有关系呢?大多数情况下是不用卷积矩阵的参数的,只是提供一个shape,让网络能够上采样得到之前大小图片。

  • Alex net
  • VGG
  • GoogleLeNet
  • TextCNN

# NLP

Comments

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×