『日経Robotics デジタル版(電子版)』のサービス開始を記念して、特別に誰でも閲覧できるようにしています。
画像や音声など対象のデータを高次元空間中の1点と考え、データが空間中でどのように分布しているのかを調べることで、データをモデル化することを考える。しかし、一般的に高次元データに対して様々な統計モデルを推定する場合、「次元の呪い」として知られる問題に遭遇し、推定は困難となる。
例えば、1000次元空間中に分布するデータをモデル化する場合、各次元を0か1の二値で分けても、2の1000乗個の空間に分けられ、これは宇宙に存在する原子数よりも多く、現実的に観測可能なサンプルから推定はできない。
一方、画像や音声など自然界にみられるデータの多くは、可能な値の組み合わせのうちのほんの一部しか取らない。これらのデータはデータの見かけ上の次元数よりずっと少ないパラメータによって支配される空間に分布していると考えられている。
例えば、画像をランダムに生成した場合、そのほとんど全てが砂嵐のような意味のない画像となる。一方、実際に観察される画像は人の顔画像や風景画像のような画素間が強い相関を持った画像である。しかも、これらの画像は、顔の傾きを少しずつ変えたり、照明を少しずつ変えたりしていくのに従って少しずつ変わっていく。観察される画像は、画素数よりもずっと少ない数のパラメータ(対象物体の角度、光源の位置、カメラの位置)によって支配されており、またそれらのパラメータを滑らかに変えると画像も滑らかに変わる(図1)。これはその他多くのデータでもみられる。これは多様体という概念で説明できる。
各点の周りがn次元的に拡がっているような空間を多様体と呼ぶ。別の言い方をすれば、局所的にはn次元の座標系を使って表すことができ、それがn次元ユークリッド空間と同相(滑らかに変形させていって同じ形にできる)であるような空間である。
現実世界のデータ分布は多くが低次元多様体
例えば、n次元ユークリッド空間自身はどの点でもn次元の拡がりを持った多様体である。また、球面というのは3次元空間中の2次元的な広がりを持つ多様体である。球面全体は2次元と同相ではないが(例えば世界地図では北極、南極で非連続になっている)、各点の周りだけをみれば2次元とみなすことができる。このことは私達が地球上でほとんど2次元の平面上にいるように考えていることからもいえる(多様体の工学的な説明は参考文献1)を参照)。
現実世界で観測される多くのデータの分布がこのような低次元多様体として捉えられるという仮説を多様体仮説と呼ぶ。宇宙空間で星や銀河が泡の膜のように非常に薄い領域に存在しているのと同様に、多くのデータも高次元空間中に低次元の薄い膜として分布していると考えられている。
GANやVAEは多様体を潜在表現として獲得
データ中に埋め込まれている多様体をどのように推定するか、そして、多様体中の座標と元の世界の座標をどのように対応づけるかについては様々な手法が検討されている。この対応付けを実現する手法として線形であれば主成分分析(PCA)が使えるが、非線形であればIsomap、LLE(locally linear embedding)、Laplacian Eigenmaps、SDE(semidefinite embedding)などが知られている。
近年提唱されたVAE(変分自己符号化器)やGAN(敵対的生成モデル)といった深層生成モデルは、データの低次元多様体をその潜在表現として獲得できることが分かっている。
VAEやGANではランダムに生成したノイズベクトルzから、入力xを生成関数Genを用いてx=Gen(z)として生成する。Genに多層のニューラルネットワークを使うことで従来手法よりも複雑なデータのモデル化に成功している。ノイズの次元数がデータの次元数より小さく、Genがニューラルネットワークの場合、このxは低次元多様体となることが知られている2)。
学習が成功した場合、ノイズベクトル中を滑らかに動かすと(例えばz=αz1+(1−α)z2でαを0から1へ変える)、生成される画像も滑らかに変わっていくことが分かる(図1はVAEの例)。特にGANは従来の生成モデルよりもはるかに精細で正確な画像や音声を生成できることが分かっており、データのモデル化手法として有望視されている。
最尤推定は低次元多様体の表現に不向き
そもそも低次元多様体に分布しているデータを生成モデルp(x)を使って推定する場合、従来の最尤推定などの推定手法が適していないことが分ってきている2-3)。
2つの確率分布間の距離を測る代表的な手法としてKLダイバージェンスがある。
このKL(p||q)は2つの分布pとqが一致しない場合はKL(p||q)>0であり、一致する時のみKL(p||q)=0となるような関数である。そのため、目標の確率分布をp、学習対象の確率分布をqとした時、KL(p||q)を最小化するようなq、つまり
を解くことでpと一致またはそれに近いようなqを探すことができる。ただし、D={xi}は目標の確率分布pからサンプリングされた学習データである。この推定は観測データの尤度を最大にするような分布を探すことから最尤推定と呼ばれる。
最尤推定は生成モデルの推定の中心となっている手法だが次の問題点がある。1つ目は
p(x)=0,q(x)>0
つまり、観測されないデータに対してモデルが0ではない確率を割りあてる場合、そのデータの最尤推定における値はq(x)の値によらず
p(x)log q(x)=0
となってしまう。つまり、モデルが間違ったデータxを生成しても直接ペナルティが課されない。多様体仮説が成り立つデータについては多くのxについてp(x)=0であるため、これは問題になる。
さらに、モデルqも低次元多様体であり、多くのxでq(x)=0である場合、p(x)>0である領域(これをpのサポートとよびます)とq(x)>0である領域が重なっている部分の体積はほぼ0となる2)。KLダイバージェンスはこの場合、不定となる。
これまでは、こうした問題を防ぐために観測データに対してもデータの最後にノイズが含まれるとして、どのxについてもp(x)>0となるようにし、また学習対象モデルも全てのデータに0ではない確率を割り当てるようにしていた。
最尤推定の問題を回避したGAN
GANはこうした問題を回避し、低次元多様体をモデル化できることが分かっている。
GANの学習は最尤推定ではなくJensen-Shannonダイバージェンスの最小化をしていることが分かっている。Jensen-Shannonダイバージェンスは次のように定義される。
ただし、M=(P+Q)/2である。MはPとQのサポートの和集合をサポートとして持つため、Jensen-ShannonダイバージェンスはPやQが低次元多様体であっても値が存在するようになる。
さらに、GANの改良版であるWasserstein GAN(WGAN)3)では、分布間の距離として、Wasserstein距離(Earth Moverとも呼ばれる)を使って学習する。
Wasserstein距離は次のように定義される。確率密度関数p(x)によって定められる確率分布を、xの位置にp(x)だけ砂が存在していると考える。2つの確率分布pとqの砂の総量はどちらも1(確率分布の定義より)であるから、pの各位置にある砂をそれぞれ輸送してqの分布を作ることができる。輸送コストを砂の量に輸送距離をかけたものとする。このとき、pの分布をqの分布に変えるためにそれぞれ輸送した時の輸送コストの総和の最少をWasserstein距離と定義する。
GANの学習と似た式が導出
Wasserstein距離を求めることは困難そうにみえるが、カントロヴィチとルビンスタインの双対定理(Kantorovich-Rubinstein Duality)を使うと、Wasserstein距離の下限がGANの学習とよく似た式として導出される。低次元多様体同士に対してもWasserstein距離はコストとして正しく、学習の際にWasserstein距離を小さくすることで目標分布を精緻にモデル化することができるようになる。
非連続な情報を扱う場合には潜在変数(または多様体における座標)に離散的な変数を使う必要がある。また、人の姿勢のような構造的な多様体を考える場合は階層的な多様体を考える必要がある。
2)M. Arjovsky et al.,“Towards Principled Methods for Training Generative Adversarial Networks,” https://arxiv.org/abs/1701.04862
3)M. Arjovsky et al.“Wasserstein GAN,” https://arxiv.org/abs/1701.078
Preferred Networks 取締役副社長
記事は執筆時の情報に基づいており、現在では異なる場合があります。