Middle — Senior
33
Зачем нужен bias=False у Linear-слоёв в современных LLM?
Компании, где спрашивали
НейроЛаб
Райффайзенбанк
Ответ от нейросети
sobes.tech AI
В современных больших языковых моделях (LLM) часто устанавливают параметр bias=False в линейных слоях, чтобы убрать смещение (bias). Это связано с тем, что в архитектуре трансформеров смещения могут быть избыточными или даже вредными, так как:
- В нормализации слоёв (LayerNorm) уже есть сдвиг и масштабирование, которые компенсируют необходимость bias в линейных слоях.
- Удаление bias уменьшает количество параметров и может улучшить стабильность обучения.
- В некоторых случаях bias может привести к избыточной параметризации и ухудшению обобщающей способности модели.
Таким образом, bias=False помогает сделать модель более компактной и стабильной, особенно когда есть другие механизмы компенсации смещения.
Пример в PyTorch:
import torch.nn as nn
linear = nn.Linear(in_features=768, out_features=768, bias=False)