[工具]Pytorch-lightning的使用
Pytorch-lightning的使用
- Pytorch-lightning介绍
- Pytorch-lightning与Pytorch的区别
- Pytorch-lightning框架的优势
- Pytorch-lightning框架
- 重要资源
Pytorch-lightning介绍
这里介绍Pytorch_lighting框架.

Pytorch-lightning与Pytorch的区别
Pytorch-lightning可以简单的看作是Pytorch的再封装. 大家都知道开发一个深度学习模型实际上主要就分为4个组件:
(1) 定义模型/网络 (Model class);
(2) 实现Data_loader;
(3) 定义优化器Optimizer;
(4) 实现训练&验证代码逻辑;
当然除了这些还有一些其他辅助步骤, 比如: 写日志, 打印模型网络结构,结果统计分析, 以及各种训练技巧,比如分布式训练,混合精度训练,等等;
这样一来代码结构就显得很乱, 而Pytorch-lightning本质上就是对上面4个组件的再封装,保持了代码的整洁.
Pytorch-lightning框架的优势
1.相比于Pytorch, 代码非常简洁, 主要原因在于:
(1)不需要写大量逻辑部分代码 (Pytorch-lightning的trainer已经替你做了)
(2) Pytorch-lightning将上述4个组件再次封装为了一个系统类pl.LightningModule,
- 非常方便支持定制各种训练行为, 比如自动优化/手动指定优化, 分布式训练, 混合精度训练, 方便预调试各个模块等等.
Pytorch-lightning框架
实际上就3个核心概念:
(1)pl.LightningModule:
主要用以定义一个学习系统的主要组件
(2)pl.LightningDataModule
对data_loader的封装,
当然你也可以直接使用原始的data_loader;
(3) pl.Trainer
训练器,功能比较强大, 继承了各种技巧
重要资源
1.Pytorch-lightning的官网技术描述https://lightning.ai/docs/pytorch/latest/common/lightning_module.html#hooks
特点: 详细, 但是比较散乱;
2.某个大佬关于Pytorch-lightning的介绍https://zhuanlan.zhihu.com/p/459701671
特点;系统性/原理性/全局性比较强, 值得一看;
相关文章:
[工具]Pytorch-lightning的使用
Pytorch-lightning的使用 Pytorch-lightning介绍Pytorch-lightning与Pytorch的区别Pytorch-lightning框架的优势Pytorch-lightning框架 重要资源 Pytorch-lightning介绍 这里介绍Pytorch_lighting框架. Pytorch-lightning与Pytorch的区别 Pytorch-lightning可以简单的看作是…...
互联网摸鱼日报(2023-05-09)
互联网摸鱼日报(2023-05-09) InfoQ 热门话题 面向数字化提质提效的低代码架构设计 | 低代码技术内幕 提升字节规模化效能的平台化思路 | 极客有约 从微服务转为单体架构、成本降低 90%,亚马逊内部案例引发轰动!CTO&…...
MySQL常见的存储引擎
InnoDB:InnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在MySQL 5.5之后,InnoDB是默认的MySQL存储引擎。 特点:1、DML操作遵循ACID模型,支持事务; 2、行级锁,提高并发访问性能; 3、支持外键FOREIGN KEY约…...
迅为i.MX6ULL开发板生成 KEY 文件,并安装
使用“ssh-keygen” 生成个四个 key 文件“ssh_host_rsa_key” “ssh_host_dsa_key” “ssh_host_ecdsa_key” 和“ssh_host_ed25519_key” 。 1 在虚拟机 Ubuntu 控制台, “ /home/ssh/openssh-4.6p1” 目录下, 使用命 令“ssh-keygen -t rsa -f ssh…...
常见舆情监测系统的分类和特点
随着网络和社交媒体的发展,舆情监测系统逐渐成为企业和政府机构必备的工具之一。舆情监测系统可以帮助企业和政府机构全面了解公众对其品牌、产品、政策等的反应和态度,及时发现和解决问题,提高公信力和形象。本文将介绍常见的舆情监测系统的…...
联合群美叶彦文:坚持,只要有一口气,能坚持多久,就坚持多久
创业之路的成败得失就看有多坚持。 成功并不是终点,失败并不是终结,只有勇气才是永恒。 Success is not final,failure is not fatal,it is the courage to continue that counts. ——温斯顿丘吉尔 迪斯雷利曾经说过:“成功的奥秘在于目标…...
动态规划的学习
文章目录 动态规划的学习一、什么是动态规划?二、如何思考状态转移方程?三、动态规划的基本原理1.[509. 斐波那契数](https://leetcode.cn/problems/fibonacci-number/)1.1 暴力递归解法:1.1.1 递归算法的时间复杂度那为什么时间复杂度会这么…...
计算机网络:HTTPS
目录 HTTP 与 HTTPS 有哪些区别?HTTPS 解决了 HTTP 的哪些问题HTTPS 是如何建立连接的?其间交互了什么TLS 协议建立的详细流程客户端校验数字证书的流程是怎样的? HTTPS 的应用数据是如何保证完整性的HTTPS 一定安全可靠吗参考资料 HTTP 与 H…...
数据库系列-什么是 JDBC?它的作用是什么?
JDBC(Java Database Connectivity)是 Java 语言提供的一种访问数据库的标准接口,它定义了一组 Java 接口和类,用于实现 Java 程序与各种关系型数据库的连接和交互。JDBC 的主要作用是提供了一种标准的、可靠的、跨平台的方式来访问…...
C++学习day--08 数组和字符串
1、什么是数组 数组,就是多个元素的有序“组合”。 C 和 C语言中的数组: 1 )由多个大小相同的小柜子组成 > 相同大小的内存块组成,即相同类型的数据 2 )这些小柜子,有自己对应的编号 > 编号从 …...
系统分析师之系统测试与维护(十六)
目录 一、 测试与评审 1.1 测试类型 1.2 测试阶段 1.3 面向对象的测试 1.4 测试自动化 1.5 软件调试 1.6 软件评审 1.7 验收与确认 二、软件质量管理 2.1 软件过程改进-CMMI 2.2 软件开发环境与工具 三、系统运行与评价 3.1 系统转换计划 3.1.1 遗留系统演化策略…...
板材激光切割机切割穿孔时注意的几个问题
激光切割设备广泛应用于钣金、五金制品、钢结构、汽车配件、广告、工艺品等行业,成为加工行业不可缺少的环节。在厚板加工中穿孔时间占很大比重,随着加工板材越来越厚,板材激光切割机切割穿孔也会相应地增加难度。 激光切割机两种常见的穿孔方…...
奶爸式Swagger教学
目录 一、导入依赖 二、SwaggerConfig基础编程 三、Swagger 常用说明注解 1.API 2.ApiOperation 3.ApiModel 4.ApiModelProperty 5.ApiParam 6.ApilmplicitParam 一、导入依赖 <!--开启Swagger --><!-- https://mvnrepository.com/artifact/io.springf…...
入门级的家用洗地机怎么样?入门级洗地机推荐
洗地机的功能有很多,比如除菌、洗地机清洁地面的确是一把好手。但是!清洁完之后还要手动清洗洗地机,是一件麻烦事啊!现在市面上大部分洗地机都有自清洁这个功能,但是很多洗地机的自清洁并不算真正的自清洁,…...
【面试】Java 反射机制(常见面试题)
文章目录 前言一、反射是什么?二、为什么要有反射三、反射 API3.1 获取 Class 对象的三种方式3.2 获取成员变量3.3 获取构造方法3.4.获取非构造方法 四、实践五、常见面试题5.1. 什么是反射?5.2. 哪里用到反射机制?5.3. 什么叫对象序列化&…...
JavaScript最佳实践
JavaScript最佳实践 2023.5.8版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 JavaScript 是一种动态编程语言,可让开发者创建动态和交互式 Web 应用程序。然而,编写 JavaScript 代码比较具有挑战性,尤其…...
景23转债,海能转债上市价格预测
景23转债 基本信息 转债名称:景23转债,评级:AA,发行规模:11.54亿元。 正股名称:景旺电子,今日收盘价:22.52元,转股价格:25.71元。 当前转股价值 转债面值 / …...
TDengine 部署与使用----时序数据库
官网 通过 Docker 快速体验 TDengine | TDengine 文档 | 涛思数据 docker安装 拉取最新docker镜像 docker pull tdengine/tdengine:latest 然后执行 docker run -d -p 6030:6030 -p 6041:6041 -p 6043-6049:6043-6049 -p 6043-6049:6043-6049/udp tdengine/tdengine 查看容器…...
ShardingSphere系列四(Sharding-JDBC内核原理及核心源码解析)
文章目录 1. ShardingSphere内核解析1.1 解析引擎1.2 路由引擎1.3 改写引擎1.4 执行引擎1.5 归并引擎 2. ShardingSphere的SPI扩展点2.1 SPI机制2.2 ShardingSphere中的SPI扩展点2.3 实现自定义主键生成策略 3. ShardingSphere源码 1. ShardingSphere内核解析 ShardingSphere虽…...
【2023】华为OD机试真题全语言-题目0234-字符串重新排列
题目0234-字符串重新排列 题目描述 给定一个字符串s,s包括以空格分隔的若干个单词,请对s进行如下处理后输出: 单词内部调整:对每个单词字母重新按字典序排序单词间顺序调整: 统计每个单词出现的次数,并按次数降序排列次数相同,按单词长度升序排列次数和单词长度均相同…...
19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
