PCAおよびLDAにおける「再構築エラー」の意味


12

PCA、LDA、Naive Bayesをそれぞれ圧縮と分類に実装しています(圧縮と分類にLDAの両方を実装しています)。

私はコードを書いてあり、すべてが動作します。私が知っておく必要があるのは、報告書に関して、再構成エラーの一般的な定義です。

私は多くの数学とその使用法を文献で見つけることができます...しかし、私が本当に必要なのは鳥瞰図/わかりやすい言葉の定義なので、レポートに適合させることができます。


再構築エラーは(リストから)PCAにのみ適用される概念であり、LDAまたはナイーブベイズには適用されません。PCAの再構成エラーの意味について質問していますか、それともLDAと単純ベイズにも適用される「一般的な定義」が必要ですか?
アメーバ2016

両方知っていますか?レポートには、データの圧縮に関連するPCAとLDAの両方が含まれているため、PCAとLDAの両方について何らかの回答が必要ですが、必ずしもNBである必要はありません。だから、おそらく詳細なpca固有のバージョン...そして一般的なアイデアなので、LDAにも適用できます。次に、思わぬ障害に遭遇した場合にGoogleでより効果的に検索するのに十分な知識があります...
donlan

この質問general definition of reconstruction errorはとらえどころのないほど広いので、閉じた方がよいかもしれません。
ttnphns 2016

2
@ttnphns、広すぎるとは思いません。この問題は、「PCAの再構成エラーの概念をLDAに適用できるか」というように再定式化できると思います。そしてそれは面白くて話題の質問だと思います(+1)。時間があれば自分で答えを書こうと思います。
アメーバ2016

1
@amoeba、あなたが提案した公式では、質問は確かに光を受け取ります。はい、それで答えを書くことは可能です(そして私はあなたの答えが良いと期待するかもしれません)。LDAで「再構築されているもの」に関するトリッキーなことは、DVと見なされているものとLDAのIVの問題です。
ttnphns 2016

回答:


8

PCAの場合は、入力スペースのサブセットにデータを投影します。基本的に、すべてが上記のこの画像に当てはまります。最大の分散でデータを部分空間に投影します。投影からデータを再構築すると、赤い点が得られます。再構築誤差は、青色から赤色の点までの距離の合計です。これは、実際に、緑色にデータを投影することによって作成した誤差に対応していますライン。もちろん、あらゆる次元で一般化できます!

ここに画像の説明を入力してください

コメントで指摘したように、LDAはそれほど簡単ではないようで、インターネット上で適切な定義を見つけることができません。ごめんなさい。


LDAのケースはそれよりもトリッキーです。2次元投影の場合はどうしますか?PCAでは、2つの主軸が直交し、2D平面を形成するため、もちろん、同じ再構成誤差の考え方が適用されます。しかし、LDAでは、2つの判別軸は直交していません。では、どの程度正確に再構成エラーを定義することを提案していますか?
アメーバ

答えについては2つのコメントがあります。1)あなたの写真1は本当のPC1を示していると言っていますか?2)LDAと2番目の画像の場合-元の空間で判別式を軸として描画し、データポイントの残差を「再構築エラー」と呼ぶことができます。しかし、それは緩い用語の慣習です。判別式は何を再構築しますか?また、軸の非直交性についてアメーバが言ったことをここに追加します(ここに表示されます)。
ttnphns 2016

1)エラーを示すのはGoogle検索から取得した写真ですが、実際にはPCAの方がはるかに垂直です。より良いものを見つけて更新してみます。
Vince.Bdn 2016

2)投稿を編集しました。私は判別式を元の空間の軸として確かに幾何学的な観点から見る傾向がありますが、指摘されているように、直交性はありません。私の間違い...
Vince.Bdn 2016

1
ビンス、それはあなたの決定です。しかし、私については、あなたの代わりに、答えの2番目の写真も残したほうがいいです。あなたは間違えられておらず、あなたの見方は可能です。ただし、この問題はLDAではさらに複雑です。コメントはそれを強調するためだけのものでした。
ttnphns 2016

2

再構成エラーの一般的な定義は、元のデータポイントとその低次元部分空間への投影(その「推定」)の間の距離です。

出典:インペリアルカレッジロンドンによるMathematics of Machine Learning Specialization


0

R2

計算

Xf

R2ith

Ri2=1j=1n(Xj,ifj,i)2j=1nXj,i2

R2=1.0R2

ith

RMSEi=(Xifi)2¯

N

NRMSEi=RMSEiNi=(Xifi)2¯Xi2¯

計算

Pythonを使用している場合は、次のように計算できます。

from sklearn.metrics import r2_score
from sklearn.metrics import mean_squared_error
from math import sqrt
import numpy as np

r2 = r2_score(X, f)
rmse = sqrt(mean_squared_error(X, f))

# RMSE normalised by mean:
nrmse = rmse/sqrt(np.mean(X**2))

ここで、X元のデータであり、f圧縮されたデータです。

可視化

R2

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.