1.深度学习张量的创建方式
·
机器学习(ML)和深度学习(DL)的关系和区别
- 深度学习属于机器学习,是机器学习的一部分
深度学习的特点
- 深层非线性(可以加入激活函数)
- 自动提取特征
- 大数据和计算能力
- 解释性比较弱
DL的常用模型
- CNN,RNN

什么是张量
- 张量就是pytorch中的元素为同一种数据类型的多维矩阵
- pytorch对张量的大量支持,例如:数值计算,矩阵操作,自动求导(自动微分)
- pytorch支持各种张量子类型
- 标量(0维张量)
- 矢量(1维张量)
- 矩阵(2维张量)
- 矩阵数组(3维张量)
- ...

张量的创建方式
- torch.tensor
- torch.Tensor
- torch.IntTensor, torch.FloatTensor

import torch
import numpy as np
def demo_1():
# 场景1 标量张量
t1 = torch.tensor(10)
print(f't1: {t1}, type: {type(t1)}')
print('-' * 30)
# 场景2 二维列表 -> 张量
data = [[1, 2, 3],[4, 5, 6]]
t2 = torch.tensor(data)
print(f't1: {t2}, type: {type(t2)}')
print('-' * 30)
# 场景3 numpy的nd数组也能转为 张量
data = np.random.randint(0, 10, (2,3))
t3 = torch.tensor(data)
print(f't1: {t3}, type: {type(t3)}')
print('-' * 30)
def demo_2():
# 场景1 标量张量
t1 = torch.Tensor(10)
print(f't1: {t1}, type: {type(t1)}')
print('-' * 30)
# 场景2 二维列表 -> 张量
data = [[1, 2, 3],[4, 5, 6]]
t2 = torch.Tensor(data)
print(f't2: {t2}, type: {type(t2)}')
print('-' * 30)
# 场景3 numpy的nd数组也能转为 张量
data = np.random.randint(0, 10, (2,3))
t3 = torch.Tensor(data)
print(f't3: {t3}, type: {type(t3)}')
print('-' * 30)
# 场景4 按照形状创建张量
t4 = torch.Tensor(2,3)
print(f't4: {t4}, type: {type(t4)}')
print('-' * 30)
if __name__ == '__main__':
# demo_1()
demo_2()

总结:
- torch.Tensor的功能更加强大,还可以直接根据性质创建张量,例如torch.Tensor(2,3)

更多推荐


所有评论(0)