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

小白的进阶之路系列之十一----人工智能从初步到精通pytorch综合运用的讲解第四部分

本文将介绍如何用PyTorch构建模型

torch.nn.Module和torch.nn.Parameter

除了Parameter之外,本视频中讨论的所有类都是torch.nn.Module的子类。这是PyTorch基类,用于封装PyTorch模型及其组件的特定行为。

torch.nn.Module的一个重要行为是注册参数。如果特定的Module子类具有学习权值,则这些权值表示为torch.nn.Parameter的实例。Parameter类是torch的子类。张量,具有特殊的行为,当它们被分配为模块的属性时,它们被添加到该模块的参数列表中。这些参数可以通过Module类的parameters()方法访问。

作为一个简单的例子,这里有一个非常简单的模型,有两个线性层和一个激活函数。我们将创建它的一个实例,并要求它报告其参数:

import torchclass TinyModel(torch.nn.Module):def __init__(self):super(TinyModel, self).__init__()self.linear1 = torch.nn.Linear(100, 200)self.activation = torch.nn.ReLU()self.linear2 = torch.nn.Linear(200, 10)self.softmax = torch.nn.Softmax()def forward(self, x):x = self.linear1(x)x = self.activation(x)x = self.linear2(x)x = self.softmax(x)return xtinymodel = TinyModel()print('The model:')
print(tinymodel)print('\n\nJust one layer:')
print(tinymodel.linear2)print('\n\nModel params:')
for param in tinymodel.parameters():print(param)print('\n\nLayer params:')
for param in tinymodel.linear2.parameters():print(param)

输出为:

The model:
TinyModel((linear1): Linear(in_features=100, out_features=200, bias=True)(activation): ReLU()(linear2): Linear(in_features=200, out_features=10, bias=True)(softmax): Softmax(dim=None)
)Just one layer:
Linear(in_features=200, out_features=10, bias=True)Model params:
Parameter containing:
tensor([[-0.0451,  0.0361,  0.0902,  ..., -0.0564, -0.0323,  0.0335],[ 0.0668,  0.0843,  0.0506,  ...,  0.0162,  0.0668, -0.0089],[-0.0505, -0.0148,  0.0485,  ...,  0.0714, -0.0399,  0.0798],...,[-0.0639,  0.0345, -0.0766,  ...,  0.0711, -0.0354, -0.0719],[ 0.0827, -0.0614,  0.0078,  ...,  0.0531, -0.0672,  0.0158],[-0.0577, -0.0733, -0.0662,  ..., -0.0263, -0.0143, -0.0904]],requires_grad=True)
Parameter containing:
tensor([-1.8241e-02, -8.1554e-02,  3.1390e-02, -9.7299e-02, -3.9416e-02,-3.4526e-02,  6.9457e-02,  9.3126e-02,  8.3945e-02,  2.5128e-02,-1.9594e-02,  1.4253e-02,  7.5062e-02, -2.5254e-02,  2.5275e-02,3.6509e-02, -5.4355e-02,  5.2070e-02, -1.1055e-02,  6.3872e-02,-4.2867e-02, -6.9062e-02, -9.6398e-02,  6.0366e-02,  8.6856e-02,-4.3543e-02,  7.1326e-02,  3.6623e-03,  5.4014e-02, -1.3758e-02,4.6091e-02,  4.6796e-03, -2.9959e-02, -5.0925e-02,  1.9598e-02,5.6875e-03, -2.5505e-02,  9.8728e-02,  4.3602e-02,  3

相关文章:

小白的进阶之路系列之十一----人工智能从初步到精通pytorch综合运用的讲解第四部分

本文将介绍如何用PyTorch构建模型 torch.nn.Module和torch.nn.Parameter 除了Parameter之外,本视频中讨论的所有类都是torch.nn.Module的子类。这是PyTorch基类,用于封装PyTorch模型及其组件的特定行为。 torch.nn.Module的一个重要行为是注册参数。如果特定的Module子类具…...

OpenCV CUDA模块霍夫变换------在 GPU 上执行概率霍夫变换检测图像中的线段端点类cv::cuda::HoughSegmentDetector

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::cuda::HoughSegmentDetector 是 OpenCV 的 CUDA 模块中一个非常重要的类,它用于在 GPU 上执行 概率霍夫变换(Probabi…...

详解一下RabbitMQ中的channel.Publish

函数定义(来自 github.com/streadway/amqp) func (ch *Channel) Publish(exchange string,key string,mandatory bool,immediate bool,msg Publishing, ) error这个方法的作用是:向指定的交换机 exchange 发送一条消息 msg,带上路…...

硬件学习笔记--62 MCU的ECC功能简介

1. 基本概念 ECC(Error Correction Code,错误校正码)是MCU(微控制器)中用于检测和纠正存储器数据错误的硬件功能,主要应用于Flash、RAM、Cache等存储单元,确保数据在传输或存储过程中的可靠性。…...

Uiverse.io:免费UI组件库

Uiverse.io 完整使用指南:免费UI组件库的终极教程 🌟 什么是 Uiverse.io? Uiverse.io 是一个开源的UI组件库平台,为开发者和设计师提供了大量精美的、可直接使用的HTML/CSS组件。这个平台的特色在于所有组件都是由社区贡献的,完全免费,并且可以直接复制代码使用。 �…...

普中STM32F103ZET6开发攻略(四)

接续上文:普中STM32F103ZET6开发攻略(三)-CSDN博客 点关注不迷路哟。你的点赞、收藏,一键三连,是我持续更新的动力哟!!! 目录 接续上文:普中STM32F103ZET6开发攻略&am…...

ck-editor5的研究 (5):优化-页面离开时提醒保存,顺便了解一下 Editor的生命周期 和 6大编辑器类型

前言 经过前面的 4 篇内容,我们已经慢慢对 CKEditor5 熟悉起来了。这篇文章,我们就来做一个优化,顺便再补几个知识点: 当用户离开时页面时,提醒他保存数据了解一下 CKEditor5 的 六大编辑器类型了解一下 editor 实例对…...

[3D GISMesh]三角网格模型中的孔洞修补算法

📐 三维网格模型空洞修复技术详解 三维网格模型在扫描、重建或传输过程中常因遮挡、噪声或数据丢失产生空洞(即边界非闭合区域),影响模型的完整性与可用性。空洞修复(Hole Filling)是计算机图形学和几何处…...

11.2 java语言执行浅析3美团面试追魂七连问

美团面试追魂七连问:关于Object o New Object() ,1请解释一下对象的创建过程(半初始化) 2,加问DCL要不要volatile 问题(指令重排) 3.对象在内存中的存储布局(对象与数组的存储不同),4.对象头具体包括什么.5.对象怎么定位.6.对象怎么分配(栈-线程本地-Eden-Old)7.在…...

MySQL 全量、增量备份与恢复

一.MySQL 数据库备份概述 备份的主要目的是灾难恢复,备份还可以测试应用、回滚数据修改、查询历史数据、审计等。之前已经学习过如何安装 MySQL,本小节将从生产运维的角度了解备份恢复的分类与方法。 1 数据备份的重要性 在企业中数据的价值至关…...

【25.06】FISCOBCOS使用caliper自定义测试 通过webase 单机四节点 helloworld等进行测试

前置条件 安装一个Ubuntu20+的镜像 基础环境安装 Git cURL vim jq sudo apt install -y git curl vim jq Docker和Docker-compose 这个命令会自动安装docker sudo apt install docker-compose sudo chmod +x /usr/bin/docker-compose docker versiondocker-compose vers…...

MonoPCC:用于内窥镜图像单目深度估计的光度不变循环约束|文献速递-深度学习医疗AI最新文献

Title 题目 MonoPCC: Photometric-invariant cycle constraint for monocular depth estimation of endoscopic images MonoPCC:用于内窥镜图像单目深度估计的光度不变循环约束 01 文献速递介绍 单目内窥镜是胃肠诊断和手术的关键医学成像工具,但其…...

如何计算H5页面加载时的白屏时间

计算 H5 页面加载时的 白屏时间(First Paint Time)是前端性能优化的重要指标,通常指从用户发起页面请求到浏览器首次渲染像素(如背景色、文字等)的时间。以下是几种常用的计算方法: 1. 使用 Performance AP…...

SpringAI系列 - MCP篇(三) - MCP Client Boot Starter

目录 一、Spring AI Mcp集成二、Spring AI MCP Client Stater三、spring-ai-starter-mcp-client-webflux集成示例3.1 maven依赖3.2 配置说明3.3 集成Tools四、通过SSE连接MCP Server五、通过STDIO连接MCP Server六、通过JSON文件配置STDIO连接一、Spring AI Mcp集成 Spring AI…...

【深度学习新浪潮】以Dify为例的大模型平台的对比分析

我们从核心功能、适用群体、易用性、可扩展性和安全性五个维度展开对比分析: 一、核心功能对比 平台核心功能多模型支持插件与工具链Dify低代码开发、RAG增强、Agent自律执行、企业级安全支持GPT-4/5、Claude、Llama3、Gemini及开源模型(如Qwen-VL-72B),支持混合模型组合可…...

Asp.net core 使用EntityFrame Work

安装以下Nuget 包 Microsoft.EntityFrameworkCore.Tools Microsoft.EntityFrameworkCore.Design Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore Microsoft.EntityFrameworkCore.SqlServer或者Npgsql.EntityFrameworkCore.PostgreSQL 安装完上述Nuget包之后,在appset…...

isp中的 ISO代表什么意思

isp中的 ISO代表什么意思 在摄影和图像信号处理(ISP,Image Signal Processor)领域,ISO是一个用于衡量相机图像传感器对光线敏感度的标准参数。它最初源于胶片摄影时代的 “国际标准化组织(International Organization …...

AI Coding 资讯 2025-06-03

Prompt工程 RAG-MCP:突破大模型工具调用瓶颈,告别Prompt膨胀 大语言模型(LLM)在工具调用时面临Prompt膨胀和决策过载两大核心挑战。RAG-MCP创新性地引入检索增强生成技术,通过外部工具向量索引和动态检索机制,仅将最相关的工具信…...

2024年12月 C/C++(三级)真题解析#中国电子学会#全国青少年软件编程等级考试

C/C++编程(1~8级)全部真题・点这里 第1题:最近的斐波那契数 斐波那契数列 Fn 的定义为:对 n ≥ 0 有 Fn+2 = Fn+1 + Fn,初始值为 F0 = 0 和 F1 = 1。所谓与给定的整数 N 最近的斐波那契数是指与 N 的差之绝对值最小的斐波那契数。 本题就请你为任意给定的整数 N 找出与之最…...

3d GIS数据来源与编辑工具

1、卫星遥感 2、航空摄影测量 3、地面实测技术 全站仪 3维扫描 3D GIS数据制作全流程详解 一、数据采集:多源数据获取 3D GIS数据的制作需从多维度采集地理空间信息,以下是主要采集方式及适用场景: (一)遥感与航测…...

NeRF PyTorch 源码解读 - 体渲染

文章目录 1. 体渲染公式推导1.1. T ( t ) T(t) T(t) 的推导1.2. C ( r ) C(r) C(r) 的推导 2. 体渲染公式离散化3. 代码解读 1. 体渲染公式推导 如下图所示,渲染图像上点 P P P 的颜色值 c c c 是累加射线 O P → \overrightarrow{OP} OP 在近平面和远平面范围…...

SpringBoot 数据库批量导入导出 Xlsx文件的导入与导出 全量导出 数据库导出表格 数据处理 外部数据

介绍 poi-ooxml 是 Apache POI 项目中的一个库,专门用于处理 Microsoft Office 2007 及以后版本的文件,特别是 Excel 文件(.xlsx 格式)和 Word 文件(.docx 格式)。 在管理系统中需要对数据库的数据进行导…...

解决:install via Git URL失败的问题

为解决install via Git URL失败的问题,修改安全等级security_level的config.ini文件,路径如下: 还要重启: 1.reset 2.F5刷新页面 3.关机服务器,再开机(你也可以省略,试试) 4.Wind…...

OpenCV CUDA模块特征检测------创建Harris角点检测器的GPU实现接口cv::cuda::createHarrisCorner

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 该函数创建一个 基于 Harris 算法的角点响应计算对象,专门用于在 GPU 上进行高效计算。 它返回的是一个 cv::Ptrcv::cuda::Cornernes…...

【氮化镓】钝化层对p-GaN HEMT阈值电压的影响

2021年5月13日,中国台湾阳明交通大学的Shun-Wei Tang等人在《Microelectronics Reliability》期刊发表了题为《Investigation of the passivation-induced VTH shift in p-GaN HEMTs with Au-free gate-first process》的文章。该研究基于二次离子质谱(SIMS)、光致发光(PL)…...

C++:优先级队列

目录 1. 概念 2. 特征 3. 优先级队列的使用 1. 概念 优先级队列虽然名字有队列二字,但根据队列特性来说优先级队列不满足先进先出这个特征,优先级队列的底层是用堆来实现的。 优先级队列是一种容器适配器,就是将特定容器类封装作为其底层…...

睡眠分期 html

截图 代码 <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>睡眠图表</title><script src…...

Java求职者面试:Spring、Spring Boot、Spring MVC与MyBatis技术深度解析

Java求职者面试&#xff1a;Spring、Spring Boot、Spring MVC与MyBatis技术深度解析 一、第一轮提问&#xff08;基础概念问题&#xff09; 1. 请解释什么是Spring框架&#xff1f;它的核心功能是什么&#xff1f; JY&#xff1a;Spring是一个开源的Java/Java EE企业级应用开…...

Github 2025-05-29 Go开源项目日报Top9

根据Github Trendings的统计,今日(2025-05-29统计)共有9个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Go项目9Assembly项目1Ollama: 本地大型语言模型设置与运行 创建周期:248 天开发语言:Go协议类型:MIT LicenseStar数量:42421 个Fork数量:27…...

前端项目种对某个文件夹进行大小写更改,git识别不到差异导致无变化

问题背景 开发过程中可能遇到一个文件名要更改大小写&#xff0c;但是更改后之后本地会有变化&#xff0c;但是git识别不到差异化&#xff0c;正常去更改一个文件名称git差异化会出现删除了原有文件,新增了一个新文件,但是更改大小写则不会 如何解决 在终端中输入git config…...