High Dimensional Data
1973 ワード
ユニークベクトル&ユニーク値
EigenVector(固有ベクトル):変換によってベクトルが別の位置になり、この変換の影響を受けない回転軸(またはベクトル)を空間の固有ベクトルと呼ぶ
(指定された変換に対して、方向を変更せずにサイズのみを変更するベクトル)
Eigenvalue(固有値):変化するサイズはスカラー値であり、この特定のスカラー値を固有値と呼びます.
高度な問題
多数のフィーチャー(100以上)を持つデータセットをモデリングまたは解析するときに発生するさまざまな問題.
データセットのすべてのフィーチャーが同等に重要ではない
データの一部を制限しても理解の意味であまり差がないことを知っていれば、ある時点でfeatureをより多く使うのは効率的ではありません.
サンプル数に比べてfeatureの数が多すぎるとフィットする問題が発生します
※これらの問題を解決するためにFeature Selection、Feature Extractionが必要
次元の縮小
利点:選択したフィーチャーの分析が容易:フィーチャー間の相関を考慮する必要がある
利点:特性間の関連性が考慮される/特性数が減少する多くの欠点:特性の解析が困難である
PCA (Principal Component Analysis)
高レベルデータを効率的に分析する方法
ディメンションダウン(Extractionメソッドの1つ)
可能な限り元のデータ情報(分散)を保持するベクトルを検索し、そのベクトルにデータを投影します(正投影)
※PCA(主成分分析)は、データ分散を最大限に保持し、互いに直交する新しいベース(軸)を探し、高次元空間の標本を線形関係のない低次元空間に変換する方法です.
データ分散(下降)=情報
すなわち,どれだけ遠くに分布しているかが情報である.
ピンクマークの付いた斜線軸は、元のデータの分散性を最大限に保つ(=データの散布が最も多い)新しい軸です.
PCAの目的はこのような軸を見つけることです
2 Dに縮小して多次元データを表示
情報損失が最小の2 Dを選択
from sklearn.preprocessing import StandardScaler, Normalizer
from sklearn.decomposition import PCA
scaler = StandardScaler() # 주어진 데이터를 표준화
Z = scaler.fit_transform(df)
pca = PCA(2) # 2차원
pca.fit(Z) # 표준화한 데이터에 적용
B = pca.transform(X)
df2 = pd.DataFrame(B, columns = ['PC1', 'PC2'], index = df.index)
sns.scatterplot(x = 'PC1', y = 'PC2', data = df2)
# PC1과 PC2에 대해서 scatter plot
# 여기서 PC1과 PC2는 무엇을 뜻하는지 알 수 없다
# 그저 어떠한 특성이다
PCA特性(この場合、カーネルPCAが使用可能)
Reference
この問題について(High Dimensional Data), 我々は、より多くの情報をここで見つけました https://velog.io/@ssulee0206/High-Dimensional-Dataテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol