文章目录
- 前言
- 一、ImageMasking
-
- [1.1 字典的创建以及访问](#1.1 字典的创建以及访问)
- [1.2 Python 类的定义中,init 和 call 两个方法的使用](#1.2 Python 类的定义中,init 和 call 两个方法的使用)
- [1.3 unsqueeze(dim)](#1.3 unsqueeze(dim))
- [1.4 ids_shuffle等的理解](#1.4 ids_shuffle等的理解)
- [1.5 类的 repr 方法](#1.5 类的 repr 方法)
前言
经常使用的话就记在脑子里了
一、ImageMasking
1.1 字典的创建以及访问
1.2 Python 类的定义中,init 和 call 两个方法的使用
- 实例化对象
实例化对象是类的一个具体实现,表示一个实际的实体。
通过调用类来创建对象,这个过程称为实例化。
每个对象都有自己独立的属性和方法,但它们的结构和行为是由类定义的。
1.3 unsqueeze(dim)
- 是在深度学习框架 PyTorch 中用于在指定位置dim添加一个维度的函数
- 批处理维度:在深度学习中,通常需要为模型输入添加批处理维度。例如,处理单个图像时,通常需要将形状从 (C, H, W) 转换为 (1, C, H, W)。
1.4 ids_shuffle等的理解
python
ids_shuffle = torch.argsort(noise, dim=1) # ascend: small is keep, large is remove
# The location of i-th (0-L) patch in ids_shuffle
# 将 ids_shuffle 还原到原始顺序
ids_restore = torch.argsort(ids_shuffle, dim=1)
用语言描述一下就是:
用生成的noise的第一行举例子[0.8971, 0.5356, 0.9338]
排序后的索引
ids_shuffle[1, 0, 2],意思是noise最小的元素在索引为1的位置,第二小的元素在索引为0位置,最大的元素在索引位置为2的位置。
Restore Indices[1, 0, 2],意思是ids_shuffle最小的元素0在索引为1的位置,第二小的元素1在索引为0位置,最大的元素2在索引位置为2的位置。可以发现这样就对应了noise的原来顺序。
1.5 类的 repr 方法
在 Python 中,类的 repr 方法用于定义该类的实例的"官方"字符串表示形式。它的作用是返回一个字符串,这个字符串可以用来表示该类的实例,通常用于调试和日志记录。当你在控制台中输出一个对象时,实际上是调用了该对象的 repr 方法来显示对象的信息。