При использовании Библиотеки PyTorch(библиотека устонавливалась через conda) Возникает ошибка OSError: [WinError 127]. Как исправить данную ошибку?
Код программы:
import torch
import torch.nn as nn
import torch.optim as optim
import numpy as np
# Определение архитектуры нейронной сети
class Net(nn.Module):
def __init__(self, num_inputs, num_outputs, num_hidden):
super(Net, self).__init__()
self.fc1 = nn.Linear(num_inputs, num_hidden)
self.fc2 = nn.Linear(num_hidden, num_outputs)
self.activation_function = nn.ReLU()
def forward(self, x):
x = self.fc1(x)
x = self.activation_function(x)
x = self.fc2(x)
return x
# Создание тренировочных данных
inputs = np.array([[0, 0], [0, 1], [1, 0], [1, 1]])
outputs = np.array([[0], [1], [1], [0]])
# Создание экземпляра нейронной сети
net = Net(num_inputs=2, num_outputs=1, num_hidden=3)
# Определение функции потерь и оптимизатора
criterion = nn.MSELoss()
optimizer = optim.SGD(net.parameters(), lr=0.1)
# Обучение нейронной сети
for epoch in range(10000):
# Преобразование входных и выходных данных в тензоры PyTorch
inputs_tensor = torch.from_numpy(inputs).float()
outputs_tensor = torch.from_numpy(outputs).float()
# Прямой проход по нейронной сети
outputs_pred = net(inputs_tensor)
# Вычисление функции потерь
loss = criterion(outputs_pred, outputs_tensor)
# Обнуление градиентов
optimizer.zero_grad()
# Обратное распространение ошибки и вычисление градиентов
loss.backward()
# Обновление весов и смещений
optimizer.step()
# Тестирование нейронной сети
inputs_tensor = torch.from_numpy(inputs).float()
outputs_pred = net(inputs_tensor)
print(outputs_pred)
Вывод при компиляции:
Traceback (most recent call last):
File "D:\Development\Python\AI\AI_Start\main.py", line 1, in <module>
import torch
File "C:\Users\name\anaconda3\lib\site-packages\torch\__init__.py", line 128, in <module>
raise err
OSError: [WinError 127] Не найдена указанная процедура. Error loading "C:\Users\name\anaconda3\lib\site-packages\torch\lib\shm.dll" or one of its dependencies.
Process finished with exit code 1
Источник: Stack Overflow на русском