图灵Java架构师P8千亿项目
?
?
(5) 神经网络模型优化的常用方案
1、增加(减少)隐藏层的复杂度,如增加隐藏层数,调整隐藏层的神经元个数,或者在隐藏层使用更加复杂的网络结构,如CNN、RNN、LSTM、GRU或者增加Attention层等等;
2、添加Dropout层,使用Dropout的原理优化网络参数,防止过拟合;
3、尝试不同的优化器,常用的优化器包括SGD、Adam、RMSprop(动量相关);
4、增加迭代次数,一般为了快速检验模型效果训练次数比较少,优化过程中可以增加训练次数;
5、调整优化器的学习率,学习率太小会造成模型收敛速度下降,还有可能求出的是局部最优解,训练模型时的损失函数下降慢;学习率过大会引起模型无法到达最优解,在最优解附近来回跳转,但是一般情况下学习率并不是一成不变的,而是随着模型的训练在优化;
6、增加批处理的大小,采用批处理的方式训练数据时每个batch的数据进行一次反向传播,更新参数,所以每个batch的数据分布对模型训练有着一定的影响,调整batch_size的大小,对模型优化有一定的作用;
7、正则化,可以优化模型太过复杂而引起运行时间过长的问题,也可以在一定程度上防止模型过拟合。(过拟合也就是模型把训练数据的内部关系都记下来了,在训练集损失函数很小,但是在测试集上损失函数开始增大,也就是在测试集上的效果开始下降)
(6)常用特征提取方法
1、潜在语义索引:利用SVD奇异值分解方法来获得文本的主题
2、主成分分析(PCA), 是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。
3、线性判别分析
在自然语言处理领域, LDA是隐含狄利克雷分布,他是一种处理文档的主题模型。LDA是一种监督学习的降维技术,而PCA是无监督的降维技术,LDA是在降维的基础上考虑了类别的因素,希望得到的投影类内方差最小,类与类之间的方差最大。
(7)为什么要卷积?
第一种称为参数共享。理想的是,在图像的一个部分中有用的特征检测器可能在图像的另一部分中有用。例如,边缘检测器可能对图像的许多部分有用。参数的共享允许参数的数量很小并且还允许稳健的平移不变性。翻译不变性是指猫移动和旋转的概念仍然是猫的图片。
第二个被称为稀疏连接。每个输出层只是少量输入的函数(特别是滤波器大小的平方)。这大大减少了网络中的参数数量,并允许更快的培训。
原文:https://www.cnblogs.com/ubkz/p/15221577.html