1,機器學習中的學習率設定
學習率控制的是引數的更新速度,學習率設定過大,會導到損失函式在極小值附近來回變化,不收斂,
學習率設定過小,會導到學習速度變慢。
tensorflow中提供了學習率衰減機制,可以開設定乙個較大的學習率和乙個衰減係數,讓損失函式在剛開始
以的較快的速度下降,隨著訓練次數增加,學習率也逐漸變小,使用損失函式以乙個比較慢的速度收斂。
2,公式
decayed_learning_rate = learning_rate * decay_rate^(global_step/decay_steps)
learning_rate為學習率,初始時設定為乙個較大的值,比如0.2,
decay_rate 為衰減率,初始時設定為較大的值0.9
global_steps:訓練次數,當前訓練了多少次
decay_steps:衰減次數,為樣本總數/個次訓練的batch大小,固定值
3,乙個tensorflow中的使用樣例
learning_rate = tf.train.exponential_decay(learning_rate_base,
global_step, mnist.train.num_examples/batch_size,
learning_rate_decay)
train_step = tf.train.gradientdescentoptimizer(learning_rate).minimize(loss, global_step=global_step)
優化之 學習率的設定
先用較大的學習率來加速得到較優解,隨著迭代的繼續逐步減小學習率,使得模型在訓練後期更加穩定。decayed learning rate learning rate decay rate global step decay step learning rate為設定的初始學習率 decay rate為...
機器學習 學習率
本文從梯度學習演算法的角度中看學習率對於學習演算法效能的影響,以及介紹如何調整學習率的一般經驗和技巧。在機器學習中,監督式學習 supervised learning 通過定義乙個模型,並根據訓練集上的資料估計最優引數。梯度下降法 gradient descent 是乙個廣泛被用來最小化模型誤差的引...
機器學習 學習率
本文從梯度學習演算法的角度中看學習率對於學習演算法效能的影響,以及介紹如何調整學習率的一般經驗和技巧。在機器學習中,監督式學習 supervised learning 通過定義乙個模型,並根據訓練集上的資料估計最優引數。梯度下降法 gradient descent 是乙個廣泛被用來最小化模型誤差的引...