OMOGANEYA Technical Academy 〜 重金屋 技術塾 〜
【深層学習の基礎|第1章 機械学習と深層学習の基礎】1.3 教師なし学習
教師なし学習では、正解となる出力ラベルを持たない入力データだけを使ってモデルを構築する。
ラベルがないため、学習の手がかりとなる「教師」は存在しない。
教師なし学習が目指すのは、入力から出力への対応関係を学ぶことではなく、データそのものがどのような構造を持っているかを捉えることである。
1.3.1 教師なし学習の特徴
教師なし学習で扱うデータも、教師あり学習と同様にさまざまな性質を持つ。
例えば、値が離散的か連続的か、次元が低いか高いか、長さが固定か可変か、といった違いがある。
どの教師なし学習モデルにも共通するのは、ラベルの付いていない観測データの集合 から学習するという点である。
一方で、学習の目的はモデルによってさまざまである。
主な用途には次のようなものがある。
- データセットに含まれていそうな、もっともらしい新しいサンプルを生成する
- データを加工したり、雑音を取り除いたり、欠けた部分を補ったり、圧縮したりする
- データセットをまとまりのあるクラスタに分けるなど、データの内部構造を明らかにする
- 新しいデータが、学習に使ったデータセットの仲間なのか、外れ値なのかを判定する
1.3.2 潜在変数による教師なし学習モデルの分類
多くの教師なし学習モデルでは、観測データ と、直接は観測されない潜在変数 との対応関係を定める。
潜在変数は、データセットの背後にある構造を表す変数であり、通常は元のデータよりも次元が低い。
そのため、潜在変数 は、データ の本質的な特徴を保ったまま圧縮した表現とみなすことができる。
データと潜在変数の対応関係は、モデルによって向きが異なる。
データから潜在変数への対応
データ から潜在変数 を求めるモデルの代表例が、k平均法である。
k平均法では、各データ を、K個あるクラスタのいずれかに割り当てる。
このとき潜在変数 は、割り当て先のクラスタ番号 を表す。
潜在変数からデータへの対応
反対に、潜在変数 からデータ を求めるモデルもある。
このモデルでは、まず潜在変数の分布 を定めておく。
次に、この分布から潜在変数を取り出し、それをデータ空間へ写すことで、新しいデータを作り出す。
このように新しいデータを生み出せるモデルを生成モデルという。
1.3.3 生成モデルの種類
生成的敵対ネットワーク(GAN)は、潜在変数からデータを生成する方法を学習する
その際、生成したサンプルが実際のデータと見分けがつかなくなるような損失を用いる。
正規化フロー、変分オートエンコーダ(VAE)、拡散モデルは、代表的な確率的生成モデルである。
確率的生成モデルは、新しいデータを生成できるだけでなく、それぞれのデータ点 に確率または確率密度 を与える。
この確率は、モデルのパラメータ によって決まる。
確率的生成モデルの訓練
確率的生成モデルの訓練では、観測データ に与えられる確率ができるだけ大きくなるように、パラメータを調整する。
そのため、損失関数には、各データの確率の対数をとって符号を反転させた値の総和、すなわち負の対数尤度を用いる。
確率分布は、すべてを足し合わせると1になるという性質を持つ。
そのため、観測データの確率を高くすると、観測データから大きく離れたデータの確率は自然と低くなる。
確率を与えることの利点
データに確率を与えられることは、訓練の基準になるだけでなく、それ自体が役に立つ。
例えば、テストデータに対する確率を比べれば、2つのモデルの良し悪しを数値で比較できる。
また、あるデータの確率がしきい値より低いかどうかを見ることで、そのデータが同じデータセットの仲間か外れ値かを判断できる。
1.3.4 生成モデルの性能評価
生成モデルの性能を数値で評価する方法として、主に次のものがある。
テストデータの尤度
確率的生成モデルを比較する方法の一つは、テストデータに対する尤度を測ることである。
訓練データに対する尤度は、評価には向かない。
モデルが訓練データの各点にだけ非常に高い確率を与え、点と点の間には非常に低い確率しか与えないこともあり得るからである。
このようなモデルは、訓練データの尤度は高くても、訓練データを再現することしかできない。
テストデータの尤度を使えば、モデルが訓練データからどの程度汎化できているか、データ全体をどれだけ広くカバーしているかを評価できる。
モデルが訓練データの一部にしか高い確率を与えていなければ、それ以外の領域の確率は低くなり、テストデータの一部も低い確率になるためである。
ただし、この方法には次のような制約がある。
- GANは確率を与えないため、この方法を適用できない
- VAEと拡散モデルでは、尤度の推定に大きな計算コストがかかる(対数尤度の下限は計算できる)
- 正規化フローでは、尤度を正確かつ効率よく計算できる
インセプションスコア(IS)
インセプションスコア(IS)は画像向けの評価指標であり、ImageNetデータベースで訓練した生成モデルの評価に適している。
このスコアの計算には、事前に訓練された分類モデル(通常は「Inception」モデル)を使う。
指標の名前も、このモデルに由来する。
ISは、次の2つの考え方に基づいている。
- 生成された各画像 は、ImageNetのクラスのうち、ただ1つのクラスにだけ似ているべきである。つまり、分類結果の確率 は、そのクラスで鋭いピークを持つことが望ましい。
- 生成画像の集合全体としては、各クラスが同じ確率で現れるべきである。つまり、すべての生成画像で平均した確率 は平坦になることが望ましい。
ISは、この2つの分布の間の距離を、生成画像全体で平均したものである。
一方に鋭いピークがあり、もう一方が平坦であるほど値が大きくなる。
具体的には、 と の間のKLダイバージェンスを平均し、その指数をとる。
ここで、 は生成した画像の数であり、 は次式で求める。
ISには次のような限界がある。
- ImageNetデータベースを対象とした生成モデルにしか使えず、特定の分類モデルに依存する
- 分類モデルを訓練し直すと、まったく異なる値になることがある
- 同じクラスの中での多様性は評価されないため、各クラスにつき1枚だけリアルな画像を生成するモデルでも高い値になる
フレシェ・インセプション距離(FID)
フレシェ・インセプション距離(FID)も画像を対象とした指標であり、生成サンプルの分布と実際のデータの分布との間の対称な距離を計算する。
ただし、どちらの分布も正確に表すのは難しい。
実際のデータの分布を表すことこそ、生成モデルが本来果たすべき役割だからである。そのため、FIDは近似的な指標となる。
FIDでは、両方の分布を多変量ガウス分布で近似し、その間の距離をフレシェ距離によって推定する。
距離を測る対象は、元の画像そのものではなく、Inception分類ネットワークの最も深い層の活性化である。
この層の隠れユニットは物体のクラスと強く関係しているため、画像の細かな部分は無視され、意味的なレベルで比較が行われる。
FIDは、同じクラスの中での多様性も考慮できる。
一方で、評価はInceptionネットワークの特徴量に保持された情報に大きく左右され、ネットワークが捨てた情報は結果に反映されない。
捨てられた情報の中には、リアルなサンプルを生成するうえで重要なものも含まれ得る。
多様体の適合率と再現率
FIDは、サンプルのリアルさと多様性の両方の影響を受けるが、2つを区別することはできない。
この2つを分けて評価するには、データ多様体とモデル多様体の重なりを考える。
データ多様体は実際のデータが存在するデータ空間の部分集合、モデル多様体は生成されたサンプルが存在するデータ空間の部分集合である。
- 適合率:生成サンプルのうち、データ多様体の中に入っているものの割合。生成サンプルのリアルさを表す
- 再現率:実際のデータのうち、モデル多様体の中に入っているものの割合。実データのうち、モデルが生成できるものの割合を表す
多様体を推定するには、各データ点を中心として、k番目に近い点までの距離を半径とする超球を置く。
これらの超球を合わせた領域を多様体の近似とみなせば、新しい点がその内側にあるかどうかを簡単に判定できる。
多様体の計算は、通常は分類器の特徴空間で行われ、それに伴う長所と短所がある。
まとめ
教師なし学習では、ラベルのないデータから、データセットが持つ構造を学習する。
教師なし学習モデルの一部は生成モデルであり、新しいデータを作り出すことができる。
さらに生成モデルの一部は確率的生成モデルであり、新しいデータを生成できるだけでなく、観測データに確率を与えることもできる。
生成モデルの性能は、テストデータの尤度、インセプションスコア、フレシェ・インセプション距離、多様体の適合率と再現率などによって評価する。
この記事について
参考文献
・「深層学習を理解する I―教師あり学習とモデルの基礎―」Simon J. D. Prince 著、黒川利明 訳
・「深層学習を理解する II―教師なし学習・強化学習・倫理―」Simon J. D. Prince 著、黒川利明 訳
※本記事は、上記文献を参考にしつつ、筆者の理解に基づき整理したものである。
この記事を書いた企業
- 企業名
- 株式会社Lightcone Technology
- 事業内容
- LLMを活用したAIサービスの企画・開発・運営
Web・モバイルアプリケーションの企画・開発・運営
Webサイトの企画・制作
AI基盤技術の研究・開発 - URL
- https://lc-techno.com/
- 連絡先
- info@lc-techno.com
お問い合わせ
contact製品・サービスの掲載、掲載情報に関するお問い合わせ、OMOGANEYAを通じた調達・販売・取引支援について、お気軽にご相談ください。
