动手学深度学习--基础知识上篇

🎈动手学deep learning
☁️本专栏会定期更新关于动手学深度学习的每章知识点的讲解,题目答案
👻如果喜欢,欢迎点赞,收藏

动手学深度学习-预备知识篇

线性代数篇

1-3题讲解

  1. 证明一个矩阵 A \mathbf{A} A的转置的转置是 A \mathbf{A} A,即 ( A ⊤ ) ⊤ = A (\mathbf{A}^\top)^\top = \mathbf{A} (A)=A
import torch as tc
A = torch.arange(24,dtype = torch.float32).reshape(4,-1)
print(1,A),print(1,(A.T).T)
  • 运行结果

第一题图解
2. 给出两个矩阵 A \mathbf{A} A B \mathbf{B} B,证明“它们转置的和”等于“它们和的转置”,即 A ⊤ + B ⊤ = ( A + B ) ⊤ \mathbf{A}^\top + \mathbf{B}^\top = (\mathbf{A} + \mathbf{B})^\top A+B=(A+B)

# 2.证明两个矩阵的转置的和等于矩阵和的转置
A1 = torch.arange(24,dtype = torch.float32).reshape(4,-1)+2
print(A.T+A1.T),print((A+A1).T)
  • 运行结果

在这里插入图片描述
3. 给定任意方阵 A \mathbf{A} A A + A ⊤ \mathbf{A} + \mathbf{A}^\top A+A总是对称的吗?为什么?

# 3.对于任意给定的*方*阵A,总是有A+A.T是对称矩阵???
Z = torch.arange(16,dtype = torch.float32).reshape(4,-1)
print(3,Z+Z.T),print(3,(Z+Z.T).T)
Y = torch.tensor(([4,2,3,4],[42,12,56,88],[74,32,12,44],[9,93,32,12]))
print((Y+Y.T)),print((Y+Y.T).T)
  • 运行结果

第三个图片啦

4-9题讲解

  1. 本节中定义了形状 ( 2 , 3 , 4 ) (2,3,4) (2,3,4)的张量Xlen(X)的输出结果是什么?
# 4.X = torch.arange(24,dtype = torch.float32).reshape(2,3,4),求len(X)
X = torch.arange(24,dtype = torch.float32).reshape(2,3,4)
print(len(X),len(X[1]),print(X))
  • 运行结果

第四道题,输出多几个不过分吧
5. 对于任意形状的张量X,len(X)是否总是对应于X特定轴的长度?这个轴是什么?

# 5.给定一个任意的张量,要指出len(X)是对应的那个轴的长度,这个轴是什么
X1 = tc.ones(24).reshape(6,-1)  #轴度为2
print(len(X1))                  
X2 = tc.arange(24).reshape(4,2,-1) #轴度为3
print(len(X2))
W = tc.zeros(30)             #轴度为1
print(len(W))
  • 运行结果

第五道题目
6. 运行A/A.sum(axis=1),看看会发生什么。请分析一下原因?
在这里插入图片描述

  • 更改之后,不能再除
    在这里插入图片描述
  1. 考虑一个具有形状 ( 2 , 3 , 4 ) (2,3,4) (2,3,4)的张量,在轴0、1、2上的求和输出是什么形状?
print(X.sum(axis = 0)),print(X.sum(axis = 1)),print(X.sum(axis = 2))
  • 运行结果
    第七题,竟然是最后一个写完的
  1. linalg.norm函数提供3个或更多轴的张量,并观察其输出。对于任意形状的张量这个函数计算得到什么?
# 8.为linalg.norm函数提供3个或更多轴的张量,并观察其输出。对于任意形状的张量这个函数计算得到什么?
from math import sqrt
W1 = tc.arange(1024,dtype = torch.float32).reshape(1,2,2,256)
print(tc.norm(W1))
W2 = tc.arange(36,dtype = torch.float32).reshape(6,6)
print(tc.norm(W2) == sqrt((W2*W2).sum(axis = [0,1])))
print(sum(sum(W2*W2)))
print((W2*W2).sum(axis = [0,1]))
  • 运行结果

第八题

下篇预备知识:

1.微分学实现绘画切线
2.详解微分函数实现过程

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

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

相关文章

安卓手机跑 vins slam (2)

既然选择把vins的代码移植到新工程,那么就需要先确定自己电脑的Android Studio的C开发环节是OK的,可以通过创建C的示例工程,能正常跑通做验证。 选择Native C 需要选择用C哪个版本, 这里通过百度搜索,slam 编译需要C 1…

电脑提示丢失(或找不到)msvcp120.dll解决办法

msvcp140.dll是Microsoft Visual C Redistributable的一部分,它是Windows操作系统中的一个动态链接库文件。这个文件包含了许多C标准库函数的实现,对于一些依赖C标准库的应用程序来说,msvcp140.dll是非常重要的。msvcp140.dll的主要用途是提供…

热电联产在综合能源系统中的选址定容研究(matlab代码)

目录 1 主要内容 目标函数 程序模型 2 部分代码 3 程序结果 1 主要内容 该程序参考《热电联产在区域综合能源系统中的定容选址研究》,主要针对电热综合能源系统进行优化,确定热电联产机组的位置和容量,程序以33节点电网和17节点热网为例…

CI/CD入门(二)

CI/CD入门(二) 目录 CI/CD入门(二) 1、代码上线方案 1.1 早期手动部署代码1.2 合理化上线方案1.3 大型企业上线制度和流程1.4 php程序代码上线的具体方案1.5 Java程序代码上线的具体方案1.6 代码上线解决方案注意事项2、理解持续集成、持续交付、持续部署 2.1 持续集成2.2 持续…

小白到运维工程师自学之路 第七十五集 (Kubernetes 企业级高可用部署)2

8、添加master节点 在k8s-master2和k8s-master3节点创建文件夹 mkdir -p /etc/kubernetes/pki/etcd在k8s-master1节点执行 从k8s-master1复制密钥和相关文件到k8s-master2和k8s-master3 scp /etc/kubernetes/admin.conf root192.168.77.15:/etc/kubernetes scp /etc/kubernet…

UAF释放后重引用原理

原地址:https://blog.csdn.net/qq_31481187/article/details/73612451 原作者代码是基于linux系统的演示代码,因为windows和Linux 内存管理机制上略有不同,该程序在Windows需要稍微做些改动。 Windows上执行free释放malloc函数分配的内存后…

Docker碎碎念

docker和虚拟机的区别 虚拟机(VM)是通过在物理硬件上运行一个完整的操作系统来实现的。 每个虚拟机都有自己的内核、设备驱动程序和用户空间,它们是相互独立且完全隔离的。 虚拟机可以在不同的物理服务器之间迁移,因为它们是以整…

淘宝搜索店铺列表API:关键字搜索店铺信息 获取店铺主页 店铺所在地 服务评级

接口名称:item_search_seller 基本功能介绍 该API可以通过传入关键字,获取到淘宝商城的店铺列表,支持翻页显示。指定参数page获取到指定页的数据。返回的店铺信息包括:店铺名、店铺ID、店铺主页、宝贝图片、掌柜名字、店铺所在地…

idea2023 springboot2.7.5+mybatisplus3.5.2+jsp 初学单表增删改查

创建项目 修改pom.xml 为2.7.5 引入mybatisplus 2.1 修改pom.xml <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.2</version></dependency><!--mysq…

11. Vuepress2.x 关闭夜间模式

修改 docs/.vuepress/config.ts 配置文件 设置 themeConfig.darkMode属性详见 官网 module.exports {host: localhost, // ipport: 8099, //端口号title: 我的技术站, // 设置网站标题description: 描述&#xff1a;我的技术站,base: /, //默认路径head: [// 设置 favor.ico&a…

聊聊看React和Vue的区别

Vue 更适合小项目&#xff0c;React 更适合大公司大项目&#xff1b; Vue 的学习成本较低&#xff0c;很容易上手&#xff0c;但项目质量不能保证...... 真的是这样吗&#xff1f;借助本篇文章&#xff0c;我们来从一些方面的比较来客观的去看这个问题。 论文档的丰富性 从两个…

源于传承,擎领未来,新架构、新工艺下的“换心工程”——金融电子化访中电金信副总经理、研究院院长况文川

当前&#xff0c;商业银行的经营环境正在发生着深刻而复杂的变化&#xff0c;在深化改革主旋律的指引下&#xff0c;数字化转型已成为我国商业银行普遍认同、广泛采用的战略性举措。核心系统作为承载银行业务的关键支柱系统&#xff0c;一直是各银行在金融科技建设中重点关注和…

每日一题——接雨水(单调栈)

接雨水——单调栈 题目链接 单调递增的栈还是单调递减的栈 我们常说的**”积水成洼“**&#xff0c;指的就是说&#xff1a;当两边地势高于中间的地势时&#xff0c;中间的区域就成了洼地&#xff0c;也就可以积水了。 这一题就是如此&#xff0c;我们需要通过一个栈来记录数…

微服务最佳实践,零改造实现 Spring Cloud Apache Dubbo 互通

作者&#xff1a;孙彩荣 很遗憾&#xff0c;这不是一篇关于中间件理论或原理讲解的文章&#xff0c;没有高深晦涩的工作原理分析&#xff0c;文后也没有令人惊叹的工程数字统计。本文以实际项目和代码为示例&#xff0c;一步一步演示如何以最低成本实现 Apache Dubbo 体系与 S…

Maven 基础之依赖管理、范围、传递、冲突

文章目录 关于依赖管理坐标和 mvnrepository 网站pom.xml 中"引"包 依赖范围依赖传递依赖冲突 关于依赖管理 坐标和 mvnrepository 网站 在 maven 中通过『坐标』概念来确定一个唯一确定的 jar 包。坐标的组成部分有&#xff1a; 元素说明<groupId>定义当前…

ElementUI的MessageBox的按钮置灰且不可点击

// this.$confirmthis.$alert(这是一段内容, 标题名称, {confirmButtonText: 确定,confirmButtonCLass: confirmButton,beforeClose: (action,instance,done) > {if (action confirm) {return false} else {done()}});}.confirmButton {background: #ccc !important;cursor…

《游戏编程模式》学习笔记(七)状态模式 State Pattern

状态模式的定义 允许对象在当内部状态改变时改变其行为&#xff0c;就好像此对象改变了自己的类一样。 举个例子 在书的示例里要求你写一个人物控制器&#xff0c;实现跳跃功能 直觉上来说&#xff0c;我们代码会这么写&#xff1a; void Heroine::handleInput(Input input…

Python学习笔记_基础篇(十一)_socket编程

python 线程与进程简介 进程与线程的历史 我们都知道计算机是由硬件和软件组成的。硬件中的CPU是计算机的核心&#xff0c;它承担计算机的所有任务。 操作系统是运行在硬件之上的软件&#xff0c;是计算机的管理者&#xff0c;它负责资源的管理和分配、任务的调度。 程序是运行…

图像处理常见的两种拉流方式

传统算法或者深度学习在进行图像处理之前&#xff0c;总是会首先进行图像的采集&#xff0c;也就是所谓的拉流。解决拉流的方式有两种&#xff0c;一个是直接使用opencv进行取流&#xff0c;另一个是使用ffmpeg进行取流&#xff0c;如下分别介绍这两种方式进行拉流处理。 1、o…

AraNet:面向阿拉伯社交媒体的新深度学习工具包

阿拉伯语是互联网上第四大最常用的语言&#xff0c;它在社交媒体上的日益增加为大规模研究阿拉伯语在线社区提供了充足的资源。然而&#xff0c;目前很少有工具可以从这些数据中获得有价值的见解&#xff0c;用于决策、指导政策、协助应对等。这种情况即将改变吗&#xff1f; …