использование nn.Разреженная линия в pytorch

#pytorch

Вопрос:

Привет, я реализую слабосвязанную нейронную сеть, используя следующий код: «Это та часть кода, в которой есть проблема».

 from torchvision import datasets, transforms
import torch
import torchvision
import torch.nn as nn
import torchvision.transforms as transforms
import torchvision.datasets as dsets
import sys
import os



class FeedforwardNeuralNetModel(nn.Module):
    def __init__(self, input_dim, hidden_dim, output_dim):
        super().__init__()
        # Linear function
        self.fc1 = nn.SparseLinear(input_dim, hidden_dim)

        # Non-linearity
        self.sigmoid = nn.Sigmoid()

        # Linear function (readout)
        self.fc2 = nn.SparseLinear(hidden_dim, output_dim)


    def forward(self, x):

        out = self.fc1(x)
        out = self.sigmoid(out)
        out = self.fc2(out)

        return out
 

Но я получаю эту ошибку
Ошибка атрибута: модуль «torch.nn» не имеет атрибута «Разреженная линия»

Ответ №1:

Это сработало, добавив в библиотеки эту строку:

из разреженной линии импортируйте разреженную линию

и изменение этих строк

От:

self.fc1 = nn.разреженная линия(input_dim, hidden_dim)

self.fc2 = nn.разреженная линия(hidden_dim, output_dim)

Для:

self.fc1 = разреженная линия(input_dim, hidden_dim)

self.fc2 = разреженная линия(hidden_dim, output_dim)