数据中台数据中台
申请试用
新闻动态
了解袋鼠云最新动态
新闻动态>「机器学习」机器学习中的学习率>
「机器学习」机器学习中的学习率
20201130|文章来源:-

「机器学习」机器学习中的学习率,在机器学习中,监管式学习培训(SupervisedLearning)根据界定一个实体模型,并依据训练集上的数据信息可能最优化主要参数。梯度下降法(GradientDescent)是一个普遍被用于降到最低实体模型出现偏差的原因的主要参数蚁群算法。梯度下降法根据数次迭代,并在每一步中降到最低成本函数(costfunction)来可能实体模型的主要参数(weights)。

梯度下降的伪代码以下:

反复已下全过程,直至收敛性已经{

ωj=ωj-λ∂F(ωj)/∂ωj

}

表明:(1)ωj是实体模型主要参数,F()是成本函数,∂F(ωj)/∂ωj是ωj的一阶导数,λ是学习率

(2)假如F()是单调函数,历经数次迭代会获得最少的成本函数;假如F()非简单,那麼大家有可能深陷部分最优化,一个简易的解决方案是根据数次试着不一样的ωj初值,比照不一样可能主要参数下的成本函数的值是不是一致,来发觉是不是深陷部分最优化。

(3)梯度下降法不一定是最优化的测算权重值主要参数的方式,可是做为一种简易迅速的方式,经常被应用。参考AndrewNg的Stanford公布课程内容。

梯度下降全过程的图例以下:

学习率的调节

「机器学习」机器学习中的学习率,为了更好地可以促使梯度下降法有不错的特性,大家必须把学习率的值设置在适合的范畴内。学习率决策了主要参数挪动到最优化值的速率速度。假如学习率过大,很可能会翻过最优化值;反倒假如学习率过小,提升的高效率很有可能过低,长期优化算法没法收敛性。因此 学习率针对优化算法特性的主要表现尤为重要。

针对不一样尺寸的数据,调整不一样的学习率

「机器学习」机器学习中的学习率,依据大家挑选的成本函数F()不一样,难题会出现差别。当平方米出现偏差的原因和(SumofSquaredErrors)做为成本函数时,∂F(ωj)/∂ωj会伴随着训练集数据信息的增加越来越越来越大,因而学习率必须被设置在相对更小的值上。

处理该类难题的一个方式是将学习率λ乘以1/N,N是训练集中信息量。那样每一集升级的公式计算变为下边的方式:

ωj=ωj-(λ/N)*∂F(ωj)/∂ωj

相关内容可参照:Wilsonetal.paper“Thegeneralinefficiencyofbatchtrainingforgradientdescentlearning”

此外一种解决方案是:挑选一个不被训练集样版数量危害的成本函数,如平均值平方差(MeanSquaredErrors)。

在每一次迭代中调整不一样的学习率

在每一次迭代中去调节学习率的值是另一种非常好的学习率响应式方式。该类方式的理论依据是如果你离最优化值越长,你需要朝最优化值挪动的就越大,即学习率就应当越大;相反亦反。

可是这儿有一个难题,便是大家并不了解事实上的最优化值在哪儿,大家也不知道每一步迭代中大家离最优化值多远。

解决方案是,我们在每一次迭代的最终,应用可能的实体模型主要参数查验误差函数(errorfunction)的值。假如相对性于上一次迭代,差错率降低了,就可以扩大学习率,以5%的力度;假如相对性于上一次迭代,差错率扩大了(代表着绕过了最优化值),那麼应当再次设定上一轮迭代ωj的值,而且降低学习率到以前的50%。这类方式叫做BoldDriver.

提议:归一化键入空间向量

归一化键入空间向量在机器学习难题中是一个通用性的方式。在一些运用中,因为应用间距或是特点标准差,规定务必归一化键入空间向量,由于如果不归一化将造成 結果会比较严重被具备大标准差的特点和不一样的限度危害。归一化键入可以协助标值最优化方式(比如,梯度下降法)更快,更精确地收敛性。

虽然有一些不一样的归一化自变量的方式,[0,1]归一化(也称为min-max)和z-score归一化是二种更为广泛运用的。

XminmaxNorm=(X-min(X))/(max(X)-min(X));

XzscoreNorm=(X-mean(X))/std(X);

免费试用袋鼠云数字化基础软件,开启企业数字化增长之旅
免费试用袋鼠云数字化基础软件,开启企业数字化增长之旅
袋鼠云立体IP
在线咨询
在线咨询
电话咨询
电话咨询
微信社群
微信社群
资料下载
资料下载
返回顶部
返回顶部