1

Spark の MLlib ライブラリを使用してレコメンダー システムを構築しようとしています。(Scala を使用) ALS の train メソッドを使用できるようにするには、Rating() メソッド (パッケージ org.apache.spark.mllib.recommendation.Rating の一部) を使用して評価マトリックスを作成する必要があります。このメソッドでは、ユーザー ID として int を渡す必要があります。ただし、使用しているデータセットには 11 桁の ID があるため、渡そうとするとエラーがスローされます。

長い値を Rating メソッドに渡すことができる方法があるかどうかは誰にも分かりますか? または、このメソッドをオーバーライドするにはどうすればよいですか? または、11 桁の数値を int のままで 10 桁または 9 桁に一意に変換するにはどうすればよいでしょうか。

どんな助けでも大歓迎です。ありがとう

4

1 に答える 1

2

これは、IDの範囲に依存すると思います。Id modulo Int.MaxValue を単純に取得できますか? あれは:

(id % Int.MaxValue).toInt

または、それを Int にハッシュできますか?

id.hashCode
于 2014-06-19T13:42:43.743 に答える