图解squeeze()和unsqueeze()函数

squeeze()和unsuqeeze()函数功能图解

文章目录

  • squeeze()和unsuqeeze()函数功能图解
  • 前言
  • 一、数组是什么?
  • 二、squeeze()和unsqueeze()


前言

提示:这篇文章是我对数组,张量的理解,以及对squeeze()和unsqueeze()函数功能的分析

一、数组是什么?

假如我们有一组数据3,7,2,5,6,8。我们想用一个变量来表示它,那么可以把它们放在一个数组里,相当于把这六个元素(小球)投到了一个箱子里,这个箱子里就有六个元素
图解squeeze()和unsqueeze()函数_第1张图片
我们希望这组小球里,把3,7单独放在一个箱子里,2,5放在一个箱子,6,8放在一个箱子:
图解squeeze()和unsqueeze()函数_第2张图片
如下图所示:
图解squeeze()和unsqueeze()函数_第3张图片
最外层的箱子起名为a,里面一层的3个箱子起名a[0],a[1]和a[2],这三个箱子里分别有2的小球.分别对其命名.
图解squeeze()和unsqueeze()函数_第4张图片
以上就是我对数组的理解

二、squeeze()和unsqueeze()

最外层的箱子为第0层,往内分别是第一层,第二层…
unsqueeze(i)表示用一个箱子把第i层的箱子都包起来;
而squeeze(i)表示把第i层的箱子去掉(第i层只有一个箱子时才能用这个函数)

例如,我们用unsqueeze(0),将第0层用一个箱子包起来:
请添加图片描述

图解squeeze()和unsqueeze()函数_第5张图片
包起来后。系统将重新按照之前的逻辑给每个箱子和小球分配名字:
图解squeeze()和unsqueeze()函数_第6张图片
我们再使用squeeze(0)把a[0]这个大箱子去掉
请添加图片描述

数组恢复原样。。。。。

你可能感兴趣的:(pytorch,机器学习,pytorch,神经网络,深度学习,矩阵)