1 はじめに
1.1 次元削減の定義
次元削減とは、高次元データが持つ多数の変数(特徴量)を、より少ない数の新しい変数に変換する手法の総称である。この変換は、データの本質的な構造や情報を可能な限り保持することを目的とし、変換後の低次元表現は元のデータの持つ冗長性を除去したものとなる。次元削減は教師なし学習の一分野に位置づけられ、多くの場合、元の変数の線形または非線形な組み合わせによって新しい変数を生成する。
1.2 次元の呪いとその影響
「次元の呪い」とは、データの次元数が増加するにつれて、空間の体積が指数的に拡大し、データ点間の距離がほぼ等しくなり、統計的な推論や機械学習アルゴリズムの性能が著しく低下する現象を指す。具体的には、サンプル数が一定である場合、次元が高くなるほど空間が疎になり、k近傍法やクラスタリングなどの距離ベースの手法が機能しにくくなる。また、過学習のリスクが高まり、モデルの汎化性能が損なわれる。
1.3 次元削減の目的と利点
次元削減の主な目的は以下の通りである。データの可視化により、人間が直感的にデータ構造を理解できるようにする。ノイズの除去により、信号対雑音比を向上させる。計算コストの削減により、学習や推論の高速化を図る。過学習の防止により、モデルの汎化性能を向上させる。さらに、特徴量間の多重共線性を解消し、後続の分析を安定させる利点もある。
2 主要な手法
2.1 線形次元削減
2.1.1 主成分分析(PCA)
主成分分析(Principal Component Analysis, PCA)は最も代表的な線形次元削減手法である。データの分散が最大となる方向(主成分)を順次求め、元のデータをこれらの主成分に射影することで次元を削減する。PCAは共分散行列の固有値分解またはデータ行列の特異値分解によって実装される。得られた主成分は互いに直交し、累積寄与率によって情報の損失量を評価できる。
2.1.2 特異値分解(SVD)
特異値分解(Singular Value Decomposition, SVD)は、任意の行列を直交行列と対角行列の積に分解する線形代数的手法である。次元削減においては、データ行列をSVDすることで、主成分得点を効率的に計算できる。特に、疎行列や大規模データに対してPCAを適用する際に、SVDは数値的に安定で計算効率が良い。また、レコメンデーションシステムにおける潜在因子モデルや自然言語処理における潜在意味解析の基盤としても利用される。
2.1.3 線形判別分析(LDA)
線形判別分析(Linear Discriminant Analysis, LDA)は教師あり次元削減手法であり、クラス間の分離を最大化する方向への射影を求める。具体的には、クラス内分散を最小化し、クラス間分散を最大化するような線形変換を導出する。LDAは分類問題の前処理として用いられることが多く、Fisherの線形判別としても知られる。ただし、クラス数より1次元低い空間にしか射影できないという制約がある。
2.2 非線形次元削減
2.2.1 多次元尺度構成法(MDS)
多次元尺度構成法(Multidimensional Scaling, MDS)は、データ点間の非類似度(距離)行列を入力とし、低次元空間上でその距離関係を可能な限り保存するような点の配置を求める手法である。古典的MDSは主成分分析と等価な結果を与える場合がある。計量MDSと非計量MDSがあり、後者は順序関係のみを保存する。MDSは心理学やマーケティング研究でのデータ可視化に古くから用いられている。
2.2.2 t-SNE
2.2.2.1 確率的近傍埋め込みの原理
t-SNE(t-distributed Stochastic Neighbor Embedding)は、高次元空間におけるデータ点間の類似度を条件付き確率で表現し、低次元空間でも類似した確率分布を再現するように埋め込みを行う手法である。高次元空間ではガウス分布を用い、低次元空間では自由度1のt分布(コーシー分布)を用いることで、 crowding problem(高次元の点が低次元に密集する問題)を緩和している。最適化はKLダイバージェンスの最小化により行われる。
2.2.2.2 パラメータ(perplexity)の影響
t-SNEの主要なハイパーパラメータはperplexityであり、これは実質的に各点の近傍の数を決定する。perplexityが小さいと局所構造が強調され、大きいと大域構造が捉えられる。適切なperplexityの値はデータサイズに依存し、一般的には5から50の間で設定される。perplexityの選択は結果に大きな影響を与えるため、複数の値を試して結果を比較することが推奨される。
2.2.3 UMAP
2.2.3.1 位相的データ解析との関係
UMAP(Uniform Manifold Approximation and Projection)は、位相的データ解析の概念に基づく非線形次元削減手法である。データの局所的な近傍関係からファジー・シンプリシャル集合を構築し、低次元空間でその位相的構造を保存するように埋め込みを最適化する。このアプローチにより、t-SNEよりも大域構造を良好に保持し、計算効率が高いという利点がある。
2.2.3.2 t-SNEとの比較
UMAPとt-SNEはともに非線形次元削減の代表的手法であるが、いくつかの違いがある。UMAPはt-SNEより一般に高速であり、大規模データセットにも適用しやすい。また、UMAPは大域構造をよりよく保存する傾向があり、埋め込みの結果が比較的安定している。一方、t-SNEは局所的なクラスタ構造をより明確に分離することがある。どちらの手法もハイパーパラメータの影響を受けるが、UMAPの方がn_neighborsの設定に対して頑健であるとされる。
2.2.4 自己符号化器(Autoencoder)
2.2.4.1 基本構造と学習方法
自己符号化器(Autoencoder)は、ニューラルネットワークを用いた非線形次元削減手法である。入力層、隠れ層(ボトルネック層)、出力層から構成され、入力データをボトルネック層で低次元表現(符号化)に圧縮し、そこから入力を復元(復号)するように学習する。損失関数には再構成誤差(平均二乗誤差や交差エントロピー)が用いられ、バックプロパゲーションで最適化される。ボトルネック層の次元数が削減後の次元数に対応する。
2.2.4.2 変分自己符号化器(VAE)
変分自己符号化器(Variational Autoencoder, VAE)は、確率的生成モデルとしての自己符号化器であり、潜在変数に確率分布を仮定する。VAEは、入力データの潜在表現を確率的にサンプリングし、再構成誤差に加えて、潜在分布と事前分布(標準正規分布など)のKLダイバージェンスを正則化項として学習する。これにより、滑らかで連続的な潜在空間が得られ、新しいデータの生成が可能となる。次元削減の観点では、潜在変数の平均が低次元表現として利用される。
3 応用領域
3.1 データ可視化
次元削減の最も一般的な応用は、高次元データを2次元または3次元に写像して可視化することである。t-SNEやUMAPは、遺伝子発現データ、文書のトピック分布、画像特徴量などの可視化に広く利用され、データのクラスタ構造や外れ値を直感的に把握するのに役立つ。
3.2 特徴量抽出
次元削減は、元の多数の変数からより情報量の多い新しい特徴量を抽出するために用いられる。例えば、PCAで得られた主成分スコアを機械学習モデルの入力特徴量として使用することで、ノイズを除去しモデルの性能を向上させることができる。顔認識では固有顔(eigenface)がPCAによって抽出される。
3.3 データ圧縮とノイズ除去
次元削減はデータ圧縮の一形態として機能する。低次元表現を保存しておき、必要に応じて元の次元に復元することで、ストレージの節約が可能となる。また、自己符号化器は、入力に含まれるノイズを除去するように学習できる(デノイジングオートエンコーダ)。再構成過程でノイズ成分が抑制されるため、クリーンなデータを得られる。
3.4 前処理(機械学習パイプラインにおける役割)
次元削減は機械学習パイプラインの前処理ステップとして頻繁に利用される。高次元データを低次元に変換することで、k近傍法やサポートベクターマシンなどの距離ベースのアルゴリズムの性能を向上させる。また、過学習を抑え、訓練時間を短縮する効果がある。PCAは標準化と組み合わせて広く用いられる。
4 評価と注意点
4.1 次元数の選択方法
4.1.1 スクリープロットと累積寄与率
次元削減後の次元数を決定する古典的な手法として、スクリープロット(固有値の大きさを降順にプロットしたグラフ)と累積寄与率(上位k個の主成分が説明する分散の割合)がある。スクリープロットで「肘」が現れる点や、累積寄与率が80%から90%を超える点を基準に選択される。
4.1.2 固有値の閾値
固有値を直接閾値処理する方法もある。例えば、PCAでは平均固有値(全固有値の平均)以上の主成分を採用する「カイザー基準」が用いられる。ただし、この方法はデータのスケールに依存するため、標準化が前提となる。
4.2 手法選択の指針
4.2.1 線形性と非線形性の判断
データが線形構造(例えば、部分空間上の分布)を持つ場合はPCAやSVDなどの線形手法が適している。非線形構造(曲がった多様体上にデータが分布する場合)では、t-SNEやUMAP、自己符号化器などの非線形手法が有効である。データの線形性は、PCAの残差やデータの可視化などで事前に評価できる。
4.2.2 計算効率とスケーラビリティ
大規模データに対しては、計算コストが重要な選択基準となる。PCAはO(n^3)の計算量を持ち、サンプル数や特徴量数が大きいと非現実的になる。UMAPやt-SNEはO(n log n)程度の効率的な実装が存在する。また、自己符号化器はミニバッチ学習により大規模データに対応できる。手法選択には、データサイズ、利用可能な計算資源、要求される精度を考慮する必要がある。
4.3 解釈可能性のトレードオフ
線形手法(PCA、LDA)は、各主成分が元の変数の線形結合として解釈可能であり、どの変数が重要かを理解しやすい。一方、非線形手法(t-SNE、UMAP、自己符号化器)は高い表現力を持つが、低次元表現の意味づけが困難である。実用的な場面では、解釈可能性が優先されるか、精度が優先されるかによって手法を選択する必要がある。
5 歴史と発展
5.1 古典的手法の確立(PCA, MDS)
主成分分析は1901年にKarl Pearsonによって導入され、1930年代にHarold Hotellingによって統計学の枠組みが整備された。多次元尺度構成法は1930年代に心理学の分野で研究が始まり、1960年代に非計量MDSが開発された。これらの手法は計算機の登場により実用的となり、20世紀後半に標準的なデータ解析ツールとして定着した。
5.2 非線形手法の台頭(ISOMAP, LLE)
2000年代初頭、多様体学習の概念に基づく非線形次元削減手法が相次いで提案された。ISOMAP(2000年)はMDSに測地線距離を導入した手法、局所線形埋め込み(LLE, 2000年)は局所的な線形関係を保存する手法である。これらの手法は、スイスロールデータなどの人工データで非線形構造を捉える能力を示し、非線形次元削減の研究を活性化した。
5.3 深層学習時代の次元削減(オートエンコーダ、変分法)
深層学習の普及に伴い、自己符号化器が再注目された。2006年の深層信念ネットワークの登場以降、積層自己符号化器が効果的な次元削減手法として用いられた。2013年に提案された変分自己符号化器(VAE)は、生成モデルと次元削減を統合し、潜在空間の確率的解釈を可能にした。また、2010年代後半にはt-SNEやUMAPが実用的な可視化ツールとして広く普及した。現在では、深層距離学習や対照学習と組み合わせた次元削減手法も研究されている。
6 関連トピック
6.1 特徴選択との違い
次元削減は新たな特徴量を生成する「特徴抽出」であるのに対し、特徴選択は元の変数の中から重要なものを選び出す手法である。特徴選択は解釈性が高く、変数間の関係を保つが、情報の損失を回避できない場合がある。一方、次元削減は変数を組み合わせるため、よりコンパクトな表現が得られるが、元の変数の意味が失われる。用途に応じて両者を使い分ける。
6.2 多様体学習
多様体学習は、高次元データが低次元の非線形多様体上に分布していると仮定し、その多様体構造を学習する手法群の総称である。次元削減の一分野であり、ISOMAP、LLE、ラプラシアン固有写像、t-SNE、UMAPなどが含まれる。多様体学習の理論的基盤は、リーマン幾何学や位相幾何学に依拠しており、データの内在次元を推定する研究とも関連する。
6.3 埋め込み表現と次元削減
埋め込み表現(Embedding)は、離散的なデータ(単語、グラフノード、カテゴリ変数)を連続的な低次元ベクトルに写像する手法であり、次元削減と深く関連する。Word2VecやGloVeによる単語埋め込み、Node2Vecによるグラフ埋め込みは、高次元の共起情報を次元削減することで意味的類似性を捉える。また、近年の大規模言語モデルにおける埋め込み層も、次元削減の一種として捉えることができる。次元削減は埋め込み表現の学習と評価において基本的なツールとして機能する。