Pytorch第2周:深度学习基础 - Day 8-9: 神经网络基础
学习目标:
理解神经网络的基础概念。
学习如何使用PyTorch的nn模块构建神经网络。
学习内容:
神经网络基础概念:
神经元:构成神经网络的基本单元,模拟生物神经元的功能。
层:神经网络的构建块,包括输入层、隐藏层和输出层。
激活函数:引入非线性因素,使网络能够学习复杂的模式,如ReLU、Sigmoid、Tanh等。
使用PyTorch的nn模块:
torch.nn模块是PyTorch中构建神经网络的核心库。
学习如何定义一个简单的神经网络,包括层的堆叠和激活函数的应用。
代码示例:构建一个简单的神经网络
import torch
from torch import nn
class SimpleNeuralNetwork(nn.Module):
def init(self):
super(SimpleNeuralNetwork, self).init()
# 定义网络层
self.layer1 = nn.Linear(in_features=784, out_features=128) # 第一层
self.layer2 = nn.Linear(128, 64) # 第二层
self.output = nn.Linear(64, 10) # 输出层
def forward(self, x):
x = torch.relu(self.layer1(x)) # 应用ReLU激活函数
x = torch.relu(self.layer2(x))
x = self.output(x)
return x
net = SimpleNeuralNetwork()
print(net)
在这个例子中,我们创建了一个简单的全连接神经网络,它有两个隐藏层,每层后都使用了ReLU激活函数。这是一个基础的网络结构,可以根据需要进行调整和扩展。
小结
在第8到第9天,你将学习神经网络的基本概念和构建块,以及如何在PyTorch中实际搭建一个简单的神经网络。这些基础知识是学习更复杂的深度学习模型的基石。在掌握了这些基础之后,我们将能够更深入地理解神经网络是如何工作的,以及如何应用它们来解决实际问题。