Advertisement
Advertisement

More Related Content

Advertisement

自動的なビッグデータ機械学習技術:Spark上で複数の学習アルゴリズムの自動選択が可能に

  1. Copyright 2016 FUJITSU LABORATORIES LTD 自動的なビッグデータ機械学習技術 Spark上で複数の学習アルゴリズムの 自動選択が可能に 2016年2月8日 (株)富士通研究所 知識情報処理研究所 主管研究員 上田 晴康 0 Spark Conference Japan 2016 LT
  2. 自己紹介 大学を卒業する時は、 第2の人工知能ブームが来た頃 機械学習の研究してました 人工知能の冬の時代は、並列処理 とか組合せ最適化とかしていました 「ビッグデータ」がはやって来たので Hadoop、Sparkをいじりながら 機械学習をもっともっと便利にする技術を作ってます Copyright 2016 FUJITSU LABORATORIES LTD1
  3. Sparkといえば機械学習 Copyright 2014 FUJITSU LABORATORIES LTD. Hadoopだと、 … HDFS read HDFS write ① HDFS read HDFS write ② HDFS read HDFS write ③ Sparkなら HDFS write HDFS read ① ② ③… … HDFS read HDFS write ① HDFS read HDFS write ② HDFS read HDFS write ③ HDFS write HDFS read ① ② ③… 時刻 ディスクI/Oが 少ないから速い! … 通 信 通 信 通 信 … 通 信 通 信 通 信 機械学習など、並列ジョブを繰り返す処理が得意 2
  4. ところで、機械学習って何ですか? 予測をするための方法です でも占いじゃありません Copyright 2016 FUJITSU LABORATORIES LTD3
  5. 機械学習とは? 過去のデータから隠れた法則性(予測モデル)を見つけだし その法則で新しいデータの予測をする技術 Copyright 2016 FUJITSU LABORATORIES LTD. 過去のデータ プレミアム会員に ならなかった なった 年齢 収入 予測モデル 年齢 収入 新しい会員の データ プレミアム会員になりそう プレミアム会員にならなさそう 4
  6. 機械学習アルゴリズムの選び方? アルゴリズムによって予測モデルの作り方が異なる Copyright 2016 FUJITSU LABORATORIES LTD. 線形 非線形 10種類以上も候補があるから どれが良いかわからない!!! どちらの方が 良く当たる? 5
  7. 全部のアルゴリズムを試すために一工夫しました  データ量を少しずつ大きくしながら、各アルゴリズムの精度向上を 見積もります  予測精度が上がる可能性が高く、短時間に実行が終わる候補を選 定して優先実行します  見込みのない候補はすばやく除外します Copyright 2016 FUJITSU LABORATORIES LTD サイズ 4000 学習時間 サイズ 1000 サイズ 2000 サイズ 4000 サイズ 8000 サイズ 1000 サイズ 2000 サイズ 1000 精度 サイズ 2000 サイズ 16000 現在の 最高精度 現在 時間はかかるが データを増やせばまだ 精度向上 ⇒ 優先的に実行 これ以上データを増やしても 精度が伸びない ⇒ 候補から除外 ロジスティック 回帰 SVM (RBF) ランダム フォレスト 6
  8. 性能: 網羅的処理だと6日⇒2時間で完了 Copyright 2016 FUJITSU LABORATORIES LTD. 精 度 時間 6日弱2時間強 精度推定の準備期間 2時間に短縮 見込みのない候補を除外、有望な学習 候補のみに絞り込んで処理 色々な手法を並行して処理 アルゴリズム データ量 10万 20万 40万 80万 … 2500万 5000万 Random Forest [並列バギング] 51秒 76% 52秒 80% 69秒 81% 60秒 84% 1760秒 96% †4338秒 97% Random Forest [Spark] 38秒 76% 49秒 76% 78秒 76% 114秒 76% †1590秒 76% †2695秒 76% Gradient Boosting [並列バギング] 96秒 76% 97秒 78% 119秒 81% 113秒 83% 1420秒 88% 3679秒 88% Gradient Boosting [Spark] 434秒 88% 475秒 88% 544秒 88% 691秒 88% †5221秒 88% †7933秒 88% Support Vector Machine (RBF kernel) [並列バギング] 529秒 73% 609秒 73% 815秒 79% 1,348秒 81% †1.3日 †約3日 7
  9. こんな技術でできています  サンプリングした小さなデータの学習履歴から、動的に実行時間と 学習した予測モデルの精度を推定する技術  見込みのあるアルゴリズム・動作条件に素早く絞り込み実行する 技術 Copyright 2016 FUJITSU LABORATORIES LTD 分析 結果大量 データ 機械 学習 並列処理 実装選択 アルゴリ ズム選択 パラメータ 選択 予測 精度 検証サンプ リング サンプル率 選択 学習用データ 検証用データ 2.自動チューニングする制御 1.実行時間と予測精度を推定 性能 ナレッジ 時間・精度推定 組合せ 予測 モデル Apache Sparkによる並列インメモリ処理 サンプル率決定を 前処理ではなく 制御対象とした 8
  10. UCB AMPLabとの研究交流  機械学習の自動化・高速化を目指したAMPLabのkeystonML プロジェクトのメンバーと研究交流を行っています  AMPLabのスポンサーもしています Copyright 2016 FUJITSU LABORATORIES LTD Yarn (Hadoop 2.0) HDFS, S3 … Tachyon Apache Spark (core) Spark Streaming SparkSQL GraphX MLlib Apache Spark AMPLab研究 OSS Spark Hadoop 富士通研究所 その他 BlinkDB Sample Clean SparkR keystoneML (UCB) 機械学習 自動化 R Pyt hon 9
  11. 10
Advertisement