No. 22-14

データ解析入門 10 <t-SNE による次元削減>
キーワード：t-SNE、次元削減、データ可視化、機械学習

はじめに高次元データの代表的な次元削減手法として主成分分析（PCA）が知られています。PCA は有用な次元削減手法ですが、非線形に分布するデータの可視化には不向きです。本稿では、非線形な次元
削 減 手 法 と し て 知 ら れ る t-SNE （ t-distributed
stochastic neighbor embedding）を紹介します。
PCA と t-SNE の比較
本稿では、Fashon-MNIST と呼ばれるファッション商品のデータセット 1) を次元削減します。各デー
タは 28×28 （784 次元）のグレースケール画像であり、Shirt や Bag などの 10 個のラベルが付与されています。
主成分分析（PCA）により、1 万枚の画像を 2 次元に圧縮すると、図 1 に示すプロットが得られます。
Ankle boot、Sandal、Sneaker といった履物は左上に固まってプロットされていることがわかります。一方で、全体的にプロットが重なっている印象を受けます。

次に t-SNE による次元削減結果を示します（図 2）。
PCA の結果とは異なり、t-SNE により次元削減することで、ラベルごとにデータが分布する傾向が強くなりました。t-SNE により非線形な特徴を抽出できたことが示唆されます。
t-SNE の動作原理
PCA ではデータのばらつきに注目し、低次元空間に写像する行列を求めます。一方、t-SNE ではそのような行列を求めることなく、高次元空間で近くのデータは低次元空間でもできるだけ近くに、遠くのデータは低次元空間でも遠くになるようにデータ配置を決定します。
t-SNE のアルゴリズムは以下の通りです。
1.
2.
3.

4.
5.

全データについて、正規分布を仮定し、データxi、x j から確率𝑝𝑖𝑗 を算出する［式(1～2)］。
低次元空間に、全データ数 N と同じ数のデータ点をランダムに配置する。
高次元空間におけるデータ点 x i 、x j に対応する低次元空間のデータ点 zi 、zj から t 分布（自由度 1）に基づき確率𝑞𝑖𝑗 を算出する［式(3)］。
確率𝑝𝑖𝑗 、𝑞𝑖𝑗 の 2 つの分布が近くなるように、低次元空間のデータ点を配置しなおす。
結果が収束するまでステップ 3、4 を繰り返す。
2𝑝𝑗|𝑖 =

図1

図2

PCA による次元削減

t-SNE による次元削減

exp⁡(−‖𝒙𝒊 − 𝒙𝒋 ‖ ⁄2𝜎𝑖2 )∑𝑘≠𝑖 𝑒𝑥𝑝⁡(−‖𝒙𝒊 − 𝒙𝒌 ‖2 ⁄2𝜎𝑖2 )𝑝𝑖|𝑗 + 𝑝𝑗|𝑖2𝑁2⁡(1 + ‖𝒛𝒊 − 𝒛𝒋 ‖ )−1
𝑞𝑖𝑗 =∑𝑘≠𝑖⁡(1 + ‖𝒛𝒌 − 𝒛𝒊 ‖2 )−1
𝑝𝑖𝑗 =

(1)
(2)
(3)

ここで、𝑖、𝑗、𝑘はサンプルインデックス、𝑝𝑖|𝑗 は計算過程で得られる条件付き確率、𝜎𝑖 は𝒙𝒊 を中心とした正規分布の標準偏差を表します。また、𝑝𝑖𝑖 = 𝑞𝑖𝑖 =0 とします。
t-SNE はデータ間距離に基づく手法ですが、データ間距離は正規分布および t 分布によりデータの類似度に相当する確率に変換されます。図 3 に

標準偏差が 1 である正規分布および自由度 1 の t分布を示します。このとき、高次元空間では確率の算出に正規分布を用いますが、低次元空間では t分布を使用します［式(1～3)］。t 分布は正規分布よりも裾が重いため、高次元空間で近いデータはより近くに、遠くに位置するデータはより遠くに配置されることになります。このような t 分布の特徴を活かし、元のデータ分布の特徴をできるだけ保持します。
高次元空間におけるデータ点 x i、x j の確率𝑝𝑖𝑗 の分布と近くなるように、低次元空間における確率𝑞𝑖𝑗の分布を求めます。このために、カルバック・ライブ
ラー情報量という確率分布間の距離のような尺度を最小化します［式(4)］。
C = ∑ ∑ 𝑝𝑗𝑖 𝑙𝑜𝑔𝑖𝑗𝑝𝑗𝑖𝑞𝑗𝑖(4)検討すると良いかもしれません。
PCA と t-SNE の組み合わせ
非線形な特徴の可視化に優れる t-SNE ですが、データが高次元になると実行時間が長くなります。
実行時間短縮のためには、t-SNE の実行前に PCAにより次元削減しておくことも有効です。
図 5 に、t-SNE、PCA と t-SNE（"With PCA”と付記）、PCA による次元削減結果を示します。PCA を前処理として用いる場合、各図上部の丸括弧に記載した累積寄与率 2) を基準に主成分を選択しました。予め PCA を実行することで t-SNE の計算時間が短縮されましたが、一般的に過度な次元削減はPCA における情報損失を増加させてしまいます。
一方、次元削減が適度であれば、ノイズの影響が軽減される可能性があります。

カルバック・ライブラー情報量は、低次元空間におけるデータ点 zi で微分可能であるため、勾配情報を利用した手法により zi を最適化できます。例えば、確率的勾配降下法などを用いることができます。

図3正規分布および t 分布

t-SNE のパラメータについて以上が t-SNE の動作原理ですが、式(1)の標準偏差 𝜎𝑖 に依存して得られる結果は変化します。
データ点 x i の周りにデータが密集しているときは𝜎𝑖を小さくし、疎らであれば大きくするべきであり、適切な𝜎𝑖 を探索するために perplexity というパラメータを用います。Perplexity が大きければ𝜎𝑖 も大きくなり、遠くに位置する x i の近傍点の学習への寄与が大きくなります。図 4 に示すように perplexity の値によって得られる結果は変わります。Perplexity の検討範囲として、5～50 が目安とされることが多いようですが、データ数が多い場合は、より大きな perplexity もPerplexity = 5

Perplexity = 15

Perplexity = 50

図 5 t-SNE、PCA を前処理とした t-SNE（"WithPCA”と付記）、および PCA の実行結果（各図上部に累積寄与率および実行時間を示す）
おわりに
t-SNE は非線形データを可視化できる手法です
が、PCA のように写像する行列を求めているわけではありません。したがって、t-SNE により得られた低次元空間上に新たなデータを埋め込みたい場合は工夫が必要になります 3)。次稿では、t-SNE とよく対比される非線形次元削減手法を紹介します。
参考文献
1) https://github.com/zalandoresearch/fashion-mnist/blob/master/README.ja.md(accessed on March 28th, 2022)
2) 永廣卓哉：データ解析入門 3 <主成分分析によるデータマイニング>、ORIST テクニカルシート、No. 21-25(2021)
3) P. G. Poličar et al., Mach. Learn. (2021). https://

図4

Perplexity の影響

doi.org/10.1007/s10994-021-06043-1

発行日 2022 年 7 月 1 日作成者 高分子機能材料研究部 生活環境材料研究室
Phone: 0725-51-2611
E-mail: ehirot@orist.jp

永廣卓哉