2

org.apache.spark.mllib.util.MLUtils パッケージの次のメソッドを使用して、LIBSVM 形式のバイナリ ラベル付きデータを RDD[LabeledPoint] にロードします。機能の数は自動的に決定され、デフォルトのパーティション数になります。

def loadLibSVMFile(sc: SparkContext, path: String): RDD[LabeledPoint]

私の問題は、マルチクラス ラベルを使用してデータをロードすることですか? マルチクラスのラベル付きデータでこのメソッドを使用すると...バイナリのラベル付きデータに変換されます..LibSVM形式のマルチクラスデータをRDD [LabeledPoint]にロードする方法はありますか...??

同じパッケージに、次の説明を持つメソッドがもう 1 つあります。

デフォルトのパーティション数で、ラベル付きデータを LIBSVM 形式で RDD[LabeledPoint] にロードします。

def loadLibSVMFile(sc: SparkContext, path: String, numFeatures: Int): RDD[LabeledPoint]

しかし、これを使用しようとすると、「int が見つかりました。Boolean が必要です」というエラーが表示されます。

4

1 に答える 1

0

使用している Spark のバージョンは何ですか? このファイルを使用しました http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/multiclass/glass.scale

Spark 1.1 と次のコード:

val lbldRDD = MLUtils.loadLibSVMFile(sc,svmFile)
lbldRDD.map(_.label).collect().toSet.map(println)

出力が表示されます:

5.0 1.0 6.0 2.0 7.0 3.0

私には正しいようです

于 2014-10-24T20:16:53.887 に答える