您的位置:首页 > 其它

基于spark的自然语言处理包集成和测试(命名实体识别)

2016-01-06 21:51 302 查看
做文本分析挖掘肯定离不开自然语言处理,以前就完全掌握过stanford的NLP工具包,里面是非常强大的,特别其支持多语言的自然语言处理,对话题模型、实体关系挖掘都有现成的产品。

看到网上有人做了spark + NLP结合的东东,于是自己也想试验一下。利用stanford nlp 3.6.0最新的进行了测试,对20news的文章进行命名实体抽取实验,这个过程还是非常简单的,其原理就是将每个文档进行句子划分,再对每个句子(RDD)进行句子中的命名实体抽取。

val entities = splitSentences.map({ case (fileName, content) => (fileName, NLPTools.classifier.getEntities(content.map(_.word()).mkString(" ")))})

.flatMap({ case (fileName, list) => list.map(x => (fileName, x))}).groupByKey

这样的话,其实可以将getEntities换成其它的NLP工具都可以实现的。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: