Middle — Senior
Proč je u moderních LLM potřebné nastavit bias=False u lineárních vrstevách?
sobes.tech AI
Odpověď od AI
V moderních velkých jazykových modelech (LLM) se často nastavuje parametr bias=False v lineárních vrstvách, aby se odstranil posun (bias). To souvisí s tím, že v architektuře transformerů mohou být posuny nadbytečné nebo dokonce škodlivé, protože:
- Normalizace vrstev (LayerNorm) již obsahuje posun a škálování, které kompenzují potřebu biasu v lineárních vrstvách.
- Odstranění biasu snižuje počet parametrů a může zlepšit stabilitu učení.
- V některých případech může bias vést k nadměrnému parametrizování a zhoršit schopnost modelu generalizovat.
Proto bias=False pomáhá učinit model kompaktnějším a stabilnějším, zejména když existují jiné mechanismy kompenzace posunu.
Příklad v PyTorch:
import torch.nn as nn
linear = nn.Linear(in_features=768, out_features=768, bias=False)