SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
学習モデルの検証
Whoami
1
Name 栗原 健
Takeru Kurihara
Ruketa
From Okayama
TwitterSNS
Work Software
Developper
Field
Language C++, C#
CAD, CAM
Hobby Running
Trail Running Ruketa
@kuripoon
システム内での検証工程
2
検証予測アプリケーション 学習
モデル
ソース
コード
コンテナ
イメージ
CI / CD
データ
開発者
モデル
利用ログ
ユーザ登録データ・・・
予測
結果
リクエスト
実行
アルゴリズム
アルゴリズム
アルゴリズム
入力
実行
監視
各データの管理、処理実行、
デプロイなど、ML以外を担当
ここ!!
検証の役割
• モデルの良さを検証してモデル比較結果を出す
学習工程へフィードバックを与える
3
検証学習
アルゴリズム
アルゴリズム
データ
アルゴリズム
モデル
結果
モデル 問題
モデルとは
• データと出力の関係性(関係性)を表現する関数
– 例:下図のデータ(青点)から関数を近似したい
4
• 関数を近似出来たらデータと出力の
関係が定式化できる
Y = 𝐴𝑋 + 𝐶
• データと出力の関係を表す関数
>> モデル
• データと出力から関数を近似する
>> ①の「A」、「C」を推定する
>> モデル化(赤線が分かる)
• モデル化出来たらできること
• データのない部分を予測(緑点)
• データの分類(境界が分かるから)
AX + C < 0 or ≧ 0 で分類可能
・・・ ①
モデルの学習
• モデルのパラメータの最適な値を探すこと
5
Y = 𝐴𝑋 + 𝐶 モデル:アルゴリズム
パラメータ:初期値は適当
データ:学習用データ
初期状態 Y =
1
10
𝑋 + 0.7
データ
学習済み Y =
3
5
𝑋 + 0.1
学習
モデルの良さ
• 同じデータでもモデルは複数定義出来る
– 様々なモデルの中で良いモデルを選択したい
6
どれがいいモデルかな?
何を基準に選べばいいのかな?
どうやって選べばいいのかな?
万能なモデルはない
全部試して検証する
指標が必要
検証用データで実験
一番いいものを選ぶ
モデルの検証
7
• モデルの検証方法
– 学習用データを分割して検証用データとする
– 分割後の学習用データで学習を行い、検証用データで推論を行う
– 評価指標を計算して、モデルの推論性能を検証する
– 検証結果を比較してモデルを選択する
• データの種類
– 学習用:予め用意したデータ(データと結果のセット)
– 検証用:学習用データを分割して取り出したデータ
– 評価用:推論対象のデータ(未知のデータ)
• 注意点
– 初めに学習用データを全て使って学習モデルを作ってはいけない
– 性能を開発時に検証できない、モデルの選択ができない
任意の割合で分割
検証方法
• ホールドアウト
– 学習用データを学習・検証用に分割して学習モデルを作る
• 全体を任意の割合で分割
• 欠点
– 学習・検証のデータセットが1セットだけ
– 分割後のデータセットが元のデータと同じ分布でないと正しく検証
できない
– 検証用データが偶然良い結果が出せる分割状態かも。を拭い去れない
• 利点
– 学習・検証のデータセットが1セットで検証できる
– データ数が多い場合でも1回の検証でよい
8
学習用
7
検証用
3学習用データ
例 7 : 3 で分割
検証方法
• クロスバリデーション(交差検証)
– 学習用データをK個に分割して1つのを検証用、K-1個を
学習用データとする
• K個のデータグループでデータを入れ替えてK回の検証を行う
• 欠点
– K回の学習、検証を行うため計算コストが高い
– データ量が多く、計算量 >> 計算資源となると実質的に利用不可
• 利点
– 学習・検証のデータセットがK個できるので、K回の検証ができる
– K回の検証の平均を結果とするので最もらしい結果が得られる
9
データ1 データ4学習用データ データ2 データ3
データ1 データ4データ2 データ3
データ1 データ4データ2 データ3
データ1 データ4データ2 データ3
分割
K=4
検証結果
検証結果
検証結果
検証結果
結果
平均
モデルの評価指標
• 分類タスクにおける評価指標
– 分類タスクの例:工場ラインの不良部品検知
– 評価指標
• 正解率(accuracy)
• 適合率(recall)
• 再現率(precision)
• F1値(f1-measure)
• etc …
– 注意点
• 正解率は理解しやすいけど、良い指標ではない
• 例えば:不良品率1%の場合、全てOKと判断すれば
正解率 = 99% になる
OK
NG
2値分類タスク
混同行列(Confusion Matrix)
• 例題:工場ラインの不良部品検知
– 問題設定
• 良品/不良品の仕分けを自動でやりたい
• 不良品の出荷は避けたい
– 実験内容
• 部品を製造ラインへ100個流した
– 混同行列(結果)
11
OK
NG
正常品と予測 不良品と予測
正常品 90(真陽性:TP) 5(偽陰性:FN)
不良品 1(偽陰性:FP) 4(真陰性:TN)
混同行列(Confusion Matrix)
• 例題:工場ラインの不良部品検知
– 混合行列(結果)
12
OK
NG
正常品と予測 不良品と予測
正常品 90(真陽性:TP) 5(偽陰性:FN)
不良品 1(偽陽性:FP) 4(真陰性:TN)
精度
𝑇𝑃+𝑇𝑁
𝑇𝑃+𝐹𝑃+𝐹𝑁+𝑇𝑁
= 94%
全体の部品数
部品全体に対して
どれだけ正しく判定できたか
正常品と予測 不良品と予測
正常品 90(真陽性:TP) 5(偽陰性:FN)
不良品 1(偽陽性:FP) 4(真陰性:TN)
混同行列(Confusion Matrix)
• 例題:工場ラインの不良部品検知
– 混合行列(結果)
13
OK
NG
適合率
𝑇𝑃
𝑇𝑃+𝐹𝑃
= 99%
正常と判断した部品数
正常品と判断して
正しく正常品だった割合
正常品と判断しても、
1%間違えてる
正常品と予測 不良品と予測
正常品 90(真陽性:TP) 5(偽陰性:FN)
不良品 1(偽陽性:FP) 4(真陰性:TN)
混同行列(Confusion Matrix)
• 例題:工場ラインの不良部品検知
– 混合行列(結果)
14
OK
NG
再現率
𝑇𝑃
𝑇𝑃+𝐹𝑃
= 94.7%
全正常品数
正常品の中で正しく正常と
判断された割合
正常品の5.3%を不良品と
判断する
検証の流れまとめ
15
学習用データ
検証用データ
評価用データ
学習用データ
サンプリング
データ
ラベル
データ収集 学習 検証 予測
機械学習の流れ
データ
・ログデータ
・ネットから集めた画像
・アノテーション
・データ加工…
任意の割合で分割
学習用データ:モデル作成に使う
検証用データ:モデル検証に使う
評価指標
・新たに収集する
・学習用データとは
違う未知のデータ
・評価指標の値によって
モデルの性能確認
モデルの選択
などを行う
・評価指標の例:
・精度(正解率)
・再現率、適合率
・二乗誤差
実装
• 開発環境
– ライブラリ:pytorch、sklearn
– ツール:mlflow >> https://mlflow.org/
– IDE : VS Code、Jupyter Lab
• 処理の順番
• ソースコード
– https://github.com/Ruketa/ML_Study/tree/master/Validation
16
データ
取得
データ
分割
モデル
定義
誤差関数
最適化
定義
学習 評価
さいごに
• 学習モデル検証方法と関連用語を紹介しました
– 検証の必要性、何をするのか、全体の流れが少しでも
伝われば嬉しいです
• モデル検証まで是非実装してみてください
– 機械学習の全体像が理解しやすくなるかも
– 結局、手を動かさないと身につきません
• これだけで検証は完璧?
– まだまだやることたくさんあります
• CIで評価処理を実行する基盤づくり
• 評価結果の可視化
• 評価指標の検討(紹介した以外にも色々あるので)…
17
参考文献
• 書籍
– 仕事で始める機械学習
– kaggleで勝つデータ分析の技術
– 東京大学のデータサイエンティスト育成講座
– 作りながら学ぶ! PyTorchによる発展ディープラーニング
• データ分析コンペの参加
– Kaggle, Signate, atmaCup …
18
おわり
19

Mais conteúdo relacionado

Semelhante a 学習モデルの検証

ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-
ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-
ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-
Hironori Washizaki
 
Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Hironori Washizaki
 

Semelhante a 学習モデルの検証 (20)

ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-
ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-
ヒンシツ大学セミナー ゴール指向の測定と品質保証活動 -メトリクス解説およびGqm法のワークショップ-
 
Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善
 
Azure Machine Learning Hands-on - AutoML編 - 2020年1月
Azure Machine Learning Hands-on - AutoML編 - 2020年1月Azure Machine Learning Hands-on - AutoML編 - 2020年1月
Azure Machine Learning Hands-on - AutoML編 - 2020年1月
 
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
 
Neural Network Console delta_tokyo_#3
Neural Network Console delta_tokyo_#3Neural Network Console delta_tokyo_#3
Neural Network Console delta_tokyo_#3
 
AWS + MLflow + SageMakerの環境を動かしてみたお話
AWS + MLflow + SageMakerの環境を動かしてみたお話AWS + MLflow + SageMakerの環境を動かしてみたお話
AWS + MLflow + SageMakerの環境を動かしてみたお話
 
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
 
なぜ自社で脆弱性診断を行うべきなのか
なぜ自社で脆弱性診断を行うべきなのかなぜ自社で脆弱性診断を行うべきなのか
なぜ自社で脆弱性診断を行うべきなのか
 
Shared Questionnaire System Development Project
Shared Questionnaire System Development ProjectShared Questionnaire System Development Project
Shared Questionnaire System Development Project
 
概念モデリングによるビジネスの見える化とシステム開発のデジタルトランスフォーメーション.pptx
概念モデリングによるビジネスの見える化とシステム開発のデジタルトランスフォーメーション.pptx概念モデリングによるビジネスの見える化とシステム開発のデジタルトランスフォーメーション.pptx
概念モデリングによるビジネスの見える化とシステム開発のデジタルトランスフォーメーション.pptx
 
運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019]
運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019]運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019]
運用中のゲームにAIを導入するには〜プロジェクト推進・ユースケース・運用〜 [DeNA TechCon 2019]
 
DB TechShowcase Tokyo - Intelligent Data Platform
DB TechShowcase Tokyo - Intelligent Data PlatformDB TechShowcase Tokyo - Intelligent Data Platform
DB TechShowcase Tokyo - Intelligent Data Platform
 
Microsoft Open Tech Night: Azure Machine Learning - AutoML徹底解説
Microsoft Open Tech Night: Azure Machine Learning - AutoML徹底解説Microsoft Open Tech Night: Azure Machine Learning - AutoML徹底解説
Microsoft Open Tech Night: Azure Machine Learning - AutoML徹底解説
 
Azure machine learning service 最新の機械学習プラットフォーム
Azure machine learning service 最新の機械学習プラットフォームAzure machine learning service 最新の機械学習プラットフォーム
Azure machine learning service 最新の機械学習プラットフォーム
 
マトリックス型テキスト編集モデルによる編集操作ログの実際と分析方針
マトリックス型テキスト編集モデルによる編集操作ログの実際と分析方針マトリックス型テキスト編集モデルによる編集操作ログの実際と分析方針
マトリックス型テキスト編集モデルによる編集操作ログの実際と分析方針
 
【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用
【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用
【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用
 
よろしい、ならばMicro-ORMだ
よろしい、ならばMicro-ORMだよろしい、ならばMicro-ORMだ
よろしい、ならばMicro-ORMだ
 
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
 
鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎
鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎
鷲崎 メトリクスの基礎とGQM法によるゴール指向の測定 2014年12月18日 日本科学技術連名SQiP研究会 演習コースI ソフトウェア工学の基礎
 
エンジニアのための機械学習の基礎
エンジニアのための機械学習の基礎エンジニアのための機械学習の基礎
エンジニアのための機械学習の基礎
 

Último

Último (12)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 

学習モデルの検証