我正在编写一个程序来分析文本中颜色的使用情况。我想搜索诸如“杏”或“橙色”之类的颜色词。例如,作者可能会写“风中飘扬的杏裙”。但是,我只想计算实际上描述颜色的杏子/橘子,而不是“我吃了杏子”或“我喝了橙汁”之类的东西。
无论如何,也许可以在NLTK中使用context()吗?
答案 0 :(得分:1)
欢迎来到同义,多义和WSD的广泛领域。在语料库语言学中,这是一种搭配使用的方法,例如和用于确定果汁呈“橙色”或由相应水果制成的可能性。两种可能性都很高,但是用相应的水果制成“外套”的可能性应该低得多。有不同的方法可以使用。您可以要求语料库注释者(专家,众包等)在文本中注释数据,您可以将其用于训练(机器学习)模型,在这种情况下为简单的分类器。否则,您可以使用大文本数据来与Wordnet结合使用来收集并置计数,这可能会为您提供语义信息,无论通常是用水果制成的夹克。幸运的是,只有很少的人在文本中使用刻板印象的颜色,因此您不必关心“黄色香蕉”之类的情况。 浅层解析也可能会有所帮助,因为颜色形容词应优先使用在归属位置。 另一种方法是使用单词相似性度量(向量空间语义) 或词义歧义消除(WSD)的嵌入。 也许这可以帮助: https://web.stanford.edu/~jurafsky/slp3/slides/Chapter18.wsd.pdf https://towardsdatascience.com/a-simple-word-sense-disambiguation-application-3ca645c56357