Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

ブレインパッドにおける機械学習プロジェクトの進め方

8 986 vues

Publié le

2019年6月15日日本人工知能学会登壇資料

Publié dans : Données & analyses
  • Identifiez-vous pour voir les commentaires

ブレインパッドにおける機械学習プロジェクトの進め方

  1. 1. 株式会社ブレインパッド 2019年6月5日 ブレインパッドにおける 機械学習プロジェクトの進め方 1
  2. 2. Mitsuhisa Ota • Deputy General Manager @ BrainPad Inc. • Google Developers Expert (Machine Learning)  • Organizer of TensorFlow User Group. • A Steering Committee of MLSE • A Committee of JDLA
  3. 3. 社会実装
  4. 4. © BrainPad Inc. アルゴリズム「以外」の部分が注目されている 4
  5. 5. © BrainPad Inc. 機械学習は研究から社会実装のフェーズへ 5 AIは発見から実装のフェーズに入った。新しいアルゴリズムを発見した人が有利だった時代は終わ り、今重要なのは実装。多くの資金とデータを持って早く動くところが勝つ。この意味で中国は有利 だ。 Kai-Fu Lee, 米IEEE Spectrumのインタビューを受けて, エクサウィザーズ AI新聞 (2018/9/22) より転載
  6. 6. © BrainPad Inc. 機械学習システム全体において、機械学習モデルはほんの一部分 機械学習システムの全体像と機械学習モデル 6 ML Code D. Sculley, etc, Hidden Technical Debt in Machine Learning Systems
  7. 7. © BrainPad Inc. 機械学習プロジェクトでは、モデル構築以外の要素も多い システムの管理やバックアップ、不具合対応などを行う 運用 7 PoCで行われた結果をもとに、システムを開発する 開発 所定のビジネスKPIが達成可能かどうかを検証する 実地試験 機械学習モデルを構築し、精度などの性能を検証する  PoC 解くべきビジネス課題を決定し、その解決方法をデザインする 企画 機械学習プロジェクトの流れと機械学習モデル構築
  8. 8. アルゴリズムの研究と社会実装は 車の両輪
  9. 9. © BrainPad Inc. 社会実装の実例: 食品工場における不良品検知 9 取り組み内容 背景・目的 工場ライン上の原料からの不良品検出 不良品除去は従来人手で行っており、非常 に負荷の高い仕事となっていた 9
  10. 10. © BrainPad Inc. ✓ 日々のサポートを行う 運用 10 ✓ フィードバックをもとに業務フローを確認する ✓ 要件を整理し、システムを開発する開発 ✓ End-to-End で動作する小さなシステムを構築する ✓ 工場に出向き、使ってもらってフィードバックを得る実地試験 ✓ データの取得方法、アノテーション方法などを決定する ✓ 機械学習モデルを構築し、評価する PoC ✓ 対象とする食品や不良の種類、評価方法を決定する ✓ 想定する手法やシステムの全体像を描く企画 食品工場における不良品検知プロジェクトの流れ
  11. 11. © BrainPad Inc. 社会実装の実例: 食品工場における不良品検知 11 取り組み内容 背景・目的 工場ライン上の原料からの不良品検出 不良品除去は従来人手で行っており、非常 に負荷の高い仕事となっていた 成果 人と同程度の精度の不良品検知アルゴリズ ムを構築 11
  12. 12. しかし すべてのプロジェクトが うまくいく訳ではない
  13. 13. © BrainPad Inc. 進まない社会実装 13 (浦本直彦会長, 第33回人工知能学会 全国大会にて) 深層学習を活用した成功事例が出ていないから、 企業経営者も『よしやってみよう』という気にならないのではないか
  14. 14. 機械学習プロジェクトを進めると どのような問題にぶつかるのだろうか?
  15. 15. © BrainPad Inc. 15 機械学習プロジェクトでよくある問題 運用 開発 実地試験 PoC 1. 適切なビジネス課題を設定できない 2. 必要以上に機械学習に頼ってしまう 3. 適切な機械学習タスクに落とし込めない 4. コスト見積もりが難しい 企画 よくある問題
  16. 16. © BrainPad Inc. 16 機械学習プロジェクトでよくある問題 運用 開発 実地試験 PoC 1. PoCがいつまでも終わらない 2. データの品質が良くない 3. コードの品質が良くない 4. 不適切な方法でモデルを評価してしまう 企画 よくある問題
  17. 17. © BrainPad Inc. 17 機械学習プロジェクトでよくある問題 運用 開発 実地試験 PoC 1. 使ってもらえない 2. 担当者の変更による、どんでん返しがまっている 3. 想定以上の開発コストと時間がかかる 4. 効果をうまく評価できない 企画 よくある問題
  18. 18. © BrainPad Inc. 18 機械学習プロジェクトでよくある問題 運用 開発 実地試験 PoC 1. PoCの時と同等の精度が出ない 2. 想定以上の開発コストと時間がかかる 3. 機械学習モデルの訓練に想定以上の時間がかかる 4. 機械学習モデルのテスト・品質保証ができない 企画 よくある問題
  19. 19. © BrainPad Inc. 19 機械学習プロジェクトでよくある問題 運用 開発 実地試験 PoC 1. データの管理が行き届かない 2. 暗黙のフィードバックに気づけない 3. 機械学習モデルの挙動に振り回される 企画 よくある問題
  20. 20. と、ならないために
  21. 21.        における 機械学習プロジェクトの進め方 〜 あるいは気をつけているポイント 〜
  22. 22. 1. 関係者を巻き込む
  23. 23. © BrainPad Inc. プロジェクトを成功させるためには、適切な目的を設定し、関係者全員が 共通の認識を持つ必要がある。 関係者を巻き込む 23 具体的には... ✓ ドメイン知識豊富な顧客(受託の場合)にプロジェクトオーナーを担っていただき、 密なコミュニケーションを心がける ○ 良い分析・アルゴリズムには豊富なドメイン知識が有効 ✓ 機械学習を導入したい人と導入されたシステムのユーザーが別である場合は、企 画段階からユーザーを巻き込む ○ ユーザーにメリットが無いとPoCから先に進まない ✓ 部署横断となることが多いので、関係者を巻き込める人を巻き込む ○ 誰を巻き込めるかで勝負が決まる
  24. 24. 2. 品質を担保するための体制を作る
  25. 25. © BrainPad Inc. 機械学習プロジェクトには様々なスキルが必要なため、万能なスターに頼 るのは現実的ではなく、チームとして成果を出すことを考える 品質を担保するための体制を作る 25 具体的には... ✓ 分析官に万能であることを求めない ○ ブレインパッドでは、レビュー制度などを通じて品質を担保 ✓ エンジニアは開発フェーズからではなく、企画フェーズから参画する ○ 無謀な見積もりがなくなり、PoCフェーズのコードの品質も向上 ○ 機械学習以外の解決策も見つけやすくなる ✓ ビジネスサイドにも理解しやすい指標を作って議論する ○ 関係者間で共通の認識がもてると、前向きな議論ができる
  26. 26. 3. トラブルを回避する仕組みを作る
  27. 27. © BrainPad Inc. 機械学習は万能ではない。すべてを機械学習に頼るのではなく、周辺の仕 組みでカバーする。 トラブルを回避するための仕組みを作る 27 具体的には... ✓ 機械学習の出力をそのままシステムの出力としない ○ 人手で調整する余地やルールベースな手法との組み合わせを検討する ✓ 暗黙のフィードバックの影響を和らげるような方法を取り入れる ○ サービス設計の段階で考える ✓ 管理できるデータは管理する。管理できないデータは検証する ○ サイトリニューアル後のURLなど、データの型は同じでも意味が変わってしま うことも多い。すべてのデータを管理するのは難しい
  28. 28. © BrainPad Inc. 1. アルゴリズムの研究と社会実装は車の両輪 2. 機械学習プロジェクトにおいては、以下の点に気をつける ✓ 関係者を巻き込む ✓ 品質を担保するための体制を作る ✓ トラブルを回避する仕組みを作る まとめ 28
  29. 29. APPENDIX
  30. 30. © BrainPad Inc. 典型的なプロジェクトの役割分担の例 (あくまで例であり、プロジェクト毎に必要な人材や役割は異なる) 機械学習プロジェクトにおける役割分担 プロジェクトオーナー ✔ プロジェクトの目的や目標、優先順位の決定を行う ※ 受託開発の場合は顧客側が担う ✔ プロジェクトを遂行させる ✔ 機械学習タスクへの落とし込み、モデルの構築・評価を 行う ✔ システム設計や実装・運用を担う ✔ 機械学習モデルについては、分析官らと協力してシステ ムに組み込む プロジェクトマネージャー 分析官・機械学習エンジニア 開発・運用エンジニア 30
  31. 31. © BrainPad Inc. 課題の落とし込みと検証項目、各フェーズ 機械学習で 解くべきビジネス課題 ビジネス課題 機械学習タスク コード 精度指標の検証 システムによる解決策 システムテスト 機械学習を中心とした ビジネスKPIの検証 企 画 PoC PoC 実 地 試 験 開発・運用 31
  32. 32. © BrainPad Inc. ● 機械学習は、入出力の例示によって仕様を決める帰納的プログラミング とみなせる 機械学習と従来のプログラムの違い 機械学習(訓練) 答え データ ルール (機械学習 モデル) プログラムの実行 ルール (コード) データ 答え ルールはコーディングで作る ルールはデータから作る 32
  33. 33. ©BrainPad Inc. 企画フェーズの詳細 ゴール 解くべきビジネス課題を決定し、その解決方法をデザインすること 具体的な取り組み内容 1. 解くべきビジネス課題の決定 2. ビジネスKPIの設定 3. 利用可能なデータの選定と一次評価(データ件数やデータの種類の把握) 4. 機械学習タスクへの落とし込みとアルゴリズムの候補出し 5. 機械学習タスクの評価指標(精度指標)の決定 6. コストの概算見積もりと体制の確保 33
  34. 34. ©BrainPad Inc. 企画フェーズでよくある課題 よくある課題 1. 適切なビジネス課題を設定できない 2. 必要以上に機械学習に頼ってしまう 3. 適切な機械学習タスクに落とし込めない 4. コスト見積もりが難しい 34
  35. 35. ©BrainPad Inc. 企画フェーズでよくある課題1: 現場での対応 よくある課題 適切なビジネス課題を設定できない 主な原因 1. ビジネスサイドが機械学習に関して知識不足のため、何ができるのかわからない a. 実現不可能な夢を語ってしまう b. 目的の設定も分析・システムサイドに投げようとする 2. プロジェクトオーナーと実際のユーザーの所属が異なり、正しい課題認識ができて いない 35
  36. 36. ©BrainPad Inc. 企画フェーズでよくある課題1 よくある課題 適切なビジネス課題を設定できない 現場での対応 1. ビジネスサイドの機械学習知識不足のため、何ができるのかわからない a. ワークショップ形式で、ビジネス課題の設定をサポートする b. わかりやすい機械学習に関する資料を共有する c. 過去事例や過去実績をもとにしたコミュニケーションを心がける 2. プロジェクトオーナーとユーザーの所属が違い、共通の課題認識を持てない a. 具体的な業務フローの議論をすることで、ユーザーの存在を意識してもらう b. ユーザーを巻き込むことができる人を探す 36
  37. 37. ©BrainPad Inc. 企画フェーズでよくある課題2 よくある課題 必要以上に機械学習に頼ってしまう 主な原因 1. 企画フェーズに開発エンジニアが入っていない a. 分析官・機械学習エンジニアは機械学習を使うバイアスがかかりがち 2. 機械学習に過度の期待をしてしまう a. 実際には機械学習を含む様々な手法の組み合わせでビジネス課題を解決す ればよいが、機械学習が万能なように思っていると、なかなか他の手段が思い つかない 37
  38. 38. ©BrainPad Inc. 企画フェーズでよくある課題2 よくある課題 必要以上に機械学習に頼ってしまう 現場での対応 1. 企画フェーズに開発エンジニアが入っていない a. 企画フェーズから開発エンジニアの関与を増やす 2. 機械学習に過度の期待をしてしまう a. わかりやすい機械学習に関する資料を共有し、限界を知ってもらう b. 機械学習と技術的負債に関する話を共有する 38
  39. 39. ©BrainPad Inc. 企画フェーズでよくある課題3 よくある課題 適切な機械学習タスクに落とし込めない 主な原因 1. 精度指標に関する知識不足 a. 「精度」という言葉の表す意味合いがビジネスサイドと分析サイドで違ってい て、合意が取れていないのに合意が取れたと誤認識してしまう 2. データの概要を把握していない a. 全体のデータ件数、ラベル毎の数に偏りがあるか、欠損値の有無などがわか らないために、不適切であることに気が付かない 39
  40. 40. ©BrainPad Inc. 企画フェーズでよくある課題3 よくある課題 適切な機械学習タスクに落とし込めない 現場での対応 1. 精度指標に関する知識不足 a. 精度指標の計算方法と、選んだ精度指標の特性について共有する b. ビジネスサイドにわかりやすい精度指標をつくる 2. データの概要を把握していない a. 企画フェーズの段階でサンプルデータを受領して、概要を把握する 40
  41. 41. ©BrainPad Inc. 企画フェーズでよくある課題4 よくある課題 コスト見積もりが難しい 主な原因 1. 企画の時点で、開発・運用のコストまで精緻に見積もろうとする a. PoC前の段階では不確実性が高く、バッファを見込むため見積もりが膨れ上が りがち 2. 開発エンジニアの関与が薄い a. 開発エンジニアでなければ気づけないポイントを見逃してしまう 41
  42. 42. ©BrainPad Inc. 企画フェーズでよくある課題4 よくある課題 コスト見積もりが難しい 現場での対応 1. 企画の時点で、開発・運用のコストまで精緻に見積もろうとする a. 各フェーズごとに契約を区切り、開発・運用の詳細な見積もりはPoCのあとで行 うようにする 2. 開発エンジニアの関与が薄い a. 企画フェーズから開発エンジニアの関与を増やす 42
  43. 43. ©BrainPad Inc. PoCフェーズの詳細 ゴール 機械学習モデルを構築し、評価すること 具体的な取り組み内容 1. データの準備(必要に応じてカイブデータの取得やデータベースへのインポートを 行う) 2. 探索的データ分析を通じてデータを理解する 3. 機械学習モデルを構築し、企画フェーズで設定した評価指標で評価する 4. 必要に応じて機械学習モデルのチューニングを実施する 43
  44. 44. ©BrainPad Inc. PoCフェーズでよくある課題 よくある課題 1. PoCがいつまでも終わらない 2. データの品質が良くない 3. コードの品質が良くない 4. 不適切な方法でモデルを評価してしまう 44
  45. 45. ©BrainPad Inc. PoCフェーズでよくある課題1 よくある課題 PoCがいつまでも終わらない 主な原因 1. 必要な精度が明確になっていない a. 人間は必ずミスをするが、人間の代替にもかかわらず100%を求められる 2. 想定していた精度を得られなかった場合のアクションを用意していない a. 精度を上げる以外の選択肢がなくなってしまう 45
  46. 46. ©BrainPad Inc. PoCフェーズでよくある課題1 よくある課題 PoCがいつまでも終わらない 現場での対応 1. 必要な精度が明確になっていない a. ベースラインとして機械学習を導入しなかった場合にどうなるのかを考える 2. 想定していた精度を得られなかった場合のアクションを用意していない a. 事前に代替案を用意しておくか、潔く企画フェーズに戻る b. 人間の作業の完全な置き換えを目指すのは極力避ける 46
  47. 47. ©BrainPad Inc. PoCフェーズでよくある課題2 よくある課題 データの品質が良くない 主な原因 1. 企画フェーズでデータの概要を把握していない a. データの不備に気づくのが遅れる 2. 与えられたデータのみでPoCを進めようとする a. 「Garbage In Garbage Out」 なので良い結果が得られない 47
  48. 48. ©BrainPad Inc. PoCフェーズでよくある課題2 よくある課題 データの品質が良くない 現場での対応 1. 企画フェーズでデータの概要を把握していない a. 企画フェーズでサンプルデータをつかって概要を把握しておく 2. 与えられたデータのみでPoCを進めようとする a. 潔く企画フェーズに戻る 48
  49. 49. ©BrainPad Inc. PoCフェーズでよくある課題3 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 説明変数加工処理が複雑になりがち a. 精度を求めるには、色々な説明変数を試す必要があり、処理が徐々に複雑に なる b. 試行錯誤のうちに、不要なコードも紛れ込んでしまう 2. PoCフェーズは本質的に試行錯誤の繰り返しとなる a. 試行錯誤を多く回すために、コードの綺麗さよりもコーディング時間の短縮が重 視される b. テストを書く時間が惜しいという意識が働いてしまう コードの品質が良くない 49
  50. 50. ©BrainPad Inc. PoCフェーズでよくある課題3 よくある課題 不適切なモデルの評価に気づけない 現場での対応法 1. 説明変数加工処理が複雑になりがち a. 精度の目標値を定め、不必要な精度の追求は避けるよう心がける 2. PoCフェーズは本質的に試行錯誤の繰り返しとなる a. PoCの段階は開発エンジニアがコーディングのサポートをする。 b. CI環境を事前に構築し、ルールを決めておく コードの品質が良くない 50
  51. 51. ©BrainPad Inc. PoCフェーズでよくある課題4 よくある課題 不適切な方法でモデルを評価してしまう 主な原因 1. データの定義を把握していない a. 変数の定義が曖昧で、使ってはいけない変数を使ってしまう b. データの分割方法を間違えてしまう(リークが発生する) 2. 分析官の知識不足 a. アサインされた分析官の不得意な領域の場合に、問題に気づけない可能性が ある 51
  52. 52. ©BrainPad Inc. PoCフェーズでよくある課題4 よくある課題 不適切な方法でモデルを評価してしまう 現場での対応 1. データの定義を把握していない a. データ受領・データ確認の期間を取る b. データ確認の期間は特に、顧客との密なコミュニケーションを心がける 2. 分析官の知識不足 a. 該当領域に詳しい専門家による分析設計のレビューを行う 52
  53. 53. ©BrainPad Inc. 実地試験フェーズの詳細 ゴール 所定のビジネスKPIが達成可能かどうかを検証すること 具体的な取り組み内容 1. プロトタイプの開発 2. 業務の一部への機械学習の組み込み 3. ビジネスKPIの検証  53
  54. 54. ©BrainPad Inc. 実地試験フェーズでよくある課題 よくある課題 1. 使ってもらえない 2. 担当者の変更による、どんでん返しがまっている 3. 想定以上の開発コストと時間がかかる 4. 効果をうまく評価できない 54
  55. 55. ©BrainPad Inc. 実地試験フェーズでよくある課題1 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. ユーザーにメリットを提供していない a. 少なからず業務フローを変える必要があり、積極的なメリットが必要 b. 「あなたの人件費を削減します」に積極的に協力する人はいない 2. 現状の業務フローが十分に考慮されず、学習コストが高い a. ユーザーにとって実地試験は、通常業務に加えての追加の業務であり、時間 をさけない 3. 信頼されていない a. ユーザーには「よくわからないものが天から降ってきた」と映る 使ってもらえない 55
  56. 56. ©BrainPad Inc. 実地試験フェーズでよくある課題1 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. ユーザーにメリットを提供していない a. 企画フェーズから、ユーザー側の人を巻き込む b. 社内調整の得意な人を巻き込む(巻き込める人を巻き込む) 2. 現状の業務フローが十分に考慮されず、学習コストが高い a. 確認したい項目を整理して、大掛かりな取り組みにしないよう心がける 3. 信頼されていない a. 現場に出向いて仲良くする 使ってもらえない 56
  57. 57. ©BrainPad Inc. 実地試験フェーズでよくある課題2 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 機械学習の検証は先行開発やシステム部門が担うことが多いが、実地検証以降は 現場の協力が不可欠 a. 担当者が変わると今までの取り組み内容をすべて説明し直さなければいけな い b. 温度感や方向性も変わってしまうことがある 担当者の変更による、どんでん返しがまっている 57
  58. 58. ©BrainPad Inc. 実地試験フェーズでよくある課題2 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. 機械学習の検証は先行開発やシステム部門が担うことが多いが、実地検証以降は 現場の協力が不可欠 a. 企画フェーズから、ユーザー側の人を巻き込む b. 社内調整の得意な人を巻き込む(巻き込める人を巻き込む) 担当者の変更による、どんでん返しがまっている 58
  59. 59. ©BrainPad Inc. 実地試験フェーズでよくある課題3 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 実地試験の目的が明確になっていない a. すべてを検証するには、全てを実装する必要がある 2. 実地検証と(本番)実装のフェーズをわけずに提案している a. 精度指標とビジネスKPIは別物にもかかわらず、ビジネスKPIの検証ができない ※ PoCの中でビジネスKPIまで検証できる場合は、本フェーズが不要に見える こともある 想定以上の開発コストと時間がかかる 59
  60. 60. ©BrainPad Inc. 実地試験フェーズでよくある課題3 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. 実地試験の目的が明確になっていない a. PoCの後半に実地試験の目的や取り組み内容を絞り込む期間を設ける b. 目的の達成に必要な部分だけを実装する(ほぼなにも作らないこともある) 2. 実地検証と(本番)実装のフェーズをわけずに提案している a. フェーズをわけて提案する 想定以上の開発コストと時間がかかる 60
  61. 61. ©BrainPad Inc. 実地試験フェーズでよくある課題4 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 機械学習以外の外的な要因を考慮に入れていない a. PoCよりも本番環境に近いので、様々なノイズの影響を受ける可能性がある 2. 企画フェーズで精度指標とビジネスKPIが混同されている a. 機械学習モデルの精度指標とビジネスKPIは本来別物であるにもかかわらず、 精度指標をビジネスKPIのようにとりあつかってしまうと、実地試験で何を検証し たら良いのかわからなくなってしまうことがある 効果をうまく評価できない 61
  62. 62. ©BrainPad Inc. 実地試験フェーズでよくある課題4 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. 機械学習以外の外的な要因を考慮に入れていない a. A/Bテストの設計などで、可能な限り外的な要因を取り除くよう心がける 2. 企画フェーズで精度指標とビジネスKPIが混同されている a. 企画フェーズにおいてKPI策定のためのワークショップを実施 効果をうまく評価できない 62
  63. 63. ©BrainPad Inc. 開発フェーズの詳細 ゴール PoCで行われた結果をもとに、システムを開発すること 具体的な取り組み内容 1. データの種類・取得・管理方法の決定 2. 機械学習モデルの再構築(リファクタリング) 3. 機械学習モデルの更新頻度・更新方法の決定 4. その他システム開発 63
  64. 64. ©BrainPad Inc. 開発フェーズでよくある課題 よくある課題 1. PoCの時と同等の精度が出ない 2. 想定以上の開発コストと時間がかかる 3. 機械学習モデルの訓練に想定以上の時間がかかる 4. 機械学習モデルのテスト・品質保証ができない 64
  65. 65. ©BrainPad Inc. 開発フェーズでよくある課題1 よくある課題 PoCの時と同等の精度が出ない 主な原因 1. PoCとデータが違う a. 本番とPoCでデータの期間や取得方法に違いがあることがある b. データ分析に関する知識不足から、良かれと思ってデータのとり方を ”改善” し て、前提が変わったしまうということもある 2. PoCと環境が違う a. システム上の制約でPoCで利用できたライブラリが使えない事がある b. エッジへの組み込みのため、機械学習モデルを圧縮する場合がある 65
  66. 66. ©BrainPad Inc. 開発フェーズでよくある課題3 よくある課題 PoCの時と同等の精度が出ない 現場での対応 1. PoCとデータが違う a. データ取得方法の変更の際には、必ずリスクを伝えるようにする b. データの管理方法、取得方法を明確にしておく c. (余力があれば)本番データで性能の高いモデルを探し出す 2. PoCと環境が違う a. Dockerなどのコンテナ技術を活用する b. 機械学習モデルの圧縮などについては、PoCの段階で評価しておく 66
  67. 67. ©BrainPad Inc. 開発フェーズでよくある課題1 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 機械学習エンジニアに見積もりを依頼してしまう a. 機械学習以外の箇所の見積もりが甘くなりがち 2. PoCや実地試験がとてもうまく進んだ a. ほとんどできているという誤った印象を与えてしまう b. 「作り込まなくていいから早く使いたい」という圧力に屈してしまいがち 想定以上の開発コストと時間がかかる 67
  68. 68. ©BrainPad Inc. 開発フェーズでよくある課題1 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. 機械学習エンジニアに見積もりを依頼してしまう a. 企画フェーズで、各役割を明確化し、可視化しておく b. システム部分の見積もりは開発エンジニアが行う 2. PoCや実地試験がとてもうまく進んだ a. 機械学習はシステムのほんの一部、ということをずっと言い続ける 想定以上の開発コストと時間がかかる 68
  69. 69. ©BrainPad Inc. 開発フェーズでよくある課題2 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. PoCや実地検証時と本番で環境が大きく違う a. データのおいてある場所が違うケースが多く、データロードの時間が b. PoCの段階ではデータをある程度整形して持つことが多いため、機械学習以 外の部分のパフォーマンスを見落としがち 2. コスト制約でリッチな環境を利用できない 機械学習モデルの訓練に想定以上の時間がかかる 69
  70. 70. ©BrainPad Inc. 開発フェーズでよくある課題2 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. PoCや実地検証時と本番で環境が大きく違う a. PoCもしくは実地検証の段階で、可能な限り本番環境と似た環境をつくり、パ フォーマンスの確認をする 2. コスト制約でリッチな環境を利用できない a. PoCフェーズに戻り、より簡易的な手法を検討する 機械学習モデルの訓練に想定以上の時間がかかる 70
  71. 71. ©BrainPad Inc. 開発フェーズでよくある課題4 よくある課題 機械学習モデルのテスト・品質保証ができない 主な原因 1. 機械学習モデルやデータの前処理のコード品質が低く、テストしづらい 2. 機械学習モデルの品質保証は未だ研究段階のテーマ 71
  72. 72. ©BrainPad Inc. 開発フェーズでよくある課題4 よくある課題 機械学習モデルのテスト・品質保証ができない 現場での対応 1. 機械学習モデルやデータの前処理のコード品質が低く、テストしづらい a. PoCの段階から開発エンジニアが関わり、コードの品質を向上させる b. CI環境を布教する 2. 機械学習モデルの品質保証は未だ研究段階のテーマ a. 簡単なデータで機械学習モデルの挙動を確認する b. 機械学習の出力結果に人が介在できるような設計にする 72
  73. 73. ©BrainPad Inc. 運用フェーズの詳細 ゴール システムを安定的に稼働させること 具体的な取り組み内容 1. ビジネスKPIの監視 2. 精度指標の監視 3. 機械学習モデルの管理・更新 4. その他システムの管理、バックアップ、不具合対応など 73
  74. 74. ©BrainPad Inc. 運用フェーズでよくある課題 よくある課題 1. データの管理が行き届かない 2. 暗黙のフィードバックに対処できない 3. 機械学習モデルの挙動に振り回される 74
  75. 75. ©BrainPad Inc. 運用フェーズでよくある課題1 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 訓練に利用しているデータが管理外である a. 問題となる例としては、閲覧したURLをもとに商品のレコメンドを行っていたが、 サイトのURL構造がいつの間にか変わっていた、など 2. データ量の問題で、全てのデータを保存しておくことができない a. 顧客マスタなど、分析観点では履歴で残しておくことが望ましいが、常にそのよ うにできるわけではない データの管理が行き届かない 75
  76. 76. ©BrainPad Inc. 運用フェーズでよくある課題1 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. 訓練に利用しているデータが管理外である a. (顧客など)状況を把握している人との連携を密にとる b. 以上が起こった際の対応方法を明示しておく 2. データ量の問題で、全てのデータを保存しておくことができない a. 必要になりそうな項目を洗い出し、それだけを保存しておく b. クラウドサービス等の利用を検討する c. 分析専用の環境を用意する データの管理が行き届かない 76
  77. 77. ©BrainPad Inc. 運用フェーズでよくある課題2 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 単一のロジックに頼っている a. 例えば、人気商品ばかりをレコメンドするアルゴリズムを利用すると、マイナー な商品はレコメンドされず、レコメンドされないので人気になりえない、という ループに陥る 2. データの変化に気づきにくい a. 全体の数値だけを見ていても気づけないことが多い b. 暗黙のフィードバックの影響は徐々に溜まっていくため、気づきにくい 暗黙のフィードバックに対処できない 77
  78. 78. ©BrainPad Inc. 運用フェーズでよくある課題2 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. 単一のロジックに頼っている a. ルールベースとの組み合わせなど、暗黙のフィードバックの影響を受けにくいよ うな設計をしておく 2. データの変化に気づきにくい a. データを分析官が見るような仕組みをつくる b. ユーザーと密なコミュニケーションをとる 暗黙のフィードバックに対処できない 78
  79. 79. ©BrainPad Inc. 運用フェーズでよくある課題3 よくある課題 不適切なモデルの評価に気づけない 主な原因 1. 訓練データに含まれないようなデータが含まれる a. 機械学習はあくまで「例示による帰納的なプログラミング」なので、例示されて いないものについてはめっぽう弱い 2. 想定外の挙動に対応する仕組みがない 機械学習モデルの挙動に振り回される 79
  80. 80. ©BrainPad Inc. 運用フェーズでよくある課題3 よくある課題 不適切なモデルの評価に気づけない 現場での対応 1. 訓練データに含まれないようなデータが含まれる a. 入力データの監視をする 2. 想定外の挙動に対応する仕組みがない a. 機械学習の出力を監視する b. 機械学習の出力をルールベースもしくは人が調整できるような設計を心がける (機械学習モデルの出力をそのまま使わない) 機械学習モデルの挙動に振り回される 80
  81. 81. © BrainPad Inc. IPAによるAI社会実装課題の調査 81 AI社会実装推進調査報告書 , 2018年6月19日 より抜粋 実装課題の整理・分類
  82. 82. © BrainPad Inc. BrainPad は、データ活用を専門とする多数のプロフェッショナルの力を活かし、幅広い 課題を解決するサービスを提供しています。 BrainPadの事業内容1 マーケティングの PDCA サイクル全体の改善を支援 データや事実に基づいて マーケティングや CRMを 改善したい アナリティクスを用いた 業務プロセスの最適化支援 データ活用のための インフラ構築全体を支援 人材育成、 専門組織や体制の構築を支 援 機械学習やAIを用いて 業務改革や高度化を行いたい ビッグデータ分析のための プラットフォームを 構築したい データ活用人材を育てたい、 組織・体制を構築したい 82
  83. 83. © BrainPad Inc. DMP市場のNo.1製品「Rtoaster」を中心に、デジタルマーケティングを進化させる分析 ・システム構築・導入コンサルティングも提供しています。 ProbanceMynd plus BrainPadの事業内容2 AdNote 広告運用支援ツール FUSE LIGHT AI型ネット広告運用 ソリューション 自然言語処理エンジン Rtoaster レコメンドエンジン 搭載プライベートDMP + 分析 + システム構築 + 導入コンサルティング マーケティングオートメーショ ンプラットフォーム Conomi マッチングエンジン Crimson Hexagon ソーシャルリスニング・ プラットフォーム 高品質のサービス提供を可能とする製品群 83

×