学习笔记

Posted by Kiri on April 14, 2018

卷积神经网络

LeNet

Input Layer: $1\times32\times32$

Conv1 Layer: kernal size:

Pooling Layer: Average Pooling, size: , sigmoid

Conv3 Layer: kernal size:

Pooling Layer: Average Pooling, size: , sigmoid

Conv5 Layer: kernal size:

Fully Connected Layer: sigmoid

Output Layer: Gaussian connection

AlexNet

Input Layer:

Conv1 Layer: kernal size: $11\times 11\times 3$, stride: $4$

Pooling Layer: Max Pooling, size: $5 \times 5$, stride: 4, ReLU

Conv2 Layer:

GoogleNet

VGG

ResNet

目标检测

R-CNN

利用Selective Search提取约2000个候选区域,选取卷积神经网络AlexNet模型对每个候选区域提取特征,并将提取的特征送入每一类SVM 分类器判断是否属于该类,最后使用回归器精细修正候选框位置。

Fast R-CNN

Fast RCNN将边界框回归直接加入到CNN网络中训练,完全替代SVM,实现了特征提取和分类定位的融合,极大地提高了训练速度和检测精度。

Faster R-CNN

在这个网络中,引入了RPN(Region Proposal Network),与整个检测网络共享整张图的卷积特征。PRN是一个Full-Convolutional网络,可以同时预测每个位置物体边界位置和目标物体的score。在PASCAL VOC 2007上mAP为73.2%。

TF-Faster-RCNN程序运行笔记。

Mask R-CNN

Mask R-CNN是一个小巧、灵活的通用对象实例分割框架。它不仅可对图像中的目标进行检测,还可以对每一个目标给出一个高质量的分割结果。它在Faster R-CNN基础之上进行扩展,并行地在Bounding Box Recognition分支上添加一个用于预测目标Mask的新分支。该网络还很容易扩展到其他任务中,比如估计人的姿势,也就是Person Keypoint Detection。

YOLO

与基于分类器的方法不同,YOLO将目标检测作为回归问题求解,用单个神经网络在一次评估中直接从整幅图像中预测边界框与类别概率。YOLO只有一个训练网络,大大加快了检测的速度。

SSD

SSD采用VGG-16作为基础模型,然后在VGG-16的基础上新增了卷积层来获得更多的特征图以用于检测。

机器学习

梯度下降算法

随机梯度下降

每次迭代只使用一个样本(批量大小为 1)。如果进行足够的迭代,SGD 也可以发挥作用,但过程会非常杂乱。“随机”这一术语表示构成各个批量的一个样本都是随机选择的。

小批量梯度下降

是介于全批量迭代与 SGD 之间的折衷方案。小批量通常包含 10-1000 个随机选择的样本。小批量 SGD 可以减少 SGD 中的杂乱样本数量,但仍然比全批量更高效。

梯度下降优化算法

Momentum

动量因子$\gamma$通常设置为0.9或相近值,参数更新方向不仅由当前梯度决定, 也与此前累计下降方向相关。加速更新参数中沿着梯度的方向变化不大的维度,减少变化较大的维度上的更新幅度,因此加快了收敛速度并减少了震荡。

Nesterov accelerated gradient

根据未来位置计算梯度,并进一步计算步长,这种计算梯度的方法可以使算法更好额预测未来,提前调整更新速率。

Adagrad

在前面几种梯度下降算法的更新规则中,很显然,对于每一个 参数$\theta_i​$采用相同的学习速率进行参数更新。

在Adagrad更新规则中,根据第$t$次更新中针对每一个参数$\theta_i $对学习速率$\eta$进行调整 其中$\epsilon$为平滑因子,避免被除数为0的情况,通常取值为$1e-8$。 在没有平方根操作的情况下,该算法表现的相当糟糕

Adadelta

Adadelta作为Adagrad的扩展,主要是削弱单调急剧降低的学习率,这样随着迭代次数的增加,网络更新能力越来越弱。因此将梯度和定义为一个历史梯度衰减的平均值,动态均值$E[g^2]_t$仅仅取决于当前的梯度值与上一时刻的平均值,具体计算如下: 其中$\gamma$与动量因子相似,一般设置为0.9左右。 在Adagrad算法中,$\Delta \theta_t = - \frac{\eta}{\sqrt{G_t + \epsilon}} \odot g_t​$

在Adadelta算法中我们将历史梯度和替换成历史梯度衰减平均值 ,具体如下:

RMSprop

特殊的Adadelta算法

Adam

默认值$\beta_1 = 0.9, \ \beta_2 = 0.999, \ \epsilon = 10^{-8}$

生成学习算法

高斯判别分析法

多变量高斯分布 其中均值,方差

高斯判别分析模型

服从关于的伯努利分布

:

使 取最大时,参数如下

标签为0对应的求和 标签为0的数目

服从多变量高斯分布,必然遵循逻辑函数。

朴素贝叶斯

MathJax TeX Test Page