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.

欠損値について

635 views

Published on

データの欠損値について。LT会用資料

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

欠損値について

  1. 1. ⽋損値の考察 2018年4⽉27⽇
  2. 2. ⾃⼰紹介 • ID: rysk • 仕事: インフラ・エンジニア • Python/機械学習 歴: 2017年秋から • Kaggle歴: 2018年4⽉から(まだタイタニック⽌まり)
  3. 3. はじめに • 前回終了した輪読本「Python機械学習プログラミング」の第4章 の会の時…… • ある⼈が⽋損値に関するLTをしてくれた(とても⾯⽩いLTだった)。 • 統計学やデータ分析初⼼者である⾃分はそのLTで⽋損値への対処 の⼤切さを(少し)知った。 • Kaggleのタイタニックチュートリアルを初めてみたら、もろ⽋損 値があるし! • ちょっと⽋損値について勉強してみた。
  4. 4. ⽋損値とは • Missing ValueあるいはMissing Dataの訳語。 • ⽋測値や⽋落値という訳語もある(⽋.?値で良いのでは?)。 • 要するに、集計したデータセット上にあるデータの⽋け、抜けの 事。 • ⽋損原因は⾊々。
  5. 5. ⽋損値の例 タイタニックデータの例、年齢と船室番号に⽋損がある
  6. 6. ⽤語 • 観測値: データの内、実際に観測されているもの。つまり ⽋損値以外のデータ。 • ⽋損値: データの中にある抜け。 • 完全データ: ⽋損値がないデータの集合 • 不完全データ: ⽋損値があるデータの集合
  7. 7. ⽋損の種類 原因によって、⽋損には3つの種類があります。 1. MCAR (Missing Complete At Random) 2. MAR (Missing At Random) 3. MNAR (Missing Not At Random)
  8. 8. MCAR • 完全にランダムな原因でデータが⽋損している状態。 • ⼿書きのアンケート⽤紙からデータベースに⼊⼒する際の 漏れとかが代表的な例。 • ⽋損値の中では⼀番対処が簡単。
  9. 9. MAR • 観測値に応じてデータが⽋損している状態。 • 例えば⼥性は体重や年齢を空⽩にしてアンケートを提出し やすい、といった状態。⼥性という観測値と、⽋損した体 重や年齢に関連がある。 • 幾つか対処法があり、かなり精度の良い⽅法もある。
  10. 10. MNAR • 観測値だけでなく⽋損値⾃体にも応じてデータが⽋損し ている場合。 • 例えば、年収が低い⼈ほどアンケートで年収の欄を空欄 にしがち、という状態。 • ⼀番対処が⼤変。モデルを⼯夫してMNARをMARに変えら れれば対処できる。
  11. 11. 有向グラフで表現 • x: 独⽴変数、⽋損なし • y: ⽬的変数、⽋損あり • r: yが⽋損している時1、そうでないとき0を取る確率変数
  12. 12. ⽋損値補完⽅法 • リストワイズ削除 • 単⼀代⼊法 • 多重代⼊法 • 機械学習的⼿法
  13. 13. リストワイズ削除 ⽋損値がある⾏ごと削除して、そのデータは使わずに推論す る⽅法。MCARであればこれで対処可能だけど、標本数が減 るので推定は悪化する。 名前 年齢 性別 ⾝⻑ レオナルド・ディカプリオ 22 男 181 ケイト・ウインスレット 21 ⼥ 169 ジェームズ・キャメロン 42 男 ⽋損 セリーヌ・ディオン 20 ⼥ 171 この⾏は削除
  14. 14. 単⼀代⼊法 1. ⽋損値を予測するモデルを1つ作る (回帰を例に) 2. そのモデルを使って⽋損値を推定 3. 推定結果で⽋損値を補完 4. 補完した完全データセットを使って本来の⽬的変数を推 定 y1 = wT 1 x
  15. 15. 単⼀代⼊法の問題点 • 1つの推定モデルから⽋損値を推定している。 • 従って補完した⽋損値の分散はゼロ。 • ⽋損した真のデータには分散があるはず。 • 補完した完全データは、真のデータに⽐べ分散が⼩さく なってしまう。 CT
  16. 16. 多重代⼊法 1. ⽋損値を予測するモデルを複数作る (m個とする) 2. それらm個のモデルから、m個の⽋損値を推定 3. m個の推定値を補完したm個の完全データセットを作る 4. m個の完全データセットそれぞれを使って、本来の⽬的変 数の推定値をm個得て、これを統合して1つの最終結果に する yi = wT i x (i = 1, 2, ..., m) CT
  17. 17. 多重代⼊法の概念図
  18. 18. 機械学習的⼿法(k-NN) y : ⽬的変数 x1: ⽋損のある独⽴変数 x2, x3: ⽋損のない独⽴変数 とした時、x1を⽬的変数としてx2、x3を独⽴変数としてk- NNを実⾏しx1を予測。 推定したx1で⽋損を補完した後yを推定。 k-NN以外だとランダム フォレストを使うもの もある
  19. 19. 本当はこの後
  20. 20. 単⼀代⼊でタイタニック • ⽋損値補完モデルは平均値代⼊ • Kaggleのカーネルでも良くみかける⽅法 • ⽣存予測のモデルはランダムフォレスト • 特徴量は適宜、ダミー変数化などする
  21. 21. 多重代⼊でタイタニック • ⽋損値予測モデルはMICE • ⽣存予測モデルはランダムフォレスト • 特徴量は適宜、ダミー変数化などする
  22. 22. k-NN代⼊でタイタニック • ⽋損値予測モデルはk-NN • ⽣存予測モデルはランダムフォレスト • 特徴量は適宜、ダミー変数化などする
  23. 23. という実践編を紹介 したかったけど
  24. 24. 今⽇はLTだし
  25. 25. 持ち時間も頃合い なので
  26. 26. 続きはWebで https://qiita.com/siseru
  27. 27. ご清聴 ありがとうございました。 ト書: ここで盛⼤な拍⼿がおこる
  28. 28. 参考⽂献 • ⽋測データ処理 Rによる単⼀代⼊法と多重代⼊法, ⾼橋将宜・渡辺美智⼦, 共⽴出版 • それを捨てるなんてとんでもない, https://www.slideshare.net/kato_kohaku/ imputation-of-missing-values-using-random-forest • Random Forest missing data algorithms, Fei Tang and Hemant Ishwaran, http://www.ccs.miami.edu/~hishwaran/papers/TI_SADM_2017.pdf • Missing Data with Chained Equations, Melissa J. Azur, Elizabeth A. Stuart, Constantine Frangakis, and Philip J. Leaf, https:// www.ncbi.nlm.nih.gov/pmc/articles/PMC3074241/ • keynoteに貼るSyntax Highlight, https://qiita.com/koudaiii/items/ 1a9503141212a2115485

×