データセット内の各ユーザーごとに異なるモデルを訓練します。 Spark MlLib/Pipelinesのサポートが組み込まれていますか?Spark MlLib/Pipelinesを使用して各ユーザーごとに1つのモデルを作成する方法
そうでない場合は、各ユーザーの複数のモデルと個別のモデルを訓練する最も簡単で清潔な方法は何ですか?
データセット内の各ユーザーごとに異なるモデルを訓練します。 Spark MlLib/Pipelinesのサポートが組み込まれていますか?Spark MlLib/Pipelinesを使用して各ユーザーごとに1つのモデルを作成する方法
そうでない場合は、各ユーザーの複数のモデルと個別のモデルを訓練する最も簡単で清潔な方法は何ですか?
残念ながら、Spark-ML
は、概念「単一モデル - 単一ユーザ」を分離する能力を提供しません。しかし、あなたは望むようにカスタムロジックを作ることができます。私はこの作業を解決するための2つの可能な変形を見る。このような状況を解決するための第1のシナリオは次のアルゴリズムに従っている は(私は例のためにすべてを取った - あなたは異なるステップを持つことになりますが、アルゴリズムは論理的に似てます):
Dataset
の列車モデル - データセットに2つの列、具体的な条件X
とユーザーの生産性Y
と最新パラメータはユーザグループに対して変更可能です。たとえばLinearRegressionを使用してモデルを訓練する必要があります。したがって、ユーザが時間内に作業を行うことができるかどうかを予測します。蟻。アルゴリズムのオプションを選択して、ユーザーのグループに依存しない、つまり、トレーニングモデルのアルゴリズムをすべてのユーザーグループに一般化する - この場合、分離の感覚はない
"single-model-- >シングルユーザー "となります。 2番目の変種がデータセットの実装より複雑な場合は、最初の方法に従います。
オプション1:すべてのユーザーのモデルトレーニングを並列化する最適な方法は何ですか? オプション2: "すべてのユーザーに適用できるようにモデルを訓練する"に拡張できますか? – Gevorg
@Gevorg Option1 - トレーニングプロセスの並列化を意味するのであれば、ForkJoinPoolまたはAkkaでカスタムロジックを書くことができます。単一モデルの並列トレーニングのプロセスを意味するなら、KerasとSpark Mlの統合についてはお勧めします。 ://github.com/maxpumperla/elephas#spark-ml-example Option2 - すべてのユーザーに対して一般的なモデルを作成できることをお勧めします。データセットの外観がわからないため、これは唯一の前提です –