如何在 sparknlp 中为文本文件使用注释器

How to use a annotator in sparknlp for a text file

由于我是 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)

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

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

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

参考:Annotators

停用词可能因上下文而异,但通常所有 NLP 引擎都有一组停用词,它会匹配和删除这些停用词。

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