当前位置: 首页 > news >正文

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

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

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

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

在这里插入图片描述

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

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

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

# 我们的模型类应该继承自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的类,都如此。

示例:

import torch
from torch import nnclass testNet(nn.Module):def __init__(self):super(testNet, self).__init__()def forward(self, input):output = input + 4return outputfirst_net = testNet()
x = torch.tensor(1.0)
output = first_net(x) # 因为 nn.Module 类的call方法里调用了名为forward函数,所以这里可以直接将实例当做函数使用。
print(output)
------------------------------------------------------------------------------------------------------------------
# 运行结果
tensor(5.)

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

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

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

以逻辑回归为例:

在这里插入图片描述


上一篇下一篇
神经网络入门实战(八)神经网络入门实战(十)
http://www.lryc.cn/news/496237.html

相关文章:

  • Unity网络框架对比 Mirror|FishNet|NGO
  • 深入了解阿里云 OSS:强大的云存储解决方案
  • ansible使用说明
  • Qt 2D绘图之四:绘图中的其他问题
  • 启动中断函数HAL_TIM_Base_Start_IT()
  • Docker Buildx 与 CNB 多平台构建实践
  • 从Apache Solr 看 Velocity 模板注入
  • Spring 事务和事务传播机制
  • flutter 解决webview加载重定向h5页面 返回重复加载问题
  • STM32的寄存器是几位的?
  • 基于python的汽车数据爬取数据分析与可视化
  • 使用mtools搭建MongoDB复制集和分页集群
  • Redis(配置文件属性解析)
  • 思维导图+实现一个登录窗口界面
  • T507 buildroot linux4.9之RTC8563开发调试
  • 网络安全专业术语
  • 【大数据学习 | Spark-SQL】关于RDD、DataFrame、Dataset对象
  • zerotier实现内网穿透
  • Ardusub源码剖析——control_althold.cpp
  • Vue前端开发-路由的基本配置
  • HarmonyOS JSON解析与生成 常用的几个方法
  • Docker 进阶指南:常用命令、最佳实践与资源管理
  • 【前端】特殊案例分析深入理解 JavaScript 中的词法作用域
  • Jmeter进阶篇(29)AI+性能测试领域场景落地
  • 理解和应用 Python Requests 库中的 .json() 方法:详细解析与示例
  • docker 运行my-redis命令
  • cloudstack概要及单节点安装部署
  • Android Gradle 相关
  • SpringMVC:入门案例
  • LuaForWindows_v5.1.5-52.exe