当前位置:网站首页>"Hands on learning in depth" Chapter 2 - preparatory knowledge_ 2.3 linear algebra_ Learning thinking and exercise answers
"Hands on learning in depth" Chapter 2 - preparatory knowledge_ 2.3 linear algebra_ Learning thinking and exercise answers
2022-07-06 02:31:00 【coder_ sure】
List of articles
2.3 linear algebra
author github link : github link
practice
- Prove a matrix A \mathbf{A} A The transpose of is A \mathbf{A} A, namely ( A ⊤ ) ⊤ = A (\mathbf{A}^\top)^\top = \mathbf{A} (A⊤)⊤=A.
- Two matrices are given A \mathbf{A} A and B \mathbf{B} B, prove “ They are transposed and ” be equal to “ They are transposed with ”, namely A ⊤ + B ⊤ = ( A + B ) ⊤ \mathbf{A}^\top + \mathbf{B}^\top = (\mathbf{A} + \mathbf{B})^\top A⊤+B⊤=(A+B)⊤.
- Given an arbitrary square matrix A \mathbf{A} A, A + A ⊤ \mathbf{A} + \mathbf{A}^\top A+A⊤ Is it always symmetrical ? Why? ?
- We define shapes in this section ( 2 , 3 , 4 ) (2,3,4) (2,3,4) Tensor
X
.len(X)
What is the output of ? - For tensors of arbitrary shape
X
,len(X)
Whether it always corresponds toX
The length of a particular axis ? What is this axis ? - function
A/A.sum(axis=1)
, See what happens . Can you analyze the reason ? - Consider a with a shape ( 2 , 3 , 4 ) (2,3,4) (2,3,4) Tensor , In the shaft 0、1、2 What shape is the summation output on ?
- by
linalg.norm
Function provides 3 Tensors of one or more axes , And observe its output . For tensors of any shape, what does this function calculate ?
Practice reference answers ( If there is a mistake , Please also correct )
1. Prove a matrix A \mathbf{A} A The transpose of is A \mathbf{A} A, namely ( A ⊤ ) ⊤ = A (\mathbf{A}^\top)^\top = \mathbf{A} (A⊤)⊤=A.
A·=·torch.arange(12).reshape(3,4)A,(A.T).T
output:
(tensor([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]]), tensor([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]]))
2. Two matrices are given A \mathbf{A} A and B \mathbf{B} B, prove “ They are transposed and ” be equal to “ They are transposed with ”, namely A ⊤ + B ⊤ = ( A + B ) ⊤ \mathbf{A}^\top + \mathbf{B}^\top = (\mathbf{A} + \mathbf{B})^\top A⊤+B⊤=(A+B)⊤.
B = torch.tensor([[9, 8, 7,6], [5, 4, 3,2], [3, 4, 5,1]])
A.T+B.T ,(A+B).T
output:
(tensor([[ 9, 9, 11],
[ 9, 9, 13],
[ 9, 9, 15],
[ 9, 9, 12]]), tensor([[ 9, 9, 11],
[ 9, 9, 13],
[ 9, 9, 15],
[ 9, 9, 12]]))
3. Given an arbitrary square matrix A \mathbf{A} A, A + A ⊤ \mathbf{A} + \mathbf{A}^\top A+A⊤ Is it always symmetrical ? Why? ?
answer : because ( A + A ⊤ ) ⊤ = A ⊤ + A = A + A ⊤ (\mathbf{A} + \mathbf{A}^\top)^\top=\mathbf{A}^\top+\mathbf{A}=\mathbf{A} + \mathbf{A}^\top (A+A⊤)⊤=A⊤+A=A+A⊤
A = torch.arange(9).reshape(3,3)
A
output:
tensor([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
A+A.T
output:
tensor([[ 0, 4, 8],
[ 4, 8, 12],
[ 8, 12, 16]])
4. We define shapes in this section ( 2 , 3 , 4 ) (2,3,4) (2,3,4) Tensor X
.len(X)
What is the output of ?
X = torch.arange(24).reshape(2, 3, 4)
len(X)
output:
2
5. For tensors of arbitrary shape X
,len(X)
Whether it always corresponds to X
The length of a particular axis ? What is this axis ?
answer :len(X) Total correspondence No 0 Length of shaft .
6. function A/A.sum(axis=1)
, See what happens . Can you analyze the reason ?
answer : Unable to run , as a result of A It's a 5 * 4 Matrix , and A.sum(axis=1) It's a flattened 1 Dimension vector , The two dimensions do not match and cannot be divided .( notes : Broadcasting can only happen when the two dimensions are the same , For example, they are all two-dimensional )
A = torch.arange(20, dtype=torch.float32).reshape(5, 4)
A/A.sum(axis=1,keepdims=True)
output:
tensor([[0.0000, 0.1667, 0.3333, 0.5000],
[0.1818, 0.2273, 0.2727, 0.3182],
[0.2105, 0.2368, 0.2632, 0.2895],
[0.2222, 0.2407, 0.2593, 0.2778],
[0.2286, 0.2429, 0.2571, 0.2714]])
A = torch.arange(20, dtype=torch.float32).reshape(5, 4)
A/A.sum(axis=1)
output:
---------------------------------------------------------------------------
RuntimeError Traceback (most recent call last)
<ipython-input-59-86c8759e15d3> in <module>()
1 A = torch.arange(20, dtype=torch.float32).reshape(5, 4)
----> 2 A/A.sum(axis=1)
RuntimeError: The size of tensor a (4) must match the size of tensor b (5) at non-singleton dimension 1
7. Consider a with a shape ( 2 , 3 , 4 ) (2,3,4) (2,3,4) Tensor , In the shaft 0、1、2 What shape is the summation output on ?
H=torch.arange(24).reshape(2,3,4)
H
output:
tensor([[[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]],
[[12, 13, 14, 15],
[16, 17, 18, 19],
[20, 21, 22, 23]]])
H0 = H.sum(axis=0)
H1 = H.sum(axis=1)
H2 = H.sum(axis=2)
H0, H1, H2
output:
(tensor([[12, 14, 16, 18],
[20, 22, 24, 26],
[28, 30, 32, 34]]), tensor([[12, 15, 18, 21],
[48, 51, 54, 57]]), tensor([[ 6, 22, 38],
[54, 70, 86]]))
8. by linalg.norm
Function provides 3 Tensors of one or more axes , And observe its output . For tensors of any shape, what does this function calculate ?
answer : In fact, it is the operation of finding norms ( The default is 2 norm )
Z=torch.ones(2,3,4)
W=torch.ones(2,2,3,4)
torch.norm(Z)*torch.norm(Z),torch.norm(W)*torch.norm(W)
output:
(tensor(24.0000), tensor(48.))
边栏推荐
- 3D drawing ()
- Exness: Mercedes Benz's profits exceed expectations, and it is predicted that there will be a supply chain shortage in 2022
- HttpRunnerManager安装(三)-Linux下配置myql数据库&初始化数据
- [solution] every time idea starts, it will build project
- The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
- Easy to use js script
- High number_ Vector algebra_ Unit vector_ Angle between vector and coordinate axis
- 数据准备工作
- [community personas] exclusive interview with Ma Longwei: the wheel is not easy to use, so make it yourself!
- [untitled] a query SQL execution process in the database
猜你喜欢
Looking at the trend of sequence modeling of recommended systems in 2022 from the top paper
【MySQL 15】Could not increase number of max_ open_ files to more than 10000 (request: 65535)
MySQL winter vacation self-study 2022 11 (9)
剑指 Offer 30. 包含min函数的栈
Use image components to slide through photo albums and mobile phone photo album pages
2022 edition illustrated network pdf
Lecture 4 of Data Engineering Series: sample engineering of data centric AI
RDD partition rules of spark
好用的 JS 脚本
【机器人库】 awesome-robotics-libraries
随机推荐
论文笔记: 极限多标签学习 GalaXC (暂存, 还没学完)
Easy to use js script
How to generate rich text online
Number conclusion LC skimming review - 1
【MySQL 15】Could not increase number of max_ open_ files to more than 10000 (request: 65535)
[solution] every time idea starts, it will build project
550 permission denied occurs when FTP uploads files, which is not a user permission problem
What should we pay attention to when using the built-in tool to check the health status in gbase 8C database?
[untitled] a query SQL execution process in the database
Reset nodejs of the system
VIM usage guide
Déduisez la question d'aujourd'hui - 729. Mon emploi du temps I
一题多解,ASP.NET Core应用启动初始化的N种方案[上篇]
MySQL winter vacation self-study 2022 11 (7)
[Yunju entrepreneurial foundation notes] Chapter II entrepreneur test 15
Global and Chinese markets of nasal oxygen tubes 2022-2028: Research Report on technology, participants, trends, market size and share
技术管理进阶——什么是管理者之体力、脑力、心力
Minecraft 1.16.5 biochemical 8 module version 2.0 storybook + more guns
机器学习训练与参数优化的一般过程 (讨论)
ReferenceError: primordials is not defined错误解决