官方文件如下:
torch.optim.lr_scheduler.steplr(optimizer, step_size, gamma=
0.1, last_epoch=-1
)
parameters:
step_size(
int) – period of learning rate decay.
gamma(
float
) – multiplicative factor of learning rate decay. default:
0.1.
last_epoch(
int) – the index of last epoch. default:-1
.常用引數:
optimizer:優化器
step_size:學習率衰減週期
gamma:學習率衰減乘子
那麼具體是如何進行學習率更新的呢?官網給出了乙個example:
>>
>
# assuming optimizer uses lr = 0.05 for all groups
>>
>
# lr = 0.05 if epoch < 30
>>
>
# lr = 0.005 if 30 <= epoch < 60
>>
>
# lr = 0.0005 if 60 <= epoch < 90
>>
>
# ...
>>
> scheduler = steplr(optimizer, step_size=
30, gamma=
0.1)
>>
>
for epoch in
range
(100):
>>
> train(..
.)>>
> validate(..
.)>>
> scheduler.step(
)
即在訓練的過程中,每step_size次更新一次學習率,那麼lr_new=lr * gamma
,lr_new
是新的學習率,lr
是舊的學習率,gamma是衰減乘子。 熱更新學習筆記(三)
熱更新學習筆記 三 之 luainte ce學習 1.c 與 lua如何互相呼叫?c 與lua互相呼叫的通訊,我們的通訊是通過什麼完成呢?就是 luainte ce,這是乙個開源的專案。2.什麼是luainte ce?luainte ce它包含兩個非常核心的庫,乙個是 luainte ce.dll,...
Torch7深度學習教程(二)
這是自己定義tensor的值輸入10個整型值,列印price,注意這時它只是乙個有10資料的tensor。對比這兩張,第一張是有10個資料的tensor,第二張是10x1的矩陣,也可以成為列向量 神經網路經常用到 是呼叫了reshape 方法轉換的,它們看著一樣本質上是不一樣的!這時再次呼叫resh...
Torch7深度學習教程(五)
這一節先介紹一些基本操作,然後再對我們前面建立的網路進行訓練 隨即生產一張 1通道,32x32畫素的。為了直觀像是,匯入image包,然後用itorch.image 方法顯示生成的,就是隨即的一些點。用之前建立好的神經網路net呼叫forward 方法輸入隨即生成的得到輸出的結果,如列印出來的形式,...