Upgrade to Pro — share decks privately, control downloads, hide ads and more …

分析の基礎(モデリング)/ Basics of analysis ~modeling~

BrainPad
September 06, 2019

分析の基礎(モデリング)/ Basics of analysis ~modeling~

株式会社ブレインパッドの2019年新卒研修資料です。モデリングに関する基本的な内容を扱っています。

BrainPad

September 06, 2019
Tweet

More Decks by BrainPad

Other Decks in Technology

Transcript

  1. Analytics Innovation Company ©BrainPad Inc. 1 ⽬次 1. モデリングの考え⽅ 1-1.

    AIと機械学習/統計モデリング 1-2. AIの概念的分類 1-3. 分析の全体的な流れ 1-4. モデルとは 1-5. モデリングにおける基礎知識 1-6. モデリングにおける⼼構え 2. 確率分布 2-1. 確率分布とは 2-2. 確率分布の種類 3. 教師あり学習 3-1. 教師あり学習とは 3-2. 線形モデル 3-3. ⼀般化線形モデル 3-4. パラメータの求め⽅ 3-5. 決定⽊ 3-6. アンサンブル学習 3-7. ニューラルネットワーク 3-8. モデルの評価 4. モデルの精度を上げるための⼯夫 4-1. 標準化・正則化とは 4.2. 正則化 4-3. 不均衡データの対応 4-4. ハイパーパラメータの調整 5. 教師なし学習 5-1. 教師なし学習とは 5-2. 次元圧縮 5-3. クラスタリング 概要 5-4. データの距離・類似度 5-5. 階層的クラスタリング 5-6. ⾮階層的クラスタリング
  2. Analytics Innovation Company ©BrainPad Inc. 2 0-3. 本研修の流れ モデリングの考え⽅ 1

    モデリングとは何かを学びます 確率分布 2 統計・機械学習の基礎である確率分布について学びます 教師あり学習 3 モデルのうち、教師あり学習について学びます モデルの精度を上げるための⼯夫 4 教師あり学習の精度を上げるための⼯夫を学びます 教師なし学習 5 モデルのうち、教師なし学習について学びます
  3. Analytics Innovation Company ©BrainPad Inc. 4 1-1. AIと統計・機械学習モデリング 1 「⼈⼯知能」という⾔葉は、様々な概念と⼿法を包括する

    ⼈⼯知能 指し⽰す範囲は幅広い 計算機による、⼈間の知能の実現の試み。 機械学習 ⼈⼯知能研究の中核 画像・⾳声認識など⼈間の学習および 作業を機械で実施する試み。 深層学習 機械学習の⼿法の⼀つ 画像・⾳声認識の分野での ブレイクスルーを起こした。 ⾃動で特徴を学習する。 ⾼精度の識別が可能。 • ⼈⼯知能(AI)は古くからある研究分野。 計算機で⼈間の知能を再現すること掲げている。 • 機械学習は⼈⼯知能の中核技術。 画像・⾔語認識など⼈間の⾏いを計算機に 学習させて⾃動化する。 • 深層学習は機械学習における⼿法の1つ。 近年⼤いに注⽬されている。 ひとまとめに⼈⼯知能という⾔葉がバズワードとして出回っている。
  4. Analytics Innovation Company ©BrainPad Inc. 5 1-1. AIと統計・機械学習モデリング 2 AI、機械学習、統計モデリングは約100年程度の歴史の中で

    実⽤レベルに発達してきた 1900年代はじめ 推測統計学の発⾜ 1960年代 第1次AIブーム (推論と探索) 2006年 深層学習の登場 第3次AIブーム到来 1950年代 ベイズ統計学の台頭 「機械学習」の登場 「⼈⼯知能」の登場 1980年代 第2次AIブーム (エキスパートシステム) 2010年代~ 特定のタスクについては ⼈間以上の精度を達成
  5. Analytics Innovation Company ©BrainPad Inc. 6 強いAI ⼈⼯汎⽤知能 合成知能 研究段階

    ・ヒューマノイド(?) 弱いAI 特定の課題解決 実証実験段階 ・⾃動運転 ・AlphaZero 実⽤段階 ・⾃動翻訳 ・画像認識 ・異常検知 ・予測・最適化 ※松尾豊「⼈⼯知能は⼈間を超えるか」を参考にブレインパッド作成 画像出典︓ https://waymo.com/journey/ https://deepmind.com/blog/alphazero-shedding-new-light-grand-games-chess-shogi-and-go/ https://cloud.google.com/products/ai/ ビジネスで 取り扱う範囲 1.2 AIの概念的分類 Image by Gerd Altmann from Pixabay
  6. Analytics Innovation Company ©BrainPad Inc. 7 1.3 AIが適⽤されている分野 画像出典: ・

    Howard, Andrew G., Zhu, Menglong, Chen, Bo, Kalenichenko, Dmitry, Wang, Weijun, Weyand, Tobias, Andreetto, Marco and Adam, Hartwig MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications. (2017). , cite arxiv:1704.04861 . ・ https://github.com/amueller/word_cloud 最適化問題 画像認識 将来予測/要因把握 ⾃然⾔語認識 適⽤される⼿法 膨⼤な組み合わせの中から、 ある条件の下で⽬的関数を 最⼤・最⼩にする解を求める 問題。利益最⼤化やコスト 最⼩化に応⽤される。 過去データから確率モデルを 構築することで、事象の将来 予測や要因の分析を実施す る。 画像から被写体の状況を 把握し、意思決定や⾃動化 に役⽴てる。 ⼈間が⽇常的に使⽤する ⾔葉をコンピュータに認識させ、 ⽂章のカテゴリ分けや、⽂章 の評価などを⾏う • 数理最適化 活⽤されている領域 • ⼈/モノのリソース分配 適⽤される⼿法 • ⾃然⾔語処理 • 深層学習(LSTMなど) 活⽤されている領域 • 嗜好性把握 • 会話ロボット 活⽤されている領域 • レントゲン診断⽀援 • 空撮測量サービス 適⽤される⼿法 • 画像処理 • 深層学習(CNNなど) 活⽤されている領域 • 需要予測 • 宣伝効果把握 • コスト要因分析 適⽤される⼿法 • 回帰モデル • 分類モデル • クラスタリング
  7. Analytics Innovation Company ©BrainPad Inc. 8 1.3 分析の全体的な流れ 1/2 データ取得からモデル作成までの流れは以下のようなものになる

    ⽬的に応じたデータの加⼯、各種変数作成を⾏うため、データの理解と定義作成が重要となる データC 加⼯ データB 加⼯ データA 加⼯ データC データ及びビジネス理解・選択・加⼯ データマート作成 データB データA … … … データC 選択 データB 選択 データA 選択 モデル作成 データ 取得 説明変数 x1 x2 x3 … 0.7 1 A 0.8 0 B 1.2 1 A … … … 正解データ Y 0.1 0.3 0.2 … データC 理解 データB 理解 データA 理解 … n データ受領 分析設計(仮説) に基づき、必要な データを取得する。 n データの理解と定義作成 データを理解することにより分析設計(仮説)を更新する。 各データの投⼊⽬的に沿って適切な定義を⾏う。 n データの加⼯ 各データの定義に従い、適切な加⼯(説明変数、 ⽬的変数の作成など)を施す。 n データマート作成 分析の⽬的に応じて、適切な形にデータを 整形して保持する。 例えば教師あり学習の場合は、分析対象の ⽬的変数に対して、各説明変数を横持ちで 保持する。この場合、1⾏がモデル作成のため の1サンプルになる。
  8. Analytics Innovation Company ©BrainPad Inc. 9 1.3 分析の全体的な流れ 2/2 データ受領からモデル作成までの流れは以下の通りである

    モデル作成 データ 取得 n データ受領 分析設計(仮説) に基づき、必要な データを取得する。 n モデリング 作成したデータマートを⽤いて、⽬的に沿った モデリングを⾏う。 n 結果評価 意図した⽬的がかなっているか、指標の利⽤や 可視化によって定量的に評価する。 n 改良点の検討 評価結果から改善の可能性を検討する。必要 に応じてデータを取得・加⼯しモデルを更新する。 結果評価・改良点の検討 データC データB データA … … … ▪ モデルからの出⼒を評価 モデル① モデル② モデル y = F(x1,x2,x3…)
  9. Analytics Innovation Company ©BrainPad Inc. 10 1-4. モデルとは 現象の⼀部を簡略的に表現したものである •

    例えばビジネスの構造を模式的に表現したものをビジネスモデルと呼ぶ。 • 複雑な現象をそのまま扱うのではなく、現象を特徴づける重要な要因や構造のみを 表現することで、その現象の仕組みや特性を理解することが容易になる。 • AI、機械学習、統計モデリングは現象の構造を数理モデルとして記述していく。 社会は様々な現象の複合体 ⼀部の現象だけを切り取る 数理モデルとして記述 y x z 0.08 2.06 2.08 ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ 観察可能な現象をデータとして収集
  10. Analytics Innovation Company ©BrainPad Inc. 11 1-4. 統計モデリングとは 確率モデルをデータに当てはめて、現象の理解と予測を促す営みである 統計モデリングは以下のようなプロセスに沿って⾏われる。

    1. 現象を完全に記述するような真の確率分布の存在を仮定する。 2. 観測可能なデータから、最も当てはまりの良さそうな確率モデルを特定する。 3. 特定した確率モデルがどの程度現象を表しているのか、その妥当性を検討する。 4. 特定した確率モデルから、現象の理解や将来の予測を⾏う。 真の確率分布 未知の確率分布 データ 観測 特定した確率モデル 推測 データと 特定した確率モデルの⽐較 妥当性 理解・予測 1 2 3 4
  11. Analytics Innovation Company ©BrainPad Inc. 12 1-4. 機械学習モデリングとは 統計モデリングに⽐べて解釈性よりもモデルの予測精度を重視している •

    統計・機械学習の違いについてのコンセンサスは未だ取れていない。 • 強いて上げるならば、統計モデリングは⼈間にとっての解釈に重きを置き、 機械学習モデルは予測精度に重きを置いていると⾔えるだろうか。 AUC 97% 機械学習モデリングは解釈性に乏しくとも、結果の精度が⾼ければ良い︖
  12. Analytics Innovation Company ©BrainPad Inc. 13 1-5. モデリングにおける基礎知識 モデリングを⾏うためには、以下の様々な項⽬について知識を⾝に付ける必要がある 正規分布

    ポアソン分布 ⼆項分布 教師あり学習 教師なし学習 ⼀般化線形モデル クラスタリング 決定⽊ 離散・連続 分類・回帰 確率分布 妥当性を 向上させる⼿法 確率モデルを 特定する⼿法 問題の型 妥当性を 評価する⽅法 混同⾏列 分類 AUC 回帰 MAE MAPE 正則化 Hold-out法 パラメータ最適化 参考: https://optuna.org https://scikit-learn.org
  13. Analytics Innovation Company ©BrainPad Inc. 14 1-6. モデリングにおける⼼構え 1 判別・予測の精度は100%ではない

    強みを発揮するにはデータが重要 不向きな問題もある 100%の予測精度の達成はほとんど不可能である ü どれだけ効果的な法則が⾒つけられたとしても、データにはばらつきがあるため、 判別や予測の結果と実際の結果はある程度のずれを持つ。 統計や機械学習は魔法の杖ではない ü 統計・機械学習モデルは、どのような望みでも叶えられる魔法の杖に思われがちであるが、 決してそのようなものではない。 ü 課題に対して適切なモデリングを⾏わなければ、望ましい結果は得ることはできない。
  14. Analytics Innovation Company ©BrainPad Inc. 15 1-6. モデリングにおける⼼構え 2 判別・予測の精度は100%ではない

    強みを発揮するにはデータが重要 不向きな問題もある 良い予測や判別を⾏うためにはデータに条件がある ü データの量が⼗分である。 • 時系列データに対して季節性を考慮するならば、数年分のデータが必要となる。 • 複雑な⼿法が⼗分な性能を発揮するためには、相応のデータの量が必要である。 ü 予測対象が適切に含まれている。 • ある商品の購⼊者を予測する場合、購⼊者だけでなく⾮購⼊者の情報も必要である。 ü 判別や予測を⾏うために必要な情報が含まれている。 • 気温に応じて売れやすくなる商品があったときに、気温の情報がデータとして 取得できていなければ、気温による推測を⾏うことができない。
  15. Analytics Innovation Company ©BrainPad Inc. 16 モデリングはどのような問題でも解けるものではない 1-6. モデリングにおける⼼構え 3

    判別・予測の精度は100%ではない 強みを発揮するにはデータが重要 不向きな問題もある ü そもそも判別や予測のできない問題や、現在は適応の難しい問題もある。 • 偶発的に起こるもの o サイコロの出⽬、ルーレットの出⽬、コイントスの表裏 • 現象が起こるメカニズムが⾼度に複雑であるもの o 地震の発⽣の予測、メガヒット商品の発⽣の予測、超⾼額購⼊顧客の発⽣の予測 • 過去にデータが無いもの o 全く新しい施策の効果の予測、全くの新商品の販売数の予測
  16. Analytics Innovation Company ©BrainPad Inc. 18 2-1. 確率分布とは 確率分布とは確率変数 =

    のとり得る値と、出現確率( = )を対応付けたものである 確率変数X とりうる値 2 3 4 5 6 7 8 9 10 11 12 出現確率 P(X=xi ) 1/36 2/36 3/36 4/36 5/36 6/36 5/36 4/36 3/36 2/36 1/36 サイコロを2つ振ったときの出た⽬の和の確率分布 「サイコロを2つ振ったときの出た⽬の和」の場合
  17. Analytics Innovation Company ©BrainPad Inc. 19 2-1. 確率分布とは 離散型と連続型 確率変数には離散型と連続型の2種類がある

    • 離散確率分布を関数として記述したもの → 確率質量関数 • 連続確率分布を関数として記述したもの → 確率密度関数 確率質量関数 離散型確率分布 (広告のクリック数、流星の数など) 連続型確率分布 (⾝⻑、気温、売上など) 確率密度関数
  18. Analytics Innovation Company ©BrainPad Inc. 20 2-1. 確率分布とは 離散 離散型確率分布を関数として表現したものを確率質量関数と呼ぶ

    サイコロを2つ振ったときの出た⽬の和 確率質量関数は以下の条件を満たす。 • 離散型確率変数の確率(=)を関数()で表現したものである。 確率変数X とりうる値 2 3 4 5 6 7 出現確率 P(X=xi ) 1/36 2/36 3/36 4/36 5/36 6/36 確率変数X とりうる値 8 9 10 11 12 出現確率 P(X=xi ) 5/36 4/36 3/36 2/36 1/36 具体例: サイコロを2つ振ったときの出た⽬の和 総和 1
  19. Analytics Innovation Company ©BrainPad Inc. 21 2-1. 確率分布とは 連続 連続型確率分布を関数として表現したものを確率密度関数と呼ぶ

    標準正規分布での例 2 = −1, 1 = −2としたのときの確率は0.138である 確率密度関数を、任意の区間で積分することで 区間の確率 (1 < < 2 )を求める。 • 確率変数が連続値の場合、離散値をとる場合と異なり、 任意の = について( = ) = 0となるため、確率を直接求めることはできない。 • 確率を求めるためには、以下を条件を満たす確率密度関数()を積分する必要がある。 0.138 確率密度関数は以下の条件を満たす。 右図では2 = −1, 1 = −2としたのときの確率を求めている。
  20. Analytics Innovation Company ©BrainPad Inc. 22 2-2. 確率分布の種類 確率分布の性質が統計学・機械学習において重要なものが多くある 正規分布

    ポアソン分布 ⼆項分布 • ここでは代表的な3つの確率分布の例を列挙する。 • 以下に述べている確率分布は後に説明する⼀般化線形モデルで重要な役割を果たす。 • Wikipediaに主要な確率分布とその関係性を表した図*があるので参考にされたい。 参考: *https://en.wikipedia.org/wiki/Relationships_among_probability_distributions
  21. Analytics Innovation Company ©BrainPad Inc. 23 特徴 • 連続型 •

    定義域: • ⺟数: 期待値、分散2 • 期待値は分布の中⼼を表す • 分散が⼤きいほど、すその⻑い形となる 2-2.確率分布の種類 正規分布 ⾃然界の多くの現象が従うと⾔われる代表的な確率分布 • 左右対称な釣鐘型をしている。ガウス分布(Gaussian distribution)とも呼ばれる。 • 統計・機械学習分野では数学的に扱いやすいために、よく⽤いられる。 確率密度関数 期待値 分散 期待値と分散2の値を変えたときの形状
  22. Analytics Innovation Company ©BrainPad Inc. 24 期待値 2-2.確率分布の種類 ポアソン分布 稀な事象の発⽣回数や計数データのモデリングに使われる確率分布

    • 時間あたりのWebサーバへのアクセス数、時間あたりの流星の数などはポアソン分布に従う。 特徴 • 離散型 • 定義域: 0 以上の整数 • ⺟数: 平均 • 平均と分散が等しい (= ) • 平均が⼤きくなるほど、正規分布の形に近づく の値を変えたときの形状 確率密度関数 分散
  23. Analytics Innovation Company ©BrainPad Inc. 25 2通りの結果をもつ試⾏を繰り返したとき、⼀⽅が何回起こるかを表す確率分布 • 表が出る確率 p

    のコインを 回投げたときに表が出る回数は、⼆項分布に従う。 2-2.確率分布の種類 ⼆項分布 期待値 特徴 • 離散型 • 定義域: 0 以上の整数 • ⺟数: 試⾏回数、成功確率 • 分散が期待値に依存 確率密度関数 分散 試⾏回数と成功確率の値を変えたときの形状
  24. Analytics Innovation Company ©BrainPad Inc. 27 3-1. 教師あり学習とは 1 出⼒と⼊⼒が対応したデータからモデリングを⾏う⼿法の総称である

    • 望ましい出⼒(教師)と、それに対応する⼊⼒データを⽤いてモデリングを⾏う⽅法である。 • ⽣成したモデルは、任意の⼊⼒データに対して予測した出⼒を返す。 y x1 x2 x3 90 14.2 0.352 1 130 19.8 0.174 0 101 16.1 0.911 0 118 17.3 0.838 1 望ましい 出⼒ ⼊⼒データ y x1 x2 x3 ypred 15.0 0.7 1 予測された 出⼒ 任意の⼊⼒データ 左表では、yが望ましい出⼒データ、x1~3が⼊⼒データである。 これらのデータを使って、出⼒yを予測するように学習されたモデルを⽣成する。 右表は任意の⼊⼒データに対して、予測した出⼒を返しているイメージである。
  25. Analytics Innovation Company ©BrainPad Inc. 28 3-1. 教師あり学習とは 2 回帰問題と分類問題に別けられる

    • モデリングの⽬的によって、回帰と分類を使い分けることになる。 回帰 分類 ⽬的 具体例 ⼿法例 連続値の予測 クラスラベルの予測 • 需要量の予測 • 年収の予測 • スパムメール判定 • ファッションブランド の識別 • 重回帰 • 決定⽊ • ニューラルネットワーク • ロジスティック回帰 • 決定⽊ • ニューラルネットワーク
  26. Analytics Innovation Company ©BrainPad Inc. 29 3-2. 線形モデル ⽬的変数と説明変数の関係を線形の形で表したモデルである •

    説明変数が2つ以上のとき、多重回帰モデルと呼ぶ。 • また説明変数が⾮線形な関係を持っていても、予測⼦が線形であれば線形モデルである。 線形予測⼦ • 以下の式の右辺を予測⼦という。
  27. Analytics Innovation Company ©BrainPad Inc. 31 3-3. ⼀般化線形モデル ⽬的変数の確率分布が特定の分布従うときに⽤いられるモデリングの名称 •

    Generalized Linear Model (GLM)とも呼ばれる。 • よく⽤いられるものに線形回帰・ポアソン回帰・ロジスティック回帰がある。 • ⽬的変数が特定の確率分布に従うことが仮定されるときに⽤いられる。 • ⽬的変数と線形予測⼦の関係を、⽬的変数の確率分布に対応した連結関数(リンク関数)を⽤いて表現する。 • 既に述べた線形モデルは、⼀般化線形モデルの1つとして捉えられる。 ü 線形モデル ü ⼀般化線形モデル • 線形モデルでは⽬的変数と線形予測⼦の関係が恒等連結関数で表現されている。 連結関数 線形予測⼦
  28. Analytics Innovation Company ©BrainPad Inc. 32 3-3-1. ⼀般化線形モデル: 重回帰 1

    ⽬的変数の分布が正規分布に従うと仮定できるときに⽤いられる • ⽬的変数に正規分布を仮定している。 • 連結関数は恒等連結関数を⽤いることが⼀般的である。 • 最も多く使われる回帰の⼿法である。 ⼀般化線形モデルの種類 ⽬的変数の分布 連結関数 重回帰 正規分布 恒等関数 () =
  29. Analytics Innovation Company ©BrainPad Inc. 33 3-3-1. ⼀般化線形モデル: 重回帰 2

    重回帰モデルの具体例 crime poverty single 761 9.1 14.3 780 17.4 11.5 593 20 10.7 715 15.4 12.1 1078 18.2 12.5 567 9.9 12.1 456 8.5 10.1 … … … モデルは以下に形になり、データを⽤いて各の値を求める。 実際にデータを⽤いての値を求めると以下のようになる。 このモデルを解釈すると、例えばpovertyに着⽬した場合は以下のようになる。 「他の説明変数の値を固定した際に、貧困ラインを下回る⼈々が1%上昇すると、 10万⼈あたりの暴⼒犯罪の発⽣件数は6.8件増加する」 データについて 右表のデータは1993年のアメリカで発⽣した犯罪についてまとめたものである。(⼀部抜粋) ワシントンD.C.を含めた51の州ごとの犯罪件数と、州ごとの特徴をまとめたものである。 ⽬的変数を州ごとの10万⼈あたりの暴⼒犯罪件数(crime)として、 説明変数を州あたりの貧困ライン*を下回る⼈々の割合(poverty)と、 ⽚親の割合(single)として回帰を⾏う。 望ましい 出⼒ ⼊⼒データ *貧困ラインとは貧困層を⽅法の1つである。ここではある個⼈が1⽇あたりの収⼊・⽀出がある額以下であることを⽰している。 基準は時代・計測⽅法によって異なる。詳細については割愛する。 出典: https://stats.idre.ucla.edu/r/dae/robust-regression/
  30. Analytics Innovation Company ©BrainPad Inc. 34 3-3-2. ⼀般化線形モデル: ポアソン回帰 1

    ⽬的変数の分布がポアソン分布に従うと仮定できるときに⽤いられる • ⽬的変数にポアソン分布を仮定している。 • 連結関数は対数関数を⽤いることが⼀般的である。 • ⾮負の整数値をとるカウントデータに対するモデリングとして利⽤される。 ⼀般化線形モデルの種類 ⽬的変数の分布 連結関数 ポアソン回帰 ポアソン分布 対数関数 () = ln()
  31. Analytics Innovation Company ©BrainPad Inc. 35 3-3-2. ⼀般化線形モデル: ポアソン回帰 2

    ポアソン回帰モデルの具体例 awards math ac vo 0 41 0 1 3 60 1 0 0 51 1 0 0 35 0 0 1 49 0 0 2 62 1 0 0 43 0 0 … … … … このモデルを解釈すると、例えばmathに着⽬した場合は以下のようになる。 「他の説明変数の値を固定した際に、数学の試験の点数が1点上昇すると、 ⽣徒が表彰される回数はexp(0.07) = 1.07倍増加する。」 同様にacに着⽬すると、以下のようになる。 「他の説明変数の値を固定した際に、⼤学に進学した⽣徒は、 表彰された回数がexp(1.08) = 2.94倍⾼かった。」 データについて 右下表のデータは、 架空のデータである。 ⽬的変数はある学校の⽣徒が学校で表彰された回数(awards)として、 説明変数は、⽣徒の数学の試験の点数(math)と⽣徒の選んだ進路を表す。 (acは⼤学進学、voは職業訓練校進学を表す変数である。) モデルは以下に形になり、データを⽤いて各の値を求める。 実際にデータを⽤いての値を求めると以下のようになる。 望ましい 出⼒ ⼊⼒データ 出典: https://stats.idre.ucla.edu/r/dae/poisson-regression/
  32. Analytics Innovation Company ©BrainPad Inc. 36 3-3-3. ⼀般化線形モデル: ロジスティック回帰 1

    ⽬的変数の分布が⼆項分布に従うと仮定できるときに⽤いられる • ⽬的変数に⼆項分布を仮定している。 • 連結関数はロジット関数を⽤いることが⼀般的である。 • DMに対する購買反応の有無などの⼆値を予測するようなモデリングに⽤いる。 ⼀般化線形モデルの種類 ⽬的変数の確率分布 連結関数 ロジスティック回帰 ⼆項分布 ロジット関数 () = ln( ⁄ 1 − )
  33. Analytics Innovation Company ©BrainPad Inc. 37 3-3-3. ⼀般化線形モデル: ロジスティック回帰 2

    ロジスティック回帰モデルの具体例 admit sc gpa r1 r2 r3 0 380 3.61 0 0 1 1 660 3.67 0 0 1 1 800 4 1 0 0 1 640 3.19 0 0 0 0 520 2.93 0 0 0 1 760 3 0 1 0 1 560 2.98 1 0 0 … … … … … … このモデルを解釈すると、例えばR1に着⽬した場合は以下のようになる。 「他の説明変数の値を固定した際に、⽣徒の成績がr1であると、 合格した確率のオッズ⽐はr1でないときと⽐較してexp(1.551) = 4.71倍増加する。」 データについて 右表のデータは、 架空のデータである。 ⽬的変数はある⽣徒がある学校の⼊学試験に合格したか否か(admit)として、 説明変数は、その⽣徒の試験の点数(sc)、GPA、卒業した学校での成績(r)とする。 (r*は成績のグレードを表す変数である。r1が最も⾼い成績であることを⽰す。) モデルは以下のようになり、データを⽤いて各の値を求めることになる。 実際にデータを⽤いての値を求めると以下のようになる。 望ましい 出⼒ ⼊⼒データ 1 − 出典: https://stats.idre.ucla.edu/r/dae/logit-regression/
  34. Analytics Innovation Company ©BrainPad Inc. 39 3-4-1. パラメータの求め⽅ モデルの形状を決めた後、実際にモデルのパラメータを求めることになる •

    最⼩⼆乗法と最尤法の2つを紹介する。 • 最⼩⼆乗法によるパラメータの推定は主に線形回帰モデルで利⽤される。 • 最尤法は線形回帰モデル以外のモデルでも広く利⽤される推定⽅法である。 パラメータの値を推定する モデルの形状を決める
  35. Analytics Innovation Company ©BrainPad Inc. 40 3-4-2. 最⼩⼆乗法 1 ⼿元のデータから、仮定したモデルに最も当てはまりの良いパラメータを求める⽅法の⼀つ

    • 線形モデル(β; x)に対して、最もデータに当てはまりの良いパラメータ = F の値を求める⽅法である。 • 最⼩⼆乗法は、実測値とモデルの予測値の外れ具合(残差)の⼆乗平⽅和を最⼩にするを求めている。 求めたいモデルが以下の(β; x)で表されるとする。 この(β; x)のの値が定まれば予測を⾏うことができる。 取りうるの値の組のうち、データに対する当てはまりが最も良くなるような = F を選びたい。 残差のイメージ 最⼩⼆乗法では、 F の値は以下のように求めている。 ただし、G は実測値であり、(β; x)は任意のを与えたときのモデルの予測値である。 arg minによって右辺を最⼩化するようなの集合を F としている。 最⼩⼆乗法は、実測値と予測値の差(残差)の平⽅和が最⼩となるような を求める⽅法である。 残差
  36. Analytics Innovation Company ©BrainPad Inc. 41 (参考) 残差のイメージ 最⼩⼆乗法の数値計算例 実測

    x 実測 y 予測値 残差 0.08 2.06 2.34 -0.28 0.16 2.00 2.57 -0.58 0.19 2.84 2.66 0.17 0.21 2.19 2.72 -0.53 0.22 3.21 2.77 0.45 0.30 3.33 2.99 0.34 0.44 3.05 3.42 -0.37 0.49 3.17 3.57 -0.40 0.52 3.31 3.66 -0.35 0.61 3.48 3.94 -0.45 0.74 4.15 4.32 -0.16 0.77 4.23 4.40 -0.17 0.87 4.81 4.71 0.10 0.88 4.35 4.74 -0.39 0.92 5.43 4.86 0.57 実測 x 実測 y 予測値 残差 0.08 2.06 3.16 -1.10 0.16 2.00 3.32 -1.32 0.19 2.84 3.38 -0.54 0.21 2.19 3.41 -1.23 0.22 3.21 3.44 -0.23 0.30 3.33 3.59 -0.27 0.44 3.05 3.88 -0.83 0.49 3.17 3.98 -0.81 0.52 3.31 4.04 -0.73 0.61 3.48 4.22 -0.74 0.74 4.15 4.48 -0.32 0.77 4.23 4.53 -0.30 0.87 4.81 4.74 0.07 0.88 4.35 4.76 -0.41 0.92 5.43 4.84 0.59 実測 x 実測 y 予測値 残差 0.08 2.06 2.08 -0.02 0.16 2.00 2.16 -0.16 0.19 2.84 2.19 0.65 0.21 2.19 2.21 -0.02 0.22 3.21 2.22 0.99 0.30 3.33 2.30 1.03 0.44 3.05 2.44 0.61 0.49 3.17 2.49 0.68 0.52 3.31 2.52 0.79 0.61 3.48 2.61 0.87 0.74 4.15 2.74 1.41 0.77 4.23 2.77 1.46 0.87 4.81 2.87 1.94 0.88 4.35 2.88 1.47 0.92 5.43 2.92 2.51
  37. Analytics Innovation Company ©BrainPad Inc. 42 3-4-3. 最尤法 1 ⼿元のデータから、仮定したモデルに最も当てはまりの良いパラメータを求める⽅法の⼀つ

    • 尤度と呼ばれるものを最⼤化するようなパラメータを探索する。 • 尤度は、モデルとパラメータを仮定したときに、⼿元のデータが発⽣する確率(密度)の積で表される。 • ⼿元のデータが最も発⽣しやすいモデルの形状になるようなパラメータを求めている。 モデル(; )のパラメータを操作し、⼿元のデータから計算される尤度が最も⾼くなるを探索する。 以下の例では • (; )を正規分布、パラメータを={, }としている。 • データは = {,} = {3,2}から発⽣させた。 ⼗分に探索を⾏い、尤度と対数尤度が最も⼤きくなるを関数(; )のパラメータとする。 ⋯ 様々な{, }の組み合わせを探索する。
  38. Analytics Innovation Company ©BrainPad Inc. 43 3-4-3. 最尤法 2 尤度、対数尤度の定義

    • 尤度はモデル(; )と、そのパラメータを適当に与えたときに、⼿元のデータG が発⽣する確率(密度)の積を求めている。 • 最尤法は、尤度が最⼤となるパラメータをモデル(; )の最も当てはまりの良いパラメータとして決める⽅法である。 • 尤度、対数尤度は以下のように定義されている。 尤度関数(M) モデル(M) 対数尤度関数(M) ⋮ 最も値が⾼くなる パラメータを モデル(; )のパラメータとする • 尤度関数(; )または対数尤度関数 l(; )の、最も値が⾼くなるようなパラメータを探索する。 尤度関数のイメージ 尤度関数(; ) 、対数尤度関数l(; )が最も⾼くなるような パラメータはどちらも同じとなる。
  39. Analytics Innovation Company ©BrainPad Inc. 44 3-4-4. 最尤法: 正規分布の場合 モデル(M)

    尤度関数(M) 対数尤度関数(M) 正規分布の場合 = {, } = {, }とした( )の確率(密度)* 1 1.20 0.13 2 2.73 0.20 3 3.59 0.19 4 3.86 0.18 5 4.27 0.16 6 4.42 0.16 7 5.60 0.09 ⋮ ⋮ ⋮ *モデルが連続値関数のため値は近似値である。 尤度: 9.39e-09 対数尤度: -18.5 尤度・対数尤度の計算 パラメータの推定の際には、計算の難易度から対数尤度関数を利⽤して計算されることが多い。
  40. Analytics Innovation Company ©BrainPad Inc. 46 3-5-1. 決定⽊ ⽬的変数の分布は仮定せずに、⽊構造でモデリングを⾏う⼿法 •

    分割基準に従って段階的にデータを分割することで、⽊構造を⽣成していく。 • ⽬的変数を最もよく説明するように、説明変数 を分割基準に従って分割していく。 • 可視化したときの解釈性が⾼く、要因の分析を⾏う際に利⽤される。 • 決定⽊から派⽣した、予測精度が優秀なアルゴリズムが存在する。 • Random Forest • Gradient Boosting 1 ≤ 1.03 yes yes no no 2 ≤ 1.04 0 0 1 • ⽬的変数のクラス1, 0を x1, x2で分類したい • 決定⽊による分類結果 • 決定⽊による分類結果を グラフ上で確認
  41. Analytics Innovation Company ©BrainPad Inc. 47 3-5-2. 決定⽊ アルゴリズム 1

    C4.5 CART 対応範囲 分類のみ 分類 ・ 回帰 ⽬的変数の型 カテゴリカルのみ カテゴリカル ・ 連続値 分割基準 Gain ratio Gini index ・ MSE 代表的な決定⽊の実装アルゴリズム 決定⽊アルゴリズムによって分析の対応範囲が異なる • 実装アルゴリズムによっては分類のみしか扱えないものがある。 • scikit-learnではCARTをベースにしたアルゴリズムが実装されている。 • CARTは分類問題では分割基準にGini indexを⽤いる。
  42. Analytics Innovation Company ©BrainPad Inc. 48 3-5-2. 決定⽊ アルゴリズム 2

    CARTアルゴリズムを例に、どのように分割を⾏っていくかを確かめる • 右表のデータを⽤いて分類問題の説明を⾏う。 • CARTは分割の指標としてGini indexを⽤いている。 (|) : ノード 内のクラス の割合 Gini Index ノードにおいてどの程度クラスが混ざり合っているのかを表している。 例: 右表のClass列にだけ着⽬し、Gini indexを計算する。 Class列は10つの”1”と10つの”0”で構成されているため、Gini indexは以下のようになる。 Class 1 2 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 0 1 0 1 1
  43. Analytics Innovation Company ©BrainPad Inc. 49 3-5-3. 決定⽊ CARTアルゴリズム CARTは分割後に最も不純度が低くなるような分割基準を探索する

    • 今回の例では1 と2 のどちらを⽤いて分割を⾏うと不順度が低くなるかを確かめる。 • アルゴリズムとしては各候補での分割した際の不純度を⽐較し、最も不純度が低くなるものを探す。 • 具体的には以下の算式が最⼤になる候補を分割に最適なものとして選ぶ。 となるため、2 で分割を⾏うことが最適となる ∆(, )は、ノードで分割候補を⽤いて分割した際の不純度の変化を表す。 と は分割候補で分割した際に、元のノードから次のノードの⽚⽅にどれだけデータが分割されたかを表す割合。 ( )と( )は分割候補で分割した際の不純度を表す。 • 1 で分割を⾏った場合 • 2 で分割を⾏った場合
  44. Analytics Innovation Company ©BrainPad Inc. 50 3-5-4. 決定⽊ 剪定 決定⽊は分割した先に存在するクラスが1つになるまで繰り返すことが

    できるが、過学習*を起こすために剪定作業が必要になる *過学習については後のスライドにて説明を⾏う。 剪定については様々な⽅法がある。 • 分割したノードの不純度が設定した閾値よりも低くなると分割を⽌める。 • 分割したノードに含まれるサンプルサイズがある閾値よりも少なくなると分割を⽌める。 • 分割前のノードの不純度と、分割後の不純度の差が⼩さい場合に分割を⾏わない。 • 予め分割の回数を制限する。 • ⽬的に合わせて⼈間が解釈しやすい程度で分割を⽌める。 いずれの場合においても⽬的に合わせて考慮する必要がある。
  45. Analytics Innovation Company ©BrainPad Inc. 52 3-6-1. アンサンブル学習 弱い学習機を複数作成し、束ねることで強い学習機を作成する⼿法 •

    データの重み付けや学習機の作成⽅法、統合の⽅法によって様々な⼿法が考案されている。 • ここでは代表的なBoosting、Baggingについて紹介する。 弱学習機 データ 統合 強学習機 アンサンブル学習のイメージ
  46. Analytics Innovation Company ©BrainPad Inc. 53 3-6-2. アンサンブル学習 Boosting Boosting:

    1つの弱学習機で予測をした結果を、次に作成する弱学 習機に引き継いで、逐次学習を⾏っていく⼿法である • 弱学習機で学習を⾏った際に⽣じる予測誤差を⼩さくするために、 データに適切な重みを与えて繰り返し学習を⾏っていく。 • Boostingは前の弱学習機の結果を参考にしていくsequential(直列)なアンサンブル学習である。 • 最終的には、作成した弱学習機たちを適切に統合し、強学習機とする。 • 重みの与え⽅や統合の⽅法は様々な⼿法が提案されている。(AdaBoostなど) Boostingのイメージ データの重み データ 弱学習機 重みの調整 弱学習機の統合 強学習機
  47. Analytics Innovation Company ©BrainPad Inc. 54 3-6-3. アンサンブル学習 AdaBoost (Adaptive

    Boosting) AdaBoostはBoostingの代表的なアルゴリズムである • 前の弱学習器で予測を誤ったデータの重みを⼤きくし、次の弱学習機では誤ったデータを正しく予測するよう学習する。 • 弱学習機の重みを考慮した多数決によって予測を⾏う。 2値分類におけるAdaBoostの具体的なアルゴリズム (⽬的変数は{1, -1}とする。) 1. 各データの重みが等しくなるように初期化する。ただしはサンプルサイズである。 2. 以下を任意の回数()だけ繰り返す。( = 1, … , ) a. 任意の弱学習機 ()を以下のような重み付き誤差関数を最⼩とするように学習する。 (M)はモデルの予測を誤ったときに1、正しいときに0を返す関数である。 b. 弱学習機 ()の重み を計算する。 c. データの重みG dを更新する。 3. M個の弱学習機を作成した後に、強学習機 を求める。 ()は > 0で1、 = 0で−1を返す関数である。 データ h i j h i j データの重み 重み付き誤差関数を 最⼩化した弱学習機 弱学習機の重み h () i () j () j()
  48. Analytics Innovation Company ©BrainPad Inc. 55 3-6-4. アンサンブル学習 Bagging (Bootstrap

    Aggregating) Bagging: Bootstrap Samplingしたデータで弱学習機を作成し、 複数の弱学習機の結果を投票(Voting)によって束ねる⼿法である • Baggingはparallel(並列)に弱学習機の学習を⾏うアンサンブル学習である。 • 学習データに多様性を持たせることで、最終的な予測結果の分散を縮⼩させることが⽬的である。 • Votingの⽅法には簡単なものでは多数決や平均化があるが、様々な⼿法が提案されている。 • 代表的なものとしてRandom Forestがある。 Bootstrap Sample 弱学習機 データ Voting 強学習機 Baggingのイメージ ※ Bootstrap sampling︓ 全集合から重複を許してランダムにサンプリングする⼿法。 復元抽出とも呼ばれる。
  49. Analytics Innovation Company ©BrainPad Inc. 56 3-6-5. アンサンブル学習 Random Forest

    Random Forestは、基本的には決定⽊アルゴリズムとBaggingの組み合わせである • ただし、ノード分割に利⽤する説明変数をランダムに選択するという条件が加わっている。 • 個の決定⽊を作成し予測し、予測結果の多数決を⾏うことで結果を求めるアルゴリズムである。 Random Forestの具体的なアルゴリズム 1. 以下を任意の回数()だけ繰り返す。( = 1, … , ) A. データからBootstrap Sample を⽣成する。 B. を訓練データとする。 C. 決定⽊ を作成する。ただし、以下の条件を与える。 • に含まれる個の説明変数から、ランダムに‘個の説明変数を選択する。 • ’個の説明変数の中から最適な決定⽊を作成する。 2. ⼊⼒データ に対する による個の予測結果を得る。 3. 個の予測結果から多数決を⾏い強学習機の結果とする。 データ Bootstrap Sample ノード分割に条件に 与えた決定⽊ 各⽊の予測結果 h i j 多数決
  50. Analytics Innovation Company ©BrainPad Inc. 58 3-7-1. ニューラルネットワークとは 1 脳機能に⾒られる特性をシュミュレーションによって表現することを

    ⽬指した数理モデル • 脳は構成要素であるニューロンが並列に活動し処理を⾏うことで⾼度な認知機能を 実現している。 • ニューラルネットワークは、この脳の動きをコンピュータ上で再現することを試みている。 • 近年の発達が著しく様々な分野での応⽤に期待されている。 計算機上で再現 脳神経細胞(ニューロン) () h h i i r r s s = {0 1} ニューラルネットワークの1つのユニット ニューロンが並列に活動する ニューロンに相当するユニットを並列に実⾏する
  51. Analytics Innovation Company ©BrainPad Inc. 59 3-7-1. ニューラルネットワークとは 2 ニューラルネットワークは各層のユニットが次の層のユニットに接続される

    • ⼊⼒層はデータである。 • 隠れ層と出⼒層は、前層のユニット(ノード)から重み付きの値を受け取る。 • ⼀般に隠れ層の数が増加するとモデルの表現能⼒は⾼くなる。 ⼊⼒層 隠れ(中間)層 出⼒層 隠れ(中間)層は⼊⼒層と出⼒層ではない層を表す⽤語である。 それ以外の特別な意味合いは無い。 ⼊⼒層 隠れ(中間)層 出⼒層 隠れ層が2層以上のものを特に深層学習(ディープラーニング)と呼ぶ。 隠れ層1層のニューラルネットワーク
  52. Analytics Innovation Company ©BrainPad Inc. 60 3-7-2. ニューラルネットワーク 応⽤分野 ニューラルネットワークは多岐に渡る分野で応⽤されている⼿法である

    様々な分野で応⽤が始まっており、いくつかは⾝の回りのプロダクトとして実⽤レベルに達している ものもある。 画像・コンピュータビジョン ⾃然⾔語処理 ⾳声 制御 • 物体検出・分類 • 画像⽣成 • ⾳声認識 • 話者識別 • 翻訳 • 意味解析 • ⾃動運転 • ロボット
  53. Analytics Innovation Company ©BrainPad Inc. 61 3-7-3. ニューラルネットワーク 他の⼿法との違い 統計・機械学習モデルに⽐べて、モデルの表現の⾃由度が⾼い

    • 既存の統計・機械学習モデルに⽐べ、隠れ層を増やすだけで⾼次元の表現が可能である。 • ⼈間が特徴量を細かく指定せずに、ある程度の精度を達成することができる。 • モデルの表現が豊かな代わりに⼈間には解釈が難しいことが⼤半であり、 モデルがデータをどのように処理しているかがブラックボックスになる。 画像を画像のまま 学習させることも可能 • 豊かな表現 • ブラックボックス 従来までは達成できなかった タスクを次々とこなしている
  54. Analytics Innovation Company ©BrainPad Inc. 62 3-7-4. ニューラルネットワーク ⽋点 統計・機械学習に⽐べて計算量が圧倒的に多い

    • 研究の初期段階では計算⾃体が不可能であった。 • 現在注⽬されている理由の1つとして、コンピュータの発達により計算ができるようになった ことが挙げられる。 • 現在でも⼀部の企業(Googleなど)のみが処理が可能な計算量の問題はある。 結果は正しくとも解釈が難しい • ニューラルネットワークは多くの分野で、既存のモデルよりも遥かに⾼い精度を誇っているが、 なぜ⾼い精度を達成することが出来ているのか⼈間には解釈が難しい。 • ビジネスの意思決定・医療・政治など⼈間に解釈が出来ないと受け⼊れられない分野では、 倫理的な課題や不安感によって受け⼊れられていないケースがある。
  55. Analytics Innovation Company ©BrainPad Inc. 63 3-7-5. ニューラルネットワーク 様々なモデル ニューラルネットワークのモデルには様々なモデルが提案されている

    ここでは現在の代表的なモデルについて紹介する CNN RNN Auto-Encoder GAN • 特に画像分野で著しい功績を残している。 ⾳声や⾃然⾔語などのタスクでも利⽤されている。 • 畳み込み層とプーリング層で構成されたネットワークで あるのが特徴である。 • 畳み込み層は前層のノードに対して、 フィルタ処理を⾏い特徴マップを作成する。 • プーリング層では特徴マップに対して情報を圧縮する。 • 時系列の情報を取り扱うことができるモデルである。 • 2016年程度まで⾃然⾔語処理で特に利⽤されていた LSTMはRNNの1つである。 • 時刻の⼊⼒として、時刻tのデータと時刻 − 1の 中間層の状態を⼊⼒として受け取ることで過去の情報を 考慮することができる。 • ⼊⼒と同等の結果を再現するような出⼒を得るように ⾃⼰学習する教師なし学習の1つである。 • 中間層はデータの特徴を抽出した結果となるように作成される。 • ⼊⼒の次元よりも中間層の次元が⼩さい場合次元圧縮となる。 • 学習済みの正しく⼊⼒が再現できるモデルに対して、 再現できないデータを⼊⼒すると⼊⼒と出⼒の差が⼤きくなるため、 異常検知のモデルとしても利⽤されている。 • ⽣成モデルの1つ。 • 画像分野では⼈間が⾒ても現実味のある画像を⽣成できた ことから注⽬が集まっている。 • 教師なし学習としてデータを⽣成するモデルと、 実際のデータか⽣成されたデータかを識別するモデルの、 2つを競わせながら同時に学習する。
  56. Analytics Innovation Company ©BrainPad Inc. 64 3-7-6. ニューラルネットワーク 学習 1

    各ユニットは活性化関数と呼ばれる関数を⽤いて出⼒を⾏う • 最もシンプルな活性化関数はステップ関数がある。 • よく利⽤される活性化関数として、シグモイド、ReLUなどといった関数がある。 () h h i i シグモイドはの値が上式によって変換され 0から1の連続値を返す活性化関数である。 パーセプトロンは任意の閾値によって 0または1を返す活性化関数である。 ReLUはが0以上のときはを、 0以下のときは0を返す活性化関数である。 ステップ関数 シグモイド ReLU
  57. Analytics Innovation Company ©BrainPad Inc. 65 3-7-6. ニューラルネットワーク 学習 2

    バックプロパゲーションはニューラルネットワークの重み更新を効率よく ⾏うアルゴリズムである • ニューラルネットワークの誤差関数は⼀般的に⾮常に複雑で解析的に解くことが出来ない。 • バックプロパゲーションは重みの更新を繰り返しながら適切な重みを探索する。 予測値と実測値の 誤差関数を求める 予測値 実測値 出⼒層 ⼊⼒層 隠れ(中間)層 出⼒層から⼊⼒層に向かって、 微分を繰り返す。 (チェーン・ルール) 適当な重みで計算する。 求めた微分係数を利⽤して誤差関数を最⼩(⼤)化し、重みを更新する。 上記を繰り返す。 各ノードの微分係数を求める。
  58. Analytics Innovation Company ©BrainPad Inc. 66 3-7-6. ニューラルネットワーク 学習 3

    ユニットや隠れ層の数が増えるほど表現⼒が⾼まるが、バックプロパゲー ションでの重みの調整は勾配消失問題のため困難になる • 勾配消失とは隠れ層の数を増やしたときに起きる現象である。 • 層が多くなると⼊⼒層に近い層で勾配の値が0に近くなってしまい、 ⼊⼒層付近の重みが更新できなくなる (パラメータの更新が⾏えない)。 • ⼀般に層が多い(深い)ときは学習が困難になる。 隠れ(中間)層 ⼊⼒層 出⼒層 バックプロパゲーションにおいて、 ⼊⼒層付近の重みを更新できなくなる。 深いネットワーク
  59. Analytics Innovation Company ©BrainPad Inc. 67 3-7-7. ニューラルネットワーク 学習の⼯夫 1

    ニューラルネットワークの過学習を防ぐ⼯夫としてドロップアウトがある • ドロップアウトとは学習の際にランダムに⼀部のノードを⾮活性化(削除)する⽅法である。 • ⾮活性化されたノードは以降の層に情報を送らなくなる。 • ドロップアウトを⽤いた学習はアンサンブル学習の近似であると⾔われる。 隠れ(中間)層 ⼊⼒層 出⼒層 ⾮活性化
  60. Analytics Innovation Company ©BrainPad Inc. 68 3-7-7. ニューラルネットワーク 学習の⼯夫 2

    学習の⾼速化や学習データが少ない際の対応として転移学習がある • 事前に別のドメインで学習されたモデルを転⽤し追加的に学習させる⼿法である。 • 事前に学習されたモデルの出⼒層付近だけを追加的なデータを⽤いて再学習することで、 計算時間の短縮、学習データが少なくて済むといった利点を持っている。 • 学習済みのデータと新しいデータに共通するような特徴を、モデルが学習しているため、 転移学習が機能すると考えられている。 隠れ(中間)層 ⼊⼒層 出⼒層 出⼒層付近のみを 新たなデータを⽤いて再学習させる。
  61. Analytics Innovation Company ©BrainPad Inc. 70 3-8-1. モデルの評価 良いモデルを作成するためには、作成したモデルの良し悪しを 定量的に評価するための⽅法が必要になる

    • モデルの性能とは、⼤別して以下の2つが基準となる。 • 作成したモデルがどれ程現象を説明しているか。 • 作成したモデルがどれ程推測を正しく⾏えているか。 • 実際の分析では、作成したモデルの評価を⾏い試⾏錯誤を繰り返して、良いモデルを作成していく。 評価 分析⽤データの作成 モデルの作成 モデルの評価 よいモデルが作成出来るまで繰り返す。
  62. Analytics Innovation Company ©BrainPad Inc. 71 3-8-2. モデルの評価 過学習・汎化能⼒ 過学習と汎化能⼒

    • ⼿元のデータに対しては予測ができるが、未知のデータに対しては全く予測ができなくなるケースがある。 このようなモデルを過学習(overfit)したモデルという。 • ⼿元のデータと未知のデータの双⽅で⾼い予測精度を誇るモデルは汎化能⼒の⾼いモデルという。 • 基本的にモデルの評価とは、過学習を避け、汎化能⼒の⾼いモデルを作成するために⾏う。 汎化能⼒の⾼いモデル 過学習したモデル モデルの評価を⾏い 汎化能⼒を⾼いモデルを作成する。
  63. Analytics Innovation Company ©BrainPad Inc. 72 3-8-3. モデルの評価 評価指標 評価指標は、⽬的変数の性質やモデルの⽬的によって使い分ける

    • モデルが分類と回帰では使われる評価指標は異なる。 • モデルの⽬的によっても使い分けられる。 • 以下の評価指標について後ほど解説する。 利⽤される評価指標の例 分類モデル 混同⾏列 ROC曲線とAUC PR曲線とAP 回帰モデル 平均⼆乗平⽅誤差 (RMSE) 平均絶対誤差 (MAE) 平均絶対誤差率 (MAPE)
  64. Analytics Innovation Company ©BrainPad Inc. 73 3-8-4. モデルの評価 回帰モデルの評価指標 回帰モデルの評価指標のうち、よく利⽤される指標を紹介する

    • 様々な評価指標が提案されており、モデル作成の⽬的に応じて使い分ける必要がある。 • ある指標では良い結果であったが、別の指標では悪い結果であるということもあり得る。 • 指標だけに依存することなく、実測値と予測値を可視化するなどの対応も場合によっては有効である。 回帰モデル 特徴 平均⼆乗平⽅誤差 (RMSE) • 特によく利⽤される指標である。 • 外れ値に対し影響を受けやすい指標である。 平均絶対誤差 (MAE) • 誤差の絶対値の平均である。 • 外れ値が含まれていても頑健な指標である。 平均絶対誤差率 (MAPE) • 平均的にn%の誤差があると解釈出来る。 • 実測値に0がある場合には利⽤できない。
  65. Analytics Innovation Company ©BrainPad Inc. 74 RMSEは以下のように与えられる。 3-8-5. モデルの評価 回帰モデルの評価指標

    RMSE 平均⼆乗平⽅誤差 (RMSE)は特に利⽤される指標の1つである • 常に⾮負の値を取り、値が0に近いほど精度が良いと解釈できる。 • 実測値と予測値の差を⼆乗しているため、外れ値に対して⼤きな反応を⽰す。 • 外れ値が存在する場合に適切な評価ができないことがあるので注意が必要である。 実測値 予測値
  66. Analytics Innovation Company ©BrainPad Inc. 75 3-8-6. モデルの評価 回帰モデルの評価指標 MAE

    平均絶対誤差 (MAE)は直感的に平均的な誤差を解釈できる指標である • 常に⾮負の値を取り、値が0に近いほど精度が良いと解釈できる。 • MAEの値は実測値と予測値の誤差の絶対値の平均を表現している。 • RMSEと⽐べて外れ値の影響を受けにくいため、外れ値に頑健な指標と⾔える。 MAEは以下のように与えられる。 実測値 予測値
  67. Analytics Innovation Company ©BrainPad Inc. 76 3-8-7. モデルの評価 回帰モデルの評価指標 MAPE

    平均絶対誤差率 (MAPE)は平均的な誤差の割合を表す指標である • 0から100の値を取り、値が0に近いほど精度が良いと解釈できる。 • 実務で予測の誤差をn%以下にしたい場合などに利⽤する。 • 実測値に0が含まれる場合は利⽤することができない。 • 割合を計算する都合上、値そのもののスケールが影響するので、解釈に注意が必要である。 実測値 予測値 MAPEは以下のように与えられる。
  68. Analytics Innovation Company ©BrainPad Inc. 77 3-8-8. モデルの評価 分類モデルの評価指標 分類モデルの評価指標のうち、よく利⽤される指標を紹介する

    • ここで紹介する指標は、全て混同⾏列を中⼼にして導かれる。 • 回帰モデルの評価指標と異なり、指標同⼠に明確なトレードオフの関係がある。 • モデルの⽬的に応じて、どの指標を最も重視するかを考える必要がある。 分類モデル 特徴 混同⾏列 • 予測がどれ程当たったか、外れたかを表で確認できる。 • 様々な評価指標の関係性を窺うことができる。 ROC曲線とAUC • モデルが正しいと予測したものが、真に正しい割合と誤りの割合 の関係性を表している。 • ROC曲線とAUCを⽤いて、異なるモデルの評価が可能である。 PR曲線とAP • 再現率と適合率のトレードオフを可視化したものである。 • 予測の厳格さと、網羅性の関係を表しているとも⾔える。 • 正例と負例の数に⼤きな差がある場合に有効になる。
  69. Analytics Innovation Company ©BrainPad Inc. 78 3-8-9. モデルの評価 分類モデルの評価指標 混同⾏列

    1 予測出来たもの、予測出来なかったものをクロス集計した⾏列である • 2値分類のときは、2x2の分割表となる。 • 対⾓成分の真陽性(TP)、真陰性(TN)の値が⼤きいほど分類が良く出来ていることを表す。 • この分割表から様々な評価指標を計算する事ができる。 真陽性 (TP: True Positive) 偽陽性 (FP: False Positive) 偽陰性 (FN: False Negative) 真陰性 (TN: True Negative) 実測値 予 測 値 正例 正 例 負例 負 例 真陽性: 正しく陽性と予測 真陰性: 正しく陰性と予測 偽陽性: 実際は陰性であるが、陽性と予測 偽陰性: 実際は陽性であるが、陰性と予測
  70. Analytics Innovation Company ©BrainPad Inc. 79 3-8-9. モデルの評価 分類モデルの評価指標 混同⾏列

    2 混同⾏列の具体例 • 混同⾏列は、実測値と予測値のクロス集計である。 • 2値分類の場合は以下のように計算される。 3 (TP) 1 (FP) 2 (FN) 2 (TN) 実測値 予 測 値 正例 正 例 負例 負 例 実測値 予測値 判定 1 1 TP 0 0 TN 1 1 TP 1 0 FN 1 1 TP 0 0 TN 0 1 FP 1 0 FN
  71. Analytics Innovation Company ©BrainPad Inc. 80 3-8-9. モデルの評価 分類モデルの評価指標 混同⾏列

    3 混同⾏列から各種指標を導くことが出来る • いずれの指標も分類モデルの評価には重要なものである。 • どの指標を重視するかは、モデル作成の⽬的に合わせて選ぶ必要がある。 TP FP FN TN 実測値 予 測 値 正例 正 例 負例 負 例 指標 導出 特徴 正解率 (Accuracy) + + + + • 予測結果全体がどれだけ正しいかを表す。 • 正例数と負例数に偏りがある場合は参考にしにくい。 適合率 (Precision) + • 正例であると予測したもののうち、実際に正例である割合。 • 商品のレコメンドなど偽陽性が許容できない場合などに⽤いられる。 • 機会損失を防ぎたいという考え⽅である。 再現率 (Recall) + • 感度 (Sensitivity)とも呼ばれる。 • 正例全体のうち、真陽性であると判定することができた割合。 • 病気の診断や異常検知など、偽陰性を許容できない場合などに⽤いられる。 • ⾒逃しは許せないという考え⽅である。 特異度 (Specificity) + • 負例全体のうち、陰性であると判定することができた割合。 • 負例に対するカバー率が重要な場合にチェックされる。 • 再現率(Recall、感度、Sensitivity)とはトレードオフの関係。 F値 (F-measure) × × + • F1スコアとも呼ばれる。 • 再現率と適合率をバランス良く⾒たいときに⽤いられる。
  72. Analytics Innovation Company ©BrainPad Inc. 81 3-8-10. モデルの評価 分類モデルの評価指標 ROC曲線とAUC

    ROC曲線は再現率と特異度の関係をグラフ化したものである • 横軸に(1-特異度)、縦軸に再現率をとり、陽性と陰性の閾値を変化させたときの予測精度を表している。 • (1-特異度)の値が⼩さい段階で、再現率の値が⾼くなるモデルが良いモデルである。 • 真陽性率( …† …†‡ˆ‰ )と偽陽性率( ˆ† ˆ†‡…‰ )の関係を表しているとも⾔える。 • AUCは、ROC曲線下の⾯積として定義される。 • AUCの値はランダムな予測で0.5、完全な予測で1となる。 1 - 特異度 再 現 率 AUC: 0.787 ROC曲線とAUC 1である確率 (予測) 実測値 0.95 1 ⋮ ⋮ 0.81 1 0.61 1 ⋮ ⋮ 0.5 0 0.34 0 ⋮ ⋮ 0.28 0 0.24 1 ⋮ ⋮ 0.03 0 閾値を変えて 再現率と特異度を 計算していく 閾値0.28 閾値0.5 閾値0.8 *ROC: Receiver Operating Characteristic *AUC: Area Under the Curve
  73. Analytics Innovation Company ©BrainPad Inc. 82 3-8-11. モデルの評価 分類モデルの評価指標 PR曲線とAP

    PR曲線は再現率(Recall)と適合率(Precision)の関係をグラフ化したものである • 横軸に再現率、縦軸に適合率をとり、陽性と陰性の閾値を変化させたときの予測精度を表している。 • 再現率、適合率のどちらも⾼くなるようなモデルが良いモデルである。 • 正例と負例のサンプルサイズに⼤きな差があっても頑健な指標である。 • 再現率( …† …†‡ˆ‰ )と適合率( …† …†‡ˆ† )の定義から、正例について着⽬した指標である。 • APは、PR曲線下の⾯積として定義される。 再現率 適 合 率 PR曲線とAP AP: 0.761 1である確率 (予測) 実測値 0.95 1 ⋮ ⋮ 0.81 1 0.61 1 ⋮ ⋮ 0.5 0 0.34 0 ⋮ ⋮ 0.28 0 0.24 1 ⋮ ⋮ 0.03 0 閾値を変えて 再現率と適合率を 計算していく 閾値0.28 閾値0.5 閾値0.8 *PR: Precision-Recall *AP: Average Precision
  74. Analytics Innovation Company ©BrainPad Inc. 83 3-8-12. モデルの評価 データの分割 正しく評価するために、データを学習⽤と評価⽤に分割する

    • 学習⽤のデータは訓練データ、学習データなどと呼ばれる。 • 評価⽤のデータをテストデータなどと呼ばれる。 • 学習⽤のデータで作成したモデルを⽤いて、評価⽤のデータを予測し評価指標を算出することで、 未知のデータに対するモデルの評価を⾏う⽅法である。 • 分割する理由は⼿元にあるデータを全てモデル作成のために使⽤してしまうと、評価の際に未知のデータとして扱える データが無くなってしまい、汎化能⼒を確認することが出来なくなってしまうためである。 • 分割の⽅法にも様々な⽅法が提案されている。(後述) データ 訓練データを使⽤し モデルの作成 作成したモデルで テストデータを予測し評価 データの分割 テストデータ 訓練データ 評価 データ分割のイメージ
  75. Analytics Innovation Company ©BrainPad Inc. 84 3-8-13. モデルの評価 データの分割の⽅法 データを分割しモデルを評価する⽅法を「交差検証」と呼ぶ

    • Cross Validationの邦訳である。 • 訓練データとテストデータの分割を繰り返し、複数回モデルの作成と評価を⾏うことから交差と呼ばれる。 • ここでは代表的な交差検証の⽅法を紹介する。 ⼿法 特徴 ホールド・アウト 法* 最もシンプルな⽅法。データを単に分けておく⽅法。 K-fold 法 データをK分割し、モデル作成、評価をK回繰り返す⽅法。 ホールド・アウト法に⽐べて、 サンプルサイズが⼩さいときにも有効になるケースが多い。 Leave-One-Out 法 K-fold法のKがサンプルサイズと同じのときのケースである。 よりサンプルサイズが⼩さいときに有効になるケースが多い。 ただし、計算量が多くなるデメリットがある。 *ホールド・アウト法は厳密には交差検証ではないがここでは含めて説明する。
  76. Analytics Innovation Company ©BrainPad Inc. 85 3-8-14. モデルの評価 ホールド・アウト法 モデルの検証を⾏うときの分割⽅法として最もシンプルな⽅法

    • 訓練データとテストデータを適当に2つに分割し、モデル作成と評価を1度だけ⾏う。 • 分割の⽅法によっては正しく評価を⾏うことができないため、どのように分割するかは注意が必要である。 • 他の交差検証の⽅法を考える際の基礎となるため、良く理解する必要がある。 • ホールド・アウト法はデータを交差させないため、厳密には交差検証ではない。 データ 訓練データを使⽤し モデルの作成 作成したモデルで テストデータを予測し評価 データの分割 テストデータ 訓練データ 評価 ホールド・アウト法のイメージ
  77. Analytics Innovation Company ©BrainPad Inc. 86 3-8-15. モデルの評価 K-fold 法

    データをK分割し、モデル作成、評価をK回繰り返す K個の評価指標の平均を最終的な評価指標の値とする⽅法 • どのデータも1度はテストデータとして利⽤するため、分割によるデータの偏りを⼩さくすることができる。 • 分割数Kの値は多ければ多いほど、評価の信頼性が上がるが、計算時間が多くなる。 • 機械学習によるモデル作成では最も利⽤される分割⽅法であると⾔える。 データ モデルの作成 評価 分割 評価1 評価2 評価k 評価 各評価の平均 テストデータ 訓練データ K-fold 法のイメージ
  78. Analytics Innovation Company ©BrainPad Inc. 87 3-8-16. モデルの評価 Leave-One-Out 法

    (LOO) K-fold 法のKの値をサンプルサイズと同値にした際の名称 • 基本的な性質はK-fold 法と同様になる。 • サンプルサイズだけモデルを作成するため計算時間が膨⼤になる。 • サンプルサイズが少ないときに有効になる場合がある。 データ モデルの作成 評価 分割 評価1 評価2 評価S 評価 各評価の平均 訓練データ テストデータ Leave-One-Out 法のイメージ サンプルサイズ: S
  79. Analytics Innovation Company ©BrainPad Inc. 89 4-1. 標準化・正規化とは 標準化・正規化は、データの持つ情報を損失させることなく、 ある範囲に収まるように変換する⼿法である

    • ⾝⻑と体重、年齢と年収のようにデータの単位や、取りうる値の範囲が異なるときには 解釈の問題があり単純に⽐較することが出来ない。 • モデリングの⽂脈では、説明変数のスケールが異なっていると以下のような問題がある。 • ⽬的変数に対して、各説明変数がどの程度の影響を与えているが確認できない。 • スケールの⼤きいデータに対して強くバイアスが掛かってしまう。 • アルゴリズムによっては計算する時間が増えてしまう。 • 標準化(z-score normalization)は平均0、分散1に変換する⽅法であり、 正規化(min-max normalization)はデータを[0, 1]の範囲に変換する⽅法である。 標準化 (z-score normalization) 正規化 (min-max normalization)
  80. Analytics Innovation Company ©BrainPad Inc. 90 4-2-1. 正則化 (Regularization) 1

    過適合を防ぎ汎化性能を向上させるために⽤いられる⼿法の⼀つ • ⾼次元データの中から本質的な特徴を⾒つけ出し利⽤する⽅法である。 • 代表的なものは、L1正則 (Lasso)、L2正則 (Ridge)、 L1正則・ L2正則のどちらの表現も可能なElastic Netがある。 • 推定の際に各パラメータの値が⼤きくなりすぎないように、罰則(ペナルティ)項を追加する。 最⼩⼆乗法に制約を与える例 制約を与えない推定 制約を与えた推定 • 制約を与える項を追加している。 • 罰則(ペナルティ)項と呼ばれる。 • は正則化係数を表す。 • ()は任意の正則化⼿法である。
  81. Analytics Innovation Company ©BrainPad Inc. 91 4-2-1. 正則化 (Regularization) 2

    正則化の種類 • ここでは代表的な正則化⼿法のみ紹介する。 • 以下の3種類の正則化⼿法は良く利⽤されることの多いものである。 ⼿法 特徴 L1 正則化 (LASSO) • 不要な説明変数のパラメータの解はスパースになる(多くが0になる)。 • 推定の際に結果として特徴量の選択が⾏われている。 • 正則化項はL1ノルムである。 L2 正則化 (Ridge) • L1正則化と異なり解はスパースにはならない。 • 解の分散が全体的に⼩さくなる(安定する)。 • 正則化項はL2ノルムである。 Elastic net • L1正則とL2正則の中間的な特徴を持つ。 • パラメータを調整することで、L1とL2の双⽅のメリットを享受することができる。 • 正則化項はL1ノルムとL2ノルムの重み付きの和である。
  82. Analytics Innovation Company ©BrainPad Inc. 92 4-2-2. 正則化 (Regularization) LASSO

    L1正則化(LASSO) • L1正則化は、推定するパラメータのL1ノルムを罰則項として採⽤している。 • パラメータの解はスパースとなり、影響の⼩さいパラメータの値が0となる。(変数選択) • 相関の⾼い説明変数があった場合、⽚⽅の変数が削除されることがある。 L1正則化によるパラメータ推定のイメージ 右上の円は正則化項を含まないときのパラメータの誤差分布である。 左下のL1正則化項との接点が推定されるパラメータとなる。 L1正則化の罰則項 (L1ノルム) • 推定するパラメータがh 、i の2つのとき、 図右上の正則化項を伴わないときのパラメータの誤差分布と、 図左下のL1ノルムとの接点が推定されるパラメータの解 F となる。 • 接点はL1ノルムの頂点になることが多いため、 ⽚⽅のパラメータの値が0となりやすい。 • は正則化の強さを決めるハイパーパラメータである。 交差検証などによって最適な値を探索することになる。
  83. Analytics Innovation Company ©BrainPad Inc. 93 4-2-3. 正則化 (Regularization) Ridge

    L2正則化(Ridge) • L2正則化は、推定するパラメータのL2ノルムを罰則項として採⽤している。 • パラメータの解は⼀般に分散が⼩さくなり安定すると⾔われている。 • L1正則化とは異なり変数の選択は⾏われない。 L2ノルムによる推定のイメージ 右上の円は正則化項を含まない各パラメータの誤差分布である。 左下のL2正則化項との接点が推定されるパラメータとなる。 L2正則化の罰則項 (L2ノルム) • 推定するパラメータがh 、i の2つのとき、 図右上の正則化項を伴わないときのパラメータの誤差分布と、 図左下のL2ノルムとの接点が推定されるパラメータの解 F となる。 • L2ノルムの形状が円であるため、 各パラメータが0になることはあまり無い。 • は正則化の強さを決めるハイパーパラメータである。 交差検証などによって最適な値を探索することになる。
  84. Analytics Innovation Company ©BrainPad Inc. 94 4-2-4. 正則化 (Regularization) Elastic

    net Elastic net • Elastic netはL1ノルムとL2ノルムの重み付きの和で表現されているため、 L1正則化とL2正則化の中間的な性質を持つ。 • L1正則化と異なり、相関の⾼い変数があっても⽚⽅のみ削除されてしまうといったことが無い。 Elastic netの図形的性質 Elastic netはL1ノルムとL2ノルムの間に存在する。 L1的な頂点を持ちつつも全体的に丸みを帯びていることが分かる。 Elastic netの罰則項 (L1とL2の重み付きの和) • h 、 i は正則化の強さを決めるハイパーパラメータである。 交差検証などによって最適な値を探索することになる。 • i もしくはh を0とすれば、L1正則化、L2正則化と同等となる。
  85. Analytics Innovation Company ©BrainPad Inc. 95 4-3. 不均衡データの対応 1 各クラスのサンプルサイズが⼤きく偏っていると、少数クラスの分類精度、

    汎化性能、学習の際の収束などに悪影響が発⽣してしまう • 異常検知など、少数クラスの識別を⾏う課題では特に問題になる。 データのクラスの⽐ 学習 99% 1% モデル 予測精度が期待した結果とは 異なってしまうことが多い。 (少ないクラスをほぼ誤答する) 学習結果 Class A Class B • 不均衡データへの対策は⼤きく分けて、 データを加⼯し対応する⽅法と、モデル作成のアルゴリズムによって対応する⽅法がある。 • ここでは、データの加⼯によって対応する⽅法(サンプリング)について紹介する。
  86. Analytics Innovation Company ©BrainPad Inc. 96 4-3. 不均衡データの対応 2 サンプリングによる対応

    • 学習させる際に各クラスの⽐に⼤きな偏りがなくなるようなサンプリングを⾏うことで、 学習結果の精度向上を狙う⽅法である。 • 少数データを増やす⽅法(Oversampling)と、 多数データを減らす⽅法(Undersampling)の2種類に分けられる。 少数データを増やす Oversampling 多数データを減らす Undersampling • Oversamplingの代表的な⼿法 • Random Over-sampling • SMOTE • Undersamplingの代表的な⼿法 • Random Under-sampling • KNN Based Methods
  87. Analytics Innovation Company ©BrainPad Inc. 97 4-4. ハイパーパラメータの調整 1 通常のパラメータ推定では求まらない変数(ハイパーパラメータ)があり、

    その変数の値を最適解に近づけるための⼿法 • 基本な探索⽅法にグリッドサーチとランダムサーチがある。 ⻘い点は試⾏するハイパーパラメータの値 オレンジの点は最適なハイパーパラメータの値 グリッドサーチによる探索のイメージ • グリッドサーチは最もシンプルな探索⽅法である。 • ハイパーパラメータの存在範囲を格⼦状に区切り、 格⼦点でのパラメータでの結果から最も良い ハイパーパラメータを選択する⽅法である。 ランダムサーチによる探索のイメージ • ランダムサーチはグリッドサーチに並ぶシンプルな探索⽅法である。 • ランダムなパラメータの組合せを試⾏し、 最も良い結果のパラメータを選択する⽅法である。
  88. Analytics Innovation Company ©BrainPad Inc. 98 4-4. ハイパーパラメータの調整 2 通常のパラメータ推定では求まらない変数(ハイパーパラメータ)があり、

    その変数の値を最適解に近づけるための⼿法 • ハイパーパラメータの確率分布を仮定し、最適なハイパーパラメータの値の近辺を中⼼に 探索するアルゴリズムも多く提案されている。 ⻘い点は試⾏するハイパーパラメータの値 橙の線は確率分布の濃度 橙の点は最適なハイパーパラメータの値 最適な値の近辺を中⼼に探索しているイメージ • Nelder-Mead法 • ベイズ最適化 • ガウス過程 • Tree-structured Parzen Estimator* よく利⽤されるハイパーパラメータ探索の⽅法 *株式会社Preferred Networksが公開しているoptunaはこのアルゴリズムを利⽤している。 https://research.preferred.jp/2018/12/optuna-release/
  89. Analytics Innovation Company ©BrainPad Inc. 100 5-1. 教師なし学習とは1 教師なし学習とは、教師あり学習と異なり⽬的変数を設定せずに、説明変 数のみでグループ構造や変数間の関係性を抽出する学習の総称である

    • 主にデータの構造や傾向を明らかにする⽬的で利⽤される。 • 教師なし学習の結果を⼈間が解釈する際に利⽤したり、教師あり学習の説明変数として利⽤する。 • 教師なし学習の結果の解釈は、各分析者に委ねられる。 y x1 x2 x3 90 14.2 0.352 1 130 19.8 0.174 0 101 16.1 0.911 0 118 17.3 0.838 1 望ましい 出⼒ ⼊⼒データ 存 在 し な い xnew cluster 4.5 2 2.4 1 9.1 3 3.4 1 データから新規に 作成された特徴 クラスタ
  90. Analytics Innovation Company ©BrainPad Inc. 101 5-1. 教師なし学習とは 2 教師なし学習の代表的な⼿法として、次元圧縮やクラスタリングが存在する

    • 次元圧縮は、説明変数の候補が多量なときに類似な説明変数を統合した、 低次元の新たな説明変数を⽣成する⼿法である。 • クラスタリングは、説明変数の特徴から⾃然なグループを⾒つけ出す⼿法である。 次元圧縮 クラスタリング 3次元から2次元へ圧縮 データを2つのクラスタとして識別
  91. Analytics Innovation Company ©BrainPad Inc. 103 5-2-1. 次元圧縮 PCA (Principal

    Component Analysis) PCA (主成分分析) • PCAは次元圧縮の⼿法の1つである。 • 分散が最も⼤きくなるような軸を探し出し、新たな軸とすることで次元圧縮を⾏う。 • 2つ⽬以降の軸は、探索済みの軸に直交するよう探索を⾏う。 • m次元のデータは、最⼤m次元までの新たな軸に移し換えることができる。 • 作成した新たな軸の解釈は、分析者に委ねられる。 データの分散が 最も⼤きくなるような 新たな軸を探索する。 探索した軸で 各データを表現する。 2次元のデータを 1次元で表現する。 2次元に広がるデータ
  92. Analytics Innovation Company ©BrainPad Inc. 104 5-2-2. 次元圧縮 NMF (Non-negative

    Matrix Factorization) NMF • 画像、⾳声やテキストデータなど負の値を取らないデータに対してよく利⽤される。 • NMFは元々のデータを、⾮負な2つの⾏列(、)に分解する⼿法である。 • 分解した2つの⾏列とは、次のような情報を保持することになる。 • は、元々のデータの特徴をよく表すようなK個の特徴クラスタの情報を持つ。 • は、各データがK次元の特徴クラスタに対して持つ重みを表現している。 • ソフトクラスタリングの1つでもある。 データ X ( M の⾏列) : M の⾏列 • K個の特徴クラスタの情報 : M の⾏列 • 各データのK個の特徴クラスタに対する重み
  93. Analytics Innovation Company ©BrainPad Inc. 106 5-3-1. クラスタリングの概要 クラスタリングとはデータを互いに似たもの同⼠でグループ分けする⼿法 •

    結果として⾒出されたグループは、クラスタと呼ばれる。 • 分類されたクラスタの解釈は、分析者が考察する必要がある。 適切に分割されたクラスタは、下記の2つの性質を持つ。 • 内的結合︓同じクラスタ内のデータは互いに類似している。 • 外的分離︓異なるクラスタにある標本対は似ていない。 内的結合 同じクラスタ内のデータは 互いに類似している。 外的分離 異なるクラスタにあるデータは 類似していない。
  94. Analytics Innovation Company ©BrainPad Inc. 108 5-3-3. 階層的クラスタリング 階層的クラスタリングと⾮階層的クラスタリング 階層的クラスタリング

    ⾮階層的クラスタリング • 最⼩のクラスタが各データの状態からはじめ、 逐次的に類似するデータをまとめていき、データ全体が1つの クラスタとなるまでクラスタを作成していく⼿法である。 • 作成した各クラスタは、樹形図の形で表現可能である。 • 群平均法、最短距離法といった⼿法がある。 • 予め与えたクラスタ数になるようクラスタを作成する⼿法である。 • 階層的クラスタリングとは異なりクラスタ間に階層構造が存在 しない。
  95. Analytics Innovation Company ©BrainPad Inc. 109 5-3-4. ⾮階層的クラスタリング ハードクラスタリングとソフトクラスタリング ハードクラスタリング

    ソフトクラスタリング • 各データは1つのクラスタにしか属さないという条件を与えた 場合のクラスタリング⼿法である。 • ⼀般にクラスタリングと⾔った場合、ハードクラスタリングを 指していることが多い。 • 各データが複数のクラスタに属しても良いという条件を与えた 場合のクラスタリング⼿法。 • 各データが、あるクラスタに属する確率を表現することができる。
  96. Analytics Innovation Company ©BrainPad Inc. 110 5-3-5. クラスタリング⼿法の分類 階層的・⾮階層的とハード・ソフトの2軸によってクラスタリングアルゴリズムをまとめる •

    ここでは基本的なアルゴリズムのみ紹介する。 • 各⼿法の改良⼿法などもあるため、利⽤時には注意が必要である。 階 層 的 ⾮ 階 層 的 • 群平均法 • 最短距離法 最⻑距離法 • 重⼼法 • k-means • ここでは取り扱わない • GMM • NMF ハードクラスタリング ソフトクラスタリング
  97. Analytics Innovation Company ©BrainPad Inc. 112 マハラノビス距離 5-4-1. データの距離・類似度 1

    クラスタリングは、各データがどの程度類似しているかを測定する必要がある • 類似の程度を測定する⽅法は様々な⽅法が提案されている。 • どのようなクラスタを作りたいかによって尺度を選択する必要がある。 ユークリッド距離 マンハッタン距離 コサイン類似度
  98. Analytics Innovation Company ©BrainPad Inc. 113 5-4-1. データの距離・類似度 2 ユークリッド距離

    • データの距離を測定するための最も基本的な⽅法。L2距離とも呼ばれる。 • 次元ユークリッド空間における、ある2点の線分の⻑さを距離とする。 • ユークリッド距離を以下のように定義する。 • このの値が0に近い程、データは類似しており、 値が⼤きい程データは類似していないと考えられる。 • 各次元で分散が異なりすぎる場合、分散が⼤きい次元 の影響を強く受けてしまうため、標準化を⾏うことも多い。 ユークリッド距離
  99. Analytics Innovation Company ©BrainPad Inc. 114 5-4-2. データの距離・類似度 マンハッタン距離 マンハッタン距離

    • 1距離とも呼ばれる。 • n次元ユークリッド空間において、各次元⽅向の距離の総和として定義されている。 • マンハッタン距離を以下のように定義する。 各線はどれも同じ距離である。 • このの値が0に近い程、データは類似しており、 値が⼤きい程データは類似していないと考えられる。 マンハッタン距離
  100. Analytics Innovation Company ©BrainPad Inc. 115 マハラノビス距離 5-4-3. データの距離・類似度 マハラノビス距離

    マハラノビス距離 • マハラノビス距離は以下のように定義される。 • Σは共分散⾏列である。 • このの値が0に近い程、データは類似しており、 値が⼤きい程データは類似していないと考えられる。 • 各次元のスケールが異なっていても、スケールの⼤きさに 寄らない結果を得ることが出来る。 • 変数間の相関がない場合、ユークリッド距離において各 次元について標準化を⾏った場合と同値になる。
  101. Analytics Innovation Company ©BrainPad Inc. 116 5-4-4. データの距離・類似度 コサイン類似度 コサイン類似度

    • コサイン類似度は距離の定義を満たさない指標である。 • データとの距離とは異なり、データ同⼠がなす⾓度をもって類似度を定義している。 • コサイン類似度は以下のように定義される。 コサイン類似度 • コサイン類似度は−1から1の値をとる。 • 1に近付くほど類似しており、−1に近付くほど類似してい ないことを表す。 • ⽂書間の類似度の測定などで利⽤される。
  102. Analytics Innovation Company ©BrainPad Inc. 118 5-5-1. 階層的クラスタリング 階層的クラスタリング •

    最⼩のクラスタが各データの状態からはじめ、逐次的に類似するデータをまとめていき、 データ全体が1つのクラスタとなるまでクラスタを作成していく⼿法である。 具体的には以下のプロセスに従う。 1. データ1つが、1つのクラスタとみなす。 2. クラスタ間の距離または類似度が最も近いクラスタを併合する。 3. 全てのデータが1つのクラスタに属するまで、2を繰り返す。 クラスタ間の距離または類似度を測る⽅法によって、複数の⼿法が提案されている。 階層的クラスタリングの特徴は以下のようなものがあげられる。 • 階層構造を得られ、樹形図によって可視化出来る。 階層的クラスタリングのプロセスのイメージ
  103. Analytics Innovation Company ©BrainPad Inc. 119 5-5-2. 階層的クラスタリング 群平均法 群平均法

    • 2つのクラスタに属する要素の全ての組み合わせの距離の平均をクラスタ間の距離とし、 クラスタ同⼠については最も距離の近いものを併合する⼿法。 • 距離の測定には任意の⼿法を⽤いて構わない。 • 群平均法でのクラスタ間の距離は以下のように定義される。 クラスタ クラスタ 群平均法のイメージ 各距離を平均
  104. Analytics Innovation Company ©BrainPad Inc. 120 5-5-3. 階層的クラスタリング 最短距離法 最短距離法

    • 2つのクラスタに属する要素の全ての組み合わせのうち、最も距離の近いものを クラスタ間の距離とし、クラスタ同⼠についても最も距離の近いものを併合する⼿法。 • 距離の測定には任意の⼿法を⽤いて構わない。 • 最短距離法でのクラスタ間の距離は以下のように定義される。 最短距離法のイメージ クラスタ クラスタ 最も近い距離
  105. Analytics Innovation Company ©BrainPad Inc. 121 5-5-4. 階層的クラスタリング 最⻑距離法 最⻑距離法

    • 2つのクラスタに属する要素の全ての組み合わせのうち、最も距離が離れたものを クラスタ間の距離とし、クラスタ同⼠については最も距離の近いものを併合する⼿法。 • 距離の測定には任意の⼿法を⽤いて構わない。 • 最⻑距離法でのクラスタ間の距離は以下のように定義される。 最⻑距離法のイメージ クラスタ クラスタ 最も離れた距離
  106. Analytics Innovation Company ©BrainPad Inc. 122 5-5-5. 階層的クラスタリング 重⼼法 重⼼法

    • クラスタごとの重⼼の距離をクラスタ間の距離とし、クラスタ同⼠の最も距離の近いものを 併合する⼿法。 • クラスタ間の距離の測定にはユークリッド距離を⽤いる。 • 重⼼法でのクラスタ間の距離は以下のように定義される。 クラスタ クラスタ 重⼼ 重⼼ 重⼼間の距離 重⼼法のイメージ
  107. Analytics Innovation Company ©BrainPad Inc. 123 5-5-6. 階層的クラスタリング ウォード法 ウォード法

    • 2つのクラスタを併合したときの分散と、各クラスタの分散の差が最⼩になるようなクラスタを 併合する⼿法であり、他の⼿法と⽐較して精度が⾼くなることが多い。 • 距離の測定にはユークリッド距離を⽤いる。 • ウォード法でのクラスタ間の距離は以下のように定義される。 ウォード法のイメージ を併合 クラスタの分散 クラスタの分散 クラスタP ∪ の分散 差分計算 差分が最⼩になる クラスタのペアを探す
  108. Analytics Innovation Company ©BrainPad Inc. 125 5-6-1. ⾮階層的クラスタリング ⾮階層的クラスタリング •

    ⾮階層的クラスタリングは、階層的クラスタリングのように各クラスタに構造的な関係性は無い。 • 階層的クラスタリングに⽐べて⼀般に計算量が少なく、⼤規模なデータに対し実⾏可能である。 • 分析者が予めいくつのクラスタに分けるかを考える必要がある。 データ K=2 K=3 いくつに分けるかによって分割の結果が異なる
  109. Analytics Innovation Company ©BrainPad Inc. 126 5-6-2. k-means k-means •

    ハードクラスタリングの1つである。 • 任意のK個のクラスタに分かれるように、K個の重⼼点の更新を繰り返す⼿法である。 • クラスタリングを学ぶ際に良く紹介される基礎的なアルゴリズムである。 • 初期値によって結果が変わったり、データの次元が⾼くなると機能しないことが多いため、 実務での利⽤は注意が必要である。 • k-meansは以下のようなアルゴリズムである。 0. ランダムな初期位置’ を K個設定する 1. ’ と各データの距離を 測定し、各データを最も近い ’ のクラスタ’ に分類する 2. クラスタ’ の重⼼を 計算し、’ を更新する 重⼼’ の位置が 更新されなくなったら終了 1と2を繰り返す k-meansのイメージ (参考)http://tech.nitoyon.com/ja/blog/2013/11/07/k-means/
  110. Analytics Innovation Company ©BrainPad Inc. 127 5-6-3. GMM (Gaussian Mixtures

    Model: 混合ガウスモデル) 1 GMM • ソフトクラスタリングの1つであり、データG がクラスタ’ に属する確率を求める。 • 混合モデルは、クラスタ’ に属するデータG’ が発⽣する確率モデルがあると仮定し、 任意の確率モデルの組み合わせを考えることで、データG がクラスタ’ に属する確率を 表現する。GMMの場合はガウス分布(正規分布)の組合せで表現する。 • クラスタの数Kは予め決めておく必要がある。 GMMのイメージ 複数のクラスタが含まれていると 思われるデータの確率密度分布 ガウス分布の組合せで表現し、各データが どのガウス分布に属するかを確率で求める。 データG がどのクラスタ’ に属するかは、 各確率分布のG での値の割合で⽰される。 確率密度の値 各分布の割合 Dist 1 0.010 0.27 Dist 2 0.029 0.54 Dist 3 0.015 0.19 = −2のときの確率密度の値と各分布が占める割合
  111. Analytics Innovation Company ©BrainPad Inc. 128 EMアルゴリズム • GMMはEMアルゴリズムを⽤いて推定を⾏う。 •

    EMアルゴリズムは観測できない潜在変数を含むモデルを最尤推定する⽅法である。 • K個の確率分布の形状と各データがK個の確率分布に属する確率の2つを推定する。 EMアルゴリズムでは以下を繰り返して推定を⾏う。 E-Step: K個の確率分布の形状を仮定して、各データが確率分布Kに属する確率を求める。 M-Step: E-Stepで求めた各データが確率分布Kに属する確率のもとでの、K個の確率分布の形状を求める。 E-Step K個の確率分布を所与として 各データの所属確率を求める。 M-Step 直前に求めた各データの 所属確率より、K個の確率分布の パラメータを計算する。 直前のM-Stepより K個の確率分布の パラメータを更新する。 E-Stepʼ 以降パラメータが 収束するまで繰り返す。 (|, ) (|, ) (|, ) (|, ) 5-6-3. GMM (Gaussian Mixtures Model: 混合ガウスモデル) 2 (参考) http://www.brain.kyutech.ac.jp/~furukawa/data/gmm.html
  112. Analytics Innovation Company ©BrainPad Inc. 129 本資料の著作権は、第三者に帰属する著作権を除き、本資料を作成した株式会社ブレインパッドに帰属します。当社の許可なく無断で、複製、 改変・翻訳、販売等をすることはできません。 ただし、本資料の閲覧者は、株式会社ブレインパッドの著作物である旨を表⽰し、かつ、⾮営利⽬ 的および本資料を改変しない場合に限り、本資料をダウンロード、プリントアウト、またはコピーし、⾃⼰のために閲覧・利⽤することができます。な

    お、著作権法上認められている範囲内での引⽤を⾏うことは可能です。本資料を引⽤するには、以下の条件を満たす必要がありますので、ご留 意ください。 1. 引⽤先と引⽤部分に主従関係があること。 2. 引⽤部分と本⽂が明確に区別できること。 3. 引⽤する必然性があり、その範囲 についても必然性・合理性があること。 4. 出所を明⽰すること。 5. 部分的な改変などをせず、原⽂のまま引⽤すること。 株式会社ブレインパッド 〒108-0071 東京都港区⽩⾦台3-2-10 ⽩⾦台ビル TEL︓03-6721-7002 FAX︓03-6721-7010 www.brainpad.co.jp [email protected] Analytics Innovation Company