【Datawhale动手学深度学习笔记】预备知识
Anaconda官网:https://www.anaconda.com/products/distribution
跟着屏幕提示输入需要信息即可,安装完成后重新加载一下环境变量
内容如下:
安装torch
安装d2l包
注:如果没有git工具安装命令如下
个人比较喜欢使用juypter lab进行时间,如果喜欢使用notebook的话可以不执行这一步
安装
设置密码
至此环境准备工作全部完成
我们可以使用 arange 创建一个行向量 x。这个行向量包含以0开始的前12个整数,它们默认创建为整数。也可指定创建类型为浮点数。张量中的每个值都称为张量的 元素(element)。例如,张量 x 中有 12 个元素。除非额外指定,新的张量将存储在内存中,并采用基于CPU的计算。
在上面的部分中,我们看到了如何在相同形状的两个张量上执行按元素操作。 在某些情况下,即使形状不同,我们仍然可以通过调用 广播机制(broadcasting mechanism)来执行按元素操作。 这种机制的工作方式如下:
通过适当复制元素来扩展一个或两个数组,以便在转换之后,两个张量具有相同的形状;对生成的数组执行按元素操作。 运行一些操作可能会导致为新结果分配内存。 例如,如果我们用Y = X + Y,我们将取消引用Y指向的张量,而是指向新分配的内存处的张量。
在下面的例子中,我们用Python的id()函数演示了这一点, 它给我们提供了内存中引用对象的确切地址。 运行Y = Y + X后,我们会发现id(Y)指向另一个位置。 这是因为Python首先计算Y + X,为结果分配新的内存,然后使Y指向内存中的这个新位置。
运行结果:
这可能是不可取的,原因有两个:
首先,我们不想总是不必要地分配内存。在机器学习中,我们可能有数百兆的参数,并且在一秒内多次更新所有参数。通常情况下,我们希望原地执行这些更新;如果我们不原地更新,其他引用仍然会指向旧的内存位置,这样我们的某些代码可能会无意中引用旧的参数。 如果在后续计算中没有重复使用X, 我们也可以使用X[:] = X + Y或X += Y来减少操作的内存开销。
运行结果:
注:如果没有安装pandas,只需取消对以下行的注释来安装pandas
运行结果:
计算结果:
计算结果:
上一篇:祖孙三代娶同一个妻子,本以为只是故事,没想到居然是真实存在的
下一篇:看到景甜的这3张照片,我想对张继科说,真是犯罪啊!
最近更新汽车资讯
- 哲学沙龙
- 高原痛风临床研究
- 快播插件(SPSS无法启动因为应用程序的并行配置不正确)
- 教育部2021年工作要点:加强普通高校毕业生就业工作
- 【陪你母乳喂养】 哎哟喂,没生孩子也能泌乳?
- 重组家庭没有血缘关系的兄妹可以结婚吗
- 非现役人员生活待遇经费保障与管理探析
- 《发展心理学·从生命早期到青春期》基础理论读书笔记--结合教育动画的相关研究
- 2023届河南省郑州市(二模)高中毕业第二次质量预测语文试题及答案.docx
- 《那片星空那片海》全集剧情简介 分集剧情介绍
- 给6-15岁男孩女孩的精选主题书单(分性别,暑假必备)
- 优秀家长家庭教育经验分享5篇
- 郭洪雷:汪曾祺小说“衰年变法”考论
- 章子怡汪峰吵架原因 章子怡与汪峰吵架事件详情
- 情感故事:不回家的女人
- 道德伪善的教育学思考
- 2018级高职医学影像技术专业人才培养方案
- 以国家之名的罪恶——评德国影片《窃听风暴》
- 影视传播范文10篇
- 九天揽月一一敢峰证明四色定理之谜
- 挪威流产或人工流产后妊娠的妊娠间隔和不良妊娠结局(2008-2016 年):一项
- 好看的美剧排行榜(12部高分高质美剧推给你)
- 解放思想大讨论心得体会
- 长谈 | 内蒙古电影新浪潮:现实的结构与质感
- 美国《国家性教育标准》及其启示(下)