株式会社ブレインパッドの2019年新卒研修資料です。モデリングに関する基本的な内容を扱っています。
分析の基礎 (モデリング)新卒社員研修株式会社ブレインパッド2019年版
View Slide
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. ⾮階層的クラスタリング
Analytics Innovation Company ©BrainPad Inc. 20-3. 本研修の流れモデリングの考え⽅1モデリングとは何かを学びます確率分布2統計・機械学習の基礎である確率分布について学びます教師あり学習3モデルのうち、教師あり学習について学びますモデルの精度を上げるための⼯夫4教師あり学習の精度を上げるための⼯夫を学びます教師なし学習5モデルのうち、教師なし学習について学びます
Analytics Innovation Company ©BrainPad Inc. 31. モデリングの考え⽅
Analytics Innovation Company ©BrainPad Inc. 41-1. AIと統計・機械学習モデリング 1「⼈⼯知能」という⾔葉は、様々な概念と⼿法を包括する⼈⼯知能指し⽰す範囲は幅広い計算機による、⼈間の知能の実現の試み。機械学習⼈⼯知能研究の中核画像・⾳声認識など⼈間の学習および作業を機械で実施する試み。深層学習機械学習の⼿法の⼀つ画像・⾳声認識の分野でのブレイクスルーを起こした。⾃動で特徴を学習する。⾼精度の識別が可能。• ⼈⼯知能(AI)は古くからある研究分野。計算機で⼈間の知能を再現すること掲げている。• 機械学習は⼈⼯知能の中核技術。画像・⾔語認識など⼈間の⾏いを計算機に学習させて⾃動化する。• 深層学習は機械学習における⼿法の1つ。近年⼤いに注⽬されている。ひとまとめに⼈⼯知能という⾔葉がバズワードとして出回っている。
Analytics Innovation Company ©BrainPad Inc. 51-1. AIと統計・機械学習モデリング 2AI、機械学習、統計モデリングは約100年程度の歴史の中で実⽤レベルに発達してきた1900年代はじめ推測統計学の発⾜1960年代第1次AIブーム(推論と探索)2006年深層学習の登場第3次AIブーム到来1950年代ベイズ統計学の台頭「機械学習」の登場「⼈⼯知能」の登場1980年代第2次AIブーム(エキスパートシステム)2010年代~特定のタスクについては⼈間以上の精度を達成
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
Analytics Innovation Company ©BrainPad Inc. 71.3 AIが適⽤されている分野画像出典:・ Howard, Andrew G., Zhu, Menglong, Chen, Bo, Kalenichenko, Dmitry, Wang, Weijun, Weyand, Tobias, Andreetto, Marco and Adam, HartwigMobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications. (2017). , cite arxiv:1704.04861 .・ https://github.com/amueller/word_cloud最適化問題 画像認識将来予測/要因把握 ⾃然⾔語認識適⽤される⼿法膨⼤な組み合わせの中から、ある条件の下で⽬的関数を最⼤・最⼩にする解を求める問題。利益最⼤化やコスト最⼩化に応⽤される。過去データから確率モデルを構築することで、事象の将来予測や要因の分析を実施する。画像から被写体の状況を把握し、意思決定や⾃動化に役⽴てる。⼈間が⽇常的に使⽤する⾔葉をコンピュータに認識させ、⽂章のカテゴリ分けや、⽂章の評価などを⾏う• 数理最適化活⽤されている領域• ⼈/モノのリソース分配適⽤される⼿法• ⾃然⾔語処理• 深層学習(LSTMなど)活⽤されている領域• 嗜好性把握• 会話ロボット活⽤されている領域• レントゲン診断⽀援• 空撮測量サービス適⽤される⼿法• 画像処理• 深層学習(CNNなど)活⽤されている領域• 需要予測• 宣伝効果把握• コスト要因分析適⽤される⼿法• 回帰モデル• 分類モデル• クラスタリング
Analytics Innovation Company ©BrainPad Inc. 81.3 分析の全体的な流れ 1/2データ取得からモデル作成までの流れは以下のようなものになる⽬的に応じたデータの加⼯、各種変数作成を⾏うため、データの理解と定義作成が重要となるデータC加⼯データB加⼯データA加⼯データCデータ及びビジネス理解・選択・加⼯ データマート作成データBデータA………データC選択データB選択データA選択モデル作成データ取得説明変数x1 x2 x3 …0.7 1 A0.8 0 B1.2 1 A… … …正解データY0.10.30.2…データC理解データB理解データA理解…n データ受領分析設計(仮説)に基づき、必要なデータを取得する。n データの理解と定義作成データを理解することにより分析設計(仮説)を更新する。各データの投⼊⽬的に沿って適切な定義を⾏う。n データの加⼯各データの定義に従い、適切な加⼯(説明変数、⽬的変数の作成など)を施す。n データマート作成分析の⽬的に応じて、適切な形にデータを整形して保持する。例えば教師あり学習の場合は、分析対象の⽬的変数に対して、各説明変数を横持ちで保持する。この場合、1⾏がモデル作成のための1サンプルになる。
Analytics Innovation Company ©BrainPad Inc. 91.3 分析の全体的な流れ 2/2データ受領からモデル作成までの流れは以下の通りであるモデル作成データ取得n データ受領分析設計(仮説)に基づき、必要なデータを取得する。n モデリング作成したデータマートを⽤いて、⽬的に沿ったモデリングを⾏う。n 結果評価意図した⽬的がかなっているか、指標の利⽤や可視化によって定量的に評価する。n 改良点の検討評価結果から改善の可能性を検討する。必要に応じてデータを取得・加⼯しモデルを更新する。結果評価・改良点の検討データCデータBデータA………■ モデルからの出⼒を評価モデル①モデル②モデルy = F(x1,x2,x3…)
Analytics Innovation Company ©BrainPad Inc. 101-4. モデルとは現象の⼀部を簡略的に表現したものである• 例えばビジネスの構造を模式的に表現したものをビジネスモデルと呼ぶ。• 複雑な現象をそのまま扱うのではなく、現象を特徴づける重要な要因や構造のみを表現することで、その現象の仕組みや特性を理解することが容易になる。• AI、機械学習、統計モデリングは現象の構造を数理モデルとして記述していく。社会は様々な現象の複合体 ⼀部の現象だけを切り取る 数理モデルとして記述y x z0.08 2.06 2.08⋮ ⋮ ⋮⋮ ⋮ ⋮観察可能な現象をデータとして収集
Analytics Innovation Company ©BrainPad Inc. 111-4. 統計モデリングとは確率モデルをデータに当てはめて、現象の理解と予測を促す営みである統計モデリングは以下のようなプロセスに沿って⾏われる。1. 現象を完全に記述するような真の確率分布の存在を仮定する。2. 観測可能なデータから、最も当てはまりの良さそうな確率モデルを特定する。3. 特定した確率モデルがどの程度現象を表しているのか、その妥当性を検討する。4. 特定した確率モデルから、現象の理解や将来の予測を⾏う。真の確率分布未知の確率分布データ観測特定した確率モデル推測データと特定した確率モデルの⽐較妥当性 理解・予測1 2 3 4
Analytics Innovation Company ©BrainPad Inc. 121-4. 機械学習モデリングとは統計モデリングに⽐べて解釈性よりもモデルの予測精度を重視している• 統計・機械学習の違いについてのコンセンサスは未だ取れていない。• 強いて上げるならば、統計モデリングは⼈間にとっての解釈に重きを置き、機械学習モデルは予測精度に重きを置いていると⾔えるだろうか。AUC 97%機械学習モデリングは解釈性に乏しくとも、結果の精度が⾼ければ良い︖
Analytics Innovation Company ©BrainPad Inc. 131-5. モデリングにおける基礎知識モデリングを⾏うためには、以下の様々な項⽬について知識を⾝に付ける必要がある正規分布ポアソン分布⼆項分布教師あり学習教師なし学習⼀般化線形モデルクラスタリング決定⽊離散・連続分類・回帰確率分布妥当性を向上させる⼿法確率モデルを特定する⼿法問題の型妥当性を評価する⽅法混同⾏列分類AUC回帰MAEMAPE正則化Hold-out法パラメータ最適化参考: https://optuna.orghttps://scikit-learn.org
Analytics Innovation Company ©BrainPad Inc. 141-6. モデリングにおける⼼構え 1判別・予測の精度は100%ではない 強みを発揮するにはデータが重要 不向きな問題もある100%の予測精度の達成はほとんど不可能であるü どれだけ効果的な法則が⾒つけられたとしても、データにはばらつきがあるため、判別や予測の結果と実際の結果はある程度のずれを持つ。統計や機械学習は魔法の杖ではないü 統計・機械学習モデルは、どのような望みでも叶えられる魔法の杖に思われがちであるが、決してそのようなものではない。ü 課題に対して適切なモデリングを⾏わなければ、望ましい結果は得ることはできない。
Analytics Innovation Company ©BrainPad Inc. 151-6. モデリングにおける⼼構え 2判別・予測の精度は100%ではない 強みを発揮するにはデータが重要 不向きな問題もある良い予測や判別を⾏うためにはデータに条件があるü データの量が⼗分である。• 時系列データに対して季節性を考慮するならば、数年分のデータが必要となる。• 複雑な⼿法が⼗分な性能を発揮するためには、相応のデータの量が必要である。ü 予測対象が適切に含まれている。• ある商品の購⼊者を予測する場合、購⼊者だけでなく⾮購⼊者の情報も必要である。ü 判別や予測を⾏うために必要な情報が含まれている。• 気温に応じて売れやすくなる商品があったときに、気温の情報がデータとして取得できていなければ、気温による推測を⾏うことができない。
Analytics Innovation Company ©BrainPad Inc. 16モデリングはどのような問題でも解けるものではない1-6. モデリングにおける⼼構え 3判別・予測の精度は100%ではない 強みを発揮するにはデータが重要 不向きな問題もあるü そもそも判別や予測のできない問題や、現在は適応の難しい問題もある。• 偶発的に起こるものo サイコロの出⽬、ルーレットの出⽬、コイントスの表裏• 現象が起こるメカニズムが⾼度に複雑であるものo 地震の発⽣の予測、メガヒット商品の発⽣の予測、超⾼額購⼊顧客の発⽣の予測• 過去にデータが無いものo 全く新しい施策の効果の予測、全くの新商品の販売数の予測
Analytics Innovation Company ©BrainPad Inc. 172. 確率分布
Analytics Innovation Company ©BrainPad Inc. 182-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つ振ったときの出た⽬の和」の場合
Analytics Innovation Company ©BrainPad Inc. 192-1. 確率分布とは 離散型と連続型確率変数には離散型と連続型の2種類がある• 離散確率分布を関数として記述したもの → 確率質量関数• 連続確率分布を関数として記述したもの → 確率密度関数確率質量関数離散型確率分布(広告のクリック数、流星の数など)連続型確率分布(⾝⻑、気温、売上など)確率密度関数
Analytics Innovation Company ©BrainPad Inc. 202-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
Analytics Innovation Company ©BrainPad Inc. 212-1. 確率分布とは 連続連続型確率分布を関数として表現したものを確率密度関数と呼ぶ標準正規分布での例2= −1, 1= −2としたのときの確率は0.138である確率密度関数を、任意の区間で積分することで区間の確率 (1< < 2)を求める。• 確率変数が連続値の場合、離散値をとる場合と異なり、任意の = について( = ) = 0となるため、確率を直接求めることはできない。• 確率を求めるためには、以下を条件を満たす確率密度関数()を積分する必要がある。0.138確率密度関数は以下の条件を満たす。右図では2= −1, 1= −2としたのときの確率を求めている。
Analytics Innovation Company ©BrainPad Inc. 222-2. 確率分布の種類確率分布の性質が統計学・機械学習において重要なものが多くある正規分布 ポアソン分布 ⼆項分布• ここでは代表的な3つの確率分布の例を列挙する。• 以下に述べている確率分布は後に説明する⼀般化線形モデルで重要な役割を果たす。• Wikipediaに主要な確率分布とその関係性を表した図*があるので参考にされたい。参考: *https://en.wikipedia.org/wiki/Relationships_among_probability_distributions
Analytics Innovation Company ©BrainPad Inc. 23特徴• 連続型• 定義域:• ⺟数: 期待値、分散2• 期待値は分布の中⼼を表す• 分散が⼤きいほど、すその⻑い形となる2-2.確率分布の種類 正規分布⾃然界の多くの現象が従うと⾔われる代表的な確率分布• 左右対称な釣鐘型をしている。ガウス分布(Gaussian distribution)とも呼ばれる。• 統計・機械学習分野では数学的に扱いやすいために、よく⽤いられる。確率密度関数期待値 分散期待値と分散2の値を変えたときの形状
Analytics Innovation Company ©BrainPad Inc. 24期待値2-2.確率分布の種類 ポアソン分布稀な事象の発⽣回数や計数データのモデリングに使われる確率分布• 時間あたりのWebサーバへのアクセス数、時間あたりの流星の数などはポアソン分布に従う。特徴• 離散型• 定義域: 0 以上の整数• ⺟数: 平均 • 平均と分散が等しい (= )• 平均が⼤きくなるほど、正規分布の形に近づくの値を変えたときの形状確率密度関数分散
Analytics Innovation Company ©BrainPad Inc. 252通りの結果をもつ試⾏を繰り返したとき、⼀⽅が何回起こるかを表す確率分布• 表が出る確率 p のコインを 回投げたときに表が出る回数は、⼆項分布に従う。2-2.確率分布の種類 ⼆項分布期待値特徴• 離散型• 定義域: 0 以上の整数• ⺟数: 試⾏回数、成功確率• 分散が期待値に依存確率密度関数分散試⾏回数と成功確率の値を変えたときの形状
Analytics Innovation Company ©BrainPad Inc. 263. 教師あり学習
Analytics Innovation Company ©BrainPad Inc. 273-1. 教師あり学習とは 1出⼒と⼊⼒が対応したデータからモデリングを⾏う⼿法の総称である• 望ましい出⼒(教師)と、それに対応する⼊⼒データを⽤いてモデリングを⾏う⽅法である。• ⽣成したモデルは、任意の⼊⼒データに対して予測した出⼒を返す。y x1 x2 x390 14.2 0.352 1130 19.8 0.174 0101 16.1 0.911 0118 17.3 0.838 1望ましい出⼒⼊⼒データy x1 x2 x3ypred15.0 0.7 1予測された出⼒任意の⼊⼒データ左表では、yが望ましい出⼒データ、x1~3が⼊⼒データである。これらのデータを使って、出⼒yを予測するように学習されたモデルを⽣成する。右表は任意の⼊⼒データに対して、予測した出⼒を返しているイメージである。
Analytics Innovation Company ©BrainPad Inc. 283-1. 教師あり学習とは 2回帰問題と分類問題に別けられる• モデリングの⽬的によって、回帰と分類を使い分けることになる。回帰分類⽬的 具体例 ⼿法例連続値の予測クラスラベルの予測• 需要量の予測• 年収の予測• スパムメール判定• ファッションブランドの識別• 重回帰• 決定⽊• ニューラルネットワーク• ロジスティック回帰• 決定⽊• ニューラルネットワーク
Analytics Innovation Company ©BrainPad Inc. 293-2. 線形モデル⽬的変数と説明変数の関係を線形の形で表したモデルである• 説明変数が2つ以上のとき、多重回帰モデルと呼ぶ。• また説明変数が⾮線形な関係を持っていても、予測⼦が線形であれば線形モデルである。線形予測⼦• 以下の式の右辺を予測⼦という。
Analytics Innovation Company ©BrainPad Inc. 30(参考)⾮線形モデル⽬的変数と説明変数の関係が線形の形で表せないモデルであるただし、上記の場合は両辺の対数をとって、変数を変換すれば線形モデルとして扱うことができる。⾮線形モデルは、予測⼦が線形な関係でないモデルである。予測⼦が線形に表せない
Analytics Innovation Company ©BrainPad Inc. 313-3. ⼀般化線形モデル⽬的変数の確率分布が特定の分布従うときに⽤いられるモデリングの名称• Generalized Linear Model (GLM)とも呼ばれる。• よく⽤いられるものに線形回帰・ポアソン回帰・ロジスティック回帰がある。• ⽬的変数が特定の確率分布に従うことが仮定されるときに⽤いられる。• ⽬的変数と線形予測⼦の関係を、⽬的変数の確率分布に対応した連結関数(リンク関数)を⽤いて表現する。• 既に述べた線形モデルは、⼀般化線形モデルの1つとして捉えられる。ü 線形モデルü ⼀般化線形モデル• 線形モデルでは⽬的変数と線形予測⼦の関係が恒等連結関数で表現されている。連結関数 線形予測⼦
Analytics Innovation Company ©BrainPad Inc. 323-3-1. ⼀般化線形モデル: 重回帰 1⽬的変数の分布が正規分布に従うと仮定できるときに⽤いられる• ⽬的変数に正規分布を仮定している。• 連結関数は恒等連結関数を⽤いることが⼀般的である。• 最も多く使われる回帰の⼿法である。⼀般化線形モデルの種類 ⽬的変数の分布 連結関数重回帰 正規分布恒等関数() =
Analytics Innovation Company ©BrainPad Inc. 333-3-1. ⼀般化線形モデル: 重回帰 2重回帰モデルの具体例crime poverty single761 9.1 14.3780 17.4 11.5593 20 10.7715 15.4 12.11078 18.2 12.5567 9.9 12.1456 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/
Analytics Innovation Company ©BrainPad Inc. 343-3-2. ⼀般化線形モデル: ポアソン回帰 1⽬的変数の分布がポアソン分布に従うと仮定できるときに⽤いられる• ⽬的変数にポアソン分布を仮定している。• 連結関数は対数関数を⽤いることが⼀般的である。• ⾮負の整数値をとるカウントデータに対するモデリングとして利⽤される。⼀般化線形モデルの種類 ⽬的変数の分布 連結関数ポアソン回帰 ポアソン分布対数関数() = ln()
Analytics Innovation Company ©BrainPad Inc. 353-3-2. ⼀般化線形モデル: ポアソン回帰 2ポアソン回帰モデルの具体例awards math ac vo0 41 0 13 60 1 00 51 1 00 35 0 01 49 0 02 62 1 00 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/
Analytics Innovation Company ©BrainPad Inc. 363-3-3. ⼀般化線形モデル: ロジスティック回帰 1⽬的変数の分布が⼆項分布に従うと仮定できるときに⽤いられる• ⽬的変数に⼆項分布を仮定している。• 連結関数はロジット関数を⽤いることが⼀般的である。• DMに対する購買反応の有無などの⼆値を予測するようなモデリングに⽤いる。⼀般化線形モデルの種類 ⽬的変数の確率分布 連結関数ロジスティック回帰 ⼆項分布ロジット関数() = ln( ⁄ 1 − )
Analytics Innovation Company ©BrainPad Inc. 373-3-3. ⼀般化線形モデル: ロジスティック回帰 2ロジスティック回帰モデルの具体例admit sc gpa r1 r2 r30 380 3.61 0 0 11 660 3.67 0 0 11 800 4 1 0 01 640 3.19 0 0 00 520 2.93 0 0 01 760 3 0 1 01 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/
Analytics Innovation Company ©BrainPad Inc. 383-4. 教師あり学習パラメータの求め⽅
Analytics Innovation Company ©BrainPad Inc. 393-4-1. パラメータの求め⽅モデルの形状を決めた後、実際にモデルのパラメータを求めることになる• 最⼩⼆乗法と最尤法の2つを紹介する。• 最⼩⼆乗法によるパラメータの推定は主に線形回帰モデルで利⽤される。• 最尤法は線形回帰モデル以外のモデルでも広く利⽤される推定⽅法である。パラメータの値を推定するモデルの形状を決める
Analytics Innovation Company ©BrainPad Inc. 403-4-2. 最⼩⼆乗法 1⼿元のデータから、仮定したモデルに最も当てはまりの良いパラメータを求める⽅法の⼀つ• 線形モデル(β; x)に対して、最もデータに当てはまりの良いパラメータ = Fの値を求める⽅法である。• 最⼩⼆乗法は、実測値とモデルの予測値の外れ具合(残差)の⼆乗平⽅和を最⼩にするを求めている。求めたいモデルが以下の(β; x)で表されるとする。この(β; x)のの値が定まれば予測を⾏うことができる。取りうるの値の組のうち、データに対する当てはまりが最も良くなるような = F を選びたい。残差のイメージ最⼩⼆乗法では、 Fの値は以下のように求めている。ただし、Gは実測値であり、(β; x)は任意のを与えたときのモデルの予測値である。arg minによって右辺を最⼩化するようなの集合を Fとしている。最⼩⼆乗法は、実測値と予測値の差(残差)の平⽅和が最⼩となるようなを求める⽅法である。残差
Analytics Innovation Company ©BrainPad Inc. 41(参考) 残差のイメージ最⼩⼆乗法の数値計算例実測 x 実測 y 予測値 残差0.08 2.06 2.34 -0.280.16 2.00 2.57 -0.580.19 2.84 2.66 0.170.21 2.19 2.72 -0.530.22 3.21 2.77 0.450.30 3.33 2.99 0.340.44 3.05 3.42 -0.370.49 3.17 3.57 -0.400.52 3.31 3.66 -0.350.61 3.48 3.94 -0.450.74 4.15 4.32 -0.160.77 4.23 4.40 -0.170.87 4.81 4.71 0.100.88 4.35 4.74 -0.390.92 5.43 4.86 0.57実測 x 実測 y 予測値 残差0.08 2.06 3.16 -1.100.16 2.00 3.32 -1.320.19 2.84 3.38 -0.540.21 2.19 3.41 -1.230.22 3.21 3.44 -0.230.30 3.33 3.59 -0.270.44 3.05 3.88 -0.830.49 3.17 3.98 -0.810.52 3.31 4.04 -0.730.61 3.48 4.22 -0.740.74 4.15 4.48 -0.320.77 4.23 4.53 -0.300.87 4.81 4.74 0.070.88 4.35 4.76 -0.410.92 5.43 4.84 0.59実測 x 実測 y 予測値 残差0.08 2.06 2.08 -0.020.16 2.00 2.16 -0.160.19 2.84 2.19 0.650.21 2.19 2.21 -0.020.22 3.21 2.22 0.990.30 3.33 2.30 1.030.44 3.05 2.44 0.610.49 3.17 2.49 0.680.52 3.31 2.52 0.790.61 3.48 2.61 0.870.74 4.15 2.74 1.410.77 4.23 2.77 1.460.87 4.81 2.87 1.940.88 4.35 2.88 1.470.92 5.43 2.92 2.51
Analytics Innovation Company ©BrainPad Inc. 423-4-3. 最尤法 1⼿元のデータから、仮定したモデルに最も当てはまりの良いパラメータを求める⽅法の⼀つ• 尤度と呼ばれるものを最⼤化するようなパラメータを探索する。• 尤度は、モデルとパラメータを仮定したときに、⼿元のデータが発⽣する確率(密度)の積で表される。• ⼿元のデータが最も発⽣しやすいモデルの形状になるようなパラメータを求めている。モデル(; )のパラメータを操作し、⼿元のデータから計算される尤度が最も⾼くなるを探索する。以下の例では• (; )を正規分布、パラメータを={, }としている。• データは = {,} = {3,2}から発⽣させた。⼗分に探索を⾏い、尤度と対数尤度が最も⼤きくなるを関数(; )のパラメータとする。⋯様々な{, }の組み合わせを探索する。
Analytics Innovation Company ©BrainPad Inc. 433-4-3. 最尤法 2尤度、対数尤度の定義• 尤度はモデル(; )と、そのパラメータを適当に与えたときに、⼿元のデータGが発⽣する確率(密度)の積を求めている。• 最尤法は、尤度が最⼤となるパラメータをモデル(; )の最も当てはまりの良いパラメータとして決める⽅法である。• 尤度、対数尤度は以下のように定義されている。尤度関数(M)モデル(M)対数尤度関数(M)⋮最も値が⾼くなるパラメータをモデル(; )のパラメータとする• 尤度関数(; )または対数尤度関数 l(; )の、最も値が⾼くなるようなパラメータを探索する。尤度関数のイメージ尤度関数(; ) 、対数尤度関数l(; )が最も⾼くなるようなパラメータはどちらも同じとなる。
Analytics Innovation Company ©BrainPad Inc. 443-4-4. 最尤法: 正規分布の場合モデル(M)尤度関数(M)対数尤度関数(M)正規分布の場合 = {, } = {, }とした()の確率(密度)*1 1.20 0.132 2.73 0.203 3.59 0.194 3.86 0.185 4.27 0.166 4.42 0.167 5.60 0.09⋮ ⋮ ⋮*モデルが連続値関数のため値は近似値である。尤度: 9.39e-09対数尤度: -18.5尤度・対数尤度の計算パラメータの推定の際には、計算の難易度から対数尤度関数を利⽤して計算されることが多い。
Analytics Innovation Company ©BrainPad Inc. 453-5. 教師あり学習決定⽊
Analytics Innovation Company ©BrainPad Inc. 463-5-1. 決定⽊⽬的変数の分布は仮定せずに、⽊構造でモデリングを⾏う⼿法• 分割基準に従って段階的にデータを分割することで、⽊構造を⽣成していく。• ⽬的変数を最もよく説明するように、説明変数を分割基準に従って分割していく。• 可視化したときの解釈性が⾼く、要因の分析を⾏う際に利⽤される。• 決定⽊から派⽣した、予測精度が優秀なアルゴリズムが存在する。• Random Forest• Gradient Boosting1≤ 1.03yesyes nono2≤ 1.04 001• ⽬的変数のクラス1, 0をx1, x2で分類したい• 決定⽊による分類結果 • 決定⽊による分類結果をグラフ上で確認
Analytics Innovation Company ©BrainPad Inc. 473-5-2. 決定⽊ アルゴリズム 1C4.5 CART対応範囲 分類のみ 分類 ・ 回帰⽬的変数の型 カテゴリカルのみ カテゴリカル ・ 連続値分割基準 Gain ratio Gini index ・ MSE代表的な決定⽊の実装アルゴリズム決定⽊アルゴリズムによって分析の対応範囲が異なる• 実装アルゴリズムによっては分類のみしか扱えないものがある。• scikit-learnではCARTをベースにしたアルゴリズムが実装されている。• CARTは分類問題では分割基準にGini indexを⽤いる。
Analytics Innovation Company ©BrainPad Inc. 483-5-2. 決定⽊ アルゴリズム 2CARTアルゴリズムを例に、どのように分割を⾏っていくかを確かめる• 右表のデータを⽤いて分類問題の説明を⾏う。• CARTは分割の指標としてGini indexを⽤いている。(|) : ノード 内のクラス の割合Gini Indexノードにおいてどの程度クラスが混ざり合っているのかを表している。例: 右表のClass列にだけ着⽬し、Gini indexを計算する。Class列は10つの”1”と10つの”0”で構成されているため、Gini indexは以下のようになる。Class 1 20 0 00 0 00 1 00 0 01 0 11 0 00 1 00 1 00 1 00 0 01 1 11 0 01 1 11 0 11 1 10 1 11 1 11 0 11 0 10 1 1
Analytics Innovation Company ©BrainPad Inc. 493-5-3. 決定⽊ CARTアルゴリズムCARTは分割後に最も不純度が低くなるような分割基準を探索する• 今回の例では1と2のどちらを⽤いて分割を⾏うと不順度が低くなるかを確かめる。• アルゴリズムとしては各候補での分割した際の不純度を⽐較し、最も不純度が低くなるものを探す。• 具体的には以下の算式が最⼤になる候補を分割に最適なものとして選ぶ。となるため、2で分割を⾏うことが最適となる∆(, )は、ノードで分割候補を⽤いて分割した際の不純度の変化を表す。とは分割候補で分割した際に、元のノードから次のノードの⽚⽅にどれだけデータが分割されたかを表す割合。()と()は分割候補で分割した際の不純度を表す。• 1で分割を⾏った場合• 2で分割を⾏った場合
Analytics Innovation Company ©BrainPad Inc. 503-5-4. 決定⽊ 剪定決定⽊は分割した先に存在するクラスが1つになるまで繰り返すことができるが、過学習*を起こすために剪定作業が必要になる*過学習については後のスライドにて説明を⾏う。剪定については様々な⽅法がある。• 分割したノードの不純度が設定した閾値よりも低くなると分割を⽌める。• 分割したノードに含まれるサンプルサイズがある閾値よりも少なくなると分割を⽌める。• 分割前のノードの不純度と、分割後の不純度の差が⼩さい場合に分割を⾏わない。• 予め分割の回数を制限する。• ⽬的に合わせて⼈間が解釈しやすい程度で分割を⽌める。いずれの場合においても⽬的に合わせて考慮する必要がある。
Analytics Innovation Company ©BrainPad Inc. 513-6. 教師あり学習アンサンブル学習
Analytics Innovation Company ©BrainPad Inc. 523-6-1. アンサンブル学習弱い学習機を複数作成し、束ねることで強い学習機を作成する⼿法• データの重み付けや学習機の作成⽅法、統合の⽅法によって様々な⼿法が考案されている。• ここでは代表的なBoosting、Baggingについて紹介する。弱学習機データ 統合 強学習機アンサンブル学習のイメージ
Analytics Innovation Company ©BrainPad Inc. 533-6-2. アンサンブル学習 BoostingBoosting: 1つの弱学習機で予測をした結果を、次に作成する弱学習機に引き継いで、逐次学習を⾏っていく⼿法である• 弱学習機で学習を⾏った際に⽣じる予測誤差を⼩さくするために、データに適切な重みを与えて繰り返し学習を⾏っていく。• Boostingは前の弱学習機の結果を参考にしていくsequential(直列)なアンサンブル学習である。• 最終的には、作成した弱学習機たちを適切に統合し、強学習機とする。• 重みの与え⽅や統合の⽅法は様々な⼿法が提案されている。(AdaBoostなど)Boostingのイメージデータの重みデータ弱学習機重みの調整弱学習機の統合強学習機
Analytics Innovation Company ©BrainPad Inc. 543-6-3. アンサンブル学習 AdaBoost (Adaptive Boosting)AdaBoostはBoostingの代表的なアルゴリズムである• 前の弱学習器で予測を誤ったデータの重みを⼤きくし、次の弱学習機では誤ったデータを正しく予測するよう学習する。• 弱学習機の重みを考慮した多数決によって予測を⾏う。2値分類におけるAdaBoostの具体的なアルゴリズム (⽬的変数は{1, -1}とする。)1. 各データの重みが等しくなるように初期化する。ただしはサンプルサイズである。2. 以下を任意の回数()だけ繰り返す。( = 1, … , )a. 任意の弱学習機()を以下のような重み付き誤差関数を最⼩とするように学習する。(M)はモデルの予測を誤ったときに1、正しいときに0を返す関数である。b. 弱学習機()の重みを計算する。c. データの重みGdを更新する。3. M個の弱学習機を作成した後に、強学習機を求める。()は > 0で1、 = 0で−1を返す関数である。データhijhijデータの重み重み付き誤差関数を最⼩化した弱学習機弱学習機の重みh() i() j()j()
Analytics Innovation Company ©BrainPad Inc. 553-6-4. アンサンブル学習 Bagging (Bootstrap Aggregating)Bagging: Bootstrap Samplingしたデータで弱学習機を作成し、複数の弱学習機の結果を投票(Voting)によって束ねる⼿法である• Baggingはparallel(並列)に弱学習機の学習を⾏うアンサンブル学習である。• 学習データに多様性を持たせることで、最終的な予測結果の分散を縮⼩させることが⽬的である。• Votingの⽅法には簡単なものでは多数決や平均化があるが、様々な⼿法が提案されている。• 代表的なものとしてRandom Forestがある。Bootstrap Sample 弱学習機データVoting強学習機Baggingのイメージ※ Bootstrap sampling︓全集合から重複を許してランダムにサンプリングする⼿法。復元抽出とも呼ばれる。
Analytics Innovation Company ©BrainPad Inc. 563-6-5. アンサンブル学習 Random ForestRandom Forestは、基本的には決定⽊アルゴリズムとBaggingの組み合わせである• ただし、ノード分割に利⽤する説明変数をランダムに選択するという条件が加わっている。• 個の決定⽊を作成し予測し、予測結果の多数決を⾏うことで結果を求めるアルゴリズムである。Random Forestの具体的なアルゴリズム1. 以下を任意の回数()だけ繰り返す。( = 1, … , )A. データからBootstrap Sample を⽣成する。B. を訓練データとする。C. 決定⽊を作成する。ただし、以下の条件を与える。• に含まれる個の説明変数から、ランダムに‘個の説明変数を選択する。• ’個の説明変数の中から最適な決定⽊を作成する。2. ⼊⼒データに対するによる個の予測結果を得る。3. 個の予測結果から多数決を⾏い強学習機の結果とする。データBootstrap Sampleノード分割に条件に与えた決定⽊各⽊の予測結果hij多数決
Analytics Innovation Company ©BrainPad Inc. 573-7. 教師あり学習ニューラルネットワーク
Analytics Innovation Company ©BrainPad Inc. 583-7-1. ニューラルネットワークとは 1脳機能に⾒られる特性をシュミュレーションによって表現することを⽬指した数理モデル• 脳は構成要素であるニューロンが並列に活動し処理を⾏うことで⾼度な認知機能を実現している。• ニューラルネットワークは、この脳の動きをコンピュータ上で再現することを試みている。• 近年の発達が著しく様々な分野での応⽤に期待されている。計算機上で再現脳神経細胞(ニューロン) ()hhiirrss = {0 1}ニューラルネットワークの1つのユニットニューロンが並列に活動する ニューロンに相当するユニットを並列に実⾏する
Analytics Innovation Company ©BrainPad Inc. 593-7-1. ニューラルネットワークとは 2ニューラルネットワークは各層のユニットが次の層のユニットに接続される• ⼊⼒層はデータである。• 隠れ層と出⼒層は、前層のユニット(ノード)から重み付きの値を受け取る。• ⼀般に隠れ層の数が増加するとモデルの表現能⼒は⾼くなる。⼊⼒層 隠れ(中間)層 出⼒層隠れ(中間)層は⼊⼒層と出⼒層ではない層を表す⽤語である。それ以外の特別な意味合いは無い。⼊⼒層 隠れ(中間)層 出⼒層隠れ層が2層以上のものを特に深層学習(ディープラーニング)と呼ぶ。隠れ層1層のニューラルネットワーク
Analytics Innovation Company ©BrainPad Inc. 603-7-2. ニューラルネットワーク 応⽤分野ニューラルネットワークは多岐に渡る分野で応⽤されている⼿法である様々な分野で応⽤が始まっており、いくつかは⾝の回りのプロダクトとして実⽤レベルに達しているものもある。画像・コンピュータビジョン ⾃然⾔語処理⾳声 制御• 物体検出・分類• 画像⽣成• ⾳声認識• 話者識別• 翻訳• 意味解析• ⾃動運転• ロボット
Analytics Innovation Company ©BrainPad Inc. 613-7-3. ニューラルネットワーク 他の⼿法との違い統計・機械学習モデルに⽐べて、モデルの表現の⾃由度が⾼い• 既存の統計・機械学習モデルに⽐べ、隠れ層を増やすだけで⾼次元の表現が可能である。• ⼈間が特徴量を細かく指定せずに、ある程度の精度を達成することができる。• モデルの表現が豊かな代わりに⼈間には解釈が難しいことが⼤半であり、モデルがデータをどのように処理しているかがブラックボックスになる。画像を画像のまま学習させることも可能• 豊かな表現• ブラックボックス従来までは達成できなかったタスクを次々とこなしている
Analytics Innovation Company ©BrainPad Inc. 623-7-4. ニューラルネットワーク ⽋点統計・機械学習に⽐べて計算量が圧倒的に多い• 研究の初期段階では計算⾃体が不可能であった。• 現在注⽬されている理由の1つとして、コンピュータの発達により計算ができるようになったことが挙げられる。• 現在でも⼀部の企業(Googleなど)のみが処理が可能な計算量の問題はある。結果は正しくとも解釈が難しい• ニューラルネットワークは多くの分野で、既存のモデルよりも遥かに⾼い精度を誇っているが、なぜ⾼い精度を達成することが出来ているのか⼈間には解釈が難しい。• ビジネスの意思決定・医療・政治など⼈間に解釈が出来ないと受け⼊れられない分野では、倫理的な課題や不安感によって受け⼊れられていないケースがある。
Analytics Innovation Company ©BrainPad Inc. 633-7-5. ニューラルネットワーク 様々なモデルニューラルネットワークのモデルには様々なモデルが提案されているここでは現在の代表的なモデルについて紹介するCNNRNNAuto-EncoderGAN• 特に画像分野で著しい功績を残している。⾳声や⾃然⾔語などのタスクでも利⽤されている。• 畳み込み層とプーリング層で構成されたネットワークであるのが特徴である。• 畳み込み層は前層のノードに対して、フィルタ処理を⾏い特徴マップを作成する。• プーリング層では特徴マップに対して情報を圧縮する。• 時系列の情報を取り扱うことができるモデルである。• 2016年程度まで⾃然⾔語処理で特に利⽤されていたLSTMはRNNの1つである。• 時刻の⼊⼒として、時刻tのデータと時刻 − 1の中間層の状態を⼊⼒として受け取ることで過去の情報を考慮することができる。• ⼊⼒と同等の結果を再現するような出⼒を得るように⾃⼰学習する教師なし学習の1つである。• 中間層はデータの特徴を抽出した結果となるように作成される。• ⼊⼒の次元よりも中間層の次元が⼩さい場合次元圧縮となる。• 学習済みの正しく⼊⼒が再現できるモデルに対して、再現できないデータを⼊⼒すると⼊⼒と出⼒の差が⼤きくなるため、異常検知のモデルとしても利⽤されている。• ⽣成モデルの1つ。• 画像分野では⼈間が⾒ても現実味のある画像を⽣成できたことから注⽬が集まっている。• 教師なし学習としてデータを⽣成するモデルと、実際のデータか⽣成されたデータかを識別するモデルの、2つを競わせながら同時に学習する。
Analytics Innovation Company ©BrainPad Inc. 643-7-6. ニューラルネットワーク 学習 1各ユニットは活性化関数と呼ばれる関数を⽤いて出⼒を⾏う• 最もシンプルな活性化関数はステップ関数がある。• よく利⽤される活性化関数として、シグモイド、ReLUなどといった関数がある。 ()hhiiシグモイドはの値が上式によって変換され0から1の連続値を返す活性化関数である。パーセプトロンは任意の閾値によって0または1を返す活性化関数である。ReLUはが0以上のときはを、0以下のときは0を返す活性化関数である。ステップ関数 シグモイド ReLU
Analytics Innovation Company ©BrainPad Inc. 653-7-6. ニューラルネットワーク 学習 2バックプロパゲーションはニューラルネットワークの重み更新を効率よく⾏うアルゴリズムである• ニューラルネットワークの誤差関数は⼀般的に⾮常に複雑で解析的に解くことが出来ない。• バックプロパゲーションは重みの更新を繰り返しながら適切な重みを探索する。予測値と実測値の誤差関数を求める予測値 実測値出⼒層⼊⼒層 隠れ(中間)層出⼒層から⼊⼒層に向かって、微分を繰り返す。(チェーン・ルール)適当な重みで計算する。求めた微分係数を利⽤して誤差関数を最⼩(⼤)化し、重みを更新する。上記を繰り返す。各ノードの微分係数を求める。
Analytics Innovation Company ©BrainPad Inc. 663-7-6. ニューラルネットワーク 学習 3ユニットや隠れ層の数が増えるほど表現⼒が⾼まるが、バックプロパゲーションでの重みの調整は勾配消失問題のため困難になる• 勾配消失とは隠れ層の数を増やしたときに起きる現象である。• 層が多くなると⼊⼒層に近い層で勾配の値が0に近くなってしまい、⼊⼒層付近の重みが更新できなくなる (パラメータの更新が⾏えない)。• ⼀般に層が多い(深い)ときは学習が困難になる。隠れ(中間)層⼊⼒層 出⼒層バックプロパゲーションにおいて、⼊⼒層付近の重みを更新できなくなる。深いネットワーク
Analytics Innovation Company ©BrainPad Inc. 673-7-7. ニューラルネットワーク 学習の⼯夫 1ニューラルネットワークの過学習を防ぐ⼯夫としてドロップアウトがある• ドロップアウトとは学習の際にランダムに⼀部のノードを⾮活性化(削除)する⽅法である。• ⾮活性化されたノードは以降の層に情報を送らなくなる。• ドロップアウトを⽤いた学習はアンサンブル学習の近似であると⾔われる。隠れ(中間)層⼊⼒層 出⼒層⾮活性化
Analytics Innovation Company ©BrainPad Inc. 683-7-7. ニューラルネットワーク 学習の⼯夫 2学習の⾼速化や学習データが少ない際の対応として転移学習がある• 事前に別のドメインで学習されたモデルを転⽤し追加的に学習させる⼿法である。• 事前に学習されたモデルの出⼒層付近だけを追加的なデータを⽤いて再学習することで、計算時間の短縮、学習データが少なくて済むといった利点を持っている。• 学習済みのデータと新しいデータに共通するような特徴を、モデルが学習しているため、転移学習が機能すると考えられている。隠れ(中間)層⼊⼒層 出⼒層出⼒層付近のみを新たなデータを⽤いて再学習させる。
Analytics Innovation Company ©BrainPad Inc. 693-8. 教師あり学習モデルの評価
Analytics Innovation Company ©BrainPad Inc. 703-8-1. モデルの評価良いモデルを作成するためには、作成したモデルの良し悪しを定量的に評価するための⽅法が必要になる• モデルの性能とは、⼤別して以下の2つが基準となる。• 作成したモデルがどれ程現象を説明しているか。• 作成したモデルがどれ程推測を正しく⾏えているか。• 実際の分析では、作成したモデルの評価を⾏い試⾏錯誤を繰り返して、良いモデルを作成していく。評価分析⽤データの作成 モデルの作成 モデルの評価よいモデルが作成出来るまで繰り返す。
Analytics Innovation Company ©BrainPad Inc. 713-8-2. モデルの評価 過学習・汎化能⼒過学習と汎化能⼒• ⼿元のデータに対しては予測ができるが、未知のデータに対しては全く予測ができなくなるケースがある。このようなモデルを過学習(overfit)したモデルという。• ⼿元のデータと未知のデータの双⽅で⾼い予測精度を誇るモデルは汎化能⼒の⾼いモデルという。• 基本的にモデルの評価とは、過学習を避け、汎化能⼒の⾼いモデルを作成するために⾏う。汎化能⼒の⾼いモデル過学習したモデルモデルの評価を⾏い汎化能⼒を⾼いモデルを作成する。
Analytics Innovation Company ©BrainPad Inc. 723-8-3. モデルの評価 評価指標評価指標は、⽬的変数の性質やモデルの⽬的によって使い分ける• モデルが分類と回帰では使われる評価指標は異なる。• モデルの⽬的によっても使い分けられる。• 以下の評価指標について後ほど解説する。利⽤される評価指標の例分類モデル混同⾏列ROC曲線とAUCPR曲線とAP回帰モデル平均⼆乗平⽅誤差 (RMSE)平均絶対誤差 (MAE)平均絶対誤差率 (MAPE)
Analytics Innovation Company ©BrainPad Inc. 733-8-4. モデルの評価 回帰モデルの評価指標回帰モデルの評価指標のうち、よく利⽤される指標を紹介する• 様々な評価指標が提案されており、モデル作成の⽬的に応じて使い分ける必要がある。• ある指標では良い結果であったが、別の指標では悪い結果であるということもあり得る。• 指標だけに依存することなく、実測値と予測値を可視化するなどの対応も場合によっては有効である。回帰モデル 特徴平均⼆乗平⽅誤差 (RMSE)• 特によく利⽤される指標である。• 外れ値に対し影響を受けやすい指標である。平均絶対誤差 (MAE)• 誤差の絶対値の平均である。• 外れ値が含まれていても頑健な指標である。平均絶対誤差率 (MAPE)• 平均的にn%の誤差があると解釈出来る。• 実測値に0がある場合には利⽤できない。
Analytics Innovation Company ©BrainPad Inc. 74RMSEは以下のように与えられる。3-8-5. モデルの評価 回帰モデルの評価指標 RMSE平均⼆乗平⽅誤差 (RMSE)は特に利⽤される指標の1つである• 常に⾮負の値を取り、値が0に近いほど精度が良いと解釈できる。• 実測値と予測値の差を⼆乗しているため、外れ値に対して⼤きな反応を⽰す。• 外れ値が存在する場合に適切な評価ができないことがあるので注意が必要である。実測値予測値
Analytics Innovation Company ©BrainPad Inc. 753-8-6. モデルの評価 回帰モデルの評価指標 MAE平均絶対誤差 (MAE)は直感的に平均的な誤差を解釈できる指標である• 常に⾮負の値を取り、値が0に近いほど精度が良いと解釈できる。• MAEの値は実測値と予測値の誤差の絶対値の平均を表現している。• RMSEと⽐べて外れ値の影響を受けにくいため、外れ値に頑健な指標と⾔える。MAEは以下のように与えられる。実測値予測値
Analytics Innovation Company ©BrainPad Inc. 763-8-7. モデルの評価 回帰モデルの評価指標 MAPE平均絶対誤差率 (MAPE)は平均的な誤差の割合を表す指標である• 0から100の値を取り、値が0に近いほど精度が良いと解釈できる。• 実務で予測の誤差をn%以下にしたい場合などに利⽤する。• 実測値に0が含まれる場合は利⽤することができない。• 割合を計算する都合上、値そのもののスケールが影響するので、解釈に注意が必要である。実測値予測値MAPEは以下のように与えられる。
Analytics Innovation Company ©BrainPad Inc. 773-8-8. モデルの評価 分類モデルの評価指標分類モデルの評価指標のうち、よく利⽤される指標を紹介する• ここで紹介する指標は、全て混同⾏列を中⼼にして導かれる。• 回帰モデルの評価指標と異なり、指標同⼠に明確なトレードオフの関係がある。• モデルの⽬的に応じて、どの指標を最も重視するかを考える必要がある。分類モデル 特徴混同⾏列 • 予測がどれ程当たったか、外れたかを表で確認できる。• 様々な評価指標の関係性を窺うことができる。ROC曲線とAUC• モデルが正しいと予測したものが、真に正しい割合と誤りの割合の関係性を表している。• ROC曲線とAUCを⽤いて、異なるモデルの評価が可能である。PR曲線とAP• 再現率と適合率のトレードオフを可視化したものである。• 予測の厳格さと、網羅性の関係を表しているとも⾔える。• 正例と負例の数に⼤きな差がある場合に有効になる。
Analytics Innovation Company ©BrainPad Inc. 783-8-9. モデルの評価 分類モデルの評価指標 混同⾏列 1予測出来たもの、予測出来なかったものをクロス集計した⾏列である• 2値分類のときは、2x2の分割表となる。• 対⾓成分の真陽性(TP)、真陰性(TN)の値が⼤きいほど分類が良く出来ていることを表す。• この分割表から様々な評価指標を計算する事ができる。真陽性(TP: True Positive)偽陽性(FP: False Positive)偽陰性(FN: False Negative)真陰性(TN: True Negative)実測値予測値正例正例負例負例真陽性: 正しく陽性と予測真陰性: 正しく陰性と予測偽陽性: 実際は陰性であるが、陽性と予測偽陰性: 実際は陽性であるが、陰性と予測
Analytics Innovation Company ©BrainPad Inc. 793-8-9. モデルの評価 分類モデルの評価指標 混同⾏列 2混同⾏列の具体例• 混同⾏列は、実測値と予測値のクロス集計である。• 2値分類の場合は以下のように計算される。3(TP)1(FP)2(FN)2(TN)実測値予測値正例正例負例負例実測値 予測値 判定1 1 TP0 0 TN1 1 TP1 0 FN1 1 TP0 0 TN0 1 FP1 0 FN
Analytics Innovation Company ©BrainPad Inc. 803-8-9. モデルの評価 分類モデルの評価指標 混同⾏列 3混同⾏列から各種指標を導くことが出来る• いずれの指標も分類モデルの評価には重要なものである。• どの指標を重視するかは、モデル作成の⽬的に合わせて選ぶ必要がある。TP FPFN TN実測値予測値正例正例負例負例指標 導出 特徴正解率(Accuracy) + + + + • 予測結果全体がどれだけ正しいかを表す。• 正例数と負例数に偏りがある場合は参考にしにくい。適合率(Precision) + • 正例であると予測したもののうち、実際に正例である割合。• 商品のレコメンドなど偽陽性が許容できない場合などに⽤いられる。• 機会損失を防ぎたいという考え⽅である。再現率(Recall) + • 感度 (Sensitivity)とも呼ばれる。• 正例全体のうち、真陽性であると判定することができた割合。• 病気の診断や異常検知など、偽陰性を許容できない場合などに⽤いられる。• ⾒逃しは許せないという考え⽅である。特異度(Specificity) + • 負例全体のうち、陰性であると判定することができた割合。• 負例に対するカバー率が重要な場合にチェックされる。• 再現率(Recall、感度、Sensitivity)とはトレードオフの関係。F値(F-measure) × × + • F1スコアとも呼ばれる。• 再現率と適合率をバランス良く⾒たいときに⽤いられる。
Analytics Innovation Company ©BrainPad Inc. 813-8-10. モデルの評価 分類モデルの評価指標 ROC曲線とAUCROC曲線は再現率と特異度の関係をグラフ化したものである• 横軸に(1-特異度)、縦軸に再現率をとり、陽性と陰性の閾値を変化させたときの予測精度を表している。• (1-特異度)の値が⼩さい段階で、再現率の値が⾼くなるモデルが良いモデルである。• 真陽性率( …†…†‡ˆ‰)と偽陽性率( ˆ†ˆ†‡…‰)の関係を表しているとも⾔える。• AUCは、ROC曲線下の⾯積として定義される。• AUCの値はランダムな予測で0.5、完全な予測で1となる。1 - 特異度再現率AUC: 0.787ROC曲線とAUC1である確率(予測)実測値0.95 1⋮ ⋮0.81 10.61 1⋮ ⋮0.5 00.34 0⋮ ⋮0.28 00.24 1⋮ ⋮0.03 0閾値を変えて再現率と特異度を計算していく閾値0.28閾値0.5閾値0.8*ROC: Receiver Operating Characteristic*AUC: Area Under the Curve
Analytics Innovation Company ©BrainPad Inc. 823-8-11. モデルの評価 分類モデルの評価指標 PR曲線とAPPR曲線は再現率(Recall)と適合率(Precision)の関係をグラフ化したものである• 横軸に再現率、縦軸に適合率をとり、陽性と陰性の閾値を変化させたときの予測精度を表している。• 再現率、適合率のどちらも⾼くなるようなモデルが良いモデルである。• 正例と負例のサンプルサイズに⼤きな差があっても頑健な指標である。• 再現率( …†…†‡ˆ‰)と適合率( …†…†‡ˆ†)の定義から、正例について着⽬した指標である。• APは、PR曲線下の⾯積として定義される。再現率適合率PR曲線とAPAP: 0.7611である確率(予測)実測値0.95 1⋮ ⋮0.81 10.61 1⋮ ⋮0.5 00.34 0⋮ ⋮0.28 00.24 1⋮ ⋮0.03 0閾値を変えて再現率と適合率を計算していく閾値0.28閾値0.5閾値0.8*PR: Precision-Recall*AP: Average Precision
Analytics Innovation Company ©BrainPad Inc. 833-8-12. モデルの評価 データの分割正しく評価するために、データを学習⽤と評価⽤に分割する• 学習⽤のデータは訓練データ、学習データなどと呼ばれる。• 評価⽤のデータをテストデータなどと呼ばれる。• 学習⽤のデータで作成したモデルを⽤いて、評価⽤のデータを予測し評価指標を算出することで、未知のデータに対するモデルの評価を⾏う⽅法である。• 分割する理由は⼿元にあるデータを全てモデル作成のために使⽤してしまうと、評価の際に未知のデータとして扱えるデータが無くなってしまい、汎化能⼒を確認することが出来なくなってしまうためである。• 分割の⽅法にも様々な⽅法が提案されている。(後述)データ 訓練データを使⽤しモデルの作成作成したモデルでテストデータを予測し評価データの分割テストデータ訓練データ評価データ分割のイメージ
Analytics Innovation Company ©BrainPad Inc. 843-8-13. モデルの評価 データの分割の⽅法データを分割しモデルを評価する⽅法を「交差検証」と呼ぶ• Cross Validationの邦訳である。• 訓練データとテストデータの分割を繰り返し、複数回モデルの作成と評価を⾏うことから交差と呼ばれる。• ここでは代表的な交差検証の⽅法を紹介する。⼿法 特徴ホールド・アウト 法* 最もシンプルな⽅法。データを単に分けておく⽅法。K-fold 法データをK分割し、モデル作成、評価をK回繰り返す⽅法。ホールド・アウト法に⽐べて、サンプルサイズが⼩さいときにも有効になるケースが多い。Leave-One-Out 法K-fold法のKがサンプルサイズと同じのときのケースである。よりサンプルサイズが⼩さいときに有効になるケースが多い。ただし、計算量が多くなるデメリットがある。*ホールド・アウト法は厳密には交差検証ではないがここでは含めて説明する。
Analytics Innovation Company ©BrainPad Inc. 853-8-14. モデルの評価 ホールド・アウト法モデルの検証を⾏うときの分割⽅法として最もシンプルな⽅法• 訓練データとテストデータを適当に2つに分割し、モデル作成と評価を1度だけ⾏う。• 分割の⽅法によっては正しく評価を⾏うことができないため、どのように分割するかは注意が必要である。• 他の交差検証の⽅法を考える際の基礎となるため、良く理解する必要がある。• ホールド・アウト法はデータを交差させないため、厳密には交差検証ではない。データ 訓練データを使⽤しモデルの作成作成したモデルでテストデータを予測し評価データの分割テストデータ訓練データ評価ホールド・アウト法のイメージ
Analytics Innovation Company ©BrainPad Inc. 863-8-15. モデルの評価 K-fold 法データをK分割し、モデル作成、評価をK回繰り返すK個の評価指標の平均を最終的な評価指標の値とする⽅法• どのデータも1度はテストデータとして利⽤するため、分割によるデータの偏りを⼩さくすることができる。• 分割数Kの値は多ければ多いほど、評価の信頼性が上がるが、計算時間が多くなる。• 機械学習によるモデル作成では最も利⽤される分割⽅法であると⾔える。データ モデルの作成 評価分割評価1評価2評価k評価各評価の平均テストデータ訓練データK-fold 法のイメージ
Analytics Innovation Company ©BrainPad Inc. 873-8-16. モデルの評価 Leave-One-Out 法 (LOO)K-fold 法のKの値をサンプルサイズと同値にした際の名称• 基本的な性質はK-fold 法と同様になる。• サンプルサイズだけモデルを作成するため計算時間が膨⼤になる。• サンプルサイズが少ないときに有効になる場合がある。データ モデルの作成 評価分割評価1評価2評価S評価各評価の平均訓練データテストデータLeave-One-Out 法のイメージサンプルサイズ: S
Analytics Innovation Company ©BrainPad Inc. 884. モデルの精度を上げるため⼯夫
Analytics Innovation Company ©BrainPad Inc. 894-1. 標準化・正規化とは標準化・正規化は、データの持つ情報を損失させることなく、ある範囲に収まるように変換する⼿法である• ⾝⻑と体重、年齢と年収のようにデータの単位や、取りうる値の範囲が異なるときには解釈の問題があり単純に⽐較することが出来ない。• モデリングの⽂脈では、説明変数のスケールが異なっていると以下のような問題がある。• ⽬的変数に対して、各説明変数がどの程度の影響を与えているが確認できない。• スケールの⼤きいデータに対して強くバイアスが掛かってしまう。• アルゴリズムによっては計算する時間が増えてしまう。• 標準化(z-score normalization)は平均0、分散1に変換する⽅法であり、正規化(min-max normalization)はデータを[0, 1]の範囲に変換する⽅法である。標準化(z-score normalization)正規化(min-max normalization)
Analytics Innovation Company ©BrainPad Inc. 904-2-1. 正則化 (Regularization) 1過適合を防ぎ汎化性能を向上させるために⽤いられる⼿法の⼀つ• ⾼次元データの中から本質的な特徴を⾒つけ出し利⽤する⽅法である。• 代表的なものは、L1正則 (Lasso)、L2正則 (Ridge)、L1正則・ L2正則のどちらの表現も可能なElastic Netがある。• 推定の際に各パラメータの値が⼤きくなりすぎないように、罰則(ペナルティ)項を追加する。最⼩⼆乗法に制約を与える例制約を与えない推定制約を与えた推定• 制約を与える項を追加している。• 罰則(ペナルティ)項と呼ばれる。• は正則化係数を表す。• ()は任意の正則化⼿法である。
Analytics Innovation Company ©BrainPad Inc. 914-2-1. 正則化 (Regularization) 2正則化の種類• ここでは代表的な正則化⼿法のみ紹介する。• 以下の3種類の正則化⼿法は良く利⽤されることの多いものである。⼿法 特徴L1 正則化(LASSO)• 不要な説明変数のパラメータの解はスパースになる(多くが0になる)。• 推定の際に結果として特徴量の選択が⾏われている。• 正則化項はL1ノルムである。L2 正則化(Ridge)• L1正則化と異なり解はスパースにはならない。• 解の分散が全体的に⼩さくなる(安定する)。• 正則化項はL2ノルムである。Elastic net• L1正則とL2正則の中間的な特徴を持つ。• パラメータを調整することで、L1とL2の双⽅のメリットを享受することができる。• 正則化項はL1ノルムとL2ノルムの重み付きの和である。
Analytics Innovation Company ©BrainPad Inc. 924-2-2. 正則化 (Regularization) LASSOL1正則化(LASSO)• L1正則化は、推定するパラメータのL1ノルムを罰則項として採⽤している。• パラメータの解はスパースとなり、影響の⼩さいパラメータの値が0となる。(変数選択)• 相関の⾼い説明変数があった場合、⽚⽅の変数が削除されることがある。L1正則化によるパラメータ推定のイメージ右上の円は正則化項を含まないときのパラメータの誤差分布である。左下のL1正則化項との接点が推定されるパラメータとなる。L1正則化の罰則項 (L1ノルム)• 推定するパラメータがh、iの2つのとき、図右上の正則化項を伴わないときのパラメータの誤差分布と、図左下のL1ノルムとの接点が推定されるパラメータの解 Fとなる。• 接点はL1ノルムの頂点になることが多いため、⽚⽅のパラメータの値が0となりやすい。• は正則化の強さを決めるハイパーパラメータである。交差検証などによって最適な値を探索することになる。
Analytics Innovation Company ©BrainPad Inc. 934-2-3. 正則化 (Regularization) RidgeL2正則化(Ridge)• L2正則化は、推定するパラメータのL2ノルムを罰則項として採⽤している。• パラメータの解は⼀般に分散が⼩さくなり安定すると⾔われている。• L1正則化とは異なり変数の選択は⾏われない。L2ノルムによる推定のイメージ右上の円は正則化項を含まない各パラメータの誤差分布である。左下のL2正則化項との接点が推定されるパラメータとなる。L2正則化の罰則項 (L2ノルム)• 推定するパラメータがh、iの2つのとき、図右上の正則化項を伴わないときのパラメータの誤差分布と、図左下のL2ノルムとの接点が推定されるパラメータの解 Fとなる。• L2ノルムの形状が円であるため、各パラメータが0になることはあまり無い。• は正則化の強さを決めるハイパーパラメータである。交差検証などによって最適な値を探索することになる。
Analytics Innovation Company ©BrainPad Inc. 944-2-4. 正則化 (Regularization) Elastic netElastic 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正則化と同等となる。
Analytics Innovation Company ©BrainPad Inc. 954-3. 不均衡データの対応 1各クラスのサンプルサイズが⼤きく偏っていると、少数クラスの分類精度、汎化性能、学習の際の収束などに悪影響が発⽣してしまう• 異常検知など、少数クラスの識別を⾏う課題では特に問題になる。データのクラスの⽐ 学習99%1%モデル予測精度が期待した結果とは異なってしまうことが多い。(少ないクラスをほぼ誤答する)学習結果Class A Class B• 不均衡データへの対策は⼤きく分けて、データを加⼯し対応する⽅法と、モデル作成のアルゴリズムによって対応する⽅法がある。• ここでは、データの加⼯によって対応する⽅法(サンプリング)について紹介する。
Analytics Innovation Company ©BrainPad Inc. 964-3. 不均衡データの対応 2サンプリングによる対応• 学習させる際に各クラスの⽐に⼤きな偏りがなくなるようなサンプリングを⾏うことで、学習結果の精度向上を狙う⽅法である。• 少数データを増やす⽅法(Oversampling)と、多数データを減らす⽅法(Undersampling)の2種類に分けられる。少数データを増やすOversampling多数データを減らすUndersampling• Oversamplingの代表的な⼿法• Random Over-sampling• SMOTE• Undersamplingの代表的な⼿法• Random Under-sampling• KNN Based Methods
Analytics Innovation Company ©BrainPad Inc. 974-4. ハイパーパラメータの調整 1通常のパラメータ推定では求まらない変数(ハイパーパラメータ)があり、その変数の値を最適解に近づけるための⼿法• 基本な探索⽅法にグリッドサーチとランダムサーチがある。⻘い点は試⾏するハイパーパラメータの値オレンジの点は最適なハイパーパラメータの値グリッドサーチによる探索のイメージ• グリッドサーチは最もシンプルな探索⽅法である。• ハイパーパラメータの存在範囲を格⼦状に区切り、格⼦点でのパラメータでの結果から最も良いハイパーパラメータを選択する⽅法である。ランダムサーチによる探索のイメージ• ランダムサーチはグリッドサーチに並ぶシンプルな探索⽅法である。• ランダムなパラメータの組合せを試⾏し、最も良い結果のパラメータを選択する⽅法である。
Analytics Innovation Company ©BrainPad Inc. 984-4. ハイパーパラメータの調整 2通常のパラメータ推定では求まらない変数(ハイパーパラメータ)があり、その変数の値を最適解に近づけるための⼿法• ハイパーパラメータの確率分布を仮定し、最適なハイパーパラメータの値の近辺を中⼼に探索するアルゴリズムも多く提案されている。⻘い点は試⾏するハイパーパラメータの値橙の線は確率分布の濃度橙の点は最適なハイパーパラメータの値最適な値の近辺を中⼼に探索しているイメージ• Nelder-Mead法• ベイズ最適化• ガウス過程• Tree-structured Parzen Estimator*よく利⽤されるハイパーパラメータ探索の⽅法*株式会社Preferred Networksが公開しているoptunaはこのアルゴリズムを利⽤している。https://research.preferred.jp/2018/12/optuna-release/
Analytics Innovation Company ©BrainPad Inc. 995. 教師なし学習
Analytics Innovation Company ©BrainPad Inc. 1005-1. 教師なし学習とは1教師なし学習とは、教師あり学習と異なり⽬的変数を設定せずに、説明変数のみでグループ構造や変数間の関係性を抽出する学習の総称である• 主にデータの構造や傾向を明らかにする⽬的で利⽤される。• 教師なし学習の結果を⼈間が解釈する際に利⽤したり、教師あり学習の説明変数として利⽤する。• 教師なし学習の結果の解釈は、各分析者に委ねられる。y x1 x2 x390 14.2 0.352 1130 19.8 0.174 0101 16.1 0.911 0118 17.3 0.838 1望ましい出⼒⼊⼒データ存在しないxnewcluster4.5 22.4 19.1 33.4 1データから新規に作成された特徴クラスタ
Analytics Innovation Company ©BrainPad Inc. 1015-1. 教師なし学習とは 2教師なし学習の代表的な⼿法として、次元圧縮やクラスタリングが存在する• 次元圧縮は、説明変数の候補が多量なときに類似な説明変数を統合した、低次元の新たな説明変数を⽣成する⼿法である。• クラスタリングは、説明変数の特徴から⾃然なグループを⾒つけ出す⼿法である。次元圧縮 クラスタリング3次元から2次元へ圧縮 データを2つのクラスタとして識別
Analytics Innovation Company ©BrainPad Inc. 1025-2. 次元圧縮
Analytics Innovation Company ©BrainPad Inc. 1035-2-1. 次元圧縮 PCA (Principal Component Analysis)PCA (主成分分析)• PCAは次元圧縮の⼿法の1つである。• 分散が最も⼤きくなるような軸を探し出し、新たな軸とすることで次元圧縮を⾏う。• 2つ⽬以降の軸は、探索済みの軸に直交するよう探索を⾏う。• m次元のデータは、最⼤m次元までの新たな軸に移し換えることができる。• 作成した新たな軸の解釈は、分析者に委ねられる。データの分散が最も⼤きくなるような新たな軸を探索する。探索した軸で各データを表現する。2次元のデータを1次元で表現する。2次元に広がるデータ
Analytics Innovation Company ©BrainPad Inc. 1045-2-2. 次元圧縮 NMF (Non-negative Matrix Factorization)NMF• 画像、⾳声やテキストデータなど負の値を取らないデータに対してよく利⽤される。• NMFは元々のデータを、⾮負な2つの⾏列(、)に分解する⼿法である。• 分解した2つの⾏列とは、次のような情報を保持することになる。• は、元々のデータの特徴をよく表すようなK個の特徴クラスタの情報を持つ。• は、各データがK次元の特徴クラスタに対して持つ重みを表現している。• ソフトクラスタリングの1つでもある。データ X( M の⾏列): M の⾏列• K個の特徴クラスタの情報: M の⾏列• 各データのK個の特徴クラスタに対する重み
Analytics Innovation Company ©BrainPad Inc. 1055-3. クラスタリング 概要
Analytics Innovation Company ©BrainPad Inc. 1065-3-1. クラスタリングの概要クラスタリングとはデータを互いに似たもの同⼠でグループ分けする⼿法• 結果として⾒出されたグループは、クラスタと呼ばれる。• 分類されたクラスタの解釈は、分析者が考察する必要がある。適切に分割されたクラスタは、下記の2つの性質を持つ。• 内的結合︓同じクラスタ内のデータは互いに類似している。• 外的分離︓異なるクラスタにある標本対は似ていない。内的結合同じクラスタ内のデータは互いに類似している。外的分離異なるクラスタにあるデータは類似していない。
Analytics Innovation Company ©BrainPad Inc. 1075-3-2. クラスタリング⼿法の分類クラスタリングには、様々な⼿法があるが以下の2個の軸で整理する。階層的クラスタリング⾮階層的クラスタリング階層的・⾮階層的ハードクラスタリングソフトクラスタリングハード・ソフト
Analytics Innovation Company ©BrainPad Inc. 1085-3-3. 階層的クラスタリング階層的クラスタリングと⾮階層的クラスタリング階層的クラスタリング⾮階層的クラスタリング• 最⼩のクラスタが各データの状態からはじめ、逐次的に類似するデータをまとめていき、データ全体が1つのクラスタとなるまでクラスタを作成していく⼿法である。• 作成した各クラスタは、樹形図の形で表現可能である。• 群平均法、最短距離法といった⼿法がある。• 予め与えたクラスタ数になるようクラスタを作成する⼿法である。• 階層的クラスタリングとは異なりクラスタ間に階層構造が存在しない。
Analytics Innovation Company ©BrainPad Inc. 1095-3-4. ⾮階層的クラスタリングハードクラスタリングとソフトクラスタリングハードクラスタリングソフトクラスタリング• 各データは1つのクラスタにしか属さないという条件を与えた場合のクラスタリング⼿法である。• ⼀般にクラスタリングと⾔った場合、ハードクラスタリングを指していることが多い。• 各データが複数のクラスタに属しても良いという条件を与えた場合のクラスタリング⼿法。• 各データが、あるクラスタに属する確率を表現することができる。
Analytics Innovation Company ©BrainPad Inc. 1105-3-5. クラスタリング⼿法の分類階層的・⾮階層的とハード・ソフトの2軸によってクラスタリングアルゴリズムをまとめる• ここでは基本的なアルゴリズムのみ紹介する。• 各⼿法の改良⼿法などもあるため、利⽤時には注意が必要である。階層的⾮階層的• 群平均法• 最短距離法最⻑距離法• 重⼼法• k-means• ここでは取り扱わない• GMM• NMFハードクラスタリング ソフトクラスタリング
Analytics Innovation Company ©BrainPad Inc. 1115-4. データの距離・類似度
Analytics Innovation Company ©BrainPad Inc. 112マハラノビス距離5-4-1. データの距離・類似度 1クラスタリングは、各データがどの程度類似しているかを測定する必要がある• 類似の程度を測定する⽅法は様々な⽅法が提案されている。• どのようなクラスタを作りたいかによって尺度を選択する必要がある。ユークリッド距離マンハッタン距離 コサイン類似度
Analytics Innovation Company ©BrainPad Inc. 1135-4-1. データの距離・類似度 2ユークリッド距離• データの距離を測定するための最も基本的な⽅法。L2距離とも呼ばれる。• 次元ユークリッド空間における、ある2点の線分の⻑さを距離とする。• ユークリッド距離を以下のように定義する。• このの値が0に近い程、データは類似しており、値が⼤きい程データは類似していないと考えられる。• 各次元で分散が異なりすぎる場合、分散が⼤きい次元の影響を強く受けてしまうため、標準化を⾏うことも多い。ユークリッド距離
Analytics Innovation Company ©BrainPad Inc. 1145-4-2. データの距離・類似度 マンハッタン距離マンハッタン距離• 1距離とも呼ばれる。• n次元ユークリッド空間において、各次元⽅向の距離の総和として定義されている。• マンハッタン距離を以下のように定義する。各線はどれも同じ距離である。• このの値が0に近い程、データは類似しており、値が⼤きい程データは類似していないと考えられる。マンハッタン距離
Analytics Innovation Company ©BrainPad Inc. 115マハラノビス距離5-4-3. データの距離・類似度 マハラノビス距離マハラノビス距離• マハラノビス距離は以下のように定義される。• Σは共分散⾏列である。• このの値が0に近い程、データは類似しており、値が⼤きい程データは類似していないと考えられる。• 各次元のスケールが異なっていても、スケールの⼤きさに寄らない結果を得ることが出来る。• 変数間の相関がない場合、ユークリッド距離において各次元について標準化を⾏った場合と同値になる。
Analytics Innovation Company ©BrainPad Inc. 1165-4-4. データの距離・類似度 コサイン類似度コサイン類似度• コサイン類似度は距離の定義を満たさない指標である。• データとの距離とは異なり、データ同⼠がなす⾓度をもって類似度を定義している。• コサイン類似度は以下のように定義される。コサイン類似度• コサイン類似度は−1から1の値をとる。• 1に近付くほど類似しており、−1に近付くほど類似していないことを表す。• ⽂書間の類似度の測定などで利⽤される。
Analytics Innovation Company ©BrainPad Inc. 1175-5. 階層的クラスタリング
Analytics Innovation Company ©BrainPad Inc. 1185-5-1. 階層的クラスタリング階層的クラスタリング• 最⼩のクラスタが各データの状態からはじめ、逐次的に類似するデータをまとめていき、データ全体が1つのクラスタとなるまでクラスタを作成していく⼿法である。具体的には以下のプロセスに従う。1. データ1つが、1つのクラスタとみなす。2. クラスタ間の距離または類似度が最も近いクラスタを併合する。3. 全てのデータが1つのクラスタに属するまで、2を繰り返す。クラスタ間の距離または類似度を測る⽅法によって、複数の⼿法が提案されている。階層的クラスタリングの特徴は以下のようなものがあげられる。• 階層構造を得られ、樹形図によって可視化出来る。階層的クラスタリングのプロセスのイメージ
Analytics Innovation Company ©BrainPad Inc. 1195-5-2. 階層的クラスタリング 群平均法群平均法• 2つのクラスタに属する要素の全ての組み合わせの距離の平均をクラスタ間の距離とし、クラスタ同⼠については最も距離の近いものを併合する⼿法。• 距離の測定には任意の⼿法を⽤いて構わない。• 群平均法でのクラスタ間の距離は以下のように定義される。クラスタ クラスタ群平均法のイメージ各距離を平均
Analytics Innovation Company ©BrainPad Inc. 1205-5-3. 階層的クラスタリング 最短距離法最短距離法• 2つのクラスタに属する要素の全ての組み合わせのうち、最も距離の近いものをクラスタ間の距離とし、クラスタ同⼠についても最も距離の近いものを併合する⼿法。• 距離の測定には任意の⼿法を⽤いて構わない。• 最短距離法でのクラスタ間の距離は以下のように定義される。最短距離法のイメージクラスタ クラスタ最も近い距離
Analytics Innovation Company ©BrainPad Inc. 1215-5-4. 階層的クラスタリング 最⻑距離法最⻑距離法• 2つのクラスタに属する要素の全ての組み合わせのうち、最も距離が離れたものをクラスタ間の距離とし、クラスタ同⼠については最も距離の近いものを併合する⼿法。• 距離の測定には任意の⼿法を⽤いて構わない。• 最⻑距離法でのクラスタ間の距離は以下のように定義される。最⻑距離法のイメージクラスタ クラスタ最も離れた距離
Analytics Innovation Company ©BrainPad Inc. 1225-5-5. 階層的クラスタリング 重⼼法重⼼法• クラスタごとの重⼼の距離をクラスタ間の距離とし、クラスタ同⼠の最も距離の近いものを併合する⼿法。• クラスタ間の距離の測定にはユークリッド距離を⽤いる。• 重⼼法でのクラスタ間の距離は以下のように定義される。クラスタ クラスタ重⼼ 重⼼重⼼間の距離重⼼法のイメージ
Analytics Innovation Company ©BrainPad Inc. 1235-5-6. 階層的クラスタリング ウォード法ウォード法• 2つのクラスタを併合したときの分散と、各クラスタの分散の差が最⼩になるようなクラスタを併合する⼿法であり、他の⼿法と⽐較して精度が⾼くなることが多い。• 距離の測定にはユークリッド距離を⽤いる。• ウォード法でのクラスタ間の距離は以下のように定義される。ウォード法のイメージを併合クラスタの分散クラスタの分散 クラスタP ∪ の分散差分計算差分が最⼩になるクラスタのペアを探す
Analytics Innovation Company ©BrainPad Inc. 1245-6. ⾮階層的クラスタリング
Analytics Innovation Company ©BrainPad Inc. 1255-6-1. ⾮階層的クラスタリング⾮階層的クラスタリング• ⾮階層的クラスタリングは、階層的クラスタリングのように各クラスタに構造的な関係性は無い。• 階層的クラスタリングに⽐べて⼀般に計算量が少なく、⼤規模なデータに対し実⾏可能である。• 分析者が予めいくつのクラスタに分けるかを考える必要がある。データ K=2 K=3いくつに分けるかによって分割の結果が異なる
Analytics Innovation Company ©BrainPad Inc. 1265-6-2. k-meansk-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/
Analytics Innovation Company ©BrainPad Inc. 1275-6-3. GMM (Gaussian Mixtures Model: 混合ガウスモデル)1GMM• ソフトクラスタリングの1つであり、データGがクラスタ’に属する確率を求める。• 混合モデルは、クラスタ’に属するデータG’が発⽣する確率モデルがあると仮定し、任意の確率モデルの組み合わせを考えることで、データGがクラスタ’に属する確率を表現する。GMMの場合はガウス分布(正規分布)の組合せで表現する。• クラスタの数Kは予め決めておく必要がある。GMMのイメージ複数のクラスタが含まれていると思われるデータの確率密度分布ガウス分布の組合せで表現し、各データがどのガウス分布に属するかを確率で求める。データGがどのクラスタ’に属するかは、各確率分布のGでの値の割合で⽰される。確率密度の値 各分布の割合Dist 1 0.010 0.27Dist 2 0.029 0.54Dist 3 0.015 0.19 = −2のときの確率密度の値と各分布が占める割合
Analytics Innovation Company ©BrainPad Inc. 128EMアルゴリズム• GMMはEMアルゴリズムを⽤いて推定を⾏う。• EMアルゴリズムは観測できない潜在変数を含むモデルを最尤推定する⽅法である。• K個の確率分布の形状と各データがK個の確率分布に属する確率の2つを推定する。EMアルゴリズムでは以下を繰り返して推定を⾏う。E-Step: K個の確率分布の形状を仮定して、各データが確率分布Kに属する確率を求める。M-Step: E-Stepで求めた各データが確率分布Kに属する確率のもとでの、K個の確率分布の形状を求める。E-StepK個の確率分布を所与として各データの所属確率を求める。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
Analytics Innovation Company ©BrainPad Inc. 129本資料の著作権は、第三者に帰属する著作権を除き、本資料を作成した株式会社ブレインパッドに帰属します。当社の許可なく無断で、複製、改変・翻訳、販売等をすることはできません。 ただし、本資料の閲覧者は、株式会社ブレインパッドの著作物である旨を表⽰し、かつ、⾮営利⽬的および本資料を改変しない場合に限り、本資料をダウンロード、プリントアウト、またはコピーし、⾃⼰のために閲覧・利⽤することができます。なお、著作権法上認められている範囲内での引⽤を⾏うことは可能です。本資料を引⽤するには、以下の条件を満たす必要がありますので、ご留意ください。 1. 引⽤先と引⽤部分に主従関係があること。 2. 引⽤部分と本⽂が明確に区別できること。 3. 引⽤する必然性があり、その範囲についても必然性・合理性があること。 4. 出所を明⽰すること。 5. 部分的な改変などをせず、原⽂のまま引⽤すること。株式会社ブレインパッド〒108-0071 東京都港区⽩⾦台3-2-10 ⽩⾦台ビルTEL︓03-6721-7002 FAX︓03-6721-7010www.brainpad.co.jp [email protected]Analytics Innovation Company