PyTorch 三层全连接神经网络构建教程
PyTorch 三层全连接神经网络构建教程
本教程将详细讲解如何在PyTorch中构建一个三层全连接神经网络,并展示网络结构和实现代码。
# 导入PyTorch模块
import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
# 定义一个三层全连接神经网络类
class Net(nn.Module):
def __init__(self):
super(Net, self).__init__()
# 定义第一层,输入维度为10,输出维度为20
self.fc1 = nn.Linear(10, 20)
# 定义第二层,输入维度为20,输出维度为30
self.fc2 = nn.Linear(20, 30)
# 定义第三层,输入维度为30,输出维度为1
self.fc3 = nn.Linear(30, 1)
def forward(self, x):
# 前向传播,输入x经过每一层,并使用ReLU激活函数
x = F.relu(self.fc1(x))
x = F.relu(self.fc2(x))
x = self.fc3(x)
return x
# 创建一个神经网络实例
net = Net()
# 打印网络结构
print(net)
输出结果为:
Net(
(fc1): Linear(in_features=10, out_features=20, bias=True)
(fc2): Linear(in_features=20, out_features=30, bias=True)
(fc3): Linear(in_features=30, out_features=1, bias=True)
)
说明该神经网络有三层,分别是输入层、隐藏层和输出层,输入层维度为10,隐藏层1维度为20,隐藏层2维度为30,输出层维度为1。每一层都是线性变换加上ReLU激活函数。
原文地址: https://www.cveoy.top/t/topic/nIAV 著作权归作者所有。请勿转载和采集!