deep learning
数据增强技术(data augmentation),主要是在训练数据上增加微小的扰动或者变化,一方面可以增加训练数据,从而提升模型的泛化能力,另一方面可以增加噪声数据,从而增强模型的鲁棒性。主要的数据增强方法有:翻转变换 flip、随机修剪(random crop)、色彩抖动(color jittering)、平移变换(shift)、尺度变换(scale)、对比度变换(contrast)、噪声扰动(noise)、旋转变换/反射变换 (rotation/reflection)等,可以参考Keras的官方文档 [2] 。获取一个batch的训练数据,进行数据增强步骤之后再送入网络进行训练。
tensorflow
model.predict:预测的是数值,而且输出的还是5个编码值,不过是实数,预测后要经过argmax(predict_test,axis=1)。还会搭配 argmax()(取最大值的下标) 使用,argmax()产生一个独热向量(one-hot)
model.predict_classes:预测的是类别,打印出来的值就是类别号,同时只能用于序列模型来预测,不能用于函数式模型
卷积神经网络
卷积层:提取特征
池化层:主要作用是减小特征图,起到降维(机器学习 PCA)的作用。常用的方法是选取局部区域的最大值或者平均值
softmax(激活函数)
softmax() 本质就是一个指数函数,被用于多分类问题
CNNs
AlexNet
ZF Net
VGG Net
GoogLeNet
Microsoft ResNet
Region Based CNNs
Generative Adversarial Networks
Generating Image Descriptions
Spatial Transformer Networks