
222
11 章 MLlib を使った機械学習
3.
ベクトルの
RDD
に対して分類アルゴリズム(例えばロジスティック回帰)を呼びます。
これで、新しいデータ点を分類するために使えるモデルオブジェクトが返されます。
4.
テスト用のデータセットで
MLlib
の評価関数の
1
つを使い、モデルを評価します。
MLlib
について注意するべき重要なことの
1
つは、
MLlib
に含まれているのは、クラスタ上で
うまく動作するアルゴリズムだけである点です。古くからある機械学習のアルゴリズムの中に
は、並列プラットフォーム用に設計されていないことから
MLlib
に含まれていないものもありま
すが、一方で
MLlib
には分散ランダムフォレスト、
K
平均法、交互最小
2
乗法といった、近年研
究されたアルゴリズムがいくつか含まれています。こうした選択が行われていることで、
MLlib
は
それぞれのアルゴリズムを大規模なデータセットに対して実行する上で最適なものになっているの
です。仮に、多種類の学習モデルのトレーニングを行うための小さなデータセットを大量に持って
いるなら、例えば
Spark
の
map()
を使い、各ノード上で単一ノード用の学習ライブラリ(例えば
Weka http://www.cs.waikato.ac.nz/ml/weka/
や
SciKit-Learn http://scikit-learn.org/stable/
)
を呼ぶ方が良いかもしれません。同様に、機械学習のパイプラインでは、最適なパラメータ設定を
選択するために、小さなデータセットに対して ...