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

开发者的福音:PyTorch 2.5现已支持英特尔独立显卡训练

《PyTorch 2.5重磅更新:性能优化+新特性》中的一个新特性就是:正式支持在英特尔®独立显卡上训练模型!

PyTorch 2.5

独立显卡类型

支持的操作系统

 Intel® 数据中心GPU Max系列

Linux

Intel® Arc™系列

Linux/Windows

本文将在Intel®Core™ Ultra 7 155H自带的Arc™集成显卡上展示使用Pytorch2.5搭建并训练AI模型的全流程。

一,搭建开发环境

首先,请安装显卡驱动,参考指南:

https://dgpu-docs.intel.com/driver/client/overview.html

然后,请下载并安装Anaconda,链接↓↓

https://www.anaconda.com/download

并用下面的命令创建并激活名为pytorch_arc的虚拟环境:

conda create -n pytorch_arc python=3.11    #创建虚拟环境conda activate pytorch_arc                 #激活虚拟环境python -m pip install --upgrade pip        #升级pip到最新版本

接着,安装Pytorch XPU版;

pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/xpu

滑动查看更多

最后,执行命令,验证安装。看到返回结果为“True”,证明环境搭建成功!

>>> import torch>>> torch.xpu.is_available()

二,训练ResNet模型

执行下载的训练代码,实现在Intel® Arc™集成显卡上训练ResNet50模型。代码下载链接:

import torchimport torchvisionLR = 0.001DOWNLOAD = TrueDATA = "datasets/cifar10/"transform = torchvision.transforms.Compose(    [        torchvision.transforms.Resize((224, 224)),        torchvision.transforms.ToTensor(),        torchvision.transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)),    ])train_dataset = torchvision.datasets.CIFAR10(    root=DATA,    train=True,    transform=transform,    download=DOWNLOAD,)train_loader = torch.utils.data.DataLoader(dataset=train_dataset, batch_size=128)train_len = len(train_loader)model = torchvision.models.resnet50()criterion = torch.nn.CrossEntropyLoss()optimizer = torch.optim.SGD(model.parameters(), lr=LR, momentum=0.9)model.train()model = model.to("xpu")criterion = criterion.to("xpu")print(f"Initiating training")for batch_idx, (data, target) in enumerate(train_loader):    data = data.to("xpu")    target = target.to("xpu")    optimizer.zero_grad()    output = model(data)    loss = criterion(output, target)    loss.backward()    optimizer.step()    if (batch_idx + 1) % 10 == 0:         iteration_loss = loss.item()         print(f"Iteration [{batch_idx+1}/{train_len}], Loss: {iteration_loss:.4f}")torch.save(    {        "model_state_dict": model.state_dict(),        "optimizer_state_dict": optimizer.state_dict(),    },    "checkpoint.pth",)print("Execution finished")

三,总结

使用PyTorch在英特尔独立显卡上训练模型将为AI行业新增计算硬件选择!

相关文章:

开发者的福音:PyTorch 2.5现已支持英特尔独立显卡训练

《PyTorch 2.5重磅更新:性能优化新特性》中的一个新特性就是:正式支持在英特尔独立显卡上训练模型! PyTorch 2.5 独立显卡类型 支持的操作系统 Intel 数据中心GPU Max系列 Linux Intel Arc™系列 Linux/Windows 本文将在IntelCore™…...

Deep InfoMax(DIM)(2019-02-ICLR)

论文:LEARNING DEEP REPRESENTATIONS BY MUTUAL INFORMATION ESTIMATION AND MAXIMIZATION ABSTRACT 研究目标 研究通过最大化输入和深度神经网络编码器输出之间的互信息来进行无监督表示学习目的是学习到对下游任务有用的特征表示 核心发现:结构很重…...

2024年10月中国数据库排行榜:TiDB续探花,GaussDB升四强

10月中国数据库流行度排行榜如期发布,再次印证了市场分层的加速形成。国家数据库测评结果已然揭晓,本批次通过的产品数量有限,凸显了行业标准的严格与技术门槛的提升。再看排行榜,得分差距明显增大,第三名与后续竞争者…...

css边框修饰

一、设置线条样式 通过 border-style 属性设置,可选择的一些属性如下: dotted:点线 dashed:虚线 solid:实线 double:双实线 效果如下: 二、设置边框线宽度 ① 通过 border-width 整体设置…...

利用Python进行数据可视化:实用指南与推荐库

利用Python进行数据可视化:实用指南与推荐库 数据可视化是将数据转化为图形和图表的过程,它能够帮助我们更直观地理解数据的趋势、模式和关系。在Python中,有许多强大的库可用于数据可视化,从简单的折线图到复杂的交互式图表,应有尽有。本文将详细介绍Python数据可视化的…...

MobileNetv2网络详解

背景: MobileNet v1中DW卷积在训练完之后部分卷积核会废掉,大部分参数为“0” MobileNet v2网络是由Google团队在2018年提出的,相比于MobileNet v1网络,准确率更高,模型更小 网络亮点: Inverted Residu…...

惊了!大模型连这样的验证码都能读懂_java_识别验证码

最近在看视觉大模型的能力,然后用了某网站的一个验证码试了试,竟然连这样的验证码都能认识,这个有点夸张,尤其是这个9和6颠倒的都能理解,现在的能力已经这么牛了么 具体就是用了通义最新的qwen vl模型spring ai alibab…...

【小白学机器学习26】 极大似然估计,K2检验,logit逻辑回归(对数回归)(未完成----)

目录 1 先从一个例题出来,预期值和现实值的差异怎么评价? 1.1 这样一个问题 1.2 我们的一般分析 1.3 用到的关键点1 1.4 但是差距多远,算是远呢? 2 极大似然估计 2.1 极大似然估计的目的 2.1.1 极大似然估计要解决什么问题…...

【日常记录-Java】SLF4J扫描实现框架的过程

1. 简介 SLF4J(Simple Logging Facade for Java)作为一种简单的门面或抽象,服务于其他各种日志框架,例如JUL、log4j、logback等,核心作用有两项: 提供日志接口;提供获取具体日志对象的方法; 2. 扫描过程 …...

uni-app 获取 android 手机 IMEI码

1、需求来源 最近项目上需要获取手机的IMEI码,并且在更换手机号登录后,需要提示重新更新IMEI码。 2、需求拆分 2.1 获取 IMEI 码 查阅 uni-app 官网发现在android 10 已经无法获取imei码,所以对于这个需求拆分成两种情况。 第一种情况&am…...

后台管理系统的通用权限解决方案(八)认证机制介绍、JWT介绍与jjwt框架的使用

文章目录 1 认证机制介绍1.1 HTTP Basic Auth1.2 Cookie-Session Auth1.3 OAuth1.4 Token Auth 2 JWT2.1 JWT介绍2.2 JWT的数据结构2.2.1 JWT头2.2.2 JWT有效载荷2.2.3 JWT签名 3 jjwt3.1 jjwt介绍3.2 jjwt案例 1 认证机制介绍 1.1 HTTP Basic Auth HTTP Basic Auth 是一种简…...

接口测试 —— Postman 变量了解一下!

Postman变量是在Postman工具中使用的一种特殊功能,用于存储和管理动态数据。它们可以用于在请求的不同部分、环境或集合之间共享和重复使用值。 Postman变量有以下几种类型: 1、环境变量(Environment Variables): 环境变量是在…...

鸿蒙系统:核心特性、发展历程与面临的机遇与挑战

好动与不满足是进步的第一必需品 文章目录 前言重要特点和组成部分核心特性主要组件发展历程 机遇挑战总结 前言 鸿蒙系统(HarmonyOS)是由华为技术有限公司开发的一款面向全场景的分布式操作系统。它旨在为用户提供更加流畅、安全且高效的数字生活体验&…...

从0到1,用Rust轻松制作电子书

我之前简单提到过用 Rust 做电子书,今天分享下如何用Rust做电子书。制作电子书其实用途广泛,不仅可以用于技术文档(对技术人来说非常方便),也可以制作用户手册、笔记、教程等,还可以应用于文学创作。 如果…...

半天入门!锂电池剩余寿命预测(Python)

往期精彩内容: 时序预测:LSTM、ARIMA、Holt-Winters、SARIMA模型的分析与比较 全是干货 | 数据集、学习资料、建模资源分享! EMD变体分解效果最好算法——CEEMDAN(五)-CSDN博客 拒绝信息泄露!VMD滚动分…...

学生党头戴式耳机哪款音质更胜一筹?TOP4好音质头戴式耳机推荐

在挑选头戴式耳机时,市场上琳琅满目的品牌和型号常常让人目不暇接。究竟哪个学生党头戴式耳机哪款音质更胜一筹?这已成为许多人面临的难题。由于每个人对耳机的偏好各有侧重——一些人追求音质的纯净,一些人重视佩戴的舒适性,而另…...

数据结构 ——— 二叉树的概念及结构

目录 二叉树的概念 特殊的二叉树 一、满二叉树 二、完全二叉树 二叉树的概念 二叉树树示意图: 从以上二叉树示意图可以看出: 二叉树每个节点的度不大于 2 ,那么整个二叉树的度也不大于 2 ,但是也不是每个节点都必须有 2 个…...

【React】React 的核心设计思想

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 React 的核心设计思想引言声明式编程声明式 vs 命令式示例 组件化组件的优势组件…...

C++ 二叉树进阶:相关习题解析

目录 1. 二叉树创建字符串。 2. 二叉树的分层遍历1 3. 二叉树的分层遍历2 4. 二叉树的最近公共祖先 5. 将二叉搜索树转换为排序的双向链表 6. 从前序与中序遍历序列构造二叉树 7. 从中序与后序遍历序列构造二叉树 8. 二叉树的前序遍历,非递归迭代实现 9.…...

Matlab实现蚁群算法求解旅行商优化问题(TSP)(理论+例子+程序)

一、蚁群算法 蚁群算法由意大利学者Dorigo M等根据自然界蚂蚁觅食行为提岀。蚂蚁觅食行为表示大量蚂蚁组成的群体构成一个信息正反馈机制,在同一时间内路径越短蚂蚁分泌的信息就越多,蚂蚁选择该路径的概率就更大。 蚁群算法的思想来源于自然界蚂蚁觅食&a…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言:多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

线程同步:确保多线程程序的安全与高效!

全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

跨链模式:多链互操作架构与性能扩展方案

跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层&#xf…...

区块链技术概述

区块链技术是一种去中心化、分布式账本技术,通过密码学、共识机制和智能合约等核心组件,实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点:数据存储在网络中的多个节点(计算机),而非…...

flow_controllers

关键点: 流控制器类型: 同步(Sync):发布操作会阻塞,直到数据被确认发送。异步(Async):发布操作非阻塞,数据发送由后台线程处理。纯同步(PureSync…...

DeepSeek越强,Kimi越慌?

被DeepSeek吊打的Kimi,还有多少人在用? 去年,月之暗面创始人杨植麟别提有多风光了。90后清华学霸,国产大模型六小虎之一,手握十几亿美金的融资。旗下的AI助手Kimi烧钱如流水,单月光是投流就花费2个亿。 疯…...

电脑桌面太单调,用Python写一个桌面小宠物应用。

下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...

leetcode_69.x的平方根

题目如下 &#xff1a; 看到题 &#xff0c;我们最原始的想法就是暴力解决: for(long long i 0;i<INT_MAX;i){if(i*ix){return i;}else if((i*i>x)&&((i-1)*(i-1)<x)){return i-1;}}我们直接开始遍历&#xff0c;我们是整数的平方根&#xff0c;所以我们分两…...

Java中栈的多种实现类详解

Java中栈的多种实现类详解&#xff1a;Stack、LinkedList与ArrayDeque全方位对比 前言一、Stack类——Java最早的栈实现1.1 Stack类简介1.2 常用方法1.3 优缺点分析 二、LinkedList类——灵活的双端链表2.1 LinkedList类简介2.2 常用方法2.3 优缺点分析 三、ArrayDeque类——高…...