2017-05-08 40 views
0

我正在做一個簡單的項目,在apache spark中使用K-Means聚類,並且我做了一些預處理步驟,如標記化,停用詞移除器和hashingTF。這些由spark自己的Tokenization(),StopWordRemover()和HasingTF()來執行。但是我想在應用k-均值聚類之前執行干擾。我在openNLP中嘗試了一些NLP庫。但我不知道如何在Spark DataFrame中實現它。 有人可以幫助我如何做到這一點。如何在apache spark中執行詞幹?

+1

你看過https://github.com/master/spark-stemming – Tchotchke

+0

我想在build.sbt文件中添加雪球。但它顯示錯誤未解決的依賴關係:master#spark-stemming_2.11; 0.1.2找不到 – James

回答

2

我也在嘗試同樣的事情,但沒有找到任何關於將依賴關係添加到build.sbt的內容。當我們能夠弄清楚如何在build.sbt中放置依賴關係時,一個解決方法就是可以從https://www.versioneye.com/java/com.github.master:spark-stemming_2.10/0.1.0位置下載jar並在spark-submit --jars或spark-shell --jars命令中指定此jar並使用它類。

+0

你能告訴我如何在intellij想法中指定jar嗎? – James

+0

要在IntelliJ中添加jar,請按照以下步驟 - 轉至 - 文件 - 項目結構 - 然後您應該在左側看到庫。點擊它。 - 點擊加號(+) - Java - jar文件的位置 - 應用 - 好的 –

+0

這是用於IntelliJ版本2016.3.2 –

2

您可以使用本項目shashank提到的spark stemming:https://github.com/master/spark-stemming它支持相當多的語言。請參閱列表:https://github.com/master/spark-stemming/tree/master/src/main/java/org/tartarus/snowball/ext

要將項目添加到您的build.sbt你需要添加另一個解析:

resolvers ++= Seq("spark-stemming" at "https://dl.bintray.com/spark-packages/maven/") 

和進口依存度:

"master" % "spark-stemming" % "0.1.1" 

不0.1.2

相關問題