PyG中transform-概览
在这里,我们对torch_geometric.transforms — pytorch_geometric documentation (pytorch-geometric.readthedocs.io)中的每条transform的操作进行简要的介绍,方便大家在使用的时候找到适合自身数据的变换。
- Compose: 组合多个transform,按顺序对数据进行转换。
- ToDevice: 将数据的tensor属性转换到指定的设备,可以选择转换所有属性或者只转换给定的属性。
- ToSparseTensor: 将数据的edge_index属性转换成一个(转置的)torch_sparse.SparseTensor对象,可以选择是否保留边的特征和方向。
- ToDense: 将数据的edge_index属性转换成一个(转置的)torch.Tensor对象,可以选择是否保留边的特征和方向。
- ToDenseBatch: 将数据的node和edge属性转换成一个批量的torch.Tensor对象,可以选择是否保留边的特征和方向。
- ToSparseBatch: 将数据的node和edge属性转换成一个批量的torch_sparse.SparseTensor对象,可以选择是否保留边的特征和方向。
- ToUndirected: 将数据的edge_index属性转换成一个无向的边索引,可以选择是否保留边的特征和方向。
- ToDirected: 将数据的edge_index属性转换成一个有向的边索引,可以选择是否保留边的特征和方向。
- AddSelfLoops: 在数据的edge_index属性中添加自环,可以选择是否添加边的特征和权重。
- RemoveSelfLoops: 在数据的edge_index属性中移除自环,可以选择是否移除边的特征和权重。
- AddTrainValTestMask: 在数据的node或edge属性中添加训练、验证和测试的掩码,可以选择是否按比例或者按数量进行划分。
- RandomFlip: 随机翻转数据的坐标,可以选择翻转的轴和概率。
- RandomRotate: 随机旋转数据的坐标,可以选择旋转的角度和概率。
- RandomScale: 随机缩放数据的坐标,可以选择缩放的因子和概率。
- RandomShear: 随机剪切数据的坐标,可以选择剪切的因子和概率。
- RandomTranslate: 随机平移数据的坐标,可以选择平移的距离和概率。
- NormalizeScale: 将数据的坐标归一化到[-1, 1]的范围,可以选择是否保持长宽比。
- Center: 将数据的坐标中心化到原点,可以选择是否保持长宽比。
- LinearTransformation: 将数据的坐标进行线性变换,可以选择变换的矩阵和偏移量。
- PCA: 将数据的坐标进行主成分分析,可以选择是否保持长宽比。
- KNNGraph: 根据数据的坐标生成一个k近邻图,可以选择k的值和距离的度量。
- RadiusGraph: 根据数据的坐标生成一个半径图,可以选择半径的值和距离的度量。
- Delaunay: 根据数据的坐标生成一个Delaunay三角剖分图,可以选择是否保持边的特征和方向。
- FaceToEdge: 将数据的face属性转换成一个edge_index属性,可以选择是否保持边的特征和方向。
- SamplePoints: 对数据的坐标进行点采样的操作。
- FixedPoints: 对数据的坐标进行固定数量的点采样的操作。
- RandomNodeSplitting: 对数据的节点进行随机分割的操作。
- OneHotDegree: 对数据的节点的度进行独热编码的操作。
- Constant: 对数据的节点或边添加一个常数特征的操作。
- LinearTransformation: 对数据的节点或边的特征进行线性变换的操作。
- NormalizeFeatures: 对数据的节点或边的特征进行归一化的操作。
- NormalizeScale: 对数据的节点或边的特征进行缩放的操作。
- AddPositionalEncoding: 对数据的节点或边的特征添加位置编码的操作。
- AddTemporalInformation: 对数据的节点或边的特征添加时间信息的操作。
- Degree: 对数据的节点或边的特征添加度的信息的操作。
- Cartesian: 对数据的节点或边的特征添加笛卡尔坐标的信息的操作。
- Polar: 对数据的节点或边的特征添加极坐标的信息的操作。
- Spherical: 对数据的节点或边的特征添加球坐标的信息的操作。
- TargetIndegree: 对数据的节点或边的特征添加目标节点的入度的信息的操作。
- SourceIndegree: 对数据的节点或边的特征添加源节点的入度的信息的操作。
- GDC: 对数据的节点或边的特征进行图扩散卷积的操作。
- GCNNorm: 对数据的节点或边的特征进行GCN归一化的操作。
- SGNorm: 对数据的节点或边的特征进行SG归一化的操作。
- TwoHop: 对数据的边索引添加两跳邻居的操作。
- NNGraph: 根据数据的节点或边的特征生成一个k近邻图的操作。
- PointPairFeatures: 对数据的节点或边的特征生成一个点对特征的操作。
- GenerateMeshNormals: 对数据的面生成一个法向量的操作。
- InvertFace: 对数据的面进行反转的操作。
- FaceToEdge: 对数据的面进行边索引转换的操作。
- Subgraph: 对数据进行子图抽取的操作。
- KHopSubgraph: 对数据进行k跳子图抽取的操作。
- ExtractNodeTypes: 对数据进行节点类型抽取的操作。
- ExtractEdgeTypes: 对数据进行边类型抽取的操作。
- ToSLIC: 对数据进行SLIC超像素分割的操作。
- ToSuperpixels: 对数据进行超像素分割的操作。
- ToImage: 对数据进行图像转换的操作。
- ToData: 对数据进行数据转换的操作。
- ToNetworkX: 对数据进行NetworkX图转换的操作。
- ToScipySparseMatrix: 对数据进行Scipy稀疏矩阵转换的操作。
- ToNumpy: 对数据进行Numpy数组转换的操作。
- ToTensor: 对数据进行PyTorch张量转换的操作。
- ToPILImage: 对数据进行PIL图像转换的操作。
- ToDeepGraphInfomax: 对数据进行Deep Graph Infomax转换的操作。