Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 迭代火花管道_Apache Spark_Machine Learning_Pipeline - Fatal编程技术网

Apache spark 迭代火花管道

Apache spark 迭代火花管道,apache-spark,machine-learning,pipeline,Apache Spark,Machine Learning,Pipeline,目前我正在使用Spark进行情绪分析项目。我正在尝试实现这样的管道: 原始文本--(标记化)标记化单词--(加入情感词典)-->具有情感价值的单词--(再次将单词分发到句子中)-->具有情感价值的句子--(它出现在句子中的单词的平均情感价值)--->新情感词典 现在我想重复这个过程,直到两个连续迭代中的两个新情感词典之间的差值小于一个定义值。然而,我不知道如何做到这一点,我为此管道编写了一个自定义转换器(因为我的大多数转换器在ml库中不可用)。在迭代的步骤中,我不确定什么是最好的方法。我应该在那

目前我正在使用Spark进行情绪分析项目。我正在尝试实现这样的管道:

原始文本--(标记化)标记化单词--(加入情感词典)-->具有情感价值的单词--(再次将单词分发到句子中)-->具有情感价值的句子--(它出现在句子中的单词的平均情感价值)--->新情感词典

现在我想重复这个过程,直到两个连续迭代中的两个新情感词典之间的差值小于一个定义值。然而,我不知道如何做到这一点,我为此管道编写了一个自定义转换器(因为我的大多数转换器在ml库中不可用)。在迭代的步骤中,我不确定什么是最好的方法。我应该在那里放一个while循环并重复所有的事情,还是有一个更好的机制


感谢您的时间。

Spark中没有对迭代的本机支持,但没有任何东西阻止您将相同的函数反复应用于相同的RDD。例如,如果在同一个RDD上调用For循环中的.map(),它将被应用多次。您还可以插入条件等。我不知道它是如何与Spark管道一起工作的,因为我从未使用过它。我尝试过它,但由于某种原因,在前两次迭代之后,它的速度非常慢。我还是不明白为什么。