14.1動機:データ圧縮
次元削減は、タグデータの使用を必要としない非教師あり学習法、次元削減です。
次元削減の目的の一つは、データ圧縮、データ圧縮少なくコンピュータメモリやディスクスペースを使用してのみ圧縮データをすることができますが、また私達の学習アルゴリズムを加速しています。
次元削減は、次のような良い取引の冗長機能、することができます。プロジェクトを実行すると、いくつかの異なるエンジニアリングチーム、あなたに200個の機能を与えるために、おそらく最初のプロジェクトチーム、あなたの別の300を与えるための第2のエンジニアリングチームがあります機能、あなたに500個の機能を与えるために、3番目のプロジェクトチームは、すべて一緒に1,000人以上の機能は、これらの機能は、多くの場合、そこに巨大な冗長性があり、また、これらの機能の多数を追跡することが非常に困難になります。
1まで2次元の特徴の寸法
以下、例えば、長さ測定項目あれば、横軸は測定ユニットの結果として、CM使用を示し、縦軸は、二つのことを特徴とする測定ユニットの結果として足の使用を表します。我々は、データの次元削減方法の冗長性を排除したいのでしかし、測定結果における測定結果の間に丸めへの冗長性の大規模な量は、同じではないかもしれません
この時点で、この実践を通して、私は新しいオンラインを作成するために、各サンプルの位置を計測することができた、すべてのデータがちょうどオンラインで投影することができるように、次のフォールラインによると、過半数を見つけたいと思うように見えますZ1、IはX必要即ち、原データ(1)、X(2項 ) 二次元機能、および新機能の今唯一のZ値を表し、は、元の2つの機能の内容によって表すことができます。
直線近似することによって、試料上に投影、全てのサンプルここで、x(1)、X(2ための実数値で設定することができ、元のデータで表すことができる )、X(3)、X(4)... X(M )データサンプルセット、X1を示すために、X2は、機能のための元のデータセットを表し、Z(i)が得られた新たな特徴寸法の低減により使用のi番目のサンプルを表します。
2次元機能に3次元
3次元ベクトルは、二次元の特徴ベクトルまで、同一平面上のすべてのデータを強制的に二次元平面に投影しました。二次元平面に元の三次元データ点、2次元平面上の特徴点を示す2次元位置データ。前記3つのX1、X2を用いてプリミティブ機能、X3は、Z1の新機能の使用を表し、Z2は、2つの軸の投影面を意味表し、$ zは^ {(I) }を介して落下するのI番目のサンプルを示し新機能の平和維持を求めます。
14.2動機II:データの可視化
データが大きな寸法になると我々は唯一の2~3次元データ可視化することができます現時点では、我々は、直感的な探索データを支配することはできません。この時点で、次元削減は非常に直感的で非常に重要な仕事となっています。
以下は、50個の指標によって、国の評価、我々は直感的な可視化手法で見てみたい国の発展のレベルのレポートですが、それは不可能である50次元のデータは、私たちは次元縮小を使用しているグラフィックスレンダリングを使用します2次元ビューの方法に低下させること。
これは、50次元の次元削減により、2つの新機能Z1とZ2に統合されていますが、私たちの新機能の重要性は、私たちは知りません。その次元削減は新機能の意味や定義を再発見するために、データニーズの寸法を小さくすることができます。
使用して、次元の新機能のグラフィック表現をドロップ:
横軸は、国/国GDP GDPの総合的な経済力について表し
幸福指数/一人当たりGDPについて示し、縦軸
14.3主成分分析原理
製剤Proncipal成分分析通報
主成分分析(PCA)は、最も一般的な次元削減アルゴリズムであり、
K = 2の数の主成分は、我々の目標は、すべてのデータが低次元平面上に投影したときの低次元投影面を見つけることですときにすべてのサンプルは、平均投影誤差ができるだけ小さくすることができるという希望。2つの投影面が平面から原点をベクターを通る長手方向平面で、投影誤差は、特徴ベクトルから投影面に垂直行われます。
主成分の数K = 1は、我々の目標は、方向ベクトル(ベクトル方向)を見つけることである場合、我々は、ベクター上のすべてのデータを入れたときに、すべてのサンプルの平均投影誤差が可能な限り小さくすることができることが望ましいです。方向ベクトルは、垂直方向のベクトルの長さに特徴ベクトルから原点を通るベクトル、射影誤差(投影誤差)です。
投影データは、2次元空間は、図ブラック×、元のサンプル点を表す赤、青の投影誤差の方向ベクトルであり、図の場合に示され、緑色のドットは、ベクトルの方向の投影データを表す。およびオブジェクトはPCA即ち、全ての投影データが最小誤差ベクトルの方向に投影されるように、方向ベクトルを見つけることである
注意使用前PCA、および必要性を正規化する正規化された機能
主成分分析の原理
突起上に二次元データから寸法ダウン検索で、方向ベクトル(μ(1)∈Rn)の最小誤差にすることができます。
n次元のk次元のベクトルから落下k個のμ(1)、μ(2見出さ )、μ(3)...μ(k)を、元のデータは、これらのベクトルの部分空間射影誤差線形最小に投影されるように。
PCAと線形回帰は異なる
機構から、結果は視点、多くのPCA及び線形回帰等、一見線又は平面は、それは非常に似て見えても、元のデータを当てはめることによって近似することができる見つけることであるが、実際に完全に異なります。
主成分分析投影誤差(ProjectedError)最小化、および線形回帰の試みは、予測誤差を最小にするようになっています。主成分分析は、教師なし学習法で、線形回帰は、目的は、線形回帰の結果を予測することで、教師付き学習法であり、主成分分析は全く予測を行わず、元のデータの全ての特性は、主成分分析に同じです処理しました。以下、左線形回帰誤差(横軸垂直投影に)であり、右側は、主成分分析誤差(投影ベクトルに対して垂直方向)です。
PCAの長所と短所の
の利点は
大きな利点のPCA技術は、データ処理の次元を削減することです。効果我々は、最も重要な部分を取る必要性を上記に従って、後者の寸法は次元削減を達成できるように、省略または簡略化モデルデータ圧縮され、新たに決定された重要性のベクトル「ピボット」を並べ替えることができます。元のデータの情報の最大の程度を維持します。
大きな利点のPCA技術は、それが完全にノンパラメトリックな限度であるということです。PCA人間の介入または経験的モデルのいずれかに従って計算することなく、完全に設定されたパラメータの計算中に、最終結果は、データのみに関連して、ユーザは独立しています。
不利な点
も欠点として見ることができます。オブジェクトの一部の事前知識が観察されなければならない場合、所望の効果ではないかもしれない、データの特性のいくつかを習得するが、パラメトリック法によってプロセスに介入することができず、効率が高くありません。
14.4主成分分析アルゴリズムProncipal成分分析アルゴリズム
K次元にセットダウンN次元データのPCA法使用して、元のデータを仮定し
、平均UJに寸法の全寸法を減算することによってすべての特徴の平均UJを計算された平均正規化し、元のデータを、さらにXJ = XJ-μJ場合異なる段階における機能の数だけでなく、標準偏差σ2寸法自体によって分割する必要がある場合は
、共分散行列は、サンプル(共分散行列)のセットを計算し、それ自体を乗じた寸法の各N次元ベクトル(NL)は、(寸法1N)で精製し転置、(N * N)の対称行列、及び共分散行列のサンプルセットを[シグマ添加した後すべてのサンプルが得られた行列
すなわち:
[シグマ= 1N1mΣi=(X(I)) (X(i))をT
注X(I)自体は保存された行ベクトルである場合、Xは、試料の積層層によってサンプルX(I)マトリックス層であると仮定すると、ある:
[シグマXT * X * = 1M
すなわち、
共分散行列の計算の[シグマ特性ベクトル(固有ベクトル)は、特異値分解(特異値分解)MATLABにおけるステートメント[U、S、V] =使用して解決されるに使用することができる SVD(シグマ)、 シグマΣ共分散行列、すなわちサンプルセットを表し、
上記式行列Uは、投影データ構成間の最小誤差を有する方向ベクトルです。我々はN次元の減少寸法Kからのデータが必要な場合は、単純に、すなわちベクター上の図の最初のK Uを選択し、U(1)、U(2 )、U(3)、... U(K) から、さUreduce発現及び新たな特徴ベクトルz(i)を計算することによって必要得、使用、マトリクスのN×Kの寸法を得るために
Z(I)= UTreduce * X (I)
ここで、x(I)は、N * 1を寸法サンプルベクトル、及び^ {(I)}最終結果Z、すなわち、得られたPCAにより新たな特徴ベクトルは、1次元ベクトル* Kであるので、UTは、K * N次元方向ベクトル構成行列で
要約されています
14.5は、圧縮された表現を再構築します
圧縮された表現から再構成
PCAを使用して、1000は100次元の特徴の寸法にデータを圧縮、または二次元表現に3次元データを圧縮することができます。だから、タスクは圧縮アルゴリズムは、元の高次元データの近似値に言っリターンの圧縮前にこのフォームに戻ることができるはずである場合はPCA場合。この図は、z(I)のX(I)PCAサンプルをマッピングするために使用される
データは、点Zに二次元的で表される、すなわち、使用X(1)へのいくつかの方法を再開することが可能であるかどうか、および、X(2)。
方法
Xappoxを用いて、n次元ベクトル(N * 1)を表すサンプルを再構成し、Ureduceを使用して特徴マトリックス(N * K)を表すデータサンプルの後にZ指示PCA寸法縮小を使用して、PCAアルゴリズムK固有ベクトル組成物を使用して選択新機能(K * 1)を有する:.
Xappox Z * = Ureduce
すなわちを
主成分14.6の数を選択します
pricipal部品の数を選択
マッピング(平均二乗投影誤差)の二乗誤差、および全変動(全変動)平均
PCAの目的は、マッピングの平均二乗誤差を低減することである,,すなわち、元のサンプルx(i)を減少させることによって再構築二乗差サンプルX(I)appox(低次元マッピング点)の平均
1mΣi= 1メートル|| X(I) -X(I)appox || 2回の
全変動データ(全変動)のように定義されます元のデータサンプルの平均長さ:
1mΣi1M = || X(I)|| 2つの
手段:ゼロベクトルからの生データから平均。
経験則では、Kの値を選択することである
マッピングの平均二乗誤差の比で、総変動が小さい(典型的には0.01選択)であるように、この比のためにKの可能な最小値を選択0.01未満であり、プロのための:予約済みデータ99差の%(分散の99%が保持されます)
パラメータKを選択し、差の99%が保持される
一般他の値0.05と0.10を有する、95%であり、差の90%が保存されます。
数主成分選択アルゴリズム
より少ない効率的な方法
次にUreduceおよびz(1)を得るために、主成分分析に供シリングK = 1、、Z(2 )、...、Z(M)、 およびその後のX低次元マッピング点を計算します( I)、マッピングの平均二乗誤差の比を計算し、全変動が1%未満であるappoxを、。そうでない場合、それはKの最小値は、1%未満の割合であってもよいことが見つかるまで、再度、K = 2で製造など
より良い方法
:共分散行列シグマ、呼び出し「SVD」関数を計算するときにKを選択するためにいくつかのより良い方法は、3つのパラメータを取得
[U、S、V] = SVD(Sigma)を
、前記Uは固有ベクトルであり、Sは対角要素S11、S22、S33 ...行列の残りの要素の対角行列である0 SNNです。
:すなわち、次の二つの式が同一である、(唯一の証拠が与えられていない示すこの式)証明することができる
ため、元の状態にに変換することができる:
式に従ってK満たす条件の最小値を見つけます。
アプリケーション推奨の14.7主成分分析
テストと検証セットと特徴ベクトルのUreduceのトレーニングセットとして使用する必要があり
、我々はすなわち10000個の特徴の合計100×100画素の画像機械学習のためのコンピュータビジョン、されている場合。
最初のステップは、データ圧縮機能1000に主成分分析を使用することである
と学習アルゴリズム実行トレーニングセット
付属学習特徴のトレーニングセットを使用して、予測するのUreduce入力が特徴ベクトルZに変換され、Xは、予測
我々が持っている場合は、テストのセットは、クロスバリデーション、から学ぶのも使用Ureduceのトレーニングセットを設定すること
PCAを取り付けるための方法を解決されていない
状況の主成分分析を使用する一般的な誤りをPCAは(特徴の数を減少させることによって)オーバーフィットを低減することです。これは非常に悪いです、私たちは、正則化プロセスを使用する必要があります。その理由は、主成分分析は、機能の一部を破棄し、そしてそれは、アカウントに任意のアウトカム変数y(すなわち、予測ラベル)の情報を取ることはありませんので、非常に重要な機能が欠落することができるだけ近似していることです。PCAは、すべての後に、同様に扱われ、入力属性またはタグの属性は、アカウントに入力されたプロパティのPCA廃棄部によるラベルのyの入力情報を削減の影響を取ることはありませんか教師あり学習、いずれの特徴、のない方法は、ラベルに行われていないされませんでした任意の補償。しかし、ときに我々はロジスティック回帰やニューラルネットワークやSVMによる正則化プロセスは、アカウントに結果変数に関する正則と影響を取る(予測ラベル)の入力属性に変更し、フィードバックを取り、正則ではない失うことになるそうだろう重要なデータ機能。
PCAが必要な方法ではありません
PCAは、データの時に大量のは、その圧縮データの大きさに、縮小データは、スピードトレーニングの使用最大メモリと速度を取るか、またはデータの可視化を使用して、データを理解する必要はなく、方法が必要なとき。デフォルトのシステムが間違っている時に追加されていないにかかわらず、PCAのパフォーマンスのPCAの機械学習システムに追加。PCAは、データの一部を失うことになるだけなので、従来のトレーニング方法は、(アルゴリズムがあまりにも遅い実行しているか、必要なときに占める一方で、データは、おそらく限界寸法は、それが最初のマシンラーニングシステムは、PCAの使用を考慮していないはずですです主成分分析の使用を検討する前に、あまりにも多くのメモリ)。
参考文献は14 1-2次元削減は次元削減データ圧縮とデータの可視化適用[アンドリュー・ウ・マシンは、Notesを学習]
アンドリュー・ウ機械学習次元削減目標ノート48-
次元削減:13機械学習(アンドリュー・ウを)