PyTorch武侠演义 第一卷:初入江湖 第1章:武林新秀遇Tensor - 张量基础

第一卷:初入江湖

第1章:武林新秀遇Tensor - 张量基础


晨起码农村

鸡鸣三声,林小码已经收拾好了行囊。他最后看了眼床头那本翻旧的《Python入门心法》,轻轻抚平卷起的书角。

"小码,路上小心。"父亲将一把青铜匕首塞进他手中,“这是祖传的NumPy匕首,虽不及当世神兵,但足以防身。”

母亲红着眼眶递来包袱:“娘给你烙了Tensor烧饼,路上饿了就吃。”

林小码跪地叩首:"孩儿此去,定要拜入PyTorch派学艺!"转身时,他听见父亲低声对母亲说:“这孩子打小就爱琢磨那些数字阵法,或许真能…”

晨雾中,少年的身影渐行渐远。他腰间除了匕首,还别着本蓝皮册子——《张量的七十二变》。


青云镇初遇

三日后,林小码站在青云镇的石板街上,这里正举办十年一度的"深度学习武林大会"。街边小贩吆喝着:

“来看来瞧!新鲜出炉的MNIST手写符!”
“Kaggle比武大会报名处,头奖千金!”

突然,前方传来一阵骚动。只见一群锦衣少年围着个卖艺老者起哄:

“老骗子!你这发光方块算什么武功?”
“就是!我们TensorFlow帮的矩阵剑法才叫真功夫!”

老者不慌不忙,面前悬浮的发光立方体突然分裂成无数小块,在空中组成"欢迎来到PyTorch派"字样。

"这…"林小码瞳孔微缩,“竟是三维张量分解!”


张量大师

傍晚,林小码在客栈后院练剑时,那卖艺老者竟坐在墙头喝酒。

“小子,白天的招式,你看懂了几分?”

林小码连忙行礼:“前辈莫非就是传说中的Tensor大师?晚辈只见您将(8,8,8)张量reshape成了(512,)…”

老者突然将酒葫芦抛向空中,葫芦化作数百个细小张量,又重组为茶壶模样。

"好眼力!但reshape只是基础。"大师手指轻点,茶壶又变成骏马形态,“真正的张量运算,在于…”

突然,客栈老板冲进来:“不好啦!TensorFlow帮的人来砸场子了!”


初次比武

前院站着三个锦衣少年,为首的冷笑道:“老东西,敢在我们地盘演示PyTorch邪术?”

大师将林小码推到前面:“小友,可敢用方才所学应战?”

"我?"林小码手心冒汗,但想起包袱里的Tensor烧饼,突然有了主意。

他掏出烧饼掰成四块:“看招!torch.chunk(烧饼,4)”

四块烧饼在空中化作张量,击中对方剑阵的薄弱处。锦衣少年们惊愕地发现,他们的"TF矩阵剑"竟被几个一维张量打乱了节奏。

"有意思。"大师捻须微笑,“但你可知为何能破阵?”

林小码思索道:“因为他们用static shape,而我们用dynamic shape?”


深夜授艺

是夜,大师带林小码来到后山。

"看好了。"大师双手结印,地面浮现巨大计算图,“这才是张量的精髓。”

他演示了:

  1. 张量创建:从普通数组到GPU张量的蜕变
cpu_tensor = torch.tensor([1,2,3])  # 凡铁
gpu_tensor = cpu_tensor.cuda()      # 百炼成钢
  1. 自动广播:小张量如何智取大张量
  2. 内存共享:view与reshape的江湖恩怨

突然,林小码发现大师演示的最后一个张量形状有误:“前辈,这个(3,4)张量不能直接view成(7)啊!”

大师哈哈大笑:“好!发现shape不匹配错误,你已入门了!”


技术揭秘

# 武侠比喻: 
#   - 张量如内力,可刚可柔,变化万千
#   - reshape是易容术,view是分身法
#   - GPU加速乃轻功提纵术# 技术实质:
import torch
# 创建张量
x = torch.arange(24).reshape(2,3,4)  # 三维张量
# 自动广播
y = torch.tensor([1,2,3])          # 形状(3,)
z = x + y                           # 自动扩展为(2,3,4)
# 内存共享
a = x[:,1,:]                        # 共享内存的视图# 关键要点:
# 1. 张量是PyTorch的基础数据结构
# 2. 支持CPU/GPU两种运算设备
# 3. 自动广播机制简化运算
# 4. 视图操作不复制数据

下章预告:深夜,林小码发现大师的计算图中暗藏玄机…那些流动的数字背后,竟是传说中的Autograd神功!

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

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

相关文章

Python进阶(4):类与面向对象程序设计

面向对象OOPOOP:Object Oriented Programming,面向对象编程,面向对象中的对象(Obiect),通常是指客观世界中存在的对象,这个对象具有唯一性,对象之间各不相同,各有各的特点,每个对象都有自己的运动规律和内部状态;对象与…

如何在 Shopify 中创建退货标签

退货是电商运营中不可避免的一环,而一个顺畅、透明的退货流程,不仅能减少客户投诉,也有助于提升顾客对品牌的信任与忠诚度。Shopify 虽然没有内建退货标签自动生成功能,但通过合理设置与外部工具整合,你完全可以打造一…

I2C设备寄存器读取调试方法

1、查看I2C挂载设备 2、读取i2C设备所有寄存器 3、读取i2c设备的某个寄存器 4、向i2C设备某个寄存器写入一个值1、查看

K8S的Helm包管理器

一、背景 官网: https://helm.sh/ 我们针对K8S环境中,部署对应的应用,无外乎就是编写一堆yaml资源清单文件. 资源清单、依赖性少的时候,可以直接手动维护。但是,随着资源清单越来越复杂,越来越多,不同的环…

多模态数据处理新趋势:阿里云ODPS技术栈深度解析与未来展望

多模态数据处理新趋势:阿里云ODPS技术栈深度解析与未来展望 🌟 嗨,我是IRpickstars! 🌌 总有一行代码,能点亮万千星辰。 🔍 在技术的宇宙中,我愿做永不停歇的探索者。 ✨ 用代码丈…

AI数据分析仪设计原理图:RapidIO信号接入 平板AI数据分析仪

AI数据分析仪设计原理图:RapidIO信号接入 平板AI数据分析仪 1 、概述 本仪器是一款面向工业控制、新能源、震动测量等业务开发的平板AI数据分析仪。基于 Jetson Orin Nano(AI边缘计算)、实现RapidIO接口数据接入,进行AI分析。Rap…

人工智能正逐步商品化,而“理解力”才是开发者的真正超能力

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

玩转ClaudeCode:ClaudeCode安装教程(Windows+Linux+MacOS)

Windows 环境安装 Claude Code 一、安装 WSL 环境 1. 确认 Windows 功能已开启 打开 “控制面板 → 程序 → 启用或关闭 Windows 功能” 勾选 “适用于 Linux 的 Windows 子系统” 和 “虚拟机平台” 点“确定”后重启电脑。 开机后,管理员模式打开 Terminal…

PyTorch多层感知机(MLP)模型构建与MNIST分类训练

冲冲冲😊 here😊 文章目录PyTorch多层感知机模型构建与MNIST分类训练笔记🎯 1. 任务概述⚙️ 2. 环境设置2.1 导入必要库2.2 GPU配置🧠 3. 模型构建3.1 模型定义关键点3.2 损失函数选择3.3 模型初始化与设备选择🔧 4. …

android tabLayout 切换fragment fragment生命周期

1、TabLayout 与 Fragment 结合使用的常见方式 通常会使用 FragmentPagerAdapter 或 FragmentStatePagerAdapter 与 ViewPager 配合,再将 TabLayout 与 ViewPager 关联,实现通过 TabLayout 切换 Fragment。 以下是布局文件示例 activity_main.xml: <LinearLayout xmln…

马蹄集 BD202401补给

可怕的战争发生了&#xff0c;小度作为后勤保障工作人员&#xff0c;也要为了保卫国家而努力。现在有 N(1≤N≤)个堡垒需要补给&#xff0c;然而总的预算 B(1≤B≤)是有限的。现在已知第 i 个堡垒需要价值 P(i) 的补给&#xff0c;并且需要 S(i) 的运费。 鉴于小度与供应商之间…

《Llava:Visual Instruction Tuning》论文精读笔记

论文链接&#xff1a;arxiv.org/pdf/2304.08485 参考视频&#xff1a;LLAVA讲解_哔哩哔哩_bilibili [论文速览]LLaVA: Visual Instruction Tuning[2304.08485]_哔哩哔哩_bilibili 标题&#xff1a;Visual Instruction Tuning 视觉指令微调 背景引言 大模型的Instruction…

【DataWhale】快乐学习大模型 | 202507,Task01笔记

引言 我从2016年开始接触matlab看别人做语音识别&#xff0c;再接触tensorflow的神经网络&#xff0c;2017年接触语音合成&#xff0c;2020年做落地的医院手写数字识别。到2020年接触pytorch做了计算机视觉图像分类&#xff0c;到2021年做了目标检测&#xff0c;2022年做了文本…

机器学习中的朴素贝叶斯(Naive Bayes)模型

1. 用实例来理解朴素贝叶斯 下面用具体的数据来演示垃圾邮件 vs 正常邮件的概率计算假设我们有一个小型邮件数据集邮件内容类别&#xff08;垃圾/正常&#xff09;“免费 赢取 大奖”垃圾“免费 参加会议”正常“中奖 点击 链接”垃圾“明天 开会”正常“赢取 免费 礼品”垃圾 …

document.documentElement详解

核心概念定义 它始终指向当前文档的根元素&#xff0c;在 HTML 文档中对应 <html> 标签。与 document.body&#xff08;对应 <body>&#xff09;和 document.head&#xff08;对应 <head>&#xff09;形成层级关系。与 document.body 的区别 <html> &l…

c#进阶之数据结构(动态数组篇)----Queue

1、简介这个是c#封装的队列类型&#xff0c;同栈相反&#xff0c;这个是先进先出&#xff0c;一般用于事件注册&#xff0c;或者数据的按顺序处理&#xff0c;理解为需要排队处理的可以用队列来处理。注意&#xff0c;队列一定是有顺序的&#xff0c;先进确实是会先出&#xff…

使用 keytool 在服务器上导入证书操作指南(SSL 证书验证错误处理)

使用 keytool 在服务器上导入证书操作指南(SSL 证书验证错误处理) 一、概述 本文档用于指导如何在运行 Java 应用程序的服务器上,通过keytool工具将证书导入 Java 信任库,解决因证书未被信任导致的 SSL/TLS 通信问题(如PKIX path building failed错误)。 二、操作步骤…

VUE export import

目录 命名导出 导出变量 导出函数 总结 默认导出 导出变量 导出函数 总结 因为总是搞不懂export和Import什么时候需要加{}&#xff0c;什么时候不用&#xff0c;所以自己测试了一下&#xff0c;以下是总结。 需不需要加{}取决于命名导出还是默认导出&#xff0c;命名导…

端侧宠物识别+拍摄控制智能化:解决设备识别频次识别率双低问题

随着宠物成为家庭重要成员&#xff0c;宠物影像创作需求激增&#xff0c;传统相机系统 “人脸优先” 的调度逻辑已难以应对宠物拍摄的复杂场景。毛发边缘模糊、动态姿态多变、光照反差剧烈等问题&#xff0c;推动着智能拍摄技术向 “宠物优先” 范式转型。本文基于端侧 AI 部署…

Popover API 实战指南:前端弹层体验的原生重构

&#x1fa84; Popover API 实战指南&#xff1a;前端弹层体验的原生重构 还在用 position: absolute JS 定位做 tooltip&#xff1f;还在引入大型 UI 库只为做个浮层&#xff1f;现在浏览器已经支持了真正原生的「弹出层 API」&#xff0c;一行 HTMLCSS 就能构建可交互、无障…