bp神经网络python代码实现
时间: 2023-10-22 08:04:32 浏览: 51
BP神经网络的Python代码实现可以使用Pytorch库来实现,以下是一个简单的示例代码:
```python
import torch
import torch.nn as nn
# 定义一个简单的BP神经网络模型
class Net(nn.Module):
def __init__(self):
super(Net, self).__init__()
self.fc1 = nn.Linear(4, 8) # 输入层到隐藏层
self.fc2 = nn.Linear(8, 1) # 隐藏层到输出层
def forward(self, x):
x = self.fc1(x)
x = torch.sigmoid(x)
x = self.fc2(x)
return x
# 创建模型和损失函数
net = Net()
criterion = nn.MSELoss()
optimizer = torch.optim.SGD(net.parameters(), lr=0.01)
# 训练模型
inputs = torch.tensor([[1, 2, 3, 4]], dtype=torch.float32)
targets = torch.tensor([[0.5]], dtype=torch.float32)
for epoch in range(1000):
optimizer.zero_grad()
outputs = net(inputs)
loss = criterion(outputs, targets)
loss.backward()
optimizer.step()
# 测试模型
test_input = torch.tensor([[2, 4, 6, 8]], dtype=torch.float32)
test_output = net(test_input)
print(test_output)
```