Semi-Supervised GAN(概要の把握)|DeepLearningを用いた生成モデルの研究を俯瞰する #4

f:id:lib-arts:20191204214057p:plain

当シリーズでは生成モデルの研究や実装にもフォーカスをあてられればということで、進めていきます。

GitHub - eriklindernoren/PyTorch-GAN: PyTorch implementations of Generative Adversarial Networks.

上記に様々なPyTorch実装や論文のリンクがまとめられていたので、こちらを参考に進めていくのが良いのではと思っています。
#1ではACGANの概要について、#2はBicycle GANについて、3ではDual GANについて取り扱いました。

Auxiliary Classifier GAN(概要の把握)|DeepLearningを用いた生成モデルの研究を俯瞰する #1 - lib-arts’s diary

Bicycle GAN(概要の把握)|DeepLearningを用いた生成モデルの研究を俯瞰する #2 - lib-arts’s diary

Dual GAN(概要の把握)|DeepLearningを用いた生成モデルの研究を俯瞰する #3 - lib-arts’s diary

#4ではSemi-Supervised GAN(Semi-Supervised Learning with Generative Adversarial Networks)について取り扱います。

[1606.01583] Semi-Supervised Learning with Generative Adversarial Networks
以下目次になります。
1. Semi-Supervised GANの概要(Abstract、Introductionの確認)
1-1 Abstractの確認
1-2 Introductionの確認(Section1)
2. 論文の重要なポイントの抜粋
2-1. The SGAN Model(Section2)
2-2. Results(Section3)
2-3. Conclusion and Future Work(Section4)
3. まとめ


1. Semi-Supervised GANの概要(Abstract、Introductionの確認)
1-1 Abstractの確認
まず1節では論文の概観を掴むにあたって、Abstractを確認していきます。

[1606.01583] Semi-Supervised Learning with Generative Adversarial Networks

f:id:lib-arts:20191204214312p:plain

以下簡単にAbstractを要約します。
要約:『この論文では敵対的生成ネットワークを、Discriminatorのネットワークにクラスラベルを出力させるようにすることによって半教師あり学習(semi-supervised learning)の文脈に拡張している。Nクラス分類問題の入力データセットを用いながらGeneratorとDiscriminatorの学習を行なっている。学習時にDiscriminatorは、Nクラスの分類に加えてGeneratorの出力を予測するためにN+1のクラスを分類できるように学習する。この手法が通常のGANよりも高いクオリティのサンプル画像を生成できることを研究を通して示している。』


1-2 Introductionの確認(Section1)
1-2ではIntroductionの確認を行っていきます。以下パラグラフ単位でリーディングを行なっていきます。

f:id:lib-arts:20191204215242p:plain

f:id:lib-arts:20191204215320p:plain

第一パラグラフでは、Goodfellowの提案した初期のGANについて紹介した上で、この論文では半教師あり学習(semi-supervised learning)を行なっていることについて言及されています。ここで半教師あり学習というのは、ラベル付けされたデータを用いる画像分類タスク(image classification)が教師あり学習、特にラベル付けされたデータセットを用いない生成モデル(GAN)が教師なし学習であるとみなしています。

f:id:lib-arts:20191204220140p:plain

f:id:lib-arts:20191204220201p:plain

第二パラグラフでは、DiscriminatorとClassifierのどちらかの学習がどちらかの学習を向上させることを利用することについて議論されています。

f:id:lib-arts:20191204223944p:plain

第三パラグラフでは、論文における貢献(contribution)についてまとめられています。三つあるとされておりそれぞれ、1)GANの拡張として生成モデルと分類モデルを同時に学習させること(SGAN)、2)制限されたデータセットにおいてSGANが分類性能を向上させることを示したこと、3)SGANが生成サンプルのクオリティを大きく向上させGeneratorの学習時間を削減すること、であるとされています。


2. 論文の重要なポイントの抜粋
2-1. The SGAN Model(Section2)

f:id:lib-arts:20191204224804p:plain

f:id:lib-arts:20191204224819p:plain

上記のように通常のDiscriminatorやClassifierとは異なり、DiscriminatorはN個のクラスとFAKE(Generatorの出力)のN+1個を分類できるように問題が設定されています。


2-2. Results(Section3)
Section3のResultsではGeneratorの結果(Section3-1)と、Classifierの結果(Section3-2)についてそれぞれまとめられています。

f:id:lib-arts:20191204231013p:plain

まずGeneratorの結果ですが、上記の左のように同じ学習時間ではSGANの方が通常のGANよりも生成結果のクオリティが高くなっています。

f:id:lib-arts:20191204231037p:plain

また、Classifierの結果としては、上記のようにサンプルが少ない状況においてはSGANを用いる方が正答率の高い結果となっています。こちらについてはGeneratorがあることによって、Augmentationと同様の効果が得られていると考えるのが良さそうです。


2-3. Conclusion and Future Work(Section4)
省略します。


3. まとめ
#4ではSemi-Supervised GAN(Semi-Supervised Generative Adversarial Network)について取り扱いました。Classifierの導入と意味ではACGANに似たアプローチであると思われました。(ACGANの方が公開が10月になっているので、6月公開のSGANよりACGANは後の研究となっています)
#5ではInfoGAN(Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets)について取り扱います。

[1606.03657] InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets

回帰モデルのパラメータのベイズ化|高校数学の演習を通して理解する確率分布と最尤法 #6

f:id:lib-arts:20191112170245p:plain

当シリーズでは、高校レベルの数学と絡めながら確率分布と最尤法について取り扱っています。
#1では集合・確率と様々な関数(指数関数、対数関数)について、#2では確率分布のグラフ化と掛け算と対数について、#3では合成関数の微分と最大値問題について、#4では確率分布のパラメータと最尤法について、#5では最尤法と回帰モデルについて取り扱いました。

集合・確率&様々な関数(指数関数、対数関数)|高校数学の演習を通して理解する確率分布と最尤法 #1 - lib-arts’s diary

確率分布のグラフ化&掛け算と対数|高校数学の演習を通して理解する確率分布と最尤法 #2 - lib-arts’s diary

合成関数の微分と最大値問題|高校数学の演習を通して理解する確率分布と最尤法 #3 - lib-arts’s diary

確率分布のパラメータと最尤法|高校数学の演習を通して理解する確率分布と最尤法 #4 - lib-arts’s diary

最尤法と回帰モデル|高校数学の演習を通して理解する確率分布と最尤法 #5 - lib-arts’s diary
#6では#5で取り扱った最尤法の回帰モデルへの導入をさらにベイズ化の文脈で確認できればと思います。
以下、目次になります。
1. ベイズの定理の紹介
2. 回帰モデルのパラメータのベイズ
2-1. 最尤法と回帰モデルの復習
2-2. パラメータのベイズ化とリッジ回帰
3. まとめ

 

1. ベイズの定理の紹介
1節ではベイズの定理について簡単にご紹介します。大枠についての説明なので、途中でわからなくなったら読み流して先に2節をご確認いただけたらと思います。
ベイズの定理について考えるにあたって重要なのが同時確率と条件付き確率の関係式です。
P(A,B) = P(A|B)P(B) = P(B|A)P(A)
ベイズの定理はこの式を変形することで下記を得ます。
P(A|B) = \frac{P(B|A)P(A)}{P(B)}
上記は通常のベイズの定理の式ですが、モデリングの分脈ではAにパラメータw、BにデータのDをおいて数式を考えます。
P(w|D) = \frac{P(D|w)P(w)}{P(D)}
この式はwの関数ですが、P(w|D)を最大にするwを求める問題についてここで考えます。手元のデータはすでに得られている前提で考えられるので、P(D)はwについて考えるにあたっては定数とみなすことができます。
P(w|D) \propto P(D|w)P(w)
そのためwについてP(w|D)の最大値問題を考えるにあたって、上記のように数式を変形した上で、右辺の数式について見ていくことになります。ここで、P(D|w)wをパラメータと見なした上での尤度と考えることができ、P(w)wの事前分布と考えることができます。P(w|D)はデータが観測された後のwの事後分布と考えられます。

ここで、P(w|D)の最大値問題を考える意義ですが、尤度に事前に設定したwの確率分布を掛け合わせることで新たな指標を作り出していることに注目すると良いです。尤度(likelihood)を元に最大値問題を解いてwを求めるのが最尤法(Maximum Likelihood Estimation)なのに対し、事後確率を元に最大値問題を解いてwを求めるのが最大事後確率推定(Maximum a Posterior Estimation)になります。


2. 回帰モデルのパラメータのベイズ
2節では回帰モデルのパラメータのベイズ化について取り扱います。2-1節で#3や#5の内容を軽く振り返った上で、2-2節で1節の内容と絡めながら回帰モデルのパラメータのベイズ化について見ていきます。


2-1. 最尤法と回帰モデルの復習
2-1節では#3や#5の復習として最尤法と回帰モデルについて再度確認します。
L(a,b)=\Pi \frac{1}{\sqrt{2 \pi \sigma^2}}exp(-\frac{(y_{i}-(ax_{i}+b))^2}{2 \sigma_{1}^2})
#5では最尤法におけるパラメータの\mu_{i}ax_{i}+bを用いて表現することで、上記のようなaとbに対する尤度を計算しています。ここで簡易化のために、\sigma_{1}は定数とみなすものとします(パラメータの事前分布の分散と比較するために分散のパラメータは\sigma_{1}とおきました)。
log L(a,b)=\sum (-\frac{(y_{i}-(ax_{i}+b))^2}{2 \sigma^2} + Const) = - \frac{1}{2 \sigma_{1}^2}\sum (y_{i}-(ax_{i}+b))^2 + Const
対数尤度を計算すると上記のようになります。\sigma_{1}が定数と設定したので、非常に簡単な式になっています。これより最小二乗法(Ordinary Least Square)を導くことができたのですが、今回はここに1節で考えたベイズの定理の考え方を導入して最大事後確率推定を行っていきます。2-2節でこちらについて考えていきます。

 

2-2. パラメータのベイズ化とリッジ回帰
1節で定義したP(w|D) \propto P(D|w)P(w)の最大値問題を考えるにあたって、まずは右辺の対数を取ります。
log P(D|w)P(w) = log P(D|w) + log P(w)
このとき対数関数の性質から上記のように分解することができます。log P(D|w)はパラメータwがある上でのデータDが観測される同時確率を尤度と読み替えているのですが、ここでwはaとbにあたり、Dはy_{i}の集合にあたっています。そのため下記が成り立っています。
log P(D|w) = log L(a,b) = - \sum (y_{i}-(ax_{i}+b))^2 + Const
また、パラメータのaとbの事前分布は下記のようにそれぞれ正規分布を仮定します。簡易化のために、aとbは独立であると仮定しました(PRMLの1章に多変量の記載があるので詳しくはそちらを参照ください)。
P(a,b) = P(a)P(b) = \frac{1}{\sqrt{2 \pi \sigma_{2}^2}}exp(-\frac{a^2}{2 \sigma_{2}^2})×\frac{1}{\sqrt{2 \pi \sigma_{2}^2}}exp(-\frac{b^2}{2 \sigma_{2}^2})
したがって、aとbに着目するとlog P(w) = log P(a,b)は下記のようになります。
log P(a,b) = log P(a) + log P(b) = - \frac{1}{2 \sigma_{2}^2}(a^2 + b^2) + Const
これより、log P(D|w) + log P(w)は下記のように導出できます。
log P(D|w) + log P(w) = - \frac{1}{2 \sigma_{1}^2}\sum (y_{i}-(ax_{i}+b))^2 - \frac{1}{2 \sigma_{2}^2}(a^2 + b^2) + Const
これよりリッジ回帰の誤差関数の式を導くことができます。ここで\sigma_{1}\sigma_{2}の比が正則化項に着目する度合いの\lambdaを導くことができます。

ここまでの議論により、回帰モデルのパラメータの事前分布に正規分布を仮定して最大事後確率推定(Maximum a Posterior Estimation)を行うと、リッジ回帰の誤差関数が導出できることがわかります。


3. まとめ
#6では#5で行った最尤法を用いたパラメータの推定からもう少し踏み込んで、パラメータの最大事後確率推定を用いてパラメータの推定について議論しました。また、パラメータの事前分布に正規分布を仮定することで、リッジ回帰の誤差関数を導出できることがわかりました。
#7では今回の議論はパラメータの推定に関してだったので、ここからさらにもう少し踏み込んで予測分布(Predictive distribution)について取り扱います。

Dual GAN(概要の把握)|DeepLearningを用いた生成モデルの研究を俯瞰する #3

f:id:lib-arts:20191203203253p:plain

当シリーズでは生成モデルの研究や実装にもフォーカスをあてられればということで、進めていきます。

GitHub - eriklindernoren/PyTorch-GAN: PyTorch implementations of Generative Adversarial Networks.

上記に様々なPyTorch実装や論文のリンクがまとめられていたので、こちらを参考に進めていくのが良いのではと思っています。
#1ではACGANの概要について、#2はBicycle GANについて取り扱いました。

Auxiliary Classifier GAN(概要の把握)|DeepLearningを用いた生成モデルの研究を俯瞰する #1 - lib-arts’s diary

Bicycle GAN(概要の把握)|DeepLearningを用いた生成モデルの研究を俯瞰する #2 - lib-arts’s diary

#3ではDual GAN(Unsupervised Dual Learning for Image-to-Image Translation)について取り扱います。基本的にCycleGANと同様のアプローチを取っているようなので、その辺を意識しながら読んでいくと良さそうです。

[1704.02510] DualGAN: Unsupervised Dual Learning for Image-to-Image Translation

以下目次になります。
1. Dual GANの概要(Abstract、Introductionの確認)
1-1 Abstractの確認
1-2 Introductionの確認(Section1)
2. 論文の重要なポイントの抜粋
2-1. Related Work(Section2)
2-2. Method(Section3)
2-3. Experimental results and evaluation(Section4)
2-4. Qualitative evaluation(Section5)
2-5. Conclusions(Section6)
3. まとめ


1. Dual GANの概要(Abstract、Introductionの確認)
1-1 Abstractの確認
まず1節では論文の概観を掴むにあたって、Abstractを確認していきます。

f:id:lib-arts:20191203203703p:plain

[1704.02510] DualGAN: Unsupervised Dual Learning for Image-to-Image Translation

f:id:lib-arts:20191203203727p:plain

以下簡単にAbstractを要約します。
要約:『ドメイン間の画像変換への条件付き敵対的生成ネットワークの適用は、近年大きな発展を遂げてきている。タスクの複雑さという理由からconditinal GANは多くの学習データセットを必要としているが、人間がアノテーションを行うのは高価で実用的ではない場合もある。言語処理における機械翻訳のdual learningを参考に、我々は新しいdual-GANのメカニズムを開発し、二つのドメインのラベルづけされてないデータを元に学習を行えるようにした。通常のGANではドメインUからドメインVの変換をするが、Dual GANではその反転も取り扱っている。これによりモデルはループ構造になるため、誤差関数として画像の再構成の誤差(reconstruction errorof images)を考慮している。』


1-2 Introductionの確認(Section1)
1-2ではIntroductionの確認を行っていきます。以下パラグラフ単位でリーディングを行なっていきます。

f:id:lib-arts:20191203205115p:plain

第一パラグラフでは、セグメンテーションなどの多くの画像処理のタスクは画像変換タスク(image-to-image translation problems)として取り扱うことができるものの、従来は別々に取り扱っていた一方で、FCN(Fully Convolutional Networks)やcGANs(conditional Generative Adversarial Nets)のように統合して取り扱えるフレームワークが2014〜2015年頃から出てきていることについて述べられています。

f:id:lib-arts:20191204171347p:plain

第二パラグラフでは、FCNやcGANsのような汎用的な目的での手法はラベルをつけたり合致する画像のペアを用意したりという意味で教師あり学習(supervised learning)であり、学習データを用意するのに非常に時間がかかるとされています。

f:id:lib-arts:20191204171404p:plain

第三パラグラフでは、DualGANの論文における取り組みとして、汎用的な目的で用いることができる画像変換(image-to-image translation)の教師なし学習(unsupervised learning)の枠組みを開発することを目指したとされています。教師なし学習にすることで、二つのグループにおけるデータ群を用意するだけで良くなるようにしたとされています。

f:id:lib-arts:20191204172258p:plain

f:id:lib-arts:20191204172314p:plain

第四パラグラフでは、DualGANのアプローチは機械翻訳における2016年の論文である、"Dual learning for machine translation."を参考にしたとされています。この論文のタイトルにあるDual learningからとって、DualGANにしたとされています。

 

f:id:lib-arts:20191204172720p:plain

第五パラグラフでは、DualGANの学習の仕組みについて簡単な言及がされています。2つのドメイン間の変換を同時に学習するとされています。詳しくはSection3で説明されています。


2. 論文の重要なポイントの抜粋
2-1. Related Work(Section2)

f:id:lib-arts:20191204173430p:plain

上記のように、originalのGAN(Goodfellow)やconditional GANについて参照したのちに、Dual learningについて、"Dual learning for machine translation."などを参照しています。

f:id:lib-arts:20191204173453p:plain

(中略)

f:id:lib-arts:20191204173521p:plain

また上記のように同時期に出されたCycleGANと同様のアプローチだということについても言及されています。CycleGANの方が1ヶ月先に公開されていることと、当記事の投稿時の引用数がCycleGANが3,000強、DualGANが500強となっていることから一般的な認知としてはCycleGANの方が大きいようです。こちらについては生成モデルの研究は2017年頃は非常に流行っていたようなので、研究テーマが被ってしまったように思われます。


2-2. Method(Section3)

f:id:lib-arts:20191204174144p:plain手法の大枠については上記の論文のFigure1から読み取ることができます。基本的にはCycleGANと同様のネットワークの全容になっています。


2-3. Experimental results and evaluation(Section4)
省略します。


2-4. Qualitative evaluation(Section5)

f:id:lib-arts:20191204174931p:plain

上記のような比較がされています。


2-5. Conclusions(Section6)
省略します。


3. まとめ
#3ではDualGAN(Unsupervised Dual Learning for Image-to-Image Translation)について取り扱いました。CycleGANと基本的に同様だったので、詳細についてはいくつか省略しました。
#4ではSemi-Supervised GAN(Semi-Supervised Generative Adversarial Network)について取り扱います。

[1606.01583] Semi-Supervised Learning with Generative Adversarial Networks

Ch_8 戦略と社会問題(競争優位とCSR)【後編】|『[新版]競争戦略論Ⅰ(by Michael Porter)』読解メモ #15

f:id:lib-arts:20191028154807p:plain

「[新版]競争戦略論Ⅰ」を読み進めていきます。

[新版]競争戦略論Ⅰ | 書籍 | ダイヤモンド社

過去の読解メモについては下記などを参照ください。

Ch_5 トレードオフ ー 戦略のかすがい|『[エッセンシャル版]マイケル・ポーターの競争戦略』読解メモ #8 - lib-arts’s diary

Ch_6 適合性 ー 戦略の増幅装置|『[エッセンシャル版]マイケル・ポーターの競争戦略』読解メモ #9 - lib-arts’s diary

#14では第8章の『戦略と社会問題(競争優位とCSR)』の前編として、「CSRをめぐる四つの議論を検証する」までの内容を取り扱いました。

Ch_8 戦略と社会問題(競争優位とCSR)【前編】|『[新版]競争戦略論Ⅰ(by Michael Porter)』読解メモ #14 - lib-arts’s diary

#15では第8章の『戦略と社会問題(競争優位とCSR)』の後編として、「事業とCSRを一体化する」以降の内容を取り扱います。
以下目次になります。
1. 事業とCSRを一体化する
2. 戦略的CSRを推進する体制
3. CSRを超えて、企業と社会の一体化へ
4. 感想・まとめ

 

1. 事業とCSRを一体化する(簡単な要約)
CSRを推進するにはまず企業と社会の一般的な関係を基本に置きつつ、その上でCSRを戦略や事業と関連付ける必要がある。企業と社会は互いに必要とし合っているという一般論はやはり基本となる真理である。
企業が成功するためには社会が健全でなくてはならないし、社会が健全であるためには企業の成功が欠かせない。政府やNGO(非政府組織)、その他の市民社会の構成員たちが健全な社会を目指す戦いの中で企業の生産性の足を引っ張るようなことをすれば、部分的にうまくいっても全体的には機能不全に陥る。企業と地位ratio記者会の競争力が低下し、賃金が上がらず、雇用が失われ、税金や寄付の源である富も失われるからである。
企業のリーダーも市民団体のリーダーも互いが衝突する部分にばかり意識を向け、利害が一致する接点への関心が足りないと思われる。企業と社会が相互依存関係にある以上、いかなる意思決定も企業と社会の双方に恩恵をもたらすものでなくてはならない。
事業とCSRの一体化にあたっては下記を意識しながら進めていくと良い。

・企業と社会の接点を探す
-> 企業と社会の相互依存には二つの方向があり、一つは企業が日常の事業活動を通じて社会に及ぼす影響である「企業から社会への影響(インサイドアウト・リンケージ)」、もう一つは外侮の社会状況が企業に及ぼすプラスとマイナス両面の影響である「社会から企業への影響(アウトサイドイン・リンケージ)」である。
-> 全ての企業は長期的戦略を実現する能力に影響を及ぼすなんらかの競争環境におかれており、社会の状況は企業を取り巻く競争環境の重要な一部であることは理解しておくと良い。
-> 競争環境にはCSR活動の機会が存在し、例えば望ましい人材を雇用できるかどうかはいくつかの社会的要因に依存するが、企業はこれに影響を及ぼすことができる。

・対応すべき社会問題を選ぶ
-> どんな企業も全ての社会問題を解決することはできないし、全ての社会的コストを引き受けることもできない。従って、CSR活動にあたっては、自社の事業と関連性が高い社会問題を選択する必要がある。それ以外の問題はそれに取り組むのに適したポジションにいる他の業界の企業、NGO、政府機関などに任せれば良い。
-> CSRのテーマを選択する際の指針は、「そのテーマには価値があるか」ではなく、「そのテーマは共通の価値を生み出す機会をもたらすか」でなくてはならない。

・戦略的CSRを企画する
-> CSRは社会にとっての価値を同時に実現し、地域社会の期待を上回るものでなければならない。「迷惑を減らす」というレベルに留まることなく、「社会を良くすることで戦略を強化する」というレベルを目指すべきである。
-> 戦略的CSRとは「善良な企業市民」や「バリューチェーンの悪影響の緩和」のレベルを超えて、社会と企業の両方に独自性のあるメリットをもたらす活動に集中することを意味する。ここにこそ「共通の価値(シェアードバリュー)」を実現するチャンスが眠っている。

・「企業から社会へ」と「社会から企業へ」の一体化
-> バリューチェーンイノベーションをもたらすことも、競争力を制約している社会環境を変えることも。企業と社会の両方に価値をもたらす有力な手段であるが、両方を同時に行うことができればCSRの効果はさらに大きくなる。

・バリュープロポジションにふさわしい競争環境を整える
-> いかなる戦略もその核心には、自社独自のバリュープロポジション(提供価値)が存在する。全ての企業がバリュープロポジションの中心に社会問題を位置付けられる訳ではないが
なんらかの社会的次元を加味するだけでもポジショニングに新たな方向性が生まれて競争力が増す。

 

2. 戦略的CSRを推進する体制(簡単な要約)
企業と社会のニーズを一体化するには、正しい意図と強いリーダーシップだけでは不十分で、それにふさわしい組織構造やレポーティングシステム、然るべきインセンティブが必要である。ラインマネージャーの仕事内容に「自社業務と関連する競争環境に大きな影響を及ぼす社会問題を発見する」ドタキャン とを含めている企業は少ない。
ステークホルダーの満足度を評価指標とする現在のアプローチは、あまり良い効果をもたらしてはいない。評価指標はCSRが社会に与えるインパクトでなくてはならず、そのためにはラインマネジャーたちは外(競争環境)から内(自社組織)への影響についてもっと知るべきであり、CSR担当者はバリューチェーン内のあらゆる活動をきめ細かく理解する必要がある。
戦略とは選択であり、CSRもまた例外ではなく、対象を絞らなくてはならない。企業の前には無数の社会問題があるが、自社が取り組むことによって社会を変革し、同時に競争優位を獲得できる問題はごく一部である。対象を正しく選び、企業戦略と調和がとれたCSR活動を積極的に展開する企業は、そうではない企業との差を次第に広げていくことができるであろうと思われる。


3. CSRを超えて、企業と社会の一体化へ(簡単な要約)
企業は雇用の創出、投資、購買、日々の業務を通じて社会に大きな恩恵をもたらす。企業が社会や地域に対してなしうる最大の貢献は、経済的繁栄への貢献に他ならない。政府もNGOも、この基本的な事実を忘れがちである。
世界中の全ての問題が企業の責任であるはずがないし、企業が全てを解決できるほどの資源を持っているはずもない。一方で企業は、自社が最も貢献できる社会問題の改善が競争優位につながるような社会問題を選び取ることができる。そして共通の価値を創出することによってその社会問題に立ち向かうなら、政府や民間からの補助金がなくても自立できる解決策が生まれるかもしれない。
優れた企業がその豊富な経営資源、能力、マネジメント能力を、十分理解も利害関係もある社会問題の解決のために振り向けるならば、他のいかなる機関、いかなる慈善団体よりも大きなメリットを社会にもたらすことができると思われる。


4. 感想・まとめ
#15では第8章の『戦略と社会問題(競争優位とCSR)』の後編として、「事業とCSRを一体化する」以降の内容について取り扱いました。CSRと事業の一致については現実問題はなかなか実現が難しい印象を受けましたが、考え方としては面白いなと思いました。
#16では第9章の『新任CEOを驚かせる7つの事実』の前編として、「CEOは社内で何が起きているか把握できない」までの内容について確認していきます。

最尤法と回帰モデル|高校数学の演習を通して理解する確率分布と最尤法 #5

f:id:lib-arts:20191112170245p:plain

当シリーズでは、高校レベルの数学と絡めながら確率分布と最尤法について取り扱っています。
#1では集合・確率と様々な関数(指数関数、対数関数)について、#2では確率分布のグラフ化と掛け算と対数について、#3では合成関数の微分と最大値問題について、#4では確率分布のパラメータと最尤法について取り扱いました。

集合・確率&様々な関数(指数関数、対数関数)|高校数学の演習を通して理解する確率分布と最尤法 #1 - lib-arts’s diary

確率分布のグラフ化&掛け算と対数|高校数学の演習を通して理解する確率分布と最尤法 #2 - lib-arts’s diary

合成関数の微分と最大値問題|高校数学の演習を通して理解する確率分布と最尤法 #3 - lib-arts’s diary

確率分布のパラメータと最尤法|高校数学の演習を通して理解する確率分布と最尤法 #4 - lib-arts’s diary

#5では#4で取り扱った最尤法を元に回帰モデルについて見ていきます。通常の単回帰分析だけでなく、一般化線形モデルやDeepLearningとも話をつなげながら記述していきます。
以下、目次になります。
1. 最尤法の復習
2. 最尤法と回帰モデル
2-1. 最尤法から導く最小二乗法
2-2. 一般化線形モデルについて
2-3. DeepLearningと最尤法
3. まとめ

 

1. 最尤法の復習
1節では#4で取り扱った最尤法について簡単に復習します。
https://lib-arts.hatenablog.com/entry/math_mle4
基礎的な統計では得られたデータを元に、平均や分散を計算するという記述統計的なアプローチをとりますが、最尤法は得られたデータの裏側に確率分布という規則を仮定します。確率分布はそれぞれが大まかな形状を持っていますが、より表現力を持たせるために少量のパラメータを設定し、その値を変えることで様々なデータの分布が表現できるようになっています。
分析側の観点から見るなら、あらかじめ全ての形状が決まっていると各データにフィッティングすることができないので、データに合わせて調整可能なパラメータを持っていると考えることもできます。パラメータを仮置きした上で、確率分布に従って手元のデータが得られたと考えることで同時確率(joint probability)を算出し、これを仮置きしたパラメータについて着目することで尤度(likelihood)と読み変えます。

尤度の理解としては、手元のデータが仮定した確率分布に沿って得られる同時確率が大きければ大きいほど尤もらしいと考えるため、尤もらしさの度合いとして尤度としていると捉えておくのが良いと思います。
この尤度というパラメータに関する指標を定義してしまえば、あとはパラメータに関しての尤度の最大値問題を解くことで、パラメータの値を導出することができます。パラメータとしては、平均や分散などに関するパラメータが多く、それらを取りまとめて\thetaと表現し、尤度をL(\theta)とします。この際に微分を用いて最大値問題を解くにあたって、L(\theta)は確率分布の積の形になっており取り扱いづらいため、対数関数のlog L(\theta)を取ることで計算しやすくしています。この辺の導出の過程は#3のex.06で取り扱ったのでこちらを再度復習していただけたらと思います。
https://lib-arts.hatenablog.com/entry/math_mle3
最尤法についての大体の復習ができたので1節はここまでとし、次の2節で回帰モデルとの関係性について見ていきます。


2. 最尤法と回帰モデル
2節では最尤法と回帰モデルの関係性について見ていきます。このあたりのトピックは入門者向けの本には載っていないので案外抜けがちですが、多くのモデリングのベースになっている重要な考え方なのでこれを機にしっかり抑えていただけたら良いのではと思います。
最尤法を回帰モデルに導入するにあたっては、\hat{y}=ax+bにおけるax+bのような部分の計算結果を予測値ではなく予測値の期待値と考え、ax+bを平均などの値に置き換えた確率分布で目的変数が得られていると考えます。たとえば正規分布を仮定するなら、
P(\hat{y}|\mu=ax+b,\sigma)=\frac{1}{\sqrt{2 \pi \sigma^2}}exp(-\frac{(y-(ax+b))^2}{2 \sigma^2})
のように観測された値yの予測値の\hat{y}が得られると考えます。ちなみにこの際のax+bは一般化線形モデルの文脈では線形予測子(linear predictor)と呼ばれており、詳しくは2-2節で取り扱いますが言葉だけ抑えておいていただけたらと思います。
モデリングの前提の大枠について取り扱えたので、2-1節ではここで導出したyの予測値の分布を元に最尤法にあてはめていきます。


2-1. 最尤法から導く最小二乗法
2-1節では最尤法から最小二乗法を導きます。
P(\hat{y}|\mu=ax+b,\sigma)=\frac{1}{\sqrt{2 \pi \sigma^2}}exp(-\frac{(y-(ax+b))^2}{2 \sigma^2})
前節で上記のような\hat{y}の予測値の分布を見ましたが、ここでこの分布のパラメータはaとbと\sigmaであることに注意してください。そのため、最尤法を用いる最終目的はaとbと\sigmaを求めることだというのは見失わないようにしてください。また、今回のフォーカスは回帰モデルのため、\sigmaは定数とみなし、aとbの値をこの問題設定から導出することを考えます。
L(a,b)=\Pi \frac{1}{\sqrt{2 \pi \sigma^2}}exp(-\frac{(y_{i}-(ax_{i}+b))^2}{2 \sigma^2})
今回の最尤法におけるパラメータ\thetaはaとbのため、尤度はL(a,b)と立式しています。また、i番目のサンプルを(x_{i},y_{i})と設定していることに注意してください。この際に対数尤度にあたるlog L(a,b)を計算すると下記のようになります。
log L(a,b)=\sum (-\frac{(y_{i}-(ax_{i}+b))^2}{2 \sigma^2} + Const)
ここで\sigmaは定数とおいたので、尤度の最大化を行うにあたっては
\sum -(y_{i}-(ax_{i}+b))^2 = - \sum (y_{i}-(ax_{i}+b))^2
の最大値問題を解けば良いことがわかります。この式をよく見ると二乗和の最小化を行うことで尤度の最大化ができることがわかります。ここまでの話によって、目的変数の\hat{y}\sigmaが定数の正規分布を仮定すると、最小二乗法が最尤法によって導出できるということがわかります。

 

2-2. 一般化線形モデルについて
以前の記事でも言及しましたが、一般化線形モデルは下記の三つの要素によって成り立つとされています。

1) 目的変数の分布に指数型分布族を仮定する
-> 指数型分布族の代表的な例としては、正規分布、ベルヌーイ分布、二項分布、ポアソン分布などがあります。

2) 線形予測子(linear predictor)
-> ax+bにあたるのが線形予測子です。この線形予測子にリンク関数を適用して、目的変数の期待値(平均など)を導出します。

3) リンク関数(link function)
-> リンク関数は線形予測子の値を目的変数に仮定する指数型分布族のパラメータの条件を満たすように調整する関数のことです。たとえばポアソン分布では平均が0以上が必要であるや、ベルヌーイ分布において確率は0~1である必要性があるなどです。

一般化線形モデルの中で有名なのがロジスティック回帰やポアソン回帰ですが、これらを用いなくとも通常の最小二乗法を最尤法の枠組みで理解しておくことは重要なので、一般化線形モデルは実際に用いなくても理解しておきたいトピックです。


2-3. DeepLearningと最尤法
DeepLearningの誤差関数としてよく用いられる交差エントロピー(Cross Entropy)誤差もベルヌーイ分布を仮定した上で最尤法を用いると導出することができます。
L(p)=\Pi p_{i}^{t_{i}} (1-p_{i})^{1-t_{i}}
上記がベルヌーイ分布を元にした尤度になります。こちらの対数を取った対数尤度は下記のようになります。
log L(p)=\sum t_{i}log p_{i} + (1-t_{i})log(1-p_{i})
これは二値における交差エントロピー誤差と同等な式になっています。

 

3. まとめ
#5では最尤法を回帰モデルの文脈で確認しました。
#6ではここまで取り扱ってきた内容を元にベイズ的な考え方を用いたモデリングについて見ていきます。

Ch_8 戦略と社会問題(競争優位とCSR)【前編】|『[新版]競争戦略論Ⅰ(by Michael Porter)』読解メモ #14

f:id:lib-arts:20191028154807p:plain

「[新版]競争戦略論Ⅰ」を読み進めていきます。

[新版]競争戦略論Ⅰ | 書籍 | ダイヤモンド社

過去の読解メモについては下記などを参照ください。

Ch_5 トレードオフ ー 戦略のかすがい|『[エッセンシャル版]マイケル・ポーターの競争戦略』読解メモ #8 - lib-arts’s diary

Ch_6 適合性 ー 戦略の増幅装置|『[エッセンシャル版]マイケル・ポーターの競争戦略』読解メモ #9 - lib-arts’s diary

#13では第7章の『競争優位のフィランソロピー』の後編として、「競合他社のただ乗りをどう考えるか」以降の内容を取り扱いました。

Ch_7 競争優位のフィランソロピー【後編】|『[新版]競争戦略論Ⅰ(by Michael Porter)』読解メモ #13 - lib-arts’s diary

#14では第8章の『戦略と社会問題(競争優位とCSR)』の前編として、「CSRをめぐる四つの議論を検証する」までの内容を取り扱います。
以下目次になります。
1. CSRの新たなパラダイム
2. CSRの現状と企業の姿勢
3. CSRをめぐる四つの議論を検証する
4. 感想・まとめ


1. CSRの新たなパラダイム(簡単な要約)
行政、社会活動家、マスメディアによって、企業活動の責任が厳しく問われる時代となり、無数の組織が企業を社会的責任(CSR; Corporate Social Responsibility)の観点から評価している。評価指標には疑問がある際もあるが、発表されるランキングには社会的な注目が集まっている結果として、CSRはどの国のビジネスリーダーにとっても、なおざりにできない重要テーマになっている。
CSRについてはこれまで一定の成果を生んできたが、理由は下記の二点がある。

1) 企業も企業も批判する社会の双方が、企業活動を社会の利益と対立するものと見なしていること
2) 企業の社会的責任を問う風潮の中でプレッシャーを感じた企業が通り一遍のCSRに逃げ込み、自社の戦略に適したCSRの追求を怠っていること

現在支配的なCSRの考え方はあまりに部分的で、事業や戦略とも無関係なので、それにより企業が社会に貢献する機会を限定している。この状況において、企業が事業上の判断を下すのと同じフレームワークに基づいてその社会的責任を果たすというように考えれば、CSRはコストでも制約でも慈善行為でもなく、ビジネスチャンスやイノベーション、そして競争優位につながる有意義な事業活動になることは理解しておくとよい。
本章では、「企業の成功」と「公共の福祉」をゼロサムで考えないということで、企業が社会に及ぼすであろう影響のための効果的な方法を考えることを試みる。


2. CSRの現状と企業の姿勢(簡単な要約)
CSRに注目が集まっているが、それは企業が自発的に取り組んできた結果とばかりは言えない。むしろ、自社には責任がないと見なしていた問題に対して、世論からの反応を受けて取り組み始めた企業も多い。
あらゆる市民活動団体が企業に圧力をかけることに積極的になり、そのテクニックも上達してきている。社会活動家たちはある問題に世間の目を向けさせるために大きな責任がなくともとにかく目立つ企業や儲けている企業を攻撃の的にしがちである。
これらの圧力からはっきり読み取れるのは、社外のステークホルダーたちが様々な社会問題に関する責任を企業に負わせようとする傾向である。その結果として行動が容認できないと判断された企業には大きな財務リスクが生じる恐れがある。
企業はCSRに取り組むにあたってCSR活動の報告書を提出しているところが多いが、この種の報告書がCSR活動における共通のフレームワークを示すことはなく、長期戦略のフレームワークなどは期待できない。そのためCSRについてはより本質的な議論が必要だと思われる。


3. CSRをめぐる四つの議論を検証する(簡単な要約)
CSRを熱心に主張する人たちが掲げてきた理由は大きく分けて下記の四つがある。

・道徳的義務
・持続可能性
・事業継続の資格
・企業の評判

これら四つの理由からCSRは議論されてきたが、いざ現実の判断を下すにあたって十分な道しるべになりうるものは一つもない。それぞれ共通の弱点があり、企業と社会の相互依存関係ではなく、対立関係に着目している点である。四つともCSRが必要な全般的な理由を指摘しているだけで、CSRと企業戦略や業務プロセス、事業展開している地域との関連については考慮していない。
機会損失は膨大であり、企業の力は分散し、コミュニティと企業の目標を同時に後押しするような行動などは困難になる。

4. 感想・まとめ
#14では第8章の『戦略と社会問題(競争優位とCSR)』の前編として、「CSRをめぐる四つの議論を検証する」までの内容について取り扱いました。競合他社のただ乗りに対する考察がなかなか視点として面白い印象を受けました。
#15では第8章の『戦略と社会問題(競争優位とCSR)』の後編として、「事業とCSRを一体化する」以降の内容について確認していきます。

確率分布のパラメータと最尤法|高校数学の演習を通して理解する確率分布と最尤法 #4

f:id:lib-arts:20191112170245p:plain

当シリーズでは、高校レベルの数学と絡めながら確率分布と最尤法について取り扱っています。
#1では集合・確率と様々な関数(指数関数、対数関数)について、#2では確率分布のグラフ化と掛け算と対数について、#3では合成関数の微分と最大値問題について取り扱いました。

集合・確率&様々な関数(指数関数、対数関数)|高校数学の演習を通して理解する確率分布と最尤法 #1 - lib-arts’s diary

確率分布のグラフ化&掛け算と対数|高校数学の演習を通して理解する確率分布と最尤法 #2 - lib-arts’s diary

合成関数の微分と最大値問題|高校数学の演習を通して理解する確率分布と最尤法 #3 - lib-arts’s diary

#4では確率分布の概要を抑えたのちに、確率分布が持つパラメータを観測情報から計算する最尤法(最尤推定)について取り扱います。
以下、目次になります。
1. 確率分布とパラメータ
2. 同時確率と尤度
3. 尤度最大化によるパラメータ推定(最尤法)
4. まとめ


1. 確率分布とパラメータ
1節では確率分布について取り扱います。確率分布の教科書的な定義はややこしいので、まずざっくり一言でまとめるなら、「確率分布はヒストグラムのサンプルをとにかく大きくしてサンプル数で割ったもの」と捉えておくと良いです。言い換えるなら、データの値の出現の仕方のパターンを記述したものです。
よく使う確率分布としては、正規分布(Normal Distribution)、ポアソン分布(Poisson Distribution)、二項分布、ベルヌーイ分布などがあります。説明だけではわかりにくいため、まずは正規分布確率密度関数P(x|\mu,\sigma)を確認してみます。
P(x|\mu,\sigma)=\frac{1}{\sqrt{2 \pi \sigma^2}}exp(-\frac{(x-\mu)^2}{2 \sigma^2})
この数式を元にすると下記のようなグラフを描くことができます。

f:id:lib-arts:20191112190446p:plain

この時、上記の確率分布のグラフは、パラメータである\mu\sigmaを変更することで形状を変形させることができます。そのため、\mu\sigmaは確率分布のパラメータであると言われています。この時、\muはxの平均、\sigmaはxの分散を表しています。
さて、ここでこのように分布を導入するメリットですが、多くの観測データも分布になぞらえることで、たった2つの値で表現できるということです。例えば、1,000名分のテスト結果も正規分布を仮定することで平均と分散を知っているだけで、データの要約が可能です。
ちなみに#5で取り扱うモデリングでは、少数のパラメータを用いて行うモデリングパラメトリックモデルと呼んでいます。このメリットとしてはまさにここで話題になっている分布のパラメータに着目することで情報の要約を行うことができるということにあります。

このように、確率分布を導入し、パラメータに着目することで情報を要約することが可能になります。

 

2. 同時確率と尤度
2節では3節で取り扱う最尤推定(MLE; Maximum Likelihood Estimation)の前提として尤度(Likelihood)を導入します。まず先に最尤推定(最尤法)の概要だけ把握しないと流れがわからないと思うので、先にざっくり見ておきます。最尤法は「確率分布のパラメータを推定する手法」です。
例えば、1,000名分のテストの点数の情報があるとして、データが正規分布に従っていると仮定できるものとします。この際に正規分布のパラメータの\mu\sigmaを仮置きした上で手元のデータが得られたとし、それを元にパラメータを推定しにいくという考え方が最尤推定です。また、最尤推定では尤度(Likelihood)という基準を最大化するパラメータを求めるという流れなのですが、この際の尤度は確率分布に基づいてデータが得られる確率を計算した同時確率を尤度と読み換えることで、立式を行います。尤度の解釈としては、確率分布から手元のデータが得られる尤もらしさと考えるため、同時確率を尤度と見なします。ニュアンスとしてはどちらも同じ数式だけれど、同時確率はデータの出現確率にフォーカスしているのに対して、尤度はパラメータの関数にフォーカスしている点が異なると認識しておくと良いです。
すなわち尤度は手元のデータが得られる同時確率のため、掛け算の形式で求めることができます。また、尤度はパラメータ\theta(\thetaは確率分布のパラメータを全て含んだ表現であり、正規分布の場合は\mu\sigmaになります)の関数のため、L(\theta)と記述します。
#3で取り扱った下記のL(\theta)は全て確率分布を元にして計算した尤度の式です。

1) L(\theta)=\theta^{600} (1-\theta)^{400}
2) L(\theta)=\Pi_{i=1}^N \frac{\theta^{k_{i}} exp(-\theta)}{k_{i}!}
3) L(\theta)=\Pi_{i=1}^N \frac{1}{\sqrt{2 \pi}}exp(-\frac{(x_{i}-\theta)^2}{2})

ここで1)はベルヌーイ分布、2)はポアソン分布、3)は正規分布を元にした同時確率(尤度)です。基本的にサンプルは独立して観測されるという前提をおいているので、同時確率の計算にあたっては、それぞれのサンプルが観測される確率を掛け算することで求めることができます。

とにかく、同時確率と尤度はフォーカスしているポイントは違う一方で数式的には同じであると把握しておくとよいです。


3. 尤度最大化によるパラメータ推定(最尤法)
2節では最尤法の大枠と尤度について取り扱ったので、3節では尤度最大化(最尤推定)によるパラメータ推定について見ていきます。といっても、数式の流れ自体は#3のex.06の解法と同じです。

注意点としては、尤度(同時確率)の式は確率の掛け算によって表されているので、微分がしづらいという点です。そのため、解決策としては単調増加関数で掛け算を足し算に変換することができる対数関数(log)を取ることで計算を行なっている点です。
対数を取ることによって掛け算を足し算に変換するというのは最尤推定におけるオーソドックスな流れのため、#3のex.06については何度も計算を追って理解を深めておくのが良いと思います。回帰モデルに応用した、一般化線形モデルやベイズ線形回帰ではここの計算がベースとなっているので、ここで何度も反復しておくのが後々の理解にも非常に役立ちます。


4. まとめ
#4では#1〜#3で取り扱った例題の内容を、確率分布や最尤法の文脈で再度確認を行いました。
#5では今回学んだ最尤法を回帰モデルの文脈で確認していければと思います。