プログラミング初心者の勉強日記

情報科学専攻です. 機械学習と競技プログラミングについて日々勉強しています.

MENU

パターン認識と機械学習 : ガウス分布と条件付きガウス分布

ガウス分布と条件付きガウス分布

今回は、ビショップ本の2章のメインとも言えるガウス分布についてです. ガウス分布については結構な量があるのでいくつかに分けてまとめていきたいと思います.

1. ガウス分布について

ガウス分布 (Gaussian distribution)は、正規分布 (normal distribution)とも呼ばれていて、連続変数の分布をモデル化する際によく使われます.

1次元のときのガウス分布は、

{\displaystyle  N(x|\mu,\sigma^{2}) = \frac{1}{(2\pi\sigma^{2})^{\frac{1}{2}} } \exp(-\frac{1}{2\sigma^{2}}(x-\mu)^{2} )}

と表されます. ここで \mu平均\sigma^{2}分散です.

D次元のときは、

{\displaystyle  N(\boldsymbol{x}|\boldsymbol{\mu},\boldsymbol{\Sigma}) = \frac{1}{(2\pi)^{\frac{D}{2}}}\frac{1}{|\boldsymbol{\Sigma}|^{\frac{1}{2}}}  \exp\{-\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu})^{T}\boldsymbol{\Sigma}^{-1}(\boldsymbol{x}-\boldsymbol{\mu})\} }

と表され、\boldsymbol{\mu}D次元の平均ベクトル\boldsymbol{\Sigma}D \times D共分散行列です.

多変量ガウス分布と条件付き分布について

さて、多変量ガウス分布の重要な特性の一つに、2つの変数の同時分布がガウス分布に従うならば、それらの変数を用いた条件付き分布及び、周辺分布ガウス分布になるというのがあります.

今回は、その内の条件付き分布についてのお話です.

\boldsymbol{x}N(\boldsymbol{x}|\boldsymbol{\mu},\boldsymbol{\Sigma})に従うD次元ベクトルとし、これを互いに素な部分集合\boldsymbol{x_a}\boldsymbol{x_b}に分割します.

つまり、

\displaystyle \boldsymbol{x} = \begin{bmatrix}\boldsymbol{x_{a}} \\ \boldsymbol{x_{b}} \end{bmatrix}

とし、これに対する平均ベクトルと共分散行列もそれぞれ、

\displaystyle \boldsymbol{\mu} = \begin{bmatrix}\boldsymbol{\mu_a} \\ \boldsymbol{\mu_b}\end{bmatrix}
\displaystyle \boldsymbol{\Sigma} = \begin{bmatrix}\boldsymbol{\Sigma_{aa}} && \boldsymbol{\Sigma_{ab}} \\ \boldsymbol{\Sigma_{ba}} && \boldsymbol{\Sigma_{bb}} \end{bmatrix}

で与えられます.

共分散行列が与えられたが、ビショップ本をはじめとし、共分散の逆行列を考えた方が便利になることが多いため、\boldsymbol{\Lambda} = \boldsymbol{\Sigma}^{-1}を考えています. これを精度行列と呼んでいます. 以降では精度行列をベースに話が進んでいきます.

制度行列は、

\displaystyle \boldsymbol{\Lambda} = \begin{bmatrix} \boldsymbol{\Lambda_{aa}}&&\boldsymbol{\Lambda_{ab}} \\ \boldsymbol{\Lambda_{ba}} && \boldsymbol{\Lambda_{bb}}\end{bmatrix}

となるが、 \boldsymbol{\Lambda_{aa}}\boldsymbol{\Sigma_{aa}}逆行列となっていないことに注意しなくてはいけません. (このことについては最後に述べます.)

まず、一般のガウス分布の指数部は、 \displaystyle -\frac{1}{2}(\boldsymbol{x} - \boldsymbol{\mu})^{T} \boldsymbol{\Sigma}^{-1} (\boldsymbol{x} - \boldsymbol{\mu}) = - \frac{1}{2} \boldsymbol{x}^{T} \boldsymbol{\Sigma}^{-1} \boldsymbol{x} +  \boldsymbol{x}^{T} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu} + ( \boldsymbol{x}とは独立な項) と変形できます.

右辺の\boldsymbol{x}の2次の項の係数行列が精度行列(共分散の逆行列)と等しく、\boldsymbol{x}の線形項の係数は\boldsymbol{\Sigma^{-1}\mu}と等しくなります. (ここから平均ベクトルを計算することができます.)

このことを利用して、条件付き分布の平均と共分散行列を求めますが、基本的な考えとしては分割した変数が従うガウス分布を、\boldsymbol{x_b}を固定した上での\boldsymbol{x_a}の関数とみなします.

さて、分割した変数が従うガウス分布の指数部は、

\displaystyle -\frac{1}{2} (\boldsymbol{x} - \boldsymbol{\mu} )^{T} \boldsymbol{\Sigma}^{-1} (\boldsymbol{x} - \boldsymbol{\mu}) = \frac{1}{2}(\boldsymbol{x_a} - \boldsymbol{\mu_a})^{T}\boldsymbol{\Lambda_{aa}}(\boldsymbol{x_a} - \boldsymbol{\mu_a}) - \frac{1}{2}(\boldsymbol{x_a} - \boldsymbol{\mu_a})^{T}\boldsymbol{\Lambda_{ab}}(\boldsymbol{x_b} -  \boldsymbol{\mu_b}) -\\  \frac{1}{2}(\boldsymbol{x_b} - \boldsymbol{\mu_b})^{T}\boldsymbol{\Lambda_{ba}}(\boldsymbol{x_a} - \boldsymbol{\mu_a}) -
\frac{1}{2}(\boldsymbol{x_b} - \boldsymbol{\mu_b})^{T}\boldsymbol{\Lambda_{bb}}(\boldsymbol{x_b} - \boldsymbol{\mu_b})

となることはすぐ確認できると思います.

この中の\boldsymbol{x_a}の2次の項を全て取り出すと、

\displaystyle -\frac{1}{2}\boldsymbol{x_a}^{T}\boldsymbol{\Lambda_{aa}}\boldsymbol{x_a}

となるので、\boldsymbol{\Sigma_{a|b}} = \boldsymbol{\Lambda_{aa}}^{-1}となります.

次に、\boldsymbol{x_a}について線形の項を全て取り出すと、 \boldsymbol{x_a}^{T}
{\boldsymbol{\Lambda_{aa}}\boldsymbol{\mu_a} - \boldsymbol{\Lambda_{ab}}(\boldsymbol{x_b} - \boldsymbol{\mu_b}) }が得られます.

この式の\boldsymbol{x_a}の係数が  \boldsymbol{\Sigma_{a|b}}^{-1}\boldsymbol{\mu_{a|b}}になることは説明しました.

これらより、\boldsymbol{\mu_{a|b} = \boldsymbol{\mu_a} - \boldsymbol{\Lambda_{aa}}^{-1} \boldsymbol{\Lambda_{ab}}(\boldsymbol{x_a} - \boldsymbol{\mu_b})}となります.

今までの結果は精度行列を用いての表現方法でしたがもちろん共分散行列での表現も可能です.

分割された行列の逆行列に関する計算

分割された行列の逆行列に関する計算はビショップ本では公式のように取り上げられています. (演習問題にも取り上げられており、東京大学大学院試でも出題されていました笑)

\displaystyle \begin{bmatrix}A && B \\ C && D\end{bmatrix}^{-1} = \begin{bmatrix} M && -MBD^{-1} \\ -D^{-1}CM && D^{-1} + D^{-1}CMBD^{-1}\end{bmatrix}

となります.

ここでM = (A - BD^{-1}C)^{-1}となります.

このMの逆行列には部分行列Dに関するシューア補行列という名前がついているようです.

この公式と、

\displaystyle \begin{bmatrix}\Sigma_{aa} && \Sigma_{ab} \\ \Sigma_{ba} &&\Sigma_{bb}\end{bmatrix}^{-1} = \begin{bmatrix} \boldsymbol{\Lambda_{aa}} && \boldsymbol{\Lambda_{ab}} \\ \boldsymbol{\Lambda_{ba}} && \boldsymbol{\Lambda_{bb}}\end{bmatrix}

より、

\displaystyle \boldsymbol{\Lambda_{aa}} = (\boldsymbol{\Sigma_{aa}} - \boldsymbol{\Sigma_{ab}}\boldsymbol{\Sigma_{bb}}^{-1}\boldsymbol{\Sigma_{ba}})^{-1}
\displaystyle \boldsymbol{\Lambda_{ab}} = -(\boldsymbol{\Sigma_aa} - \boldsymbol{\Sigma_{ab}}\boldsymbol{\Sigma_{bb}}^{-1}\boldsymbol{\Sigma_{ba}})^{-1}\boldsymbol{\Sigma_{ab}}\boldsymbol{\Sigma_{bb}}^{-1}

が得られます.

これらから、

\displaystyle \boldsymbol{\mu_{a|b}} = \boldsymbol{\mu_a} +  \boldsymbol{\Sigma_{ab} \boldsymbol{\Sigma_{bb}}^{-1}( \boldsymbol{x_b} -\boldsymbol{ \mu_b}})
\displaystyle \boldsymbol{\Sigma_{a|b}} = \boldsymbol{\Sigma_{aa}} +  \boldsymbol{\Sigma_{ab}} \boldsymbol{\Sigma_{bb}}^{-1}\boldsymbol{\Sigma_{ba}}

となります.

1次と2次のガウス分布の実装例

1次と2次の時のガウス分布を実装してみたので以下にソースコードと結果をあげておきます.

ガウス分布 (1次の場合)

f:id:linearml:20170828234310p:plain

ガウス分布 (2次の場合)

f:id:linearml:20170828234316p:plain

パターン認識と機械学習 : ベータ分布

ベータ分布

第2章の確率分布の一番最初に紹介されているベータ分布についての備忘録です.

ベータ分布を考える理由

ベルヌーイ分布二項分布のパラメータ\muを最尤推定で求めた結果は\mu_{ML} = \frac{m}{N}で、データ集合中でx = 1となる観測値の割合になります. (mx = 1となる観測値の数です.)

しかし、例えば3回の試行中3回とも表が出た場合に\mu_{ML} = 1となってしまい今後もずっと表が出るように予測することになります.

これは間違いなく過学習です.

そこで、この問題をベイズ主義的に扱うことを考える.

ベイズの定理は、 $$ p(x|y) = \frac{p(y|x)p(x)}{p(y)} $$ であり、p(x)事前分布p(x|y)事後分布と呼びます.

したがって、ベイズ主義的立場でパラメータを推定するときには、パラメータの事前分布p(\mu)を考え、事後分布p(\mu|x)を最大にしたりすることをします.

そこで、今回はベルヌーイ分布や二項分布のパラメータの事前分布であるベータ分布についてまとめます.

ベータ分布について

まずベルヌーイ分布や二項分布の尤度\mu^{x}(1-\mu)^{1-x}の形をしています.

したがって、事前分布を \mu 1-\muのべき乗に比例するように選べば、事後分布は事前分布と同じ形になります.

なぜなら事後分布は尤度と事前分布に比例するからです. (この性質は共役性と呼ばれています.)

したがって、事前分布には事後分布と共役なものを選ぶと良いです.

このことから、ベルヌーイ分布や二項分布のパラメータの事前分布には次のベータ分布を選びます. $$ Beta(\mu|a,b) = \frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)}\mu^{a-1}(1-\mu)^{b-1} $$

ただし、\Gamma(x)ガンマ関数と呼ばれ、\Gamma(x) \equiv \int_{0}^{\infty}u^{x-1}e^{-u}duで定義されています.

また、aとbはパラメータの分布p(\mu)を決めるためのパラメータで超パラメータ(hyperparameter)と呼ばれます.

\muに依存する部分だけを取り出すと事後分布は、 p(\mu|m,l,a,b) \propto \mu^{m+a-1}(1-\mu)^{l+b-1}になるのは容易に確かめられます. (ただし、l = N -mには注意が必要です.)

この式は事前分布の共役性によって事前分布と同じ形になっていることがわかります.

参考程度に、ベータ分布を実装したコードを以下に示します.

ベータ分布の実装例

#coding: utf-8

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
from scipy.special import gamma

N = 100
alpha = [0.1,1.0,2.0,8.0,10.0]
beta = [0.1,1.0,3.0,4.0,10.0]
p = np.linspace(0.0,1.0, N)
print p
for a,b in zip(alpha,beta):
    y = (gamma(a+b)/(gamma(a)*gamma(b))) * pow(p,a - 1) * pow(1-p,b - 1)
    plt.plot(p,y,label = "a = " + str(a) + " b = " + str(b))
    plt.legend(loc = "upper right")
plt.savefig("beta.png")
plt.show()

また、超パラメータを色々な値に設定した時のベータ分布の図を以下に載せます. f:id:linearml:20170822212717p:plain

パターン認識と機械学習 : ベルヌーイ分布

ベルヌーイ分布

第2章の確率分布の一番最初に紹介されているベルヌーイ分布についての備忘録です.

ベルヌーイ分布について

二値確率変数 (binary random variable, 以下二値 r.v.) {x \in \{0,1\}}が1つの場合について考えます.

例えば、 x = 1で「」、x = 0で「」を表現するとします.

これを使えばコイン投げの結果が二値 r.v.で表現できます.
今回は一般の話を扱うので「」が出る確率は0.5ではなくパラメータ\muで表すことにします.

つまり、 $$ p(x = 1 | \mu) = \mu $$ となります.
確率なので  0 \leq \mu \leq 1 を満たし、 p(x = 0 | \mu) = 1 - \muとなります.

表が出る確率と裏が出る確率を一つの式で表したくなります. 表が出たときは、x = 11 - x = 0となり、裏が出たときはx = 01 - x = 1となります. したがってこのx1 - xを用いて一つの式で表すことを考えます.

その式が、 $$ Bern(x | \mu) = \mu ^{x} (1 - \mu)^{1-x} $$ となり、これがベルヌーイ分布です.

具体的に値を代入してみると、表が出る確率は\mu^{1} (1 - \mu)^{1 -1} = \muであり、裏が出る確率は\mu^{0} (1 - \mu) ^ {1 - 0} = 1 - \muで表すことが出来ています.

また、ベルヌーイ分布の平均分散はそれぞれ、E[x] = \mu, V[x] = \mu (1-\mu)です.

ベルヌーイ分布の実装例

ベルヌーイ分布pythonmatplotlibを使って可視化したので参考程度に載せておこうと思います.
私が書いたソースは以下の通りです.

#coding: utf-8

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab

def bern(x,p):
    return pow(p,x) * pow(1-p,1-x)

if __name__ == "__main__":
    dist = np.zeros(2)
    for i in range(1,10):
        plt.figure()
        p = 0.1 * i
        dist[0] = bern(0,p)
        dist[1] = bern(1,p)

        x = np.array([0,1])

        label = ["x = 0","x = 1"]
        plt.ylim([0.0,1.0])
        plt.title("bernoulli distribution (p = " + str(p) + ")")
        plt.bar(x,dist,tick_label = label,align = "center")
        plt.savefig("bernoulli_" + str(p) + ".png")

可視化した図のうちパラメータをそれぞれ0.1, 0.5, 0.8に設定したものを載せておきます.

f:id:linearml:20170818103828p:plain:w240 f:id:linearml:20170818103833p:plain:w240 f:id:linearml:20170818103839p:plain:w240

次に、観測データ集合 \{x_{1},\cdots,x_{N}\}ベルヌーイ分布から独立に与えられたとします.
その時の尤度

$$ \prod_{n=1}^{N}\mu^{x_{n}}(1-\mu)^{1-x_{n}} $$ となり、この尤度を最大にするようにしてパラメータを推定するのが最尤推定です.
積の形では扱いにくいので尤度の対数をとって和の形にします.
この対数尤度をパラメータ \muで微分して0とおき、方程式を解けば最尤推定量が求まり以下のように得られます. $$ \mu_{ML} = \frac{1}{N} \sum_{n=1}^{N} x_{n} $$ ここで表が出た回数、つまりx = 1となった回数をmとすると、 $$ \mu_{ML} = \frac{m}{N} $$ となります.

例えば試行3回中3回とも表が出た場合に、最尤推定量は1となるので、今後もずっと表が出続けると予測していることになります.
これは過学習の極端な例ですが、3回の観測だけで、今後全く表が出ないと断定してしまうのはまずいことです.

今後はパラメータが従う事前分布を導入して、もっと常識的な結果を得る方法について考えていきます.

機械学習の入門におすすめの参考書

この記事の対象読者

最近機械学習って流行ってるけど何からやればいいのか分からない...

純粋に機械学習って難しそう...

機械学習勉強したいんだけど、本屋や図書室行っても機械学習関連の本がありすぎて困る...

と言う方は多いのではないでしょうか.

少し機械学習の参考書について調べた方だと

やはり有名どころのパターン認識機械学習 (通称 : ビショップ本) やるべきか

と思っている方も少なくはないかと思います.

ビショップ本は非常に有名な本で、機械学習を研究している人の中で知らない人はいない(はず)です.

しかし、ビショップ本は非常に数式が重たいので、機械学習を入門をする上では不向きです. (予測検索に良く難しいや挫折が出てくる...)

 

そこで、今回は私が、ビショップ本に入る前に機械学習の基礎を学ぶために用いた本の紹介をしようと思います.

以下で紹介する本で入門することで、これから機械学習を本気で勉強、研究していく上での土台を作ることができると思っています.

具体的に学んだ分野といたしましては

  1. 線形代数
  2. 確率、統計学
  3. 機械学習 (基礎)
  4. 最適化問題

の4つです.

パターン認識と機械学習 上

パターン認識と機械学習 上

 
パターン認識と機械学習 下 (ベイズ理論による統計的予測)

パターン認識と機械学習 下 (ベイズ理論による統計的予測)

 

 1. プログラミングのための線形代数

線形代数は数多くのサイトで紹介されている「プログラミングのための線形代数」を使いました.

 機械学習を勉強していく上で線形代数は必要となってきます.

私自身、行列やベクトルの演算は不自由なく行えたのですが、逆行列の存在や固有値固有ベクトルについての知識が曖昧だったのでそこらへんを中心に埋めなおしました.

この本は線形代数を実際どのように使っているのかが分かりやすく書かれているので、学部の時に使った教科書のようによくわからずに式を追っかけていた頃より理解が深まったと思います.

プログラミングのための線形代数

プログラミングのための線形代数

 

 2. 確率、統計学

確率、統計学は「統計学入門」を使いました.

これまた有名な本なので今更紹介することもないのですが...

機械学習統計学の違いを説明することができない人がいるというぐらい、機械学習統計学は密接な関係にあると思います.

なので、統計学の基本的事項は手を抜かずに勉強したいところです.

特に確率の基礎的部分(加法定理や乗法定理などなど)は今後機械学習をやる上で、必須事項ですので、「統計学入門」の最初の方は熟読すべきです.

ちなみに私は、統計学検定の2級ぐらいは受けようかなと思い勉強中です.  (この本をやれば、2級レベルでは十分すぎる知識がつきます.)

統計学入門 (基礎統計学?)

統計学入門 (基礎統計学?)

 

 

3. 機械学習 (基礎)

さて、本題の機械学習(基礎)についてです.

機械学習に関する本は、図書室や本屋に行けばわかりますが、溢れかえっていてどれを使えばいいか分からないものです.

どの本も非常に優れていて、機械学習を勉強する上で有益な情報を得ることができると思いますが、最初の一冊は間違えたくありませんよね.

そこで、私がオススメしたいのは、「言語処理のための機械学習入門」です.

「言語処理のための」と入っているので、「いや、俺は画像処理に機械学習使いたいんだけど...」とか、「機械学習で最強のゲームAIを作りたくて勉強しようと思っているので、違う本にしよう」と思うかもしれません.

しかし、機械学習を言語処理はもちろん、その他全ての分野に応用しようと考えている人全員にとって最高の入門書になると思います.

レベルとしては、基本的な数学的知識 (微分、行列、ベクトル演算ぐらい) があれば数式が追いかけられる程度で、機械学習に関する前提知識は一切いりません. また必要な数学的知識はその都度説明してくれているので、問題ありません.

私自身、機械学習はB4の頃も卒業研究の題材にしていて、ゼミでも輪講をしていたのですが、再度基礎を固めようと思い「言語処理のための機械学習入門」を読み直しました.

また演習問題も全部解きなおしました. (ここが大事で、演習問題は全て解くことをオススメします. 非常に簡単な問題で、各トピックに関する知識を確認、さらには深めることができます. これをやるのとやらないとでは大きく差が出ると思います.)

言語処理のための機械学習入門 (自然言語処理シリーズ)

言語処理のための機械学習入門 (自然言語処理シリーズ)

 

 

4. 最適化問題

機械学習の基礎を一通り学習し直せたので、次に最適化問題について復習を行いました.

最適化問題の復習は「数理計画入門」を使いました.

機械学習とは最適化問題である」 と言われるぐらい外せない分野です. 上で紹介した「言語処理のための機械学習」にも最適化問題について扱われているセクションがありますがより深く学ぶ必要があると思い、1冊手に取って勉強しました. 

この本は数学的説明を端折ることが多々あるので、厳密に証明をしていきたいという人には不向きかもしれません. 

しかし、量的にもそんなに多くなく一通りの手法について学習できるので短期間で網羅したいという人にはオススメかもしれません.

最適化問題で有名なのは「これなら分かる最適化数学」だと思います.

私自身読んだことがないのでここではレビューはしませんが、後期に入ったら読もうと思っているのでその時にまたブログに書こうかなと思っています.

(これなら分かる最適化数学を読んだので、気になるトピックを備忘録として記事にしていきたいと思っています.) 

新版 数理計画入門

新版 数理計画入門

 
これなら分かる最適化数学―基礎原理から計算手法まで

これなら分かる最適化数学―基礎原理から計算手法まで

 

 

以上が私がビショップ本に入る前に復習した内容です.

ビショップ本は数式を追いかけるのが非常に大変で、これらの本を学習したからと言ってスラスラ頭に入ってくるというものではありません.

ですが、「これから機械学習を学ぶ or 研究していく」上での土台作りは出来ていると思います.

是非、これを機に機械学習を勉強してみてはいかがでしょうか.

 

論文サーベイ part2

今回は「Face Recognition Face2vec Based on Deep Learning : Small Database Case

出展 : Automatic Control and Computer Sciences 2017

  • 概要:異なった状態の画像に対して訓練され、その各々のデータ数は少ない、認識率をあげるには約100万の画像が必要

  • 新規性、差分:少ない訓練データ数で特徴ベクトル抽出が可能に

  • 手法、アルゴリズムのキモ:出力層の線形分類層を取り除いて、特徴ベクトルを抽出し、ベクトルを正規化してから類似度を測る(多分。。。)

  • 結果:精度良く学習できた(特に前を向いた画像のみを用いた場合に97.98%)

  • 結論、議論;様々な物体、状態の画像に対して適用できる.小さいデータセットで訓練可能.データセットにない画像に対しても適用したい

  • コメント、感想:word2vecみたいな演算はできないのかなあ、「〇〇と××を足して2で割った人」をベクトル演算で出すとか

論文サーベイ part1

 

サーベイした論文の内容が後からみてわかるように自分なりにまとめていこうと思います.

 

 

Abstract, Introduction, Conclusionはどの論文に対しても簡潔にまとめたものを公開し、興味があるものだけ中身を精読していこうと思います. 

今回は「Recurrent Neural Networks With Missing Information Imputation For Medical Examination Data Prediction」です.

2017年のBigCompで発表されたものです.

 

  • Abstract : Recurrent Neural Network(RNN) を用いて欠落データを含む健康診断データを用いて未来の健康診断の結果を推定する
    (ここで言う欠落データとは、一年に一回の健康診断を受けられなかったりして、データがないことを言う)

  • Introduction : 病気の早期発見をすることで治療が難しいものも治療可能になることがある
    特定の疾病を機械学習を用いて推定する研究は多くされているが広い領域に適用できていない
    RNN、LSTMを用いる
    欠落しているデータをRNNで推定し、それを新たな入力とする
    比較手法には線形回帰を用いる

  • Simple Recurrent Network (SRN) : 健康診断データを推定するためにRNNを用いる

    f:id:linearml:20170503185631p:plain

  • Long Short-Term Memory : LSTMを使う

    f:id:linearml:20170503185616p:plain

  • Missing Data Compensation Using RNNs : 提案手法にあたる部分

    f:id:linearml:20170503184551p:plain

    グレーのノードが欠落している時t-1までのデータを使って推定したy(t)を次の入力につかってやろうっていう単純な話

  • Experiment Result : 2002年から2012年の韓国人の健康診断データをで訓練し、2013年のデータを推定する(訓練は完全データで行い、推定の時に欠落データを含んでいるものも推定できるか実験する)
    線形回帰に比べてRNN,LSTMのどちらをつかった場合でも精度良く推定できた
    RNN,LSTMの間に差はあまり見られない
  • Conclusion : 欠落データを含む健康診断データに対して既存研究に比べ高い精度で推定できた

感想:2017年とかなり新しいわりに発想はかなり単純

 たかが10年のデータを使っていたからRNN、LSTMに差は見られなかったのだろう

実験のとこで、欠落データに対して提案手法と線形回帰以外に入力を置き換えない普通のRNNを用いてものでも比較したほうがよかったのでは?(ただRNNが強かっただけかもしれない)