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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Intel0tw5727
November 16, 2019
Technology
0
270
ビジネス利用における長期的な学習モデルの評価
Intel0tw5727
November 16, 2019
Tweet
Share
More Decks by Intel0tw5727
See All by Intel0tw5727
PyConJP2021に行ってきたログ.pdf
intel0tw5727
0
16
読みやすいコードを書く技術
intel0tw5727
1
100
Other Decks in Technology
See All in Technology
Greatest Disaster Hits in Web Performance
guaca
0
300
配列に見る bash と zsh の違い
kazzpapa3
3
170
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
270
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
190
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
250
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
130
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
340
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
780
旅先で iPad + Neovim で iOS 開発・執筆した話
zozotech
PRO
0
100
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Color Theory Basics | Prateek | Gurzu
gurzu
0
200
BBQ
matthewcrist
89
10k
Done Done
chrislema
186
16k
How to Ace a Technical Interview
jacobian
281
24k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
WENDY [Excerpt]
tessaabrams
9
36k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
200
How to make the Groovebox
asonas
2
1.9k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Transcript
ビジネス利⽤における ⻑期的な学習モデルの評価 いんてる(@Intel0tw5727) © 2019 Chura DATA inc. PROPRIETARY &
CONFIDENTIAL.
Who am I?(お前誰) • いんてる(@Intel0tw5727) です。 • 県内⼩中⾼⼤を経て今年新卒で⼊社 • ちゅらデータの筋⾁アナリスト
• バーベル110kgスクワットできます • ダンベルプレス⽚⼿20kgできます • ⾃分の好きな筋⾁は上腕三頭筋 です © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL.
AGENDA © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. •
⻑期的な学習モデル開発に必要なもの • モデルをいろんな⽅⾯から評価する • ⾯倒なモデル評価を楽にする⽅法 今⽇話す内容
© 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. ⻑期的な学習モデル開発に必要なもの
趣味開発だとやりがちな評価例 • とりあえず精度指標だけを表⽰して判断する • 学習⽤・テスト⽤・評価⽤でデータを分割してればOK © 2019 Chura DATA inc.
PROPRIETARY & CONFIDENTIAL.
趣味開発だとやりがちな評価例 • とりあえず精度指標だけを表⽰して判断する • 学習⽤・テスト⽤・評価⽤でデータを分割してればOK © 2019 Chura DATA inc.
PROPRIETARY & CONFIDENTIAL. モデルは︖
ブラックボックスで済ませてはいけない • ビジネスでは作成したモデルが妥当である説明が必要 • なぜこのアルゴリズムが問題に適しているのか︖ • 予測結果は期待したものになっているのか︖ • 実サービスで収集されて増加するデータにも対応できるのか︖ •
ただ⾼精度なモデルを作るだけではいけない(戒め) © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL.
正しいフローで分析を回す • ⼀般的なモデル開発案件では納品で完了するが、⻑期的なモデル 開発では、増えたデータに対して継続的に更新を⾏う必要が、 ある。 © 2019 Chura DATA inc.
PROPRIETARY & CONFIDENTIAL.
⻑期的なモデル開発に必要なもの • モデルの問題を早期に発⾒できて改善できる仕組み • 学習データが偏っている可能性 • 前処理が適切に⾏われていない • 学習⼿法が悪い •
パラメータチューニングに失敗している • 各フローでの評価するポイントについて話します。 © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL.
© 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. モデルをいろんな⽅⾯から評価する
(機械学習)特徴量に注⽬した評価 • 基本的な前処理を⾏った特徴量をベースに、新しい特徴量を 加える前後で精度変化を⾒る。 • 例: 体重を予測するために「炭⽔化物」の特徴量の有無で精度変化を⾒る © 2019 Chura
DATA inc. PROPRIETARY & CONFIDENTIAL. 精度:50% 精度:80% 精度が向上︕
(機械学習)特徴量に注⽬した評価 • 決定⽊アルゴリズムなどでは特徴量が分岐する⽊に何回 使⽤されたかを数えることで寄与度を測る⽅法もある。 © 2019 Chura DATA inc. PROPRIETARY
& CONFIDENTIAL. 決定⽊の学習結果を可視化 分岐に使⽤された回数
⼿法に注⽬した評価 • 学習に使⽤する⼿法を複数⽤意し、それぞれに最適化された ハイパーパラメータとその結果を同じ精度指標で⽐較する。 © 2019 Chura DATA inc. PROPRIETARY
& CONFIDENTIAL.
⼿法に注⽬した評価のポイント • 学習とチューニングに時間がかかるため、開発時間が限られている 場合はミニマムな環境でサイクルを回す必要がある。 • データを最⼩限にして事前にどれくらいの精度が出せるかを確認する (数万あるデータを数百程度で回してみる) • 学習回数を制限する (数⼗回程度を最⼤として学習を回す)
• グリッド・ランダムサーチを制限する (試⾏するパラメータを減らす・ランダムサーチの試⾏回数を減らす) © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL.
パラメータに注⽬した評価 • 学習に使⽤する⼿法を統⼀して、複数のパラメータチューニング 結果を⽐較する⽅法 © 2019 Chura DATA inc. PROPRIETARY
& CONFIDENTIAL. 学習率(learning_late) 分岐する⽊の数(n_estimators) に注⽬してパラメータ評価を ⾏うことで、サイクルを回す 過程で局所解に陥ることを 避けるような働きがある
パラメータに注⽬した評価のポイント • 収集して増え続けるデータでの学習に対して、データの異常検知を ⾏うことができる。 • 最適化されたパラメータを固定して、データを増える前後で学習させる ことで予期しない情報を含んだデータが増えているかを検知できる © 2019 Chura
DATA inc. PROPRIETARY & CONFIDENTIAL. 学習率 = 0.05 分岐⽊数 = 1024 データ数 = 10000 学習⽇ = 2019-10-15 学習率 = 0.05 分岐⽊数 = 1024 データ数 = 15000 学習⽇ = 2019-11-15 学習率 = 0.05 分岐⽊数 = 1024 データ数 = 20000 学習⽇ = 2019-12-15 精度: 85% 精度: 87% 精度: 69%
© 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. ⾯倒なモデル評価を楽にする⽅法
MLFlowがおすすめ • 機械・深層学習フローにおいて実⾏環境・パラメータ・評価結果 などの管理を⾏うライブラリ © 2019 Chura DATA inc. PROPRIETARY
& CONFIDENTIAL. 今回の話はTrackingの機能
パッとみてパラメータの変化を知ることができる © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. ・試⾏内容
・使⽤パラメータ ・評価指標 が表で⼀⽬ みるだけで わかる︕
理想的な開発環境 • これをDockerでドカドカしたい (希望・これからやる・コーナーで差をつけろ) © 2019 Chura DATA inc. PROPRIETARY
& CONFIDENTIAL. 分析環境 コード管理 ワークフロー管理 学習モデル・パラメータ保存 モデル・パラメータ管理
© 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL. まとめ
⻑期的にモデルを評価すること • モデルの問題を早期に発⾒できて改善 • 経験則ではなくデータやモデルに基づいて修正できる • モデルの性能が良い・悪い根拠を様々なフローから解き明かす • ブラックボックスを少しでも解き明かすことで、⾃分の作ったモデルに ⾃信が⽣まれる
• MLFlowを使うことでグラフィカルに性能評価ができる • 現状MLFlowを使っているだけなので、もっと便利な学習マネジメント ライブラリが出たら触ってみたいな © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL.
⼒がほしいか・・・ • ちゅらデータでは筋⾁アナリストを募集中︕((( • 健康的な体を⼿に⼊れながら、データ分析もできる︕ • もれなくintelが⾷事から運動まで全⾯サポートします • データ分析に興味があるなら、⾃分の⾝体のデータを集めて 分析してみませんか︖
• 不定期ですがだいたい隔週⽊曜⽇に筋トレ会をしているので、 興味がある⽅は懇親会でお声がけください︕ © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL.
ビジネス利⽤における ⻑期的な学習モデルの評価 ご清聴ありがとうございました © 2019 Chura DATA inc. PROPRIETARY &
CONFIDENTIAL.
Appendix • 超細かく説明してくれる神参考リンク • mlflowを使ってデータ分析サイクルの効率化する⽅法を考える • https://qiita.com/masa26hiro/items/574c48d523ed76e76a3b • MLflow 1.0.0
リリース︕機械学習ライフサイクルを始めよう︕ • https://qiita.com/fam_taro/items/155912068ff475a53e44 • 機械学習で泣かないためのコード設計 • https://www.slideshare.net/takahirokubo7792/2018-97367311 © 2019 Chura DATA inc. PROPRIETARY & CONFIDENTIAL.