假设我们有一个社交网络的图,其中包含5个节点,每个节点代表一个用户。节点特征向量表示用户的以下信息:年龄、性别和职业。我们的目标是根据这些信息来预测用户是否会点击广告。
下面是节点的特征向量和节点特征掩码的示例:
节点1:[20, 1, 1] (年龄=20岁,性别=男性,职业=学生)
节点2:[30, 0, 1] (年龄=30岁,性别=女性,职业=学生)
节点3:[25, 1, 0] (年龄=25岁,性别=男性,职业=医生)
节点4:[35, 0, 0] (年龄=35岁,性别=女性,职业=工程师)
节点5:[28, 1, 1] (年龄=28岁,性别=男性,职业=学生)
现在我们感兴趣的是预测职业为学生的用户是否会点击广告。因此,我们定义一个节点特征掩码,使得只有职业为学生的节点的特征被保留,而其他节点的特征被屏蔽。
节点特征掩码:[1, 1, 0, 0, 1]
然后,我们将节点特征掩码与节点特征向量进行逐元素的乘法运算:
节点1的特征向量 * 节点特征掩码 = [20, 1, 1] * [1, 1, 0, 0, 1] = [20, 1, 0, 0, 1]
节点2的特征向量 * 节点特征掩码 = [30, 0, 1] * [1, 1, 0, 0, 1] = [30, 0, 0, 0, 1]
节点3的特征向量 * 节点特征掩码 = [25, 1, 0] * [1, 1, 0, 0, 1] = [25, 1, 0, 0, 0]
节点4的特征向量 * 节点特征掩码 = [35, 0, 0] * [1, 1, 0, 0, 1] = [35, 0, 0, 0, 1]
节点5的特征向量 * 节点特征掩码 = [28, 1, 1] * [1, 1, 0, 0, 1] = [28, 1, 0, 0, 1]
通过节点特征掩码的操作,我们只保留了职业为学生的节点的特征,而将其他节点的特征屏蔽了。这样,我们可以将模型的注意力集中在职业为学生的用户上,更好地学习他们的特征与广告点击行为之间的关系,以便进行预测。