用python写一个神经网络
时间: 2023-05-12 10:03:20 浏览: 71
好的,以下是一个简单的神经网络的 Python 代码:
```python
import numpy as np
# 定义 sigmoid 函数
def sigmoid(x):
return 1 / (1 + np.exp(-x))
# 定义神经网络类
class NeuralNetwork:
def __init__(self, input_size, hidden_size, output_size):
self.input_size = input_size
self.hidden_size = hidden_size
self.output_size = output_size
# 初始化权重
self.weights1 = np.random.randn(self.input_size, self.hidden_size)
self.weights2 = np.random.randn(self.hidden_size, self.output_size)
def forward(self, inputs):
# 计算隐藏层输出
hidden = sigmoid(np.dot(inputs, self.weights1))
# 计算输出层输出
output = sigmoid(np.dot(hidden, self.weights2))
return output
# 创建神经网络对象
nn = NeuralNetwork(2, 3, 1)
# 测试神经网络
inputs = np.array([[0, 0], [0, 1], [1, 0], [1, 1]])
outputs = nn.forward(inputs)
print(outputs)
```
这个神经网络有 2 个输入节点,3 个隐藏节点和 1 个输出节点。它使用 sigmoid 函数作为激活函数,随机初始化权重,然后通过前向传播计算输出。
阅读全文