結論
主成分分析は、データ全体のばらつき(分散)をできるだけ保つ方向に射影する線形の次元削減で、特徴量を減らす前処理にも可視化にも使えます。t-SNEは、近くにあるデータどうしの関係を保つように点を配置する非線形の手法で、主に2次元や3次元での可視化に使います。
比較表
| 観点 | 主成分分析(PCA) | t-SNE |
|---|---|---|
| 変換の種類 | 線形 | 非線形 |
| 保とうとする構造 | データ全体の分散(大域的な構造) | 近いデータどうしの関係(局所的な構造) |
| 計算の中身 | 共分散行列の固有値と固有ベクトルを求める(データ行列の特異値分解でも求められる) | 元の空間と図の上での近さの確率分布のずれ(KL情報量)を、点の位置を動かして小さくする |
| 主な用途 | 特徴量の圧縮、ノイズの低減、学習の前処理、可視化 | 2次元・3次元への可視化、まとまりを探す探索的な分析 |
| 軸や距離の読み方 | 各主成分は元の変数の重み付きの和で、寄与率から保てた情報の量がわかる | 図の軸に意味はなく、クラスタの大きさやクラスタ間の距離もそのままは解釈できない |
| 結果の安定性 | 同じデータなら同じ結果(各軸の向きの正負を除く) | 乱数の初期値やパープレキシティによって変わる |
| 新しいデータへの適用 | 求めた主成分の方向に射影するだけでよい | 基本的に計算をやり直す |
| 提案 | ピアソン(1901年)、ホテリング(1933年) | ファン・デル・マーテンとヒントン(2008年) |
| シラバス項目 | 技術分野 項目8 教師なし学習(キーワード「主成分分析(PCA)」) | 技術分野 項目8 教師なし学習(キーワード「t-SNE」) |
最終確認日:2026年10月30日
それぞれの説明
主成分分析とt-SNEは、どちらも変数の多いデータを少ない次元で表す次元削減の手法です。ただし、何を保とうとするかが違うため、向いている用途も異なります。
主成分分析
主成分分析(PCA)は、データのばらつき(分散)が最も大きい方向を第1主成分とし、それと直交する方向の中で分散が最も大きい方向を第2主成分とする、という手順で新しい軸を取り直します。計算上は、共分散行列の固有値と固有ベクトルを求めることにあたります。
線形の変換なので、各主成分は元の変数の重み付きの和で表せ、何を表す軸かを解釈しやすいのが長所です。寄与率を見れば、残した主成分で元のばらつきをどれだけ保てたかもわかります。求めた方向に射影するだけで新しいデータにも適用できるので、モデルに入れる特徴量を減らす前処理にも使えます。一方、曲がった面の上に並ぶような非線形の構造は、少ない主成分ではうまく表せません。
t-SNE
t-SNEは、2008年にファン・デル・マーテンとヒントンが発表した非線形の手法です。元の空間でのデータどうしの近さを確率で表し、2次元や3次元の図の上でも同じ近さの関係になるように点の位置を動かします。図の側の近さには裾の重いt分布を使い、まとまりどうしをはっきり分けて見せます。
近いデータどうしの関係を優先して保つため、まとまりを見つける可視化に向いています。その代わり、図の軸には意味がなく、クラスタの大きさやクラスタ間の距離もそのままは解釈できません。結果は乱数の初期値やパープレキシティによって変わり、新しいデータを加えるときは計算をやり直します。
組み合わせて使う
2つは、どちらか一方だけを選ぶ関係とは限りません。t-SNEの提案論文でも、先に主成分分析で30次元まで減らしてから、t-SNEで2次元の図を作っています。
見分けるコツ
- 「線形」「分散が最大の方向」「寄与率」が出てきたら主成分分析、「非線形」「近いデータどうしの関係」「パープレキシティ」が出てきたらt-SNEです。
- 目的で選びます。モデルに入れる特徴量を減らしたいなら主成分分析、データのまとまりを図で確かめたいならt-SNEです。
- t-SNEの図で、クラスタどうしが離れて見えても、元の空間で離れているとは限りません。図の上の距離や広がりをそのまま読む説明は誤りです。
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
t-SNEで描いた2次元の図の横軸は、主成分分析の第1主成分と同じく、元のデータのばらつきが最も大きい方向を表す。
答えを見る
答え × 誤り
t-SNEの図の軸には特定の意味がなく、図を回転させても同じ結果とみなせます。ばらつきが最も大きい方向を軸にとるのは、主成分分析です。
-
変数の数がとても多いデータにt-SNEを使う前に、主成分分析で数十次元まで減らしておくことがある。
答えを見る
答え ◯ 正しい
t-SNEの提案論文でも、先に主成分分析で30次元まで減らしてから適用しています。データ間の距離の計算を軽くし、ノイズを抑えるためです。
-
主成分分析で、主成分を元の変数と同じ数だけすべて残すと、元のデータの情報は失われず、直交する新しい軸で表し直しただけになる。
答えを見る
答え ◯ 正しい
すべての主成分を残せば、元のデータを復元できます。次元削減になるのは、寄与率の小さい主成分を捨てて、残す軸の数を減らしたときです。
関連問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目8 教師なし学習)
- Laurens van der Maaten, Geoffrey Hinton, Visualizing Data using t-SNE, Journal of Machine Learning Research 9, 2579–2605 (2008) (3 t-Distributed Stochastic Neighbor Embedding、4.2 Experimental Setup)
- Karl Pearson, On Lines and Planes of Closest Fit to Systems of Points in Space, Philosophical Magazine 2(11), 559–572 (1901)
- scikit-learn User Guide, Decomposing signals in components(Principal component analysis)
ほかの違い比較
- アジャイルとウォーターフォールの違い 進め方とAI開発での使い分け
- 赤池情報量規準(AIC)とベイズ情報量規準(BIC)の違い 罰則の重さ
- バギングとブースティングの違い 並列か逐次か、減らす誤差の違い
- バッチ正規化とレイヤー正規化の違い 平均と分散を計算する範囲の違い
- バッチ学習・ミニバッチ学習とオンライン学習の違い 更新回数とぶれ
- BERTとGPTの違い エンコーダとデコーダ、学習課題の違い
- CBOWとスキップグラムの違い 予測の向きと学習の速さ
- 分類問題と回帰問題の違い 出力の形で見分けるコツと評価指標
- CNN・RNNとTransformerの違い 得意なデータと計算の並列性
- 協調フィルタリングとコンテンツベースフィルタリングの違い 仕組み
- 共分散と相関係数の違い 式の関係と単位・値の範囲
- データ汚染とAdversarial Attackの違い 学習時か推論時かと対策
- 決定木とランダムフォレストの違い 解釈のしやすさと精度・安定性
- 深さ優先探索と幅優先探索の違い 調べる順番・最短解・メモリ
- 営業秘密と限定提供データの違い 3つの要件と刑事罰の有無
- Faster R-CNNとYOLOの違い 2段階型と1段階型、速度と精度
- GANと拡散モデル(Diffusion Model)の違い 学習と生成の仕組み
- GANとVAEの違い 識別器の有無と学習の仕組み
- GDPRと個人情報保護法の違い 法的根拠・本人の権利・制裁金
- 勾配降下法と誤差逆伝播法の違い 勾配を使う側と求める側
- グリッドサーチとランダムサーチの違い 試行回数の決まり方と効率
- ホールドアウト検証と交差検証の違い 分割回数・計算量・使い分け
- 画像分類(物体識別)と物体検出の違い 出力の形と使い分け
- 委託・第三者提供と共同利用の違い 同意の要否と受け手が使える範囲
- k-means法と階層的クラスタリングの違い クラスタ数を決める時期と計算量
- 個人情報・個人データと保有個人データの違い 範囲の入れ子とかかる義務
- 個人情報と個人識別符号の違い 包含関係と当たる例・当たらない例
- L1正則化とL2正則化の違い 罰則の形と重みが0になるか
- 最小二乗法と最尤法の違い 推定の基準と結果が一致する条件
- LIMEとSHAPの違い 局所近似とシャープレイ値の使い分け
- LSTMとGRUの違い ゲートの数と記憶セルの有無
- 機械学習とディープラーニングの違い 包含関係と特徴量の決め方
- 平均絶対値誤差(MAE)と平均二乗誤差(MSE)の違い 外れ値への強さ
- 正規化と正則化の違い 目的と代表的な手法を表で整理
- 主成分分析(PCA)と特異値分解(SVD)の違い 目的と計算の関係
- 適合率と再現率の違い 分母の違いと重視する場面
- プルーニング・量子化と蒸留の違い 何を減らすかと元モデルの扱い
- Q学習とSARSAの違い 更新式の1か所と方策オン・オフ
- RNNとLSTMの違い 記憶セルと勾配消失の起きにくさ
- Self-AttentionとSource-Target Attentionの違い Q・K・Vの出どころ
- セマンティック・インスタンスとパノプティックの違い 背景と個体の扱い
- 新規性と進歩性の違い 比べ方とAI発明での論点
- シグモイド関数とソフトマックス関数の違い 出力の合計と使い分け
- ソフトローとハードローの違い 法的拘束力の有無と日本・EUの例
- 強いAIと弱いAIの違い 心をもつと考えるかの違い
- 教師あり学習・教師なし学習と強化学習の違い 学習の手がかりと代表例
- 特許権と著作権の違い 発生・保護対象・期間とAIでの使い分け
- 匿名加工情報と仮名加工情報の違い 加工の程度と第三者提供の可否
- 転移学習とファインチューニングの違い 重みを固定するか更新するか
- 請負契約と準委任契約の違い 完成義務とAI開発での使い分け
- Zero-shotとFew-shotの違い 与える例の数と重みを更新しない点