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

pytorch、pytorch_lightning、torchmetrics版本对应

目录

1.pytorch_lightning对应版本安装

2.PyTorch Lightning介绍

PyTorch Lightning 的作用:

PyTorch Lightning 的基本用法:


报错:ModuleNotFoundError: No module named 'pytorch_lightning'

        这种报错一看就是缺了pytorch_lightning包,想当然就pip install装了,没想到有坑,安装完直接把我的pytorch版本给我更细了,所以特意记录下这个问题,安装pytorch_lightning一定要与pytorch版本对应好再安装。


 

1.pytorch_lightning对应版本安装

参考官网版本对应:官网

如果直接使用 "pip install pytorch_lightning" 的话,安装的是最新的版本 

pip install pytorch_lightning

所以,为了避免与pytorch版本冲突,需要对应版本安装,否则,就会更改你的pytorch版本。

pip install pytorch_lightning==X.X.X

        比如我的pytorch=1.12.1版本,所以我就装了pytorch_lightning=1.8.6,安装完的结果如下。 

         至此就大功告成了,可以愉快的使用pytorch_lightning了。

2.PyTorch Lightning介绍

        PyTorch Lightning 是一个基于 PyTorch 的轻量级库,旨在简化复杂模型的训练过程。它是由 William Falcon 创立的,旨在帮助研究人员和开发人员更高效地构建、训练和验证机器学习模型。

PyTorch Lightning 的作用:

  1. 简化训练流程:PyTorch Lightning 通过提供更高级的接口,简化了模型定义、训练、验证和测试的过程。
  2. 提高代码复用性:它鼓励使用面向对象的编程方法来构建模型,使得代码更加模块化,易于复用。
  3. 支持分布式训练:PyTorch Lightning 支持多GPU训练和分布式训练,使得模型训练可以扩展到多个设备。
  4. 丰富的回调函数:提供了多种回调函数,可以轻松实现模型的保存、加载、日志记录等功能。
  5. 易于调试和测试:由于代码结构清晰,调试和测试变得更加容易。

PyTorch Lightning 的基本用法:

        PyTorch Lightning 是一个轻量级的 PyTorch 扩展库,旨在简化和规范深度学习模型的训练过程。它提供了一种更高层次的抽象,使用户能够以更简单的方式定义和训练模型。

下面是 PyTorch Lightning 的一些基本用法:

  • 定义模型:通过继承 pytorch_lightning.core.LightningModule 类来定义模型。在模型类中,可以定义网络结构、损失函数、优化器等。例如:
import torch
import torch.nn as nn
import pytorch_lightning as plclass MyModel(pl.LightningModule):def __init__(self):super().__init__()self.linear = nn.Linear(10, 1)def forward(self, x):return self.linear(x)

  • 定义训练器:通过继承 pytorch_lightning.core.LightningDataModule 类来定义训练器。在训练器类中,可以定义数据加载、预处理和划分等操作。例如:
import torchvision.transforms as transforms
from torch.utils.data import DataLoader
from pytorch_lightning import LightningDataModuleclass MyDataModule(LightningDataModule):def __init__(self):super().__init__()self.transform = transforms.Compose(...)self.train_dataset = ...self.val_dataset = ...self.test_dataset = ...def train_dataloader(self):return DataLoader(self.train_dataset, batch_size=32, shuffle=True)def val_dataloader(self):return DataLoader(self.val_dataset, batch_size=32)def test_dataloader(self):return DataLoader(self.test_dataset, batch_size=32)

  • 训练模型:通过创建 pytorch_lightning.trainer.Trainer 对象来训练模型。可以设置训练的轮数、学习率、设备等参数,并使用 fit 方法进行训练。例如:
from pytorch_lightning import Trainermodel = MyModel()
datamodule = MyDataModule()trainer = Trainer(gpus=1, max_epochs=10)
trainer.fit(model, datamodule)

  • 预测和评估模型:通过 trainer.test 方法来对模型进行预测和评估。例如:
trainer.test(model, datamodule=datamodule)

        通过以上步骤,可以使用 PyTorch Lightning 来更加简洁、规范地训练和评估深度学习模型。

        PyTorch Lightning 通过提供这些高级功能,使得使用 PyTorch 构建和训练深度学习模型变得更加高效和简洁。

相关文章:

pytorch、pytorch_lightning、torchmetrics版本对应

目录 1.pytorch_lightning对应版本安装 2.PyTorch Lightning介绍 PyTorch Lightning 的作用: PyTorch Lightning 的基本用法: 报错:ModuleNotFoundError: No module named pytorch_lightning 这种报错一看就是缺了pytorch_lightning包&am…...

麒麟系统部署JeecgBoot

一、安装jdk 自带的即可,不必另外安装 二、安装MySQL 麒麟系统安装MySQL_麒麟系统安装万里数据库步骤-CSDN博客 三、安装Redis 麒麟系统安装Redis_麒麟上redis-CSDN博客 四、安装Nginx 1、下载 下载地址:https://redis.io/ 2、解压配置 tar .…...

要想贵人相助,首先自己得先成为贵人!

点击上方△腾阳 关注 转载请联系授权 在金庸江湖里,有两位大侠,一个是萧峰,一个是郭靖。 郭靖在《射雕英雄传》里是绝对的主角,在《神雕侠侣》当中也是重要的配角,甚至可以说是第二主角。 谈起郭靖,很多…...

使用块的网络 VGG

一、AlexNet与VGG 1、深度学习追求更深更大,使用VGG将卷积层组合为块 2、VGG块:3*3卷积(pad1,n层,m通道)、2*2最大池化层 二、VGG架构 1、多个VGG块后接全连接层 2、不同次数的重复块得到不同的架构&a…...

微信小程序性能与体验优化

1. 合理的设置可点击元素的响应区域大小; 比较常见的是页面的点击按钮太小,用户点击不到按钮,这样用户体验很不好。 2. 避免渲染页面耗时过长; 当页面渲染时间过长的话,会让用户感觉非常卡顿,当出现这种…...

Android14之获取包名/类名/服务名(二百二十三)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…...

FreeU: Free Lunch in Diffusion U-Net——【代码复现】

这篇文章发表于CVPR 2024,官网地址:ChenyangSi/FreeU: FreeU: Free Lunch in Diffusion U-Net (CVPR2024 Oral) (github.com) 一、环境准备 提前准备好python、pytorch环境 二、下载项目依赖 demo下有一个requirements.txt文件, pip inst…...

第三方商城对接重构(HF202407)

文章目录 项目背景一、模块范围二、问题方案1. 商品模块整体来说这块对接的不是太顺利,梳理了几条大概的思路: 2. 订单模块3. 售后4. 发票5. 结算单 经验总结 项目背景 作为供应商入围第三方商城成功,然后运营了一段时间,第三方通…...

如何在Windows 11上复制文件和文件夹路径?这里提供几种方法

在Windows 11上复制文件或文件夹的路径就像在右键单击菜单中选择一个选项或按键盘快捷键一样简单。我们将向你展示如何在电脑上以各种方式进行操作。 从右键单击菜单 复制文件或文件夹路径的最简单方法是在该项目的右键单击菜单中选择一个选项。你也可以使用此方法复制多个项…...

大数据Spark 面经

1: Spark 整体架构 Spark 是新一代的大数据处理引擎,支持批处理和流处理,也还支持各种机器学习和图计算,它就是一个Master-worker 架构,所以整个的架构就如下所示: 2: Spark 任务提交命令 一般我们使用shell 命令提…...

绝区叁--如何在移动设备上本地运行LLM

随着大型语言模型 (LLM)(例如Llama 2和Llama 3)不断突破人工智能的界限,它们正在改变我们与周围技术的互动方式。这些模型早已集成到我们的手机中,但到目前为止,它们理解和处理请求的能力还非常有限。然而,…...

Interview preparation--Https 工作流程

HTTP 传输的弊端 如上图,Http进行数据传输的时候是明文传输,导致任何人都有可能截获信息,篡改信息如果此时黑客冒充服务器,或者黑客窃取信息,则其可以返回任意信息给客户端,而且不被客户端察觉,…...

集成学习(三)GBDT 梯度提升树

前面学习了:集成学习(二)Boosting-CSDN博客 梯度提升树:GBDT-Gradient Boosting Decision Tree 一、介绍 作为当代众多经典算法的基础,GBDT的求解过程可谓十分精妙,它不仅开创性地舍弃了使用原始标签进行…...

后端工作之一:CrapApi —— API接口管理系统部署

一个API接口的网络请求都有这些基本元素构成: API接口大多数是由后端编写,前端开发人员进行请求调用 就是一个网络请求的流程。 API(Application Programming Interface)接口是现代软件开发中不可或缺的一部分。它们提供了一种…...

20240706 xenomai系统中网口(m2/minipcie I210网卡)的实时驱动更换

lspci 查看网口 查看网口驱动 1 ubuntu 查看网口驱动 在Ubuntu中,您可以使用lshw命令来查看网络接口的驱动信息。如果lshw没有安装,您可以通过执行以下命令来安装它: sudo apt-get update sudo apt-get install lshw 安装完成后&#xff…...

模型训练之数据集

我们知道人工智能的四大要素:数据、算法、算力、场景。我们训练模型离不开数据 目标 一、数据集划分 定义 数据集:训练集是一组训练数据。 样本:一组数据中一个数据 特征:反映样本在某方面的表现、属性或性质事项 训练集&#…...

【TB作品】数码管独立按键密码锁,ATMEGA16单片机,Proteus仿真 atmega16数码管独立按键密码锁

文章目录 基于ATmega16的数码管独立按键密码锁设计实验报告实验背景硬件介绍主要元器件电路连接 设计原理硬件设计软件设计 程序原理延时函数独立按键检测密码显示主函数 资源代码 基于ATmega16的数码管独立按键密码锁设计实验报告 实验背景 本实验旨在设计并实现一个基于ATm…...

数据库主从复制

目录 一.主从复制架构 二.主从复制原理 三.实现主从复制配置 1.新建主从复制 2.实战遇到问题 3.复制错误解决方法 4.级联 主从复制 5.半同步复制 MySQL数据库的主从复制(Master-Slave Replication)是一种常见的数据库复制架构,用于提…...

昇思25天学习打卡营第13天|BERT

一、简介: BERT全称是来自变换器的双向编码器表征量(Bidirectional Encoder Representations from Transformers),它是Google于2018年末开发并发布的一种新型语言模型。与BERT模型相似的预训练语言模型例如问答、命名实体识别、自…...

跨平台书签管理器 - Raindrop

传统的浏览器书签功能虽然方便,但在管理和分类上存在诸多局限。今天,我要向大家推荐一款功能强大的跨平台书签管理-Raindrop https://raindrop.io/ 📢 主要功能: 智能分类和标签管理 强大的搜索功能 跨平台支持 分享与协作 卡片式…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率&#xff0c…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”

2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】

大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

springboot 日志类切面,接口成功记录日志,失败不记录

springboot 日志类切面,接口成功记录日志,失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...