在NLP领域,常识知识的使用越发成为热点,因为其有希望帮助克服现有模型的局限:它们仅从训练数据中学到的有偏的、浅薄的知识,而并不擅长像人一样进行真正的推理。
常识知识的表示形式有很多:有的是以图的形式,如ConceptNet;有的是以模型的形式,如COMET;而本文要介绍的应该是其中比较易于使用的一种,词向量形式。其代表是conceptnet-numberbatch。
简介
ConceptNet Numberbatch 是一组词向量,可以直接以向量形式表达词的语义。
它是ConceptNet开源项目的一部分,ConceptNet是最常用的常识知识图谱之一。
相比于其他词向量(word2vec, glove) ConceptNet Numberbatch的优势是它同时利用了文本和ConceptNet中的半结构化信息进行学习,因此它能够学习到一些从一般语料中可能无法直接学习到的一些语义。
另外,它支持词组;支持多种语言(包括中文);针对性别偏见等现象做了一定的优化。
因此,它号称为“你能找到的最好的词向量”,不过这点至少在它创立之时而言或许确实不假。
使用
首先从其官网下载, 这里我选择最新最全的版本: