NumPy库与PyTorch库的异同点

目录

1.单位的创建和操作

1.创建

2.形状变换

2.数学和统计操作

1.矩阵乘法

2.广播

3.统计计算

3.GPU支持

4.在深度学习中的作用

5.应用范围


NumPy库为数组服务,PyTorch库为张量服务,这是最本质的区别。

1.单位的创建和操作

1.创建

NumPy:使用 np.array([1, 2, 3]) 来创建数组。

PyTorch:使用 torch.tensor([1, 2, 3]) 来创建张量。这里的张量在 PyTorch 中与 NumPy 的数组相似。

2.形状变换

NumPy:arr.reshape(2, 3) 用于改变数组形状。

PyTorch:tensor.view(2, 3)tensor.reshape(2, 3) 用于改变张量形状。

2.数学和统计操作

1.矩阵乘法

NumPy:np.dot(a, b)a @ b

PyTorch:torch.matmul(a, b)a @ b

2.广播

广播机制是一种在不同形状的数组(或张量)之间进行数学运算时使用的技术,它能自动扩展数组的维度,使其符合运算要求,从而避免了明确复制数据的需要。这种机制可以显著减少内存使用,并提高计算效率。

NumPyPyTorch 都支持广播机制,允许形状不完全相同的数组进行数学操作。具体可以参考我的NumPy库介绍这篇文章。

3.统计计算

NumPy:arr.mean(), arr.sum(), np.median(arr) 等。

PyTorch:tensor.mean(), tensor.sum(), torch.median(tensor) 等。

3.GPU支持

NumPy:主要在 CPU 上运行,没有内建的 GPU 支持。

PyTorch:可以直接在 GPU 上运行计算,通过 .to('cuda') 方法将张量移动到 GPU。

在这里简单介绍下GPU

GPU(图形处理单元)是一种专门设计用来处理图形和视频渲染的计算设备。不过,由于其高度并行的结构,现在GPU也广泛用于各种高性能计算任务,特别是在数据科学、机器学习和深度学习领域。

如何查看自己的GPU呢?

打开任务管理器,调到性能这一栏

如果想要查看Gpu是否在工作,在命令行用nvidia-smi命令打开,前提是要安装CUDA和nvidia驱动。具体可查看这篇文章Windows10下cmd中nvidia-smi命令输入无效的解决办法_nvidia-smi' 不是内部或外部命令,也不是可运行的程序 或批处理文件。-CSDN博客

 正常跑深度学习模型时,Gpu可达到百分之九十多。

4.在深度学习中的作用

NumPy:不支持自动梯度计算和反向传播,通常需要手动实现或使用其他库。

PyTorch:通过 Autograd 系统自动管理梯度计算和反向传播,使用 tensor.backward() 自动计算梯度。

5.应用范围

NumPy:广泛应用于科学计算领域,如物理模拟、统计分析、图像处理等。

PyTorch:专为深度学习设计,广泛用于构建和训练各种类型的神经网络。

然两者在基本操作上非常相似,但 PyTorch 通过支持动态计算图和 GPU 加速,以及集成深度学习特有的功能(如自动梯度计算),为深度学习提供了更加专业和高效的工具。而 NumPy 则作为一个更通用的科学计算库,在广泛的科学研究领域中都有应用。

以下是在PyTorch库对NumPy库中若干方法的修正

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/325569.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

✨✨使用vue3打造一个el-form表单及高德地图的关联组件实例✨

✨1. 实现功能 🌟表单内显示省市县以及详细地址 点击省市县输入框时,打开对应地图弹窗,进行位置选择选择位置回显入对应输入框表单内的省市县以及地址输入框同外嵌表单走相同的校验方式触发校验后点击reset实现清除校验与清空数据 &#x1f…

深度学习中的注意力机制一(Pytorch 15)

一 简介 灵长类动物的视觉系统接受了大量的感官输入,这些感官输入远远超过了大脑能够完全处理的程度。然而, 并非所有刺激的影响都是相等的。意识的聚集和专注使灵长类动物能够在复杂的视觉环境中将注意力引向感 兴趣的物体,例如猎物和天敌。…

sqli-labs 第八关盲注python脚本

目录 ​编辑 判断库名 1.库名长度 2.库名 import requests import mathurl "http://127.0.0.1/Less-8"def dblength():for i in range(20):payload f"1 and length(database())>{i}-- "data {id: payload}res requests.get(url, paramsdata)if …

Google与哈佛大学的科学家团队共同创造了一张人脑中一个极小部分的精细地图

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

华为交换机基础配置命令

01常用命令视图 02创建VLAN //用户视图,一般display命令查看信息比较多。 system-view //准备进入系统视图。 [Huawei]vlan 100 //创建vlan 100。 [Huawei-vlan100]quit //退回系统视图。 03将端口加入到vlan中 [Huawei] interface GigabitEthernet2/0/1 //(10G光口…

Python爬虫实战:爬取【某旅游交通出行类网站中国内热门景点】的评论数据,使用Re、BeautifulSoup与Xpath三种方式解析数据,代码完整

一、分析爬取网页: 1、网址 https://travel.qunar.com/2、 打开网站,找到要爬取的网页 https://travel.qunar.com/p-cs299979-chongqing进来之后,找到评论界面,如下所示:在这里我选择驴友点评数据爬取点击【驴友点评…

Ardupilot开源代码之Rover上路 - 后续1

Ardupilot开源代码之Rover上路 - 后续1 1. 源由2. 问题汇总2.1 问题1:飞控选择2.2 问题2:飞控安装位置和固定2.3 问题3:各种插头、插座配套2.4 问题4:分电板缺陷2.5 问题5:电机编码器接线及正反向问题2.6 问题6&#x…

springboot+vue+mybatis灵活就业服务平台+PPT+论文+讲解+售后

随着网络科技的不断发展以及人们经济水平的逐步提高,网络技术如今已成为人们生活中不可缺少的一部分,而微信小程序是通过计算机技术,针对用户需求开发与设计,该技术尤其在各行业领域发挥了巨大的作用,有效地促进了灵活…

YOLOv9全网最新改进系列:YOLOv9完美融合标准化的注意力模块NAM,高效且轻量级的归一化注意力机制,助力目标检测再上新台阶!

YOLOv9全网最新改进系列:YOLOv9完美融合标准化的注意力模块NAM,高效且轻量级的归一化注意力机制,助力目标检测再上新台阶!!! YOLOv9原文链接戳这里,原文全文翻译请关注B站Ai学术叫叫首er B站全…

win11个性化锁屏界面怎么关闭?

win11个性化锁屏界面关闭方法对于win11用户来说,关闭个性化锁屏界面是一个常见问题。本文将由php小编苹果详细介绍如何执行此操作,分步指导并提供操作截图。继续阅读以了解具体步骤。 win11个性化锁屏界面关闭方法 第一步,点击底部Windows图…

「 安全设计 」68家国内外科技巨头和安全巨头参与了CISA发起的安全设计承诺,包含MFA、默认密码、CVE、VDP等七大承诺目标

美国网络安全和基础设施安全局(CISA,CyberSecurity & Infrastructure Security Agency)于2024年5月开始呼吁企业是时候将网络安全融入到技术产品的设计和制造中了,并发起了安全设计承诺行动,该承诺旨在补充和建立现…

唤醒手腕 Go 语言 并发编程、Channel通道、Context 详细教程(更新中)

并发编程概述 ​ 一个进程可以包含多个线程,这些线程运行的一定是同一个程序(进程程序),且都由当前进程中已经存在的线程通过系统调用的方式创建出来。进程是资源分配的基本单位,线程是调度运行的基本单位&#xff0c…

贪吃蛇——C语言实践

目录 1. 游戏效果演示 2. 课程目标 3.项目适合对象 4.技术要点 5. Win32 API介绍 5.1 Win32 API 5.2 控制台程序 5.3 控制台屏幕上的坐标COORD 5.4 GetStdHandle 5.5 GetConsoleCursorInfo 5.5.1 CONSOLE_CURSOR_INFO 5.6 SetConsoleCursorInfo 5.7 SetConsoleCurs…

uniapp开发小程序使用vue的v-html解析富文本图片过大过宽显示超过屏幕解决办法

如果没有设置的话,就会导致图片溢出,过宽显示或者错位显示,显示效果非常的丑陋: 修改后显示的效果: 网上比较low的解决办法:网上各种解决方法核心思想就是在数据层把数据模板上的img数据加上style样式&…

在vue3中,如何优雅的使用echarts之实现大屏项目

前置知识 效果图 使用技术 Vue3 Echarts Gasp Gasp:是一个 JavaScript动画库,它支持快速开发高性能的 Web 动画。在本项目中,主要是用于做轨迹运动 所需安装的插件 npm i echarts npm i countup.js 数字滚动特效 npm i gsap javascript动画库 np…

蓝桥杯-网络安全比赛(6) 模拟实验 Metasploit 控制并获取Windows 登录HASH、LM Hash和NTLM Hash密文解析

窃取WINDOWS账号密码 系统环境:主机(Windows系统 IP:192.168.126.129),虚拟机(KALI系统 IP:192.168.126.3),两者需要能通过本地网络互通互连。 攻击工具:Metasploit是一…

基于EBAZ4205矿板的图像处理:12图像二值化(阈值可调)

基于EBAZ4205矿板的图像处理:12图像二值化(阈值可调) 我的项目是基于EBAZ4205矿板的阈值可调的图像阈值二值化处理,可以通过按键调整二值化的阈值,key1为阈值加1,key4为阈值减1,key2为阈值加10,key5为阈值…

java项目之校园失物招领系统(springboot+vue+mysql)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的校园失物招领系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 校园失物招领系统的主要…

如何更好地使用Kafka? - 运行监控篇

要确保Kafka在使用过程中的稳定性,需要从kafka在业务中的使用周期进行依次保障。主要可以分为:事先预防(通过规范的使用、开发,预防问题产生)、运行时监控(保障集群稳定,出问题能及时发现&#…

LLaMA 羊驼系大语言模型的前世今生

关于 LLaMA LLaMA是由Meta AI发布的大语言系列模型,完整的名字是Large Language Model Meta AI,直译:大语言模型元AI。Llama这个单词本身是指美洲大羊驼,所以社区也将这个系列的模型昵称为羊驼系模型。 Llama、Llama2 和 Llama3…