Bitsandbytes 文件

LARS

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

LARS

LARS (Layer-wise Adaptive Rate Scaling) 是一種專為大批次訓練設計的最佳化器,旨在加速訓練過程。LARS 為每個*層*而不是每個引數使用單獨的學習率。該學習率是透過層中權重和梯度範數之間的*信任比*來計算的。這有助於校準一個穩定的更新幅度。

LARS

class bitsandbytes.optim.LARS

< >

( params lr momentum = 0 dampening = 0 weight_decay = 0 nesterov = False optim_bits = 32 args = None min_8bit_size = 4096 percentile_clipping = 100 max_unorm = 0.02 )

__init__

< >

( params lr momentum = 0 dampening = 0 weight_decay = 0 nesterov = False optim_bits = 32 args = None min_8bit_size = 4096 percentile_clipping = 100 max_unorm = 0.02 )

引數

  • params (torch.tensor) — 待最佳化的輸入引數。
  • lr (float) — 學習率。
  • momentum (float, 預設為 0) — 動量值透過採取更大的步長來加速最佳化器。
  • dampening (float, 預設為 0) — 阻尼值減小最佳化器的動量。
  • weight_decay (float, 預設為 1e-2) — 最佳化器的權重衰減值。
  • nesterov (bool, 預設為 `False`) — 是否使用 Nesterov 動量。
  • optim_bits (int, 預設為 32) — 最佳化器狀態的位數。
  • args (object, 預設為 `None`) — 包含附加引數的物件。
  • min_8bit_size (int, 預設為 4096) — 8位最佳化中引數張量的最小元素數量。
  • percentile_clipping (int, 預設為 100) — 透過跟蹤最近 100 個梯度範數,並在特定百分位數處對梯度進行裁剪來自動調整裁剪閾值,以提高穩定性。
  • max_unorm (float, 預設為 0.02) — 最大梯度範數。

基礎 LARS 最佳化器。

LARS8bit

class bitsandbytes.optim.LARS8bit

< >

( params lr momentum = 0 dampening = 0 weight_decay = 0 nesterov = False args = None min_8bit_size = 4096 percentile_clipping = 100 max_unorm = 0.02 )

__init__

< >

( params lr momentum = 0 dampening = 0 weight_decay = 0 nesterov = False args = None min_8bit_size = 4096 percentile_clipping = 100 max_unorm = 0.02 )

引數

  • params (torch.tensor) — 待最佳化的輸入引數。
  • lr (float) — 學習率。
  • momentum (float, 預設為 0) — 動量值透過採取更大的步長來加速最佳化器。
  • dampening (float, 預設為 0) — 阻尼值減小最佳化器的動量。
  • weight_decay (float, 預設為 1e-2) — 最佳化器的權重衰減值。
  • nesterov (bool, 預設為 `False`) — 是否使用 Nesterov 動量。
  • args (object, 預設為 `None`) — 包含附加引數的物件。
  • min_8bit_size (int, 預設為 4096) — 8位最佳化中引數張量的最小元素數量。
  • percentile_clipping (int, 預設為 100) — 透過跟蹤最近 100 個梯度範數,並在特定百分位數處對梯度進行裁剪來自動調整裁剪閾值,以提高穩定性。
  • max_unorm (float, 預設為 0.02) — 最大梯度範數。

8位 LARS 最佳化器。

LARS32bit

class bitsandbytes.optim.LARS32bit

< >

( params lr momentum = 0 dampening = 0 weight_decay = 0 nesterov = False args = None min_8bit_size = 4096 percentile_clipping = 100 max_unorm = 0.02 )

__init__

< >

( params lr momentum = 0 dampening = 0 weight_decay = 0 nesterov = False args = None min_8bit_size = 4096 percentile_clipping = 100 max_unorm = 0.02 )

引數

  • params (torch.tensor) — 待最佳化的輸入引數。
  • lr (float) — 學習率。
  • momentum (float, 預設為 0) — 動量值透過採取更大的步長來加速最佳化器。
  • dampening (float, 預設為 0) — 阻尼值減小最佳化器的動量。
  • weight_decay (float, 預設為 1e-2) — 最佳化器的權重衰減值。
  • nesterov (bool, 預設為 `False`) — 是否使用 Nesterov 動量。
  • args (object, 預設為 `None`) — 包含附加引數的物件。
  • min_8bit_size (int, 預設為 4096) — 8位最佳化中引數張量的最小元素數量。
  • percentile_clipping (int, 預設為 100) — 透過跟蹤最近 100 個梯度範數,並在特定百分位數處對梯度進行裁剪來自動調整裁剪閾值,以提高穩定性。
  • max_unorm (float, 預設為 0.02) — 最大梯度範數。

32位 LARS 最佳化器。

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.