Spec-Zone.ru › PyTorch 2

Линейное

class torch.nn.Linear(in_features, out_features, bias=True, device=None, dtype=None) [source]

Применяет линейное преобразование к входным данным: y=xAT+by = xA^T + b

Этот модуль поддерживает TensorFloat32.

На некоторых устройствах ROCm, при использовании входных данных float16, этот модуль будет использовать разную точность для обратного распространения.

Параметры
  • in_features (int) – размер каждого входного образца
  • out_features (int) – размер каждого выходного образца
  • bias (bool) – Если установлено в False, слой не будет обучаться с аддитивным смещением. По умолчанию: True
Форма:
  • Вход: (∗,Hin)(*, H_{in}), где ∗* означает любое количество измерений, включая нулевое, и Hin=in_featuresH_{in} = \text{in\_features}.
  • Выход: (∗,Hout)(*, H_{out}), где все измерения, кроме последнего, имеют ту же форму, что и вход, и Hout=out_featuresH_{out} = \text{out\_features}.
Переменные
  • weight (torch.Tensor) – обучаемые веса модуля формы (out_features,in_features)(\text{out\_features}, \text{in\_features}). Значения инициализируются из U(−k,k)\mathcal{U}(-\sqrt{k}, \sqrt{k}), где k=1in_featuresk = \frac{1}{\text{in\_features}}
  • bias – обучаемое смещение модуля формы (out_features)(\text{out\_features}). Если bias является True, значения инициализируются из U(−k,k)\mathcal{U}(-\sqrt{k}, \sqrt{k}) где k=1in_featuresk = \frac{1}{\text{in\_features}}

Примеры:

>>> m = nn.Linear(20, 30)
>>> input = torch.randn(128, 20)
>>> output = m(input)
>>> print(output.size())
torch.Size([128, 30])

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.nn.Linear.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API