Pytotch学习

Pytotch学习

一、Pytorch是什么?

​ Pytorch是torch的python版本,是由Facebook开源的神经网络框架,专门针对 GPU 加速的深度神经网络(DNN)编程。Torch 是一个经典的对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。与Tensorflow的静态计算图不同,pytorch的计算图是动态的,可以根据计算需要实时改变计算图。但由于Torch语言采用 Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。作为经典机器学习库 Torch 的端口,PyTorch 为 Python 语言使用者提供了舒适的写代码选择。

二、环境安装

1.anaconda新建虚拟环境

conda creat -n torch39 python=3.9
conda activate torch39

2.安装pytorch-cpu版本

pip install torch=2.1.0

3.Pycharm中环境配置

三、张量的基本使用

1.张量的概念

​ 张量是一个多维数组,它是标量、向量和矩阵概念的推广。在深度学习中,张量被广泛用于表示数据和模型参数。具体来说,张量的“张”可以理解为“维度”,张量的阶或维数称为秩。例如,零阶张量是一个标量,一阶张量是一个向量,二阶张量是一个矩阵,三阶及以上的张量则可以看作是高维数组。

2.张量的创建

import torch
import numpy as np
 
# torch.tensor根据已有的数据创建张量
# torch.Tensor根据形状创建张量,也可以用来创建指定数据的张量
# torch.IntTensor创建一个整数张量,torch.FloatTensor创建一个浮点数张量,torch.DoubleTensor创建一个双精度浮点数张量
 
# 1.根据已有数据创建张量
def test1():
    # 1.1 创建标量张量
    data = torch.tensor(10)
    print(data)
    # 1.2 numpy创建张量
    data = np.random.randn(2, 3)  # 2行3列
    data = torch.tensor(data)
    print(data)
    # 1.3 列表
    data = [[10., 20., 30.], [40., 50., 60.]]
    data = torch.tensor(data)
    print(data)
 
# 2.根据形状创建张量
def test2():
    # 2.1 创建一个形状为(2,3)的张量
    data = torch.Tensor(2, 3)
    print(data)
    # 2.2 如果传递列表,则创建包含列表元素的张量
    data = torch.Tensor([10])
    print(data)
    data = torch.Tensor([[10], [20]])
    print(data)
 
def test3():
    # 3.1 创建一个形状为(2,3)的整数张量
    data = torch.IntTensor(2, 3)
    print(data)
    # 3.2 创建一个形状为(2,3)的浮点数张量
    data = torch.FloatTensor(2, 3)
    print(data)
    # 3.3 创建一个形状为(2,3)的双精度浮点数张量
    data = torch.DoubleTensor(2, 3)
    print(data)
 
if __name__ == '__main__':
    test1()
    test2()
    test3()

运行结果:在这里插入图片描述

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值