Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
事業会社における機械学習システム開発・運用 課題と展望
Search
Livesense Inc.
PRO
August 22, 2018
Technology
0
4.1k
事業会社における機械学習システム開発・運用 課題と展望
機械学習工学研究会 現場を交えた勉強会 #1 (2018/08/21)
https://mlxse.connpass.com/event/97131/
Livesense Inc.
PRO
August 22, 2018
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
250
26新卒_総合職採用_会社説明資料
livesense
PRO
0
4.4k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
13k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
7.9k
中途セールス職_会社説明資料
livesense
PRO
0
190
EM候補者向け転職会議説明資料
livesense
PRO
0
85
コロナで失われたノベルティ作成ノウハウを復活させた話
livesense
PRO
0
200
転職会議でGPT-3を活用した企業口コミ要約機能をリリースした話
livesense
PRO
0
1.3k
Other Decks in Technology
See All in Technology
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
210
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
1
1.5k
AI エージェント開発を支える MaaS としての Azure AI Foundry
ryohtaka
6
640
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
790
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
27
14k
OpenID BizDay#17 みんなの銀行による身元確認結果の活用 / 20250219-BizDay17-KYC-minna-no-ginko
oidfj
0
150
Active Directory攻防
cryptopeg
PRO
7
4.5k
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
520
クラウドサービス事業者におけるOSS
tagomoris
3
960
NFV基盤のOpenStack更新 ~9世代バージョンアップへの挑戦~
vtj
0
290
Windows の新しい管理者保護モード
murachiakira
0
180
現場で役立つAPIデザイン
nagix
35
13k
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6.2k
Documentation Writing (for coders)
carmenintech
67
4.6k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
The Invisible Side of Design
smashingmag
299
50k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Automating Front-end Workflow
addyosmani
1368
200k
The Language of Interfaces
destraynor
156
24k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
What's in a price? How to price your products and services
michaelherold
244
12k
Transcript
事業会社における 機械学習システム開発・運用の課題と展望 株式会社リブセンス 田中 祥太郎
• 事業会社において、Webサービスに組み込まれ実際に収益を挙げることを 目的とした機械学習 (ML) システムについて述べる • MLアルゴリズムそのものより、MLを利用するシステムの特徴や 開発・運用の体制、組織・プロジェクト管理に着目 • 実際の課題の列挙とそれに対する考察・展望の共有が目的であり、
特定の課題に対する詳細な解決手法の提案は行わない ※実際の取組みは https://analytics.livesense.co.jp/ で紹介 内容について
自己紹介 田中 祥太郎 / @yubessy • 株式会社リブセンス テクノロジカルマーケティング部 データプラットフォームグループ •
データ分析基盤・機械学習基盤の開発・運用に従事 • 修士 (社会情報学) 経歴 2010 - 2014 京都大学工学部情報学科 2014 - 2016 京都大学大学院情報学研究科 2016 - 株式会社リブセンス
リブセンスのサービス 求人・不動産領域を中心に大小複数のサービスを運営
成功報酬型ビジネスモデルが主流 リブセンスのビジネスモデル
求人サービスの例 • 求人票の掲載:無料 • 応募者の採用:課金 掲載無料 = 営業努力だけでは収益を上げにくい データ活用によるマーケティング・UX向上施策に注力 →
機械学習をはじめとする最適化手法の導入 • コンテンツと行動ログによる求人レコメンド • CVR予測に基づく検索ランキング最適化 成功報酬型ビジネスモデルとデータ活用
例 コンテンツと行動ログによる求人レコメンド • 求人コンテンツの類似度に基づく Contents-Based Filtering • ユーザフィードバックに基づく Collaborative Filtering
例 CVR予測に基づく検索ランキング最適化 • 求人のCVR (応募率・採用率) を予測し検索順位制御に利用
MLシステムの開発・運用課題 これらのシステムの開発・運用において多くの課題に直面 • システムの負荷が高い • 実環境での検証が困難 • … 以前は個別に対処してきたが、限界も見えてきた →
これまで直面した課題を列挙し、今後の議論の一助としたい 今回は2つの観点から整理を試みる • システムの構造や計算の特性に関わる課題 • 開発・運用の工程や組織体制に関わる課題
システムの構造や計算の特性に関わる課題
MLシステムの一般的特徴 • 入出力を決定する関数 (=モデル) がデータに依存 • ロジックがコードではなく数理モデル → ブラックボックス化の懸念 •
学習処理はスループット志向 ↔ 予測処理はレイテンシ志向
課題 学習のリソース消費量が大きい • スループットを出すために大量の CPU, GPU, RAM が必要 • 学習は一時的・定期的に発生
→ リソースを常に確保するのは無駄 ◦ 事業会社ではハードウェア買い切りがコストに見合わないことも アイデアと展望 • コンテナ技術等によるインフラの共通化・再利用 • ジョブスケジューリングによるリソースシェアリング • 従量課金型の IaaS / PaaS の利用
課題 予測のレイテンシを向上させにくい • Web利用に耐えうるオンライン予測の実現はハードルが高い ◦ 例 ユーザ特徴に基づいて動的に推薦アイテムを決定 • 処理のボトルネックが通常のシステムと異なる ◦
通常:データベースI/O, ネットワーク ◦ ML:画像・テキストなどの前処理,モデル内部の数値計算 アイデアと展望 • 一部の処理を queue-worker などで非同期化 • 部分的な事前計算・インデックス技術の活用
課題 処理の再現性が担保しづらい • データの時間・環境差異やノイズの混入により再現性が失われる ◦ 通常:開発環境と本番環境のDBは異なる ◦ ML:開発・検証時にも本番と同等のデータが必要 • 試験実行時のコンピューティング環境も同一が望ましい
アイデアと展望 • データウェアハウスの整備とデータソースの一元化 • クラウドサービスのアイドリングリソース活用 ◦ GCP: Preemptible Instance / AWS: Spot Instance
課題 コード実行を伴うテストや検証が大変 • 構造上、単体テストによる検証がしづらい ◦ Webサーバ:実行時間の短い関数を独立・並行実行 ◦ MLジョブ:実行時間の長い関数を依存・直列実行 • テストケースの整備にMLの専門知識が必要
◦ データのサイズや分布が異なると挙動が変わる ◦ アルゴリズムに対する数理的な理解が要求される • 一度のテスト実行に多大な時間とリソースが必要 アイデアと展望 • ソフトウェアの静的解析手法の応用 ◦ 出力の値域や計算量を実行前にある程度知りたい ◦ アルゴリズム実装の正しさの検証ができないか? • 現状は動的型言語 (Python, R, ...) が主流なので難しさも
開発・運用の工程や組織体制に関わる課題
Webサービス運営事業の一般的特徴 サービスのローンチ後に継続的なモニタリングと改善を行う • システムの運用と並行して開発とリリースが繰り返される • 拡張性・スケーラビリティを強く意識する必要がある ※ • ウォータフォールモデルよりアジャイル的手法が好まれやすい ※もちろん安定性・堅牢性を軽視してはならない
業態 Webサービス運営 システムインテグレーション 提供するもの サービス ソリューション 売上の発生 利用 納品・保守 顧客単価 比較的小 比較的大 顧客数 比較的多 比較的少
課題 実環境下でのオンライン評価が必要 • オフライン評価では精度指標は算出できてもビジネス効果は不明 • 実環境ではフィードバックループにより学習データ自体が変化 ◦ 例 レコメンドによる一部商品へのコンバージョンの偏り •
→ オフライン評価の結果が常に有用とは限らない アイデアと展望 • 実環境でのオンライン評価の仕組みの整備 ◦ スプリットテストによる統制実験 ◦ 段階的ロールアウトによる変化傾向の把握
課題 ソフトウェア品質が低くなりやすい • PoCでも実環境検証が必要 ↔ PoCではコードや設計に気を使えない ◦ MLの専門性 ≠ ソフトウェアエンジニアリングの専門性
• → 品質の低いソフトウェアの実環境投入による運用負荷 ◦ アプリケーション・インフラエンジニアが対応に追われる • → クリティカルな機能でのML利用が進みにくい ◦ 例 検索ランキングの動的制御, A/Bテストのパターン配信 アイデアと展望 • フェイルオーバーの仕組みの整備 ◦ MLが要求を満たせない → ヒューリスティクスでリカバリ • SLI / SLO / SLA の導入によるサービスレベルの明確化 ◦ 客観的指標があれば問題をトリアージしやすい
課題 モデル精度とビジネス収益の関係が不透明 • 精度がX%向上するとどの程度のビジネス収益につながるか? • みかけの精度向上の裏に重要な機会損失が潜むことも ◦ 例 検索の適合率が向上するも一部の高収益商品の順位が低下 アイデアと展望
• 実際のユースケースに即した評価指標の選定 ◦ 適合率 vs 再現率 ◦ ペアワイズ評価 vs リストワイズ評価 • 精度指標とビジネス指標の統合的なモニタリング
課題 プロジェクト・組織管理の方法論が未整備 • 異なるバックグラウンドのメンバーからなる混成チーム ◦ 高度な専門性が必要 ⇔ 属人化しやすい • 適当なプロジェクト管理の方法論が存在しない
◦ CRISP-DM※ はシステム開発・運用の観点が薄い アイデアと展望 • 組織・事業に応じた体制づくりはどこも模索中 • → まずは事例共有から ※https://en.wikipedia.org/wiki/Cross-industry_standard_process_for_data_mining
まとめ 事業会社でのMLシステムの開発・運用における課題を列挙・整理 • システムの構造や計算の特徴に関わる課題 ◦ 学習のリソース消費が大きい ◦ 予測のレイテンシを向上させにくい ◦ 処理の再現性が担保しづらい
◦ コード実行を伴うテストや検証が大変 • 開発・運用の工程や組織体制に関わる課題 ◦ 実環境下でのオンライン評価が必要 ◦ ソフトウェア品質が低くなりやすい ◦ モデル精度とビジネス収益の関係が不透明 ◦ プロジェクト・組織管理の方法論が未整備 今後の議論の一助になれば