更新於 2024/08/22閱讀時間約 1 分鐘

AI說書 - 從0開始 - 143 | BERT 微調之 Optimizer 設定

我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。


既然要執行模型訓練,就必須要談到 Optimizer,然而為了避免 Overfitting,通常會排程 Decay Rate,也正因如此,需要區隔哪些 Optimizer 中的參數不被 Decay Rate 排程納管 (也就是不 Decay),程式為:

param_optimizer = list(model.named_parameters())
no_decay = ['bias', 'LayerNorm.weight']

optimizer_grouped_parameters = [{'params': [p for n, p in param_optimizer if not any(nd in n for nd in no_decay)], 'weight_decay_rate': 0.1}, {'params': [p for n, p in param_optimizer if any(nd in n for nd in no_decay)], 'weight_decay_rate': 0.0}]


分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.