MATLAB常見的學習率下降策略
凱魯嘎吉 - 博客園 http://www.cnblogs.com/kailugaji/
1. 幾種常見的學習率下降策略(learning rate decay strategy)
t:自變量,迭代次數,λ(t):因變量,學習率,T:常量,最大迭代次數,其他參數均為常量,可自行設定。可以設定初始學習率λ(0):

1) exp


2) inv


3) plot


4) sigmoid


5) cosine_decay


6) Gaussian


2. MATLAB程序
function learning_rate_decay(choose)
% Author: kailugaji 凱魯嘎吉 - 博客園 http://www.cnblogs.com/kailugaji/
max_iter=1000;
y=zeros(1, max_iter);
t=1:max_iter;
if choose==1
% cosine decay
y(t)=0.5*(1+cos(pi*t/max_iter));
elseif choose==2
% plot p>1:凹曲線, 0<p<1:凸曲線
p=0.25;
y(t)=(1-(t/max_iter)).^p;
elseif choose==3
% inv
gamma=0.99; p=0.25;
y(t)=(1+gamma*t).^(-p);
elseif choose==4
% exp
gamma=0.99;
y(t)=gamma.^t;
elseif choose==5
% sigmoid
gamma=-0.01; stepsize=max_iter/2;
y(t)=1./(1+exp(-gamma*(t-stepsize)));
elseif choose==6
% Gaussian
sigma=300;
y(t)=exp(-(t.^2)/(2*(sigma^2)));
else
disp('input error!');
end
%%
plot(t, y);
axis([1, max_iter, 0, 1]);
xlabel('iter');
ylabel('learning rate');
3. 學習率衰減



4. 參考文獻
Tensorflow中learning rate decay的奇技淫巧
TensorFlow學習--學習率衰減/learning rate decay
邱錫鵬, 神經網絡與深度學習[M]. 2019.
