0

article というデータフレームがあります

+--------------------+
|     processed_title|
+--------------------+
|[new, relictual, ...|
|[once, upon,a,time..|
+--------------------+

平らにして言葉の袋にしたい。現在の状況を使用してこれをどのように達成できますか。以下のコードを試してみましたが、タイプの不一致の問題が発生しているようです。

val bow_corpus = article.select("processed_title").rdd.flatMap(y => y)

最終的には、この bow_corpus を使用して word2vec モデルをトレーニングしたいと考えています。

ありがとう

4

1 に答える 1

1

processed_titleSQL で次のように表されると仮定しますarray<string>

article.select("processed_title").rdd.flatMap(_.getSeq[String](0))

Word2Vecで直接トレーニングできるトランスフォーマーもありDataFrameます。

import org.apache.spark.ml.feature.Word2Vec

val word2Vec = new Word2Vec()
  .setInputCol("processed_title")
  .setOutputCol("vectors")
  .setMinCount(0)
  .fit(article)

word2Vec.findSynonyms("foo", 1)

行から値を抽出する Sparkも参照してください。

于 2016-03-10T17:10:35.253 に答える