Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

あなたの業務に機械学習を活用する5つのポイント

45,588 views

Published on

2014/08/26 Machine Learning Casual Talks #2「あなたの業務に機械学習を活用する5つのポイント」の発表資料です。 http://mlct.connpass.com/event/8036/

Published in: Technology
  • Be the first to comment

あなたの業務に機械学習を活用する5つのポイント

  1. 1. あなたの仕事に 機械学習を活かす 5つのポイント 株式会社Preferred Infrastructure ⽐比⼾戸 将平
  2. 2. この話の対象者 ! 機械学習を使う「信念念」を持っている⼈人 ! 信念念:機械学習を使うことが絶対にプラスになる ! 前半の「仕事」:⾃自社サービス改善 ! Gunosyさん「数値は神より正しい」 ! サービスに関する全権限があれば徹底できる ! 後半の「業務」:もう少し広く機械学習が使える仕事 ! ⼈人⼿手で経験と勘によってやってきた業務の置き換え ! データ分析業務の⼀一環としてお客様に価値提供 ! 機械学習をキーにした新しいアプリ・ビジネス
  3. 3. 機械学習と私 ! ヒド ショウヘイ ! Twitter: @sla ! 機械学習との関わり ! ⼤大学 ! 勉強する ! IBM基礎研 ! ⼿手法を考える ! ⼿手法つかう ! PFI ! Jubatus担当 ! ソフトウェアつくる 3
  4. 4. 機械学習とあなた 考える つくる つかう
  5. 5. (参考)前回のMLCTテーマ:テスト 他にもまだ 間違ってました!
  6. 6. 機械学習の道はまだまだ険しい
  7. 7. 真理理:機械学習は苦しい
  8. 8. そう、「機械学習は苦しい」!!!! ! 機械学習を使えば楽して問題が解決する? ! 機械学習を使えば楽してお⾦金金が儲かる? ! 機械学習を使えば誰でも有⽤用な知⾒見見が得られる? ! 機械学習を使えば誰でも素晴らしいサービスを作れる? ! 機械学習を覚えればワンランク上の技術者になれる? ! 機械学習を覚えれば社内でも⼀一⽬目置かれる⼈人になれる? ! 機械学習を覚えればきっと新しい⾃自分になれる? ! 機械学習を覚えれば明⽇日から⾃自分もモテモテになる?
  9. 9. 機械学習は普通のデータ活⽤用よりもハードルが⾼高い 意思決定者と作業者が分かれている場合に課題に 9 ! 効果をほとんど予⾒見見できない ! 通常のデータ集計・可視化・分析⽀支援・ルール処理理とは異異なる ! FAQ:どれくらいデータがあればどれくらい精度度でますか? ! 投資対効果が⾒見見えない ! 2⼈人⽉月でどれくらい成果がでるのか?→わかりません ! 4⼈人⽉月に増やしたらどれくらい変わるのか?→わかりません ! ROIの曲線が不不明確で、実際に極めていびつ ! 結果の解釈性・納得性が低い ! ⼀一般に予測結果の解釈や理理由説明が難しい ! 検証において精度度が出ても本番で 有効な保証は無い ! 投資側からすると成功しても失敗しても その理理由がわからない肚に落落ちない
  10. 10. 機械学習に新たに挑む⼈人(特に専⾨門じゃない⼈人) =信念念を持った偉⼤大なるマゾ勇者 ! 機械学習はじめてみよう! ! たまねぎ勇者「機械学習勉強したいんだけど?」 ! 機械学習専⾨門家「そりゃーPRML⼀一択でしょー」 ! 機械学習つかってみよう ! たまねぎ勇者「機械学習つかってみたいんだけど?」 ! T◯kyo.Rの⼈人「そりゃーR⼀一択でしょー」 ! 機械学習を業務に使ってみよう! ! たまねぎ勇者「機械学習やりませんか!?!?」 ! 上司/経営陣「なにそれ美味しいの?」 10
  11. 11. 5つのポイント ! 関係者を利利害に巻き込む ! 「データが全て」を徹底する ! 検証可能なKPIを共有する ! Minimum Viable Experimentを実施する ! 検証パターンを限界まで増やす
  12. 12. (3) 検証可能なKPIを共有する ! KPI : Key Performance Indicator ! ビジネスの状態の善し悪しを図る指標 ! ここでは機械学習の効果を⽰示す単⼀一の値 ! (事前に)共有する ! ビジネス課題から定量量化できる基準を導出する ! 通常は関係者毎にバラつく(例例:品質保証⽬目標) ! 全員が「これが良良くなれば⽂文句句ない」を⽬目指す ! (報告書で)共有する ! ⽬目的にKPIの意味と改善⽬目標を書く ! 実験設定にKPIの算出⽅方法を書く ! 実験結果にKPIの具体的な値を書く ! まとめに達成したKPIの改善効果と投資対効果を書く 12
  13. 13. (3) 検証可能なKPIを共有する 例例1:Webサービスの場合 ! サイト性能 ! クリックスルー率率率 ! コンバージョン率率率 ! ユーザー視点 ! 新規ユーザー数 ! アクティブユーザー数 13
  14. 14. (3) 検証可能なKPIを共有する 例例2:製品の異異常検知の場合 ! 誤検知率率率→「⾒見見逃しはどうなった?」 ! ⾒見見逃し率率率→「誤検知はどうなった?」 ! F-measure/G-mean→「よく分からない」 ! AUC(Area Under ROC Curve)→「全く分からない」 ! 総誤検知コストと総⾒見見逃しコストの和→「現実的じゃない」 ! 誤検知率率率c%を固定した時の⾒見見逃し率率率→「なるほど…?」 ! cは0.01?0.1?1.0?10?→ 納得するまで相談しましょう 14 誤検知率率率 ⾒見見逃し率率率 c1c2
  15. 15. (3) 検証可能なKPIを共有する 5つのポイントでもここが⼀一番⼤大事な所 ! (参考)アルゴリズムの優劣劣⽐比較の指標の場合 ! 異異なる問題(データセット)で共通→抽象的 ! Accuracy、P/R評価、ROC曲線、AUC… ! ⽬目の前のビジネス課題におけるパフォーマンスの場合 ! 関係者全員の評価の共通認識識→具体的 ! この値で投資対効果が評価されると肝に銘じる ! 絶対に曖昧にしない、妥協しない ! 「とりあえずやってみて…」 ! 何で評価すべきか決めてからにしましょう ! 「とりあえず精度度が上がればいいですよね」 ! 精度度ってなんですか? ! Accuracy? Precision? Recall? 15
  16. 16. 5つのポイント ! 関係者を利利害に巻き込む ! 「データが全て」を徹底する ! 検証可能なKPIを共有する ! Minimum Viable Experimentを実施する ! 検証パターンを限界まで増やす
  17. 17. (1) 関係者を利利害に巻き込む 「…みんなでしあわせになろうよ…?」 ! 典型的な関係者 ! 経営陣 ! ⾃自分の上司 ! 現場の責任者 ! データを管理理している⼈人 ! いま該当する業務をやってる⼈人 ! 利利益を得る部署の⼈人 ! 利利害 ! 「機械学習がうまくいったらみんなハッピー!」 ! それぞれの⼈人に向かってストーリーを作って説得する ! ここをサボるとその後の努⼒力力が無駄になる ! 利利害調整の仮定で共有すべきKPIも⾒見見えてくるはず 17
  18. 18. (1) 関係者を利利害に巻き込む 典型的な失敗例例 ! 始める前 ! 思い⽴立立って機械学習の導⼊入を訴える上司と経営陣からゴーサイン ! 現場の責任者「それはいいね、コストゼロ、リスクゼロで試して くれるならどうぞ」 ! データ管理理者/業務担当者「⼿手伝わないけど邪魔しないなら勝⼿手 にどうぞ」 ! 結果 ! 上司/経営陣「それで結局これでいくら儲かるんだ?」 ! 現場の責任者「あー、そうやったんだ、そうか……残念念、これじ ゃ使えないね、またそのうち頑張ってよ」 ! データ管理理者/業務担当者「まぁ難しいよねw(仕事取られたく ない)」「まぁ難しいよねw(仕事増やされたくない)」 18
  19. 19. (1) 関係者を利利害に巻き込む 「上⼿手くいったら認めてくれるだろう」は誤解 ! ⼈人間的な⾯面倒くささを避けない ! ⼀一般の仕事では投資対効果の評価をするのは⼈人間 ! 他⼈人にデメリットが無いなら表⾯面上はうまくいく ! 「ただでやってくれるならいいよ」 ! 「⾯面倒くさいから⼿手伝えないけど好きに使ってよ」 ! 投資しない⼈人が必要なものは誰も(本⼈人にも)分からない!! ! 誰しも無料料ならとりあえず何でも欲しがる ! 例例:街頭で受け取ったティッシュ⼊入りビラを5秒⾒見見つめて捨てる ! もらってからその価値を考える ! いらなかったら遠慮無く捨てる ! ⾃自分以外誰も責任を取らなくてもいい体制が問題 ! うまくいったら利利益を得る⼈人には責任も発⽣生させるべき ! うまくいくってなんだ?→(3)のKPIの話 19
  20. 20. 5つのポイント ! 関係者を利利害に巻き込む ! 「データが全て」を徹底する ! 検証可能なKPIを共有する ! Minimum Viable Experimentを実施する ! 検証パターンを限界まで増やす
  21. 21. (2) 「データが全て」を徹底する 今度度は逆に期待値をコントロールする ! 「機械学習を使えば何でも予測・検出できる!?」→NO! ! 機械学習は魔法ではない ! 何でも解決できるわけではない ! 例例1:「株価変動を予想して儲けられる!?」→NO! ! データ以外の外部要因の影響が過⼤大 ! 例例:政策・法規制の変更更、戦争勃発、投機マネーの流流動、etc ! 統計的予測による株式売買の実情 ! 平時はそれなりにプラス+激変時に⼤大きなマイナス ! =トータル平均はプラスマイナスゼロ ! 例例2:「⾃自動⾞車車のどんな故障も事前に検知できる!?」→NO! ! センサが捕まえられない種類の予兆は発⾒見見できない ! 消耗的故障(ネジ劣劣化によるホイール脱離離)と突発的故障(オイ ル漏漏れ) 21
  22. 22. (2) 「データが全て」を徹底する 機械学習とはデータを使い切切る技術のこと ! 機械学習がもたらす価値<=データに潜む価値 ! 使うデータに無い情報・知⾒見見は⾒見見つからない ! どんなに学習を頑張っても無理理なものは無理理 ! 機械学習の意義/得意な点 ! データを様々な切切り⼝口で調べていく ! ⼈人⼿手の分析が及ばない視点をカバーする ! ⼤大規模・⾼高次元データで特に有効になる ! 利利害関係者に訴えること ! まだ最⼤大限利利⽤用できてないデータが眠ってないか? ! 本当はデータを⽣生かせそうな仮説はあるか? ! 実現できていないのは⼿手法やコストの問題か? ! 機械学習アプローチで解決できそうにないか? 22
  23. 23. 5つのポイント ! 関係者を利利害に巻き込む ! 「データが全て」を徹底する ! 検証可能なKPIを共有する ! Minimum Viable Experimentを実施する ! 検証パターンを限界まで増やす
  24. 24. (4) Minimum Viable Experimentを実施する ! (参考)Minimum Viable Product (MVP) ! リーンスタートアップ:スタートアップでの開発理理論論で登場 ! 検証に必要な最⼩小限の機能を持った製品 ! Minimum Viable Experiment (MVE, 造語) ! 検証に必要な最⼩小限のリソースを⽤用いた評価実験 ! 前提:検証に⽤用いるKPIはすでに決定している ! リソース ! 教師データ ! テストデータ ! アルゴリズム(実装) ! 計算環境・開発・実験コスト ! フィージビリティスタディ/パイロット/PoCと呼ぶ場合が多い 24
  25. 25. (4) Minimum Viable Experimentを実施する 最⼩小限のリソースで検証:計画性が⼤大事 ! データ ! データ収集 ! 教師データ作り ! クリーニング ! 前処理理 ! アルゴリズム ! ルール/⼈人⼒力力をベースラインに ! 実装探す・使えるようにする ! パラメータチューニング ! その他作業コスト ! 環境を⽤用意・使えるようにする ! データを⼊入⼒力力して実験を回す ! 結果を考察して報告書を作る25 前処理理済データ アルゴリズム /パラメータ KPI評価 結果
  26. 26. Minimum Viable Experimentで⽬目指すとこ 26 時間 リターン 次やってもいいよライン
  27. 27. (4) Minimum Viable Experimentを実施する 失敗すれば次の本番プロジェクトは無いと思え ! 失敗=今後の投資対効果が⾒見見えない ! リソースと期間は有限 ! まずはOne-pass通すこと ! ベストのリソース配分を計画 ! 個⼈人的な欲望は抑えこむ ! やりたいことは本番まで待つ ! やってはいけない ! 「これを期にRよりNumPyでも覚え…」 ! 「実データは後回しにしてアルゴr…」 ! 経験的なアドバイス ! データの前処理理までに予想の3倍かかる ! アルゴリズム頑張る前に前処理理 ! チューニング頑張る前に前処理理 27 前処理理済データ アルゴリズム /パラメータ KPI評価 結果
  28. 28. 5つのポイント ! 関係者を利利害に巻き込む ! 「データが全て」を徹底する ! 検証可能なKPIを共有する ! Minimum Viable Experimentを実施する ! 検証パターンを限界まで増やす
  29. 29. (5) 検証パターンを限界まで増やす おめでとうございます、ついに本番です ! 「ついに好きな事ができる…!!」 ! 新しい統計処理理環境・⾔言語に⼿手を出してみたり ! 論論⽂文読んで新しいアルゴリズム実装したり ! いっそクラウドに分散実験環境作ってみたり ! 実験を⾃自動化するスクリプトを整備したり ! ちょっと待とう!! ! MVEだけではまだビジネス上は役に⽴立立っていない ! 成果を出すまでが機械学習を使ったお仕事です ! MVEの結果を最⼤大限レバレッジするのが使命 ! 「策⼠士策に溺溺れる」にならないように ! 成果が⼀一番 ! コストが⼆二番 ! 個⼈人の欲望はこっそりね…?29
  30. 30. (5) 検証パターンを限界まで増やす 計画性や好みよりも網羅羅性を ! MVEの遺産 ! 実験をOne-pass流流す仕組み ! データやアルゴリズムは置き換え可能 ! チューニングも可能な限り省省⼒力力化へ ! 参考: https://github.com/pfi/maf ! ひたすらパターンを増やす ! データを増やす ! 前処理理バリエーションを増やす ! アルゴリズムを増やす ! チューニングの網羅羅性を⾼高める ! これらのかけ算で結果が増える ! 注:KPIは動かさない 30 前処理理済データ アルゴリズム /パラメータ KPI評価 結果
  31. 31. (5) 検証パターンを限界まで増やす 思い込みや先⼊入観を捨てる ! 与えられたデータをしっかり使い切切る ! 古いデータより新しいデータ ! 変数を限定したデータより全変数 ! サンプリングしたデータより全データ ! 注:後⼯工程で削るのはアリ ! アルゴリズムを選り好みしない ! まずC4.5、ロジスティック回帰、ナイーブベイズ ! SVM、Boosting、Random Forest ! 「けどDeep Learningやりたいんです!」→最後にしよう ! チューニング ! 各パラメータ最低限3段階で試験 ! 変数のスケールとの相性に注意 31
  32. 32. “Machine learning that matters” Kiri L. Wagstaff, ICML, 2012. ! 機械学習研究におけるベンチマーク性能向上への偏向、 評価関数の有⽤用性、実応⽤用との乖離離を批判し実⽤用指向を推奨 ! もっと応⽤用を指向した機械学習研究と開発が今後加速する ! 異異常検知は特にドメイン知識識が重要で専⾨門家の強⼒力力が不不可⽋欠 32
  33. 33. まとめ
  34. 34. 34 数値は 神より 正しい
  35. 35. 機械学習は苦しい
  36. 36. Fin. 36

×