次元の呪いとは、扱うデータの次元数(特徴量の数)が増えるにつれて、必要なデータ量が指数関数的に増加し、機械学習モデルの分析や予測の精度が低下する現象です。空間が広大になることでデータ点が疎になり、距離に基づくアルゴリズムの信頼性が損なわれるため、次元削減などの対処法が必要になります。
次元の呪いとは
次元の呪いとは、データの特徴量の数(次元数)が増えるにしたがってデータ空間が急激に広大になり、データの密度が極端に薄くなることで、機械学習モデルの学習や分析が困難になる現象です。
詳しく解説
データ分析や機械学習において、特徴量を増やすと情報量が増えて精度が上がるように思われますが、高次元空間ではデータ同士の距離がほぼ均一になり、近傍の概念が崩壊します。例えば、1次元の直線から3次元の立方形、さらには数十次元へと増えるごとに空間の体積が爆発的に増加するため、空間全体をカバーするために必要なデータ量が指数関数的に増大します。データが疎になる結果、KNN(k近傍法)のような距離に基づく機械学習アルゴリズムの性能が大きく低下し、モデルが訓練データだけに過剰に適合する過学習を起こしやすくなります。この問題に対処するため、データの重要情報を保ちつつ次元を減らす次元削減の手法が不可欠となります。
具体例・使われ方
例えば、10個の区画に分けた1次元の直線上でデータを分析する場合、各区画にデータを入れるには10個のサンプルで足ります。しかし、10次元の空間で各軸を10分割すると、必要な区画数は10の10乗(100億個)にも跳ね上がります。画像認識において高解像度のピクセルをそのまま特徴量として扱う場合や、自然言語処理で巨大な単語辞書をベクトル化する場合などに次元の呪いが発生しやすくなります。
似た用語との違い
過学習と次元の呪いは密接に関連していますが、同一ではありません。過学習はモデルが訓練データのノイズまで学習してしまう現象全体を指すのに対し、次元の呪いは高次元空間におけるデータの疎落性や距離の無意味化という空間的な性質そのものを指します。次元の呪いが原因となって過学習が引き起こされるという関係性にあります。
注意点
次元の呪いを避けるために無計画に特徴量を削除すると、予測に必要な重要情報まで失われてしまうリスクがあります。主成分分析などの次元削減手法を適用する際は、情報の損失量を確認しながら適切に次元を圧縮する必要があります。また、深層学習などの一部のモデルは高次元データから自動的に有効な表現を学習できますが、データ量が不足している場合は依然として次元の呪いの影響を受けます。