R或python中的Lemmatizer(是,是->是吗?)

发布于 2021-01-29 16:02:49

已关闭 。这个问题需要更加集中。它当前不接受答案。


想改善这个问题吗? 更新问题,使其仅通过编辑此帖子来关注一个问题。

6年前关闭。

改善这个问题

我不是[计算]语言的人,所以请在这个话题上大吃晚饭。

根据Wikipedia的描述,词形化定义为:

语言学中的词法化(或词法化)是将单词的不同变形形式组合在一起的过程,因此可以将它们作为单个项目进行分析。

现在我的问题是,集合{am,is,}中的任何成员的复词版本是否应该为“ be”?如果没有,为什么不呢?

第二个问题:如何在R或python中获得它?我已经尝试过像链接这样的方法,但是没有一个方法给定的是“ are”。我想至少出于对文本文档进行分类的目的,这是有道理的。

在这里的任何给定演示中,我也无法做到这一点

我在做什么/假设做错了?

关注者
0
被浏览
44
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    因此,这是使用R来完成的一种方法,它使用的是Northwestern University lemmatizer
    MorphAdorner

    lemmatize <- function(wordlist) {
      get.lemma <- function(word, url) {
        response <- GET(url,query=list(spelling=word,standardize="",
                                       wordClass="",wordClass2="",
                                       corpusConfig="ncf",    # Nineteenth Century Fiction
                                       media="xml"))
        content <- content(response,type="text")
        xml     <- xmlInternalTreeParse(content)
        return(xmlValue(xml["//lemma"][[1]]))    
      }
      require(httr)
      require(XML)
      url <- "http://devadorner.northwestern.edu/maserver/lemmatizer"
      return(sapply(wordlist,get.lemma,url=url))
    }
    
    words <- c("is","am","was","are")
    lemmatize(words)
    #   is   am  was  are 
    # "be" "be" "be" "be"
    

    我怀疑您已经知道,正确的去词义化需要掌握词类(词性),上下文正确的拼写,并且还取决于所使用的语料库。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看