Java 如何对单词列表进行特征提取?

Java 如何对单词列表进行特征提取?,java,apache-spark,apache-spark-ml,Java,Apache Spark,Apache Spark Ml,我正在使用ApacheSparkML(通过JavaAPI)分析一些自由文本。我想构建一个管道,提取一个特性,该特性指示是否存在任何预配置的术语列表 CountVectorizer似乎几乎完成了我想要的功能,但我想先指定一个词汇表。到目前为止,我已经: final Tokenizer tok = new Tokenizer().setInputCol("text").setOutputCol( "tokens"); final StopWordsRemove

我正在使用ApacheSparkML(通过JavaAPI)分析一些自由文本。我想构建一个管道,提取一个特性,该特性指示是否存在任何预配置的术语列表

CountVectorizer
似乎几乎完成了我想要的功能,但我想先指定一个词汇表。到目前为止,我已经:

    final Tokenizer tok = new Tokenizer().setInputCol("text").setOutputCol(
            "tokens");
    final StopWordsRemover swr = new StopWordsRemover().setInputCol(
            "tokens").setOutputCol("cleansed_tokens");
    final CountVectorizer cv = new CountVectorizer()
    .setInputCol("cleansed_tokens").setOutputCol("vector");
    final Pipeline pl = new Pipeline().setStages(new PipelineStage[] { tok,
            swr, cv });

在Spark ML中是否有这样做的方法?我是否需要编写自己的
Transformer

我认为
StopWordsRemover
可能会向您展示如何创建一个
Transformer
,它将是
CountVectorizer
的扩展。您能否显示输入和输出数据集以准确了解您想要实现的目标?我认为
stopWordsRever
可能会向您展示如何创建一个
转换器
,它将是
CountVectorizer
的扩展。您能否显示输入和输出数据集以准确了解您想要实现的目标?