0

由于我是激发 NLP 的初学者,我开始使用johnsnowlabs中显示的功能进行一些动手练习

我正在使用SCALA数据块,我从https://www.gutenberg.org/获得了一个大文本文件

所以首先我导入必要的库和数据如下,

import com.johnsnowlabs.nlp.base._
import com.johnsnowlabs.nlp.annotator._

import com.johnsnowlabs.nlp.pretrained.PretrainedPipeline
val book = sc.textFile("/FileStore/tables/84_0-5b1ef.txt").collect()
val words=bookRDD.filter(x=>x.length>0).flatMap(line => line.split("""\W+"""))
val rddD = words.toDF("text")

如何根据我的目的使用 johnsnowlabs 中可用的不同注释器?

例如,如果我想找到停用词,那么我可以使用

val stopWordsCleaner = new StopWordsCleaner()
      .setInputCols("token")
      .setOutputCol("cleanTokens")
      .setStopWords(Array("this", "is", "and"))
      .setCaseSensitive(false)

但我不知道如何使用它并找到我的文本文件的停用词。我需要使用带有注释器的预训练模型吗?

我发现很难找到一个很好的教程。因此,如果有人可以提供一些有用的提示,将不胜感激。

4

1 回答 1

0

StopWordsCleaner是用于删除停用词的注释器。

参考:注释者

根据您的上下文,您的文本的停用词可能会有所不同,但通常所有 NLP 引擎都有一组停用词,它将匹配和删除。

JSL spark-nlp中,您还可以setStopWords在使用 StopWordsCleaner 时设置停用词。

于 2020-02-28T08:35:08.310 回答