1 t-SNEの概要

1.1 背景と目的

t-SNE(t分布確率的近傍埋め込み)は、高次元空間で観測されるデータ点の関係性を、低次元平面(多くは2次元)や空間(3次元)へ写像して可視化するための手法である。主眼は「近い点は低次元でも近く、遠い点は必要以上に近づけない」という関係の保持にある。とくに局所的な近傍構造が直感的に見える点から、データ探索や特徴量の理解に広く用いられる。

一方で、低次元での距離が高次元の距離そのものを厳密に表すわけではないため、見え方の解釈は慎重である必要がある。クラスタが分離して見えること自体は有用な手がかりになり得るが、可視化結果はパラメータや乱数初期値に左右されることがある。

1.2 基本原理

1.2.1 高次元側の類似度(近傍確率)

t-SNEは、点同士の「類似」を確率として定義する。高次元空間において、ある点を中心に見たとき、その点の近傍にある他点が高い確率で選ばれるように設計される。具体的には、ある点iと他点jの関係をガウス分布で測り、距離が小さいほど確率が大きくなる。

この確率は、確率分布として正規化されるため、近傍の相対的な強さが反映される。さらに、データの密度が領域によって異なる場合に備え、各点ごとにガウス分布の広がり(分散)が調整される。この調整により「局所の近さ」を扱いやすくする設計になっている。

1.2.2 低次元側の類似度とt分布

低次元側では、埋め込み後の点同士の類似度も確率として表す。ここで重要なのが、ガウス分布ではなくt分布(自由度1の代表的設定)が用いられる点である。t分布は裾が重く、遠方にある点同士の確率がゼロになりにくい。その結果、局所構造の保持をしつつ、点の過度な圧縮を抑える方向に働く。

低次元の確率分布も正規化され、各点間の類似度が全体の確率として整合する形で計算される。これにより、高次元側での近傍確率との一致を目指せるようになる。

1.2.3 最適化指標損失関数

t-SNEは、高次元側の近傍確率分布と低次元側の類似確率分布がどれだけ一致しているかを指標として、埋め込みを最適化する。代表的な損失は、確率分布間のズレを測るKLダイバージェンス(カルバック・ライブラー情報量)である。

最適化は勾配に基づいて繰り返し行われ、低次元座標が更新される。更新の結果、元の高次元空間で近いとされる点の関係が、低次元でも高い確率として再現されるように調整される。損失の性質上、局所的な適合が進みやすく、見え方が最適化の軌道や初期化に影響される場合がある。

1.3 t-SNEで得られるもの/誤解しやすいもの

t-SNEが得意とするのは、データの潜在的なグルーピングや、特徴空間上での局所的な構造を「形」として提示することである。そのため、教師なし学習の前段確認、クラスタ数の推定の手がかり、埋め込みの妥当性の直感的評価などに向く。

一方、よくある誤解は「低次元のユークリッド距離が高次元距離の単純な写像になっている」という認識である。t-SNEは距離の絶対値や大域的な幾何を直接保持する設計ではなく、確率的な近傍関係の一致を目的としている。そのため、クラスタ間の距離は比較根拠にならないことがある。また、同じデータでも乱択初期値やパラメータ(とくに近傍の広がりに関する値、学習率など)によって見え方が変わることがある。

2 数学的な定式化

2.1 高次元での近さのモデル化

2.1.1 ガウスカーネルと分散(パーシプレティ)

高次元空間の点集合を {x_i} とし、点iを基準に点jを選ぶ確率を表す。距離 d(x_i, x_j) を用いて、ガウスカーネルに比例した重みが与えられる形で近傍確率が定義される。中心となる量は、分散 σ_i を含む指数関数であり、距離が小さいほど大きな値になる。

この分散 σ_i は「パーシプレティ(perplexity)」という指標によって決められる。パーシプレティは、実質的に「有効な近傍の数」を表す数値として解釈される。各点でσ_iを調整することで、密度の異なる領域でも局所性の尺度が揃いやすくなる。結果として、密な領域では狭い分布、疎な領域では広い分布が選ばれやすい。

2.1.2 パーシプレティによる局所性の調整

パーシプレティの調整は、近傍確率の分布の「広がり」を点ごとに整える操作に相当する。パーシプレティが大きい場合、より遠めの点まで確率に寄与しやすくなり、局所性は弱まりやすい。逆に小さい場合はごく近い点への重みが強くなり、局所構造の強調につながる。

この性質は、データセットのスケールやクラスタ密度の違いに直結する。適切な値により、ターゲットとする構造(例:細かなサブクラスタか、粗いグルーピングか)を見やすくなる。調整は通常、各点について分散を求める数値計算として実装される。

2.2 低次元での近さのモデル化

2.2.1 t分布を用いる理由

低次元側では、埋め込み点 {y_i} 間の類似度をt分布で定義する。代表例として自由度1のt分布を用いると、確率は距離に対して重い裾を持つ関数として表される。

この選択は2つの要素を狙う。第一に、低次元で遠く離れた点同士にも非ゼロの関連を残し、点の極端な圧縮を緩和すること。第二に、最適化の過程で勾配が適切な方向に働きやすくなるようにすること、である。裾の重さは遠方の点への反発(あるいは押し広げる力)に影響し、視覚的に「クラスタが折りたたまれにくい」方向へ作用する。

2.2.2 大域構造と局所構造のバランス

t-SNEの設計は、局所の近傍関係の一致に強く焦点を当てる。結果として、局所構造は見やすくなるが、大域的な幾何(全体の形、クラスタ間配置の幾何学的意味)は保証されない場合がある。これは損失関数が「確率の一致」を目標にしていること、さらに低次元側確率において裾の性質が距離の扱いを変えることに起因する。

したがって、見えた配置を解釈する際には「近接している点が同じ近傍関係を共有している」という点に注意を集中し、絶対距離や角度の意味付けは控えめにするのが実務上の指針になる。

2.3 損失関数の意味

2.3.1 KLダイバージェンス

高次元側の確率分布 P と低次元側の確率分布 Q の差を測るために、KLダイバージェンスが用いられる。形式としては、Pに対してQがどれだけ整合していないかを量化するため、Pに高い確率を割り当てる近傍関係が優先的に再現される。

この方向性のため、主要な近傍での一致が強く促進され、他方で低確率領域の細かな差は必ずしも同程度に罰されない。結果として、視覚的には「クラスター内部がまとまりやすい」傾向が出ることがある。

2.3.2 勾配に基づく更新

埋め込み座標 y_i は、損失の勾配を計算しながら反復的に更新される。各ステップで、近いとみなされる点同士は引き寄せられ、遠い関係は押し戻される方向に作用する。t分布の性質と損失の形が、この力学的な解釈を形づくる。

更新の安定性は学習率や反復回数に依存する。小さすぎれば探索が進みにくく、大きすぎれば発散や過度な揺れの原因になる可能性がある。現実の実装では、初期化と学習率スケジュールの設計、さらに反復中の慣性項の扱いなども含めて、安定して収束するよう調整が行われることが多い。

3 実装と実務上の利用

3.1 前処理

3.1.1 標準化・正規化

t-SNEは距離に基づく確率計算を用いるため、各特徴量のスケールが結果に影響する。そこで、標準化(平均0・分散1など)や、外れ値の影響を抑えるスケーリングを行うことが実務上よく行われる。特徴量が異なる単位や分散を持つ場合、そのまま距離へ反映すると支配的な成分が近傍確率を左右する。

正規化の選択はデータの性質に依存する。例えば計数データでは適切な変換(対数変換など)が有効な場合がある。目的は「意味のある差が距離に過不足なく反映される状態」を作ることにある。

3.1.2 欠損値や外れ値への対処

欠損値がある場合、距離計算が成立しないため、補完(平均・中央値、モデルベース、最近傍補完など)を検討する必要がある。外れ値は近傍確率に影響しやすく、結果として特殊な点が別クラスタのように見える原因になり得る。外れ値を保持したい目的でない限り、頑健なスケーリングやしきい値に基づく処理が用いられることがある。

ただし、外れ値が本来のクラスターを表している可能性もあるため、除去は慎重に行うのが望ましい。前処理の判断は、可視化結果の解釈に直結する。

3.1.3 次元削減との併用(例:PCA)

高次元のままt-SNEを適用すると計算負荷が増し、距離計算も不安定になることがある。そこで事前にPCAなどで次元数を削減し、主要な分散方向を残す運用がよく行われる。前処理としてのPCAは、ノイズ成分を抑える効果を持ち、局所構造の推定が安定する場合がある。

ただし、PCAが捨てる成分にクラス構造が含まれている可能性もある。削減後の次元数は単純な固定値にせず、データの特徴(分散の分布、識別に効く成分の有無)に応じて調整が望ましい。

3.2 主要パラメータ

3.2.1 パーシプレティ

パーシプレティは高次元側での局所近傍の範囲を決める主要パラメータである。低い値では細部が強調され、高い値ではより大きな規模の構造が見えやすくなる傾向がある。クラスタの粒度が分からない段階では、複数候補で試し、安定した解釈可能なパターンが現れる領域を探す運用が一般的である。

また、データ点数との関係も重要である。点数に対して極端に大きい値を設定すると、近傍概念が過度に広がり、解像度が下がることがある。

3.2.2 学習率と反復回数

学習率(learning rate)は更新量のスケールに相当し、損失の下降挙動に影響する。反復回数は最適化の進行度を決め、十分に多くないと構造が形成される前に打ち切られることがある。

適切な組合せはデータ依存であり、可視化結果の安定性と計算コストの折り合いをとる必要がある。収束の厳密判定は実装により異なるが、損失が大きく改善しなくなる時点や、見え方が大きく変わらない時点を目安にすることがある。

3.2.3 初期化方法(乱数・既存埋め込み)

初期化は最適化の軌道を左右する。ランダム初期化では複数回実行すると配置が変わりやすいことがある。既存の埋め込み(例えばPCA結果など)を用いると、探索が始まる位置が制約され、安定した配置が得られる場合がある。

初期化戦略は、クラスタの形状がどの程度再現されるべきかという要件にも関わる。比較用途では、同一初期化や固定乱数種による再現性確保が役立つ。

3.2.4 乱択性(再現性)

t-SNEは乱数を介するため、同条件でも結果が完全に一致しないことがある。乱数種の固定、初期化の固定、同一実装環境の利用などにより再現性を高めるのが望ましい。特に報告・論文化では、パラメータと乱数条件を明記し、複数回実行して頑健性を確認することが推奨される。

再現性が十分でない場合、可視化は「傾向」の確認に留め、定量的な根拠として過度に依存しない判断が必要になる。

3.3 計算効率

3.3.1 Barnes-Hut近似の概要

通常の実装では、点数が増えると全ペアの計算がボトルネックになりやすい。Barnes-Hut近似は、遠方の点群をまとめて計算することで計算量を削減する考え方である。これにより、大規模データでも現実的な時間で実行できる場合がある。

近似の精度は設定パラメータやデータ分布に依存し、過度な近似は細部の変化につながり得る。実務では、計算速度と結果の安定性のバランスを確認しながら利用する。

3.3.2 大規模データの扱い方針

大規模データでは、サンプリング、近似法、あるいは下流タスクに応じた部分的可視化が検討される。全点を同時に埋め込む代わりに、代表的な部分集合を用い、別途補助情報で検証するアプローチもある。

また、クラスタ中心やラベル付きデータに基づく評価に重点を置き、全体の幾何を厳密に再現する必要がない状況では、計算資源に合わせた設計が可能になる。

3.4 出力の評価と確認

3.4.1 クラスタの解釈手順

クラスタに見える領域は、必ずしも「真のクラス」を意味しない。解釈では、対応する元特徴量や前処理の方法、ラベルの有無、また別の次元削減結果との整合性を確認する手順が有効である。例えば、クラスタ間で特徴の統計量が異なるかを検査し、原因仮説を立てる。

また、視覚的クラスタが形成されても、微妙な境界がある場合があるため、密度推定や近傍グラフによる定量評価を併用すると解釈の裏付けが得られる。

3.4.2 可視化結果の妥当性チェック

妥当性の確認には、パラメータ感度の点検が含まれる。パーシプレティや学習率を少し変えた際に、同じデータで同様の分離傾向が現れるかを観察する。さらに、複数回の実行による安定性(クラスタの対応付けが保たれるか)も確認対象になる。

別手法との照合も実務的である。例えばUMAPやPCAベースの可視化と傾向が一致するかを見れば、t-SNE固有の見え方に引きずられていないかの点検になる。

3.4.3 他手法との比較指標

比較の指標は用途により変わるが、クラスタの分離度、近傍保存の程度、ラベル付きの場合の分類性能などが用いられることが多い。距離の大域比較を直接行うよりも、「近接関係の一致」「群の対応関係」など局所性に関係する評価が相性がよい。

ただし、評価指標が可視化目的とずれると誤った結論につながる。例えば大域的な形状を厳密に比較する指標は、t-SNEの性質と齟齬を生むことがあるため、目的に合う指標選択が重要である。

4 関連手法と発展

4.1 UMAPとの違い

UMAP(Uniform Manifold Approximation and Projection)は、近傍グラフやトポロジーの観点から低次元埋め込みを学習する手法として知られる。両者はいずれも非線形次元削減であり、可視化に使われる点で共通するが、目的関数や最適化の設計が異なるため、結果の性格も変わりやすい。

一般に、UMAPは大域構造の保持を意識した設計になり得る一方、t-SNEは局所近傍の再現を強く重視する傾向がある。また計算効率面でUMAPが有利とされる場面もある。最終的な選択は、データ規模、必要な解釈の粒度、実行時間の制約に依存する。

4.2 近傍グラフにもとづく可視化との関係

近傍グラフにもとづく手法は、点をノードとして近い点をエッジで結び、その構造を低次元に写像する考え方に基づく。t-SNEも高次元側で近傍関係を確率として扱うため、近傍グラフ的な発想と親和性がある。

この関係により、近傍数や局所性の調整といった要素が、別の手法でも類似の役割を持つことがある。近傍グラフの生成(距離尺度、近傍数、重み付け)や、その構造をどのように最適化へ落とし込むかが差別化点になる。

4.3 t-SNEの派生・改善

4.3.1 速度改善や安定化の工夫

派生として、計算負荷を下げる近似や、収束挙動を改善する工夫が提案されている。Barnes-Hutのような近似は速度改善の代表例である。さらに、初期化や学習率スケジュールの工夫により、同条件での結果のばらつきを抑える方向の改良も行われてきた。

安定化は、パラメータ探索と組み合わせて重要になる。例えば、局所構造が崩れる場合は学習率や初期化を再考するなど、結果に現れる問題を観察しながら調整する実務的手順がある。

4.3.2 実験設計(パラメータ探索)の考え方

実験設計では、全探索を避けつつ要所を押さえることが重要である。まずパーシプレティを段階的に変え、クラスタの粒度がどう変化するかを観察する。次に学習率と反復回数を調整して、見え方が形成されるまでの十分な最適化が行われているか確認する。

また、乱択性の影響を切り分けるため、複数回実行してクラスタ対応が保たれるかを確認する。最終的な報告では、選定したパラメータ群とその根拠(解釈可能性や安定性)を記述すると、再現性の観点でも有利になる。