《Deep-Learning-with-PyTorch》学习笔记Chapter3 Tensor(一)

本文介绍深度学习的基本概念及PyTorch的应用,重点讲解如何通过Tensor处理数据,并将其转换为神经网络所需的浮点数形式。此外,还探讨了Tensor在深度学习中的角色及其优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(自学《Deep-Learning-with-PyTorch》使用,仅供参考)

一、绪论

深度学习应用是以某种形式(图片或文本)获取数据,然后以另一种形式(标签、数字或更多的图像或文本)生成数据。

深度学习实际上是建立一个系统,该系统可以将数据一种表示转换为另一种表示。

我们首先学习如何使用Tensor处理PyTorch中所有的浮点数。

二、将输入转换为浮点数

浮点数是网络处理信息的方式,因此我们需要将现实世界中的数据编码成网络可以消化的形式,然后将输出再解码为我们可以理解并使用的数据。(类似于 A/D-D/A)

例如:【花】——【10010111】——【花】

如图所示,深度神经网络通常分阶段的学习从一种形式的数据(INPUT)到另一种形式的数据(OUTPUT)的转换,而在这个阶段的中间,一些部分转换的数据可以认为是中间表示(INTERMEDIATE REPRESENTATIONS)。

对于早期的图像识别,这些中间表示(INTERMEDIATE REPRESENTATIONS)可以是边缘检测或某些纹理,更深层次一点,它们可以是更复杂的结构,比如耳朵、眼睛等。

中间表示(INTERMEDIATE REPRESENTATIONS)是浮点数的集合。这些浮点数以一种有利于描述神经网络输入如何映射到输出的方式表征了输入并捕获了数据结构。

这些浮点数的结合和它们的操作就是现代人工智能的核心。

图中的中间表示(INTERMEDIATE REPRESENTATIONS)是输入与前一层神经元权重(Weight)结合的产物。

每个中间表示(INTERMEDIATE REPRESENTATIONS)对于它之前的输入都是唯一的。

PyTorch利用Tensor将输入,中间表示、输出处理和存储。

三、Tensor(张量)

在深度学习背景下,Tensor是向量和矩阵泛化到任意维数,所以,也可以叫Tensor为多维数组(multidimensional array)。

注意,Tensor不是唯一处理多维数组的库,目前最流行的多维数组库是Numpy,它被认为是数据科学的通用语言。

但Tensor有一些Numpy没有的优势,比如它可以在图像处理单元(GPU)上快速执行操作,可以在多个设备或机器分布操作,还可以跟踪创建它们的计算图(the graph of computations)。

PyTorch提供了和Numpy的无缝互操作性,这使得PyTorch能与Python中的其他科学库进行一流的集成。

比如:

SciPy:www.scipy.org

Scikit-learn :https://scikit-learn.org

Pandas :https://pandas.pydata.org

Tensor的维数与用于引用Tensor内标量值(scalar values)的数目相一致。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值