神经网络和卷积神经网络
层次结构
数据处理
训练算法
优缺点
正则化与Dropout
典型的结构与训练方式
神经网络之结构
卷积神经网络(Convolutional Neural Networks,CNN),CNN可以有效的降低反馈神经网络(传统神经网络)的复杂性,常见的CNN结构有LeNet-5、AlexNet、ZFNet、VGGNet、GoogleNet、ResNet等等,其中在LVSVRC2015冠军ResNet是AlexNet的20多倍,是VGGNet的8倍;从这些结构来讲CNN发展的一
个方向就是层次的增加,通过这种方式可以利用增加的非线性得出目标函数的近似结构,同时得出更好的特征表达,但是这种方式导致了网络整体复杂性的增加,使网络更加难以优化,很容易过拟合。CNN的应用主要是在图像分类和物品识别等应用场景应用比较多。
保持了层级网络结构
不同层次使用不同的形式(运算)与功能
卷积神经网络-主要层次
卷积神经网络-Input Layer
和神经网络/机器学习一样,需要对输入的数据需要进行预处理操作,需要进行预处理的主要原因是:
输入数据单位不一样,可能会导致神经网络收敛速度慢,训练时间长
数据范围大的输入在模式分类中的作用可能偏大,而数据范围小的作用就有可能偏小
由于神经网络中存在的激活函数是有值域限制的,因此需要将网络训练的目标数据映射到激活函数的值域
S形激活函数在(0,1)区间以外区域很平缓,区分度太小。例如S形函数f(X),f(100)与f(5)
只相差0.0067
常见3种数据预处理方式
去均值
将输入数据的各个维度中心化到0
归一化
将输入数据的各个维度的幅度归一化到同样的范围
PCA/白化
用PCA降维(去掉特征与特征之间的相关性)
白化是在PCA的基础上,对转换后的数据每个特征轴上的幅度进行归一化
• http://ufldl.stanford.edu/wiki/index.php/白化
去均值&归一化
PCA(去掉相关性)&白化