Nlp 识别句子中单词的上下文

Nlp 识别句子中单词的上下文,nlp,data-mining,nltk,semantics,Nlp,Data Mining,Nltk,Semantics,我创建了分类器来对给定句子中的名词、形容词和命名实体进行分类。我使用大型维基百科数据集进行分类 比如: 亚伯拉罕·林肯出生在哪里 所以分类器会给出这个简短的结果-word-class 哪里-问题 亚伯拉罕·林肯-人物、电影、书籍(因为我们可以在所有类别中找到亚伯拉罕·林肯) 出生时间 泰坦尼克号是什么时候发布的 什么时候提问 泰坦尼克号-歌曲、电影、交通工具、游戏(泰坦尼克号) 按所有这些类别分类) 有没有办法确定单词的确切上下文? 请参阅: 词义消歧在这里没有帮助。因为句子中可能没有近

我创建了分类器来对给定句子中的名词、形容词和命名实体进行分类。我使用大型维基百科数据集进行分类

比如:

亚伯拉罕·林肯出生在哪里

所以分类器会给出这个简短的结果-
word-class

  • 哪里-问题
  • 亚伯拉罕·林肯-人物、电影、书籍(因为我们可以在所有类别中找到亚伯拉罕·林肯)
  • 出生时间
泰坦尼克号是什么时候发布的

  • 什么时候提问
  • 泰坦尼克号-歌曲、电影、交通工具、游戏(泰坦尼克号) 按所有这些类别分类)
有没有办法确定单词的确切上下文?

请参阅:

  • 词义消歧在这里没有帮助。因为句子中可能没有近义词可以帮助你
  • 带有wordnet或sysnet的Lesk算法也没有帮助。因为假设word
    Bank
    lesk-algo的行为是这样的

    =========测试简单的===========

    正在测试简单的_lesk()。。。 上下文:我去银行存钱

    含义:Synset(‘存款机构、金融机构、n.01’)

    定义:接受存款并将资金用于贷款活动的金融机构

    正在使用POS测试简单的_lesk()。。。 背景:河岸上满是死鱼

    意义:Synset('bank.n.01')

    定义:坡地(尤其是水体旁的斜坡)

  • 这里的单词
    bank
    建议为
    financial institute
    sloping land
    。而在我的例子中,我已经得到了类似《泰坦尼克号》这样的预测,那么它可以是《电影》或《游戏》

    我想知道除了
    Lesk-algo
    baseline-algo
    传统词义消歧
    之外,还有没有其他方法可以帮助我识别哪个类对特定关键字是正确的


    泰坦尼克号-

    感谢您使用
    pywsd
    。关于wsd,还有很多其他的变体,我在空闲时间自己编写它们。因此,如果您想看到它的改进,请与我一起编写开源工具=)

    同时,您会发现以下技术与您的任务更相关,例如:

    • 知识库人群()其中,为标记/文本段分配一个实体,任务是将它们链接起来或解决简化的问答任务

    • 知识表示()

    • 知识提取()

    上述技术通常包括以下几个子任务:

    • 维基化()
    • 实体链接
    • 插槽填充()
    本质上,您需要的是一个用于语言/文本处理的NP完全人工智能系统,因此我认为目前还不存在这样的工具。也许是IBM Watson。


    如果你在寻找要查看的领域,领域就在那里,但是如果你在寻找工具,很可能维基化工具最接近你可能需要的。()

    如果第一个例子中的“出生”被归类为“时间”,为什么第二个例子中的“释放”没有得到任何分类?@ChthonicProject:谢谢你的评论。这背后的原因是基于特征的分类系统。时间类使用上下文表示时间的实体进行训练,如时间、时间、持续时间、出生等。将
    发布的
    识别为基于时间的事件是不够智能的。半超智能和非超智能学习系统可能已经识别了它