feat: add pytorch.md (#138)
This commit is contained in:
		
							
								
								
									
										28
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								README.md
									
									
									
									
									
								
							@@ -26,7 +26,8 @@ Quick Reference
 | 
				
			|||||||
[FFmpeg](./docs/ffmpeg.md)<!--rehype:style=background: rgb(0 193 9/var(\-\-bg\-opacity));&class=contributing-->
 | 
					[FFmpeg](./docs/ffmpeg.md)<!--rehype:style=background: rgb(0 193 9/var(\-\-bg\-opacity));&class=contributing-->
 | 
				
			||||||
[LaTeX](./docs/latex.md)<!--rehype:style=background: rgb(0 128 128/var(\-\-bg\-opacity));&class=contributing-->
 | 
					[LaTeX](./docs/latex.md)<!--rehype:style=background: rgb(0 128 128/var(\-\-bg\-opacity));&class=contributing-->
 | 
				
			||||||
[MATLAB](./docs/matlab.md)<!--rehype:style=background: rgb(0 118 168/var(\-\-bg\-opacity));&class=contributing-->
 | 
					[MATLAB](./docs/matlab.md)<!--rehype:style=background: rgb(0 118 168/var(\-\-bg\-opacity));&class=contributing-->
 | 
				
			||||||
[Vue 3](./docs/vue.md)<!--rehype:style=background: rgb(64 184 131/var(\-\-bg\-opacity));&class=contributing-->
 | 
					[Vue 3 ](./docs/vue.md)<!--rehype:style=background: rgb(64 184 131/var(\-\-bg\-opacity));&class=contributing-->
 | 
				
			||||||
 | 
					[Pytorch](./docs/pytorch.md)<!--rehype:style=background: rgb(43 91 132/var(\-\-bg\-opacity));&class=contributing&data-info=👆看看还缺点儿什么?-->
 | 
				
			||||||
<!--rehype:class=home-card-->
 | 
					<!--rehype:class=home-card-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 编程
 | 
					## 编程
 | 
				
			||||||
@@ -60,6 +61,7 @@ Quick Reference
 | 
				
			|||||||
[TOML](./docs/toml.md)<!--rehype:style=background: rgb(132 132 132/var(\-\-bg\-opacity));-->
 | 
					[TOML](./docs/toml.md)<!--rehype:style=background: rgb(132 132 132/var(\-\-bg\-opacity));-->
 | 
				
			||||||
[YAML](./docs/yaml.md)<!--rehype:style=background: rgb(91 163 230/var(\-\-bg\-opacity));-->
 | 
					[YAML](./docs/yaml.md)<!--rehype:style=background: rgb(91 163 230/var(\-\-bg\-opacity));-->
 | 
				
			||||||
[Lua](./docs/lua.md)<!--rehype:style=background: rgb(64 196 255/var(\-\-bg\-opacity));-->
 | 
					[Lua](./docs/lua.md)<!--rehype:style=background: rgb(64 196 255/var(\-\-bg\-opacity));-->
 | 
				
			||||||
 | 
					[Pytorch](./docs/pytorch.md)<!--rehype:style=background: rgb(43 91 132/var(\-\-bg\-opacity));&class=contributing&data-info=👆看看还缺点儿什么?-->
 | 
				
			||||||
<!--rehype:class=home-card-->
 | 
					<!--rehype:class=home-card-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 前端
 | 
					## 前端
 | 
				
			||||||
@@ -173,15 +175,9 @@ Quick Reference
 | 
				
			|||||||
<a href="https://github.com/Jack-Zhang-1314" title="fw_qaq">
 | 
					<a href="https://github.com/Jack-Zhang-1314" title="fw_qaq">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/82551626?v=4" width="42;" alt="fw_qaq"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/82551626?v=4" width="42;" alt="fw_qaq"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/Alex-Programer" title="Alex">
 | 
					 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/115539090?v=4" width="42;" alt="Alex"/>
 | 
					 | 
				
			||||||
</a>
 | 
					 | 
				
			||||||
<a href="https://github.com/mofelee" title="mofelee">
 | 
					<a href="https://github.com/mofelee" title="mofelee">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/5069410?v=4" width="42;" alt="mofelee"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/5069410?v=4" width="42;" alt="mofelee"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/expoli" title="expoli">
 | 
					 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/31023767?v=4" width="42;" alt="expoli"/>
 | 
					 | 
				
			||||||
</a>
 | 
					 | 
				
			||||||
<a href="https://github.com/partoneplay" title="partoneplay">
 | 
					<a href="https://github.com/partoneplay" title="partoneplay">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/5189132?v=4" width="42;" alt="partoneplay"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/5189132?v=4" width="42;" alt="partoneplay"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
@@ -191,18 +187,15 @@ Quick Reference
 | 
				
			|||||||
<a href="https://github.com/13812700839" title="花殇">
 | 
					<a href="https://github.com/13812700839" title="花殇">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
 | 
					<a href="https://github.com/Alex-Programer" title="Alex">
 | 
				
			||||||
 | 
					  <img src="https://avatars.githubusercontent.com/u/115539090?v=4" width="42;" alt="Alex"/>
 | 
				
			||||||
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/Smartdousha" title="Anko">
 | 
					<a href="https://github.com/Smartdousha" title="Anko">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/52566311?v=4" width="42;" alt="Anko"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/52566311?v=4" width="42;" alt="Anko"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/Brid9e" title="Brid9e">
 | 
					 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/85558909?v=4" width="42;" alt="Brid9e"/>
 | 
					 | 
				
			||||||
</a>
 | 
					 | 
				
			||||||
<a href="https://github.com/CharlotteZeng" title="Chart">
 | 
					<a href="https://github.com/CharlotteZeng" title="Chart">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/19461184?v=4" width="42;" alt="Chart"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/19461184?v=4" width="42;" alt="Chart"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/DaiNing810" title="DaiN">
 | 
					 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/94962339?v=4" width="42;" alt="DaiN"/>
 | 
					 | 
				
			||||||
</a>
 | 
					 | 
				
			||||||
<a href="https://github.com/demigodliu" title="DemigodLiu">
 | 
					<a href="https://github.com/demigodliu" title="DemigodLiu">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
@@ -212,9 +205,6 @@ Quick Reference
 | 
				
			|||||||
<a href="https://github.com/JetSquirrel" title="JetSquirrel">
 | 
					<a href="https://github.com/JetSquirrel" title="JetSquirrel">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/20291255?v=4" width="42;" alt="JetSquirrel"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/20291255?v=4" width="42;" alt="JetSquirrel"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/Lihuagreek" title="Lihuagreek">
 | 
					 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/51040740?v=4" width="42;" alt="Lihuagreek"/>
 | 
					 | 
				
			||||||
</a>
 | 
					 | 
				
			||||||
<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
 | 
					<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
@@ -242,9 +232,6 @@ Quick Reference
 | 
				
			|||||||
<a href="https://github.com/hweining" title="hweining">
 | 
					<a href="https://github.com/hweining" title="hweining">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/8973985?v=4" width="42;" alt="hweining"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/8973985?v=4" width="42;" alt="hweining"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/k983551019" title="k983551019">
 | 
					 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/48147837?v=4" width="42;" alt="k983551019"/>
 | 
					 | 
				
			||||||
</a>
 | 
					 | 
				
			||||||
<a href="https://github.com/kdxcxs" title="kdxcxs">
 | 
					<a href="https://github.com/kdxcxs" title="kdxcxs">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/18746192?v=4" width="42;" alt="kdxcxs"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/18746192?v=4" width="42;" alt="kdxcxs"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
@@ -254,9 +241,6 @@ Quick Reference
 | 
				
			|||||||
<a href="https://github.com/liliangrong777" title="liliangrong777">
 | 
					<a href="https://github.com/liliangrong777" title="liliangrong777">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/58727146?v=4" width="42;" alt="liliangrong777"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/58727146?v=4" width="42;" alt="liliangrong777"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
<a href="https://github.com/lykjjj" title="lykjjj">
 | 
					 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/58510058?v=4" width="42;" alt="lykjjj"/>
 | 
					 | 
				
			||||||
</a>
 | 
					 | 
				
			||||||
<a href="https://github.com/onewesong" title="onewesong">
 | 
					<a href="https://github.com/onewesong" title="onewesong">
 | 
				
			||||||
  <img src="https://avatars.githubusercontent.com/u/17920822?v=4" width="42;" alt="onewesong"/>
 | 
					  <img src="https://avatars.githubusercontent.com/u/17920822?v=4" width="42;" alt="onewesong"/>
 | 
				
			||||||
</a>
 | 
					</a>
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										177
									
								
								docs/pytorch.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										177
									
								
								docs/pytorch.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,177 @@
 | 
				
			|||||||
 | 
					Pytorch  备忘清单
 | 
				
			||||||
 | 
					===
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Pytorch 备忘单是 [Pytorch ](https://pytorch.org/) 官网
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					入门
 | 
				
			||||||
 | 
					-----
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 介绍
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- [Pytorch基本语法]
 | 
				
			||||||
 | 
					- [Pytorch初步应用]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 认识Pytorch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					from __future__ import print_function
 | 
				
			||||||
 | 
					import torch
 | 
				
			||||||
 | 
					x = torch.empty(5, 3)
 | 
				
			||||||
 | 
					>>> print(x)
 | 
				
			||||||
 | 
					tensor([[2.4835e+27, 2.5428e+30, 1.0877e-19],
 | 
				
			||||||
 | 
					        [1.5163e+23, 2.2012e+12, 3.7899e+22],
 | 
				
			||||||
 | 
					        [5.2480e+05, 1.0175e+31, 9.7056e+24],
 | 
				
			||||||
 | 
					        [1.6283e+32, 3.7913e+22, 3.9653e+28],
 | 
				
			||||||
 | 
					        [1.0876e-19, 6.2027e+26, 2.3685e+21]])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Tensors张量: 张量的概念类似于Numpy中的ndarray数据结构, 最大的区别在于Tensor可以利用GPU的加速功能.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 创建一个全零矩阵
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					x = torch.zeros(5, 3, dtype=torch.long)
 | 
				
			||||||
 | 
					>>> print(x)
 | 
				
			||||||
 | 
					tensor([[0, 0, 0],
 | 
				
			||||||
 | 
					        [0, 0, 0],
 | 
				
			||||||
 | 
					        [0, 0, 0],
 | 
				
			||||||
 | 
					        [0, 0, 0],
 | 
				
			||||||
 | 
					        [0, 0, 0]])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					创建一个全零矩阵并可指定数据元素的类型为long
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 数据创建张量
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					x = torch.tensor([2.5, 3.5])
 | 
				
			||||||
 | 
					>>> print(x)
 | 
				
			||||||
 | 
					tensor([2.5000, 3.3000])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Pytorch的基本语法
 | 
				
			||||||
 | 
					---------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 加法操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					y = torch.rand(5, 3)
 | 
				
			||||||
 | 
					>>> print(x + y)
 | 
				
			||||||
 | 
					tensor([[ 1.6978, -1.6979,  0.3093],
 | 
				
			||||||
 | 
					        [ 0.4953,  0.3954,  0.0595],
 | 
				
			||||||
 | 
					        [-0.9540,  0.3353,  0.1251],
 | 
				
			||||||
 | 
					        [ 0.6883,  0.9775,  1.1764],
 | 
				
			||||||
 | 
					        [ 2.6784,  0.1209,  1.5542]])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					第一种加法操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 加法操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					>>> print(torch.add(x, y))
 | 
				
			||||||
 | 
					tensor([[ 1.6978, -1.6979,  0.3093],
 | 
				
			||||||
 | 
					        [ 0.4953,  0.3954,  0.0595],
 | 
				
			||||||
 | 
					        [-0.9540,  0.3353,  0.1251],
 | 
				
			||||||
 | 
					        [ 0.6883,  0.9775,  1.1764],
 | 
				
			||||||
 | 
					        [ 2.6784,  0.1209,  1.5542]])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					第二种加法操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 加法操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					# 提前设定一个空的张量
 | 
				
			||||||
 | 
					result = torch.empty(5, 3)
 | 
				
			||||||
 | 
					# 将空的张量作为加法的结果存储张量
 | 
				
			||||||
 | 
					 torch.add(x, y, out=result)
 | 
				
			||||||
 | 
					>>> print(result)
 | 
				
			||||||
 | 
					tensor([[ 1.6978, -1.6979,  0.3093],
 | 
				
			||||||
 | 
					        [ 0.4953,  0.3954,  0.0595],
 | 
				
			||||||
 | 
					        [-0.9540,  0.3353,  0.1251],
 | 
				
			||||||
 | 
					        [ 0.6883,  0.9775,  1.1764],
 | 
				
			||||||
 | 
					        [ 2.6784,  0.1209,  1.5542]])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					第三种加法操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 加法操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					y.add_(x)
 | 
				
			||||||
 | 
					>>> print(y)
 | 
				
			||||||
 | 
					tensor([[ 1.6978, -1.6979,  0.3093],
 | 
				
			||||||
 | 
					        [ 0.4953,  0.3954,  0.0595],
 | 
				
			||||||
 | 
					        [-0.9540,  0.3353,  0.1251],
 | 
				
			||||||
 | 
					        [ 0.6883,  0.9775,  1.1764],
 | 
				
			||||||
 | 
					        [ 2.6784,  0.1209,  1.5542]])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					第四种加法操作
 | 
				
			||||||
 | 
					注意:所有in-place的操作函数都有一个下划线的后缀.
 | 
				
			||||||
 | 
					比如x.copy_(y), x.add_(y), 都会直接改变x的值.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 张量操作
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					>>> print(x[:, 1])
 | 
				
			||||||
 | 
					tensor([-2.0902, -0.4489, -0.1441,  0.8035, -0.8341])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 张量形状
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					x = torch.randn(4, 4)
 | 
				
			||||||
 | 
					# tensor.view()操作需要保证数据元素的总数量不变
 | 
				
			||||||
 | 
					y = x.view(16)
 | 
				
			||||||
 | 
					# -1代表自动匹配个数
 | 
				
			||||||
 | 
					z = x.view(-1, 8)
 | 
				
			||||||
 | 
					>>> print(x.size(), y.size(), z.size())
 | 
				
			||||||
 | 
					torch.Size([4, 4]) torch.Size([16]) torch.Size([2, 8])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 取张量元素
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					x = torch.randn(1)
 | 
				
			||||||
 | 
					>>> print(x)
 | 
				
			||||||
 | 
					>>> print(x.item())
 | 
				
			||||||
 | 
					tensor([-0.3531])
 | 
				
			||||||
 | 
					-0.3530771732330322
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Torch Tensor和Numpy array互换
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					a = torch.ones(5)
 | 
				
			||||||
 | 
					>>> print(a)
 | 
				
			||||||
 | 
					tensor([1., 1., 1., 1., 1.])
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Torch Tensor和Numpy array共享底层的内存空间, 因此改变其中一个的值, 另一个也会随之被改变
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Torch Tensor转换为Numpy array
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					b = a.numpy()
 | 
				
			||||||
 | 
					>>> print(b)
 | 
				
			||||||
 | 
					[1. 1. 1. 1. 1.]
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Numpy array转换为Torch Tensor:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```python
 | 
				
			||||||
 | 
					import numpy as np
 | 
				
			||||||
 | 
					a = np.ones(5)
 | 
				
			||||||
 | 
					b = torch.from_numpy(a)
 | 
				
			||||||
 | 
					np.add(a, 1, out=a)
 | 
				
			||||||
 | 
					>>> print(a)
 | 
				
			||||||
 | 
					>>> print(b)
 | 
				
			||||||
 | 
					[2. 2. 2. 2. 2.]
 | 
				
			||||||
 | 
					tensor([2., 2., 2., 2., 2.], dtype=torch.float64)
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					注意:所有在CPU上的Tensors, 除了CharTensor, 都可以转换为Numpy array并可以反向转换.
 | 
				
			||||||
		Reference in New Issue
	
	Block a user