python神经网络的实例
时间: 2024-10-19 19:12:30 浏览: 16
python实例-神经网络实现手写字符识别系统
Python是一种常用的语言,常用于构建神经网络模型,特别是在深度学习领域。这里是一个简单的例子,展示如何使用PyTorch库创建一个基本的全连接神经网络:
```python
import torch
import torch.nn as nn
# 定义一个拥有两个隐藏层的简单神经网络结构
class SimpleNet(nn.Module):
def __init__(self, input_size, hidden_size1, hidden_size2, output_size):
super(SimpleNet, self).__init__()
self.fc1 = nn.Linear(input_size, hidden_size1) # 第一个全连接层
self.relu = nn.ReLU() # 激活函数,这里使用ReLU
self.fc2 = nn.Linear(hidden_size1, hidden_size2)
self.out = nn.Linear(hidden_size2, output_size) # 输出层
def forward(self, x):
x = self.fc1(x)
x = self.relu(x)
x = self.fc2(x)
x = self.relu(x)
out = self.out(x)
return out
# 创建网络实例并设置超参数
input_size = 784 (假设输入数据是28x28像素的图片)
hidden_size1 = 500
hidden_size2 = 300
output_size = 10 (例如对于MNIST分类任务,有10种可能的标签)
model = SimpleNet(input_size, hidden_size1, hidden_size2, output_size)
# 初始化权重和偏置
for m in model.modules():
if isinstance(m, nn.Linear):
nn.init.normal_(m.weight, mean=0, std=0.01)
nn.init.constant_(m.bias, 0)
```
在这个例子中,`nn.Module`是所有模型的基础类,我们定义了前向传播`forward()`函数,以及线性和激活层。然后我们可以用随机初始化的权重对模型进行训练。
阅读全文