SparkとMLlibで実現するかんたん高速機械学習

April 5, 2018 | Author: Anonymous | Category: Technology
Report this link


Description

1. SparkとMLlibで実現する   かんたん高速機械学習 株式会社マーズフラッグ  R&D部   山下 勝司(@yamakatu)   Hadoop  Conference  Japan  2014   2014/7/8 2. Who  are  U  !!! •  やまかつ(@yamakatu)   •  株式会社マーズフラッグ  R&D部   •   やってること   •  検索関連のR&D   •  担当   •  開発、インフラ、統計、機械学習   •  育児   •  やってたこと   •  Gihyo.jp連載「Mahoutで体感する機械学習の実践」   •  IPA  未踏ソフトウェア創造事業(共同開発者だけど)   3. SparkとMLlib   について話します 4. …の前にHadoopの 話 5. Hadoopは繰り返し 処理で遅い 6. この繰り返し処理 を高速に行えるの がSpark 7. 割愛 • 適当にググってください        or   • 以下のスライド見てください   「Spot  Instance  +  Spark  +  MLlibで実現 する簡単低コスト高速機械学習」 8. 繰り返し処理の高速化 Ref.   “Spark:  A  framework  for  iteraPve  and  interacPve  cluster  compuPng”   hTp://laser.inf.ethz.ch/2013/material/joseph/LASER-­‐Joseph-­‐6.pdf   9. この繰り返し処理は   どこで使うのか? 10. 機械学習 11. What’s  機械学習 • スパムフィルタ   • レコメンド   • 画像処理   • 広告のパーソナライズ   • 消費予想   • マルウェア検知   • 検索エンジン   • とかとか   12. という訳で、   Sparkと機械学習は 相性がいい 13. しかし、機械学習 は実装が困難 14. アルゴリズムが難解 15. テストが困難 16. できれば実装した くない 17. Sparkには機械学習 ライブラリが用意 されている 18. MLlib •  実装済みアルゴリズム(青文字は1.0で追加)   •  SVM   •  ロジスティク回帰   •  線形回帰   •  ridge回帰   •  Lasso回帰   •  GLM(一般化線形モデル)   •  K-­‐Means   •  協調フィルタリング   •  ALS(交互最小二乗法)   •  AtochasPc  Gradient  Descent(最急降下法)   •  NaiveBayse   •  Decision  Forest(Random  Forest)   •  SVD(特異値分解)   •  PCA(主成分分析)   •  L−BGFS   19. Spark  1.1ですげー 増えるらしいよ 20. けど、   簡単に使えるの? 21. ロジスティック回帰の場合 (Java)   JavaSparkContext  sc  =  new  JavaSparkContext(new  SparkConf().setAppName("JavaLR”));   JavaRDD  points  =  sc.textFile(args[0]).map(new  ParsePoint()).cache();   LogisPcRegressionModel  model  =  LogisPcRegressionWithSGD.train(          points.rdd(),  Integer.parseInt(args[2]),Double.parseDouble(args[1])   );   sc.stop();         4行  +  おまじない   22. 肝心の速さは? 23. 公式サイトによると   ロジスティック回帰 でHadoopの100倍   24. というのは   実際には少し違う 25. 結果、繰り返し処理の高速化 Ref.   “Spark:  A  framework  for  iteraPve  and  interacPve  cluster  compuPng”   hTp://laser.inf.ethz.ch/2013/material/joseph/LASER-­‐Joseph-­‐6.pdf   26. 繰返しの数で   速度差は変わる 27. アルゴリズムだけで なく、パラメータや 入力データも影響 28. Hadoopと比べて   実際どんだけ速いか はケース  by  ケース 29. けど、Hadoopより Sparkの方が速いこと に変わりはない 30. 実際使ってみての   課題 31. データがメモリに乗り 切らなかったらアレ 32. サンプリングや前 処理でデータ量を 減らすことが重要 33. ハードウェア増設 も有効 34. 今日はこれだけ覚えて帰って ください •  Hadoopは繰り返し処理で遅い、Sparkは ちょっぱや   •  機械学習は繰り返し処理なので、Sparkと相 性がいい   •  Sparkで機械学習するにはMLlibがお手軽   •  MLlibの今後の機能追加に期待大   •  Sparkのパフォーマンスはメモリが重要なの で、データ量とメモリの関係に気をつける。 サンプリング、前処理、ハードウェア追加 でがんばれ。   35. Have  a  nice  Machine  Learning  !!


Comments

Copyright © 2024 UPDOCS Inc.