将关系表示为监督学习任务的特征



我正试图将对象之间的关系用于监督学习任务。例如,对于"猫吃鱼"这样的文本,我想使用猫吃鱼的关系作为学习任务的一个特征(即识别单词的意义)。因此,我想用数字表示这种关系,这样我就可以把它作为学习模型的特征。关于我如何做到这一点的任何建议。我想把它散列成一个整数,但这可能会带来挑战,比如语义上相同的两个关系可能有两个非常不同的散列值。理想情况下,我希望两个类似的关系(例如生活和居住)散列到相同的值。我想我还需要弄清楚在讨论之前是否可以将关系规范化。

其他可能不使用数字特征的方法也很有用。我还想知道是否有基于图的方法来解决这个问题。

我建议为所有可能的关系类型生成(大量)二进制特征,然后可能在生成的(非常稀疏的)特征空间上运行某种形式的降维。

另一种减少稀疏性的方法是用实体类型替换裸词,例如[amale]eats[amale],甚至[animation]eats[Animation],然后在这个空间中使用二进制特征。您希望避免映射到单个维度上的数值,因为如果这样做,会在特征之间强加虚假的序数关系。

用表示动词前的典型单词(通常是主语)和动词后的典型单词的特征来表示动词怎么样。假设你可以取500个最频繁的单词(或者更好的是最有辨别力的单词),那么每个动词都会被表示为1000维向量。向量中的每个特征可以是二进制的(是否存在频率高于特定阈值的单词),也可以是纯计数,或者可能最好是对数。然后,您可以运行PCA来将向量缩小到某个较小的维度。

上面的方法是概率性的,根据你想要什么,它可能是好的,也可能是坏的。如果你想通过大量的手动输入来精确地完成这项工作,那么就看看情境语义。

最新更新