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.

いまさら聞けない機械学習の評価指標

42,938 views

Published on

現在は機械学習ライブラリが充実しており、また、教師データの獲得も容易になっています。
そのため、機械学習のビジネス利用への敷居が下がっています。

予測や分類といった問題を解く際には、設定した課題に対してどのモデルが最も適しているかを評価するための指標(評価関数)が必要になります。
Kaggle(([有名なデータサイエンスのコンペティション](https://www.kaggle.com)))などでは評価指標が定まっていますが、実ビジネスで機械学習を応用する際には自ら評価指標を設定する必要があります。
しかし、適切な評価関数を選ぶのは初学者には難しく、またビジネスの問題設定、目的意識によっても異なります。

さらに、オフラインでの予測はユーザの実際の行動予測とはギャップがある
場合もあります。

[1] Data-Driven Metric Development for Online Controlled Experiments: Seven Lessons Learned Xiaolin Shi*, Yahoo Labs; Alex Deng, Microsoft;
KDD '16
[2] 情報検索の基礎 Christopher D.Manning (著), Prabhakar Raghavan (著), Hinrich Schutze (著)
岩野 和生ら (翻訳), 共立出版 2012
[3] kaggle: https://www.kaggle.com/

そこで、多くある評価関数のうち代表的なものを幾つかをまとめました。

Published in: Engineering
  • Be the first to comment

いまさら聞けない機械学習の評価指標

  1. 1. いまさら聞けない機械学習の評価指標 大曽根 圭輔(Gunosy Inc.) 2016年 8月 3日 【FiNC×プレイド】Machine Learning Meetup #1
  2. 2. 自己紹介 大学時代はファジィ理論やってました 最近こどもが生まれました 進捗 トレーナーレベル: 20 捕まえた数81 プライベートでE2D3という 可視化のソフトウェア作ってて 総務大臣に表彰されました 大曽根 圭輔 @dr_paradi 博士 (工学)
  3. 3. 今日は評価指標の話 様々な機械学習ライブラリが充実、教師データの獲得も容易 になり機械学習のビジネス利用への敷居が下がった ユーザにとってよいモデルを選択するには何を最適化するか が重要 ≒ 評価関数の選定が重要 (目的関数の話じゃないよ) Kaggleなどでは評価指標が定まっているがビジネスで設定す るのは自分
  4. 4. 話したいこと ビジネスの問題設定によって評価指標は異なる さらに、オフラインでの予測はユーザの実際の行動予測とは ギャップがある場合もある 解こうとしている問題は何かを考え評価指標も常に改善しよう
  5. 5. 問題設定 機械学習やるにはやったけど、 この結果っていいの? 悪いの? 精度?とりあえずaccuracyつかっておけばよい?
  6. 6. よく見る分割表[2] 正解で正 正解で負 予測で正 真陽性 TP: True Positive 偽陽性 FP: False Positive 予測で負 偽陰性 FN: False Negative 真陰性 TN: True Negative
  7. 7. 正解率 正解で正 正解で負 予測で正 真陽性 TP: True Positive 偽陽性 FP: False Positive 予測で負 偽陰性 FN: False Negative 真陰性 TN: True Negative
  8. 8. 適合率 正解で正 正解で負 予測で正 真陽性 TP: True Positive 偽陽性 FP: False Positive 予測で負 偽陰性 FN: False Negative 真陰性 TN: True Negative
  9. 9. 再現率 正解で正 正解で負 予測で正 真陽性 TP: True Positive 偽陽性 FP: False Positive 予測で負 偽陰性 FN: False Negative 真陰性 TN: True Negative
  10. 10. 正解率でよいのでは?
  11. 11. 正解率? 正解で正 正解で負 予測で正 0 0 予測で負 1% 99%
  12. 12. !?
  13. 13. この場合には精度(accuracy)0.99 -> 適合率、再現率、F値は0 2値分類においては初めから正解もしくは不正解が多いの場 合には偽陽性が高くなってしまう -> 特に検索の問題で顕著 (ユーザが欲しいものは全体の中の一部) 適合率、再現率はトレードオフの関係にあるので AUCを使うことも多い (Are Under the Curve: ROC曲線の下の領域) 全部負と予測で精度99%?
  14. 14. それでいいのか?
  15. 15. Kaggle[3]の例を見てみよう
  16. 16. Ultrasound Nerve Segmentation Dice係数 Predicting Red Hat Business Value AUC (area under the ROC curve) Grupo Bimbo Inventory Demand RMSLE (Root Mean Squared Logarithmic Error) TalkingData Mobile User Demographics multi-class logarithmic loss Integer Sequence Learning accuracy Painter by Numbers AUC (area under the ROC curve) Active Competitionsの評価指標
  17. 17. Dice係数 AUC (area under the ROC curve) RMSLE (Root Mean Squared Logarithmic Error) multi-class logarithmic loss accuracy AUC (area under the ROC curve) 評価指標を紹介
  18. 18. Dice係数 集合の大きさの平均に対する共通集合の割合 • XとYが完全に一致するときに1になる • 文書間の類似度に用いることもある。 (Jaccard係数やSimpson係数も有名)
  19. 19. Y Dice係数 Kaggleのお題ではピクセルの位置を完全一致させると1 当然ながら予測集合を大きくすれば当たりやすくなるので、 的確にあてることのできるモデルを評価する Y X X 0.5/1.5 0.5/0.75 <
  20. 20. AUC ROC曲線の(ROC Curve)線の下の面積 (Area Under The Curve) ROC曲線はモデルのパラメータを変えた際の適合率と再現率 をプロットしたもの SVMなどのパラメータチューニングの際の グリッドサーチによく用いられる
  21. 21. RMSLE (標準二乗対数誤差) 対数をとった最小二乗誤差 • Root Mean Squared Logarithmic Error
  22. 22. RMS●Es Root Mean Squared Error Root Mean Squared Logarithmic Error • Root Mean Squared Percentage Error
  23. 23. それぞれの違い RMSLE は対数を取っているので一つの大きな間違いでの差が出にく い。RMSPEも割合なので同様 RMSEは外れ値に影響を受けやすい すべての店舗の売り上げ予測などでやたら売り上げが多いと ころがあると予測精度への影響が大きいなど (そもそもの分布が対数正規分布に近い)
  24. 24. Multi-class logarithmic loss 多クラス分類の際に使用。0に近いほうがよい yijは(0, 1) pijはモデルから出力された確率
  25. 25. Multi-class logarithmic loss この場合だと予測モデル2のほうが評価が高くなる 正解データ 予測モデル1 予測モデル2 クラス1 1 0.6 0.8 クラス2 0 0.3 0.1 クラス3 0 0.2 0.1
  26. 26. DCG ランキングアルゴリズムの評価に用いられる DCG -> 大きければいい
  27. 27. DCG ランキング 正解データ 予測モデル1 予測モデル2 1 1 1 0 2 1 0 0 3 1 1 1 4 1 0 1 5 0 0 1 DCG(1) = 4 + 2/log3 DCG(2) = 2/log3 + 1/log4>
  28. 28. nDCG • nDCG -> 標準化している • [0, 1]で標準化れているので比較がしやすい
  29. 29. 他にも 確率分布の場合 カルバックライブラーダイバージェンスなど
  30. 30. 淡々と述べてきたが 実ビジネスに応用する際には何を最適化するかの 問題設定が重要 ユーザ向けのモデル提供の場合 RMSEやnDCGなどはヒューマンファクタを考慮できていない [1] 例: 正解でないものを入れることでコンバージョンが上がったり …
  31. 31. ユーザ向けのモデル提供の場合 モデル作れば通せばなんとなくリストとかできる ユーザに見せる場合にはどのモデルがよいかの評価がいる ね ABテストなどと合わせてよりよい評価指標を作成
  32. 32. ブログ始めました http://data.gunosy.io
  33. 33. 参考 [1] Data-Driven Metric Development for Online Controlled Experiments: Seven Lessons Learned Xiaolin Shi*, Yahoo Labs; Alex Deng, Microsoft; KDD '16 [2] 情報検索の基礎 Christopher D.Manning (著), Prabhakar Raghavan (著), Hinrich Schutze (著) 岩野 和生ら (翻訳), 共立出版 2012 [3] kaggle: https://www.kaggle.com/

×