NN Linear - Predict with Artificial Neural Networks
NN Linear - это примитив в библиотеке глубокого обучения, который представляет собой полносвязный слой (Fully Connected Layer) в нейронной сети. Такой слой обычно используется для преобразования входных данных из одного набора признаков в другой набор признаков, состоящий из взвешенных сумм входных данных и смещений.
В PyTorch слой nn.Linear представлен классом, который принимает два аргумента: размерность входной последовательности (input_size) и размерность выходной последовательности (output_size). После создания слоя можно использовать его как часть модели нейронной сети:
import torch.nn as nn
# создаем слой размера 10 x 3 (10 входных признаков, 3 выходных признака)
linear_layer = nn.Linear(10, 3)
# пример использования слоя в модели
class MyModel(nn.Module):
def __init__(self):
super(MyModel, self).__init__()
self.linear = nn.Linear(10, 3)
self.activation = nn.ReLU()
def forward(self, x):
x = self.linear(x)
x = self.activation(x)
return x
В данном примере мы объявляем модель MyModel, которая содержит один слой nn.Linear и функцию активации ReLU. В методе forward мы применяем слой к входным данным и применяем после этого функцию активации.
Таким образом, слой nn.Linear позволяет задать полносвязный слой в нейронной сети для преобразования входных данных в выходные данные. Его применение напрямую зависит от конкретной задачи и архитектуры модели.