如何为 pytorch 几何数据对象中的无向图构建一个edge_attr 列表。假设我们有一个像这样的无向图。pytorch几何对象所需的图COO矩阵为:
[['a', 'b', 'a', 'c', 'b', 'c']
['b', 'a', 'c', 'a', 'c', 'b']]
那么如何构造 edge_attr 列表(这是一个用于每个边缘特征的 one-hot 编码向量数组)。由于该图是无向的,因此是否可以一次简单地附加两个相同的 one-hot 编码特征向量。例如,假设这些是边缘特征:
(a, b) = [0,0,0,1]
(a, c) = [1,0,0,0]
(b, c) = [0,1,0,0]
edge_attr 列表看起来像:
[[0,0,0,1], [0,0,0,1], [1,0,0,0], [1,0,0,0], [0,1,0,0], [0,1,0,0]
注意每个 one-hot 编码的特征向量是如何重复两次的,edge_attr 中的特征向量索引对应于图 COO 矩阵中的相应边。因为图是无向的,所以我们只使用相同的特征矩阵。是正确的方法,还是有其他方法?