神经网络入门实战:(九)分类问题 → 神经网络模型搭建模版和训练四步曲

(一) 神经网络模型搭建官方文档

每一层基本都有权重和偏置,可以仔细看官方文档。

pytorch 官网的库:torch.nn --- PyTorch 2.5 documentation

  • Containers库:用来搭建神经网络框架(包含所有的神经网络的框架);
  • ++特征提取:++
    • Convolution Layers:用来搭建卷积层;
    • Pooling layers:用来搭建池化层;
    • Padding Layers:用来搭建填充层;
  • ++分类:++
    • Linear Layers:用来搭建全连接层。

(二) 神经网络模型模版(Containers库中的nn.Module)

在写代码的过程中,通常会把神经网络定义成一个类(class),其模版就如下所示:

python 复制代码
# 我们的模型类应该继承自nn.Module,这是所有神经网络模块的基类。
# 每个模型类中,都必须要定义以下两个
class LinearModel(torch.nn.Module): # 其中nn是神经网络neural network的缩写
    def __init__(self): # 构造函数,初始化对象时调用的函数,名字也不能变
        super(LinearModel,self).__init__() # 直接写super().__init__()也行
        self.linear = torch.nn.Linear(1,1)
    def forward(self, x): # 前向传播函数,就必须要叫这个名字,因为 nn.Module 类的call方法里调用了名为forward函数
        y_pred = self.linear(x)
        return y_pred
model = LinearModel()

# 其中反向传播的计算,是自动进行的,所有继承自Module的类,都如此。

示例:

python 复制代码
import torch
from torch import nn

class testNet(nn.Module):
	def __init__(self):
		super(testNet, self).__init__()

	def forward(self, input):
		output = input + 4
		return output

first_net = testNet()
x = torch.tensor(1.0)
output = first_net(x) # 因为 nn.Module 类的call方法里调用了名为forward函数,所以这里可以直接将实例当做函数使用。
print(output)
------------------------------------------------------------------------------------------------------------------
# 运行结果
tensor(5.)

(三) 神经网络训练套路(四部曲)

其中的损失函数、优化器,以及训练循环体后面会详细讲解

准备数据集 → 设计模型 → 创建损失函数和优化器 → 写训练循环体。

以逻辑回归为例:


上一篇 下一篇
神经网络入门实战(八) 神经网络入门实战(十)
相关推荐
AdCj3几秒前
GitHub 日榜速递 (2026-06-08):AI 基础设施正在“下沉“
人工智能·github·agent
实在智能RPA2 分钟前
RPA-Agent的自主规划边界在哪里?——2026:从指令执行到目标驱动的技术跨越
大数据·人工智能·ai·rpa
星川皆无恙2 分钟前
基于BERT+LSTM+CRF与知识图谱的医疗智能问答系统实战:Neo4j图数据库+实体识别+意图分析完整项目
数据库·人工智能·深度学习·bert·lstm·知识图谱·neo4j
Python私教3 分钟前
OpenClaw真的能3分钟读完万字长文吗?
人工智能
叫我:松哥3 分钟前
基于数据挖掘的旅游景点个性化推荐系统设计与实现,Apriori和FP-Growth算法挖掘景点之间的关联规则
人工智能·python·算法·数据挖掘·数据分析·beautifulsoup
极光代码工作室4 分钟前
基于机器学习的客户分类系统设计
人工智能·python·深度学习·机器学习
SilentSamsara5 分钟前
scikit-learn 工作流工程化:Pipeline、ColumnTransformer 与自定义转换器
开发语言·人工智能·python·机器学习·青少年编程·numpy·scikit-learn
Leo.yuan6 分钟前
数据挖掘是什么?数据挖掘和数据分析到底有什么区别
人工智能·数据挖掘·数据分析
KaMeidebaby6 分钟前
卡梅德生物技术快报|噬菌体筛选:技术实操:宽谱大肠杆菌噬菌体筛选全流程与性能验证方案
前端·人工智能·算法·数据挖掘·数据分析
却道天凉_好个秋6 分钟前
HEVC(三):GOP
人工智能·hevc·gop