タグ付けされた質問 「dimensionality-reduction」

データに関する多くの情報を可能な限り保持しながら、データにまたがる多数の変数または次元を少数の次元に削減するための手法を指します。主な手法には、PCA、MDS、Isomapなどがあります。テクニックの2つの主要なサブクラス:特徴抽出と特徴選択。

4
「ランダムプロジェクション」は厳密にはプロジェクションではありませんか?
ランダム射影アルゴリズムの現在の実装は、からそれらをマッピングすることにより、データサンプルの次元を減らすに用い射影行列を持つエントリからインスタンスに適した分布(からIIDさを):RdRd\mathbb R^dRkRk\mathbb R^kd× kd×kd\times kRRRN(0 、1 )N(0,1)\mathcal N(0,1) バツ』= 1k√x Rx′=1kxRx^\prime = \frac{1}{\sqrt k}xR 便利なことに、このマッピングがペアワイズ距離をほぼ維持することを示す理論的な証明が存在します。 しかし、最近私はこれらのメモを見つけました。著者は、ランダムマトリックスを使用したこのマッピングは、単語の厳密な線形代数的意味での射影ではないと主張しています(6ページ)。そこに与えられた説明から、これは、そのエントリがから独立して選択される場合、の列は厳密に直交しないためです。したがって、の列の直交性が強制された以前のバージョンのRPは、投影と見なすことができます。RRRN(0 、1 )N(0,1)\mathcal N(0,1)RRR (1)この厳密な意味での射影の定義は何か、(2)なぜこの定義の下ではRPが射影にならないのかについて、より詳細な説明を提供できますか?

1
連続変数とバイナリ変数が混在するt-SNE
現在、t-SNEを使用した高次元データの可視化について調査しています。バイナリ変数と連続変数が混在しているデータがあり、そのデータはバイナリデータを非常に簡単にクラスター化しているようです。もちろん、これはスケーリングされた(0と1の間の)データの場合に予想されます。ユークリッド距離は、バイナリ変数間で常に最大/最小になります。t-SNEを使用して混合バイナリ/連続データセットをどのように処理する必要がありますか?バイナリ列を削除する必要がありますか?metric使用できる別のものはありますか? 例として、次のpythonコードを考えます。 x1 = np.random.rand(200) x2 = np.random.rand(200) x3 = np.r_[np.ones(100), np.zeros(100)] X = np.c_[x1, x2, x3] # plot of the original data plt.scatter(x1, x2, c=x3) # … format graph だから私の生データは: ここで、色は3番目のフィーチャ(x3)の値です。3Dでは、データポイントは2つの平面(x3 = 0平面とx3 = 1平面)にあります。 次に、t-SNEを実行します。 tsne = TSNE() # sci-kit learn implementation X_transformed = StandardScaler().fit_transform(X) tsne = TSNE(n_components=2, …

2
PCAが投影の全体の分散を最大化するのはなぜですか?
Christopher Bishopは彼の著書「パターン認識と機械学習」に、以前に選択されたコンポーネントに対して直交空間にデータが投影された後、連続する各主成分が1次元への投影の分散を最大化するという証明を書いています。他は同様の証明を示します。 ただし、これは、分散を最大化することに関して、連続する各コンポーネントが1つの次元への最良の投影であることを証明するだけです。なぜこれが意味するのか、最初にそのようなコンポーネントを選択すると、5次元と言う投影の分散が最大化されますか?

1
R線形回帰のカテゴリ変数「非表示」の値
これは私が何度か遭遇した例にすぎないため、サンプルデータはありません。Rで線形回帰モデルを実行する: a.lm = lm(Y ~ x1 + x2) x1は連続変数です。x2カテゴリ型で、「低」、「中」、「高」の3つの値があります。ただし、Rによって与えられる出力は次のようになります。 summary(a.lm) Estimate Std. Error t value Pr(>|t|) (Intercept) 0.521 0.20 1.446 0.19 x1 -0.61 0.11 1.451 0.17 x2Low -0.78 0.22 -2.34 0.005 x2Medium -0.56 0.45 -2.34 0.005 私は、Rがそのような要因(要因x2であること)に何らかのダミーコーディングを導入していることを理解しています。私はただ疑問に思っていx2ます。「高」の値をどのように解釈しますか?たとえば、ここで示した例の「High」x2は応答変数にどのような影響を与えますか? これの例を他の場所(例:ここ)で見ましたが、理解できる説明は見つかりませんでした。
10 r  regression  categorical-data  regression-coefficients  categorical-encoding  machine-learning  random-forest  anova  spss  r  self-study  bootstrap  monte-carlo  r  multiple-regression  partitioning  neural-networks  normalization  machine-learning  svm  kernel-trick  self-study  survival  cox-model  repeated-measures  survey  likert  correlation  variance  sampling  meta-analysis  anova  independence  sample  assumptions  bayesian  covariance  r  regression  time-series  mathematical-statistics  graphical-model  machine-learning  linear-model  kernel-trick  linear-algebra  self-study  moments  function  correlation  spss  probability  confidence-interval  sampling  mean  population  r  generalized-linear-model  prediction  offset  data-visualization  clustering  sas  cart  binning  sas  logistic  causality  regression  self-study  standard-error  r  distributions  r  regression  time-series  multiple-regression  python  chi-squared  independence  sample  clustering  data-mining  rapidminer  probability  stochastic-processes  clustering  binary-data  dimensionality-reduction  svd  correspondence-analysis  data-visualization  excel  c#  hypothesis-testing  econometrics  survey  rating  composite  regression  least-squares  mcmc  markov-process  kullback-leibler  convergence  predictive-models  r  regression  anova  confidence-interval  survival  cox-model  hazard  normal-distribution  autoregressive  mixed-model  r  mixed-model  sas  hypothesis-testing  mediation  interaction 

3
次元削減としてのクラスタリング
私はNick Pentreathの本「Machine learning with Spark」を読んでいます。224〜225ページで、著者は次元削減の形式としてK平均法を使用することについて説明しています。 この種の次元削減は見たことがありません。名前が付いているか、データの特定の形状に役立ちますか? アルゴリズムを説明した本を引用します。 kクラスターのK平均クラスタリングモデルを使用して高次元の特徴ベクトルをクラスター化するとします。結果は、k個のクラスター中心のセットです。 元のデータポイントのそれぞれを、これらの各クラスター中心からの距離で表すことができます。つまり、各クラスターの中心までのデータポイントの距離を計算できます。結果は、各データポイントのk距離のセットです。 これらのkの距離は、次元kの新しいベクトルを形成できます。これで、元のデータを、元のフィーチャの次元と比較して、より低い次元の新しいベクトルとして表すことができます。 著者はガウス距離を示唆している。 2次元データの2つのクラスターで、私は次のようにしています: K平均: ノルム2でアルゴリズムを適用する: ガウス距離でアルゴリズムを適用(dnorm(abs(z)を適用): 前の写真のRコード: set.seed(1) N1 = 1000 N2 = 500 z1 = rnorm(N1) + 1i * rnorm(N1) z2 = rnorm(N2, 2, 0.5) + 1i * rnorm(N2, 2, 2) z = c(z1, z2) cl = kmeans(cbind(Re(z), Im(z)), centers …

3
n、pの両方が大きい場合、PCAが遅すぎる:代替案?
問題の設定 高次元(4096)のデータポイント(画像)があり、それを2Dで視覚化しようとしています。この目的のために、私はKarpathyによる次のコード例のような方法でt- sneを使用しています。 scikit-学ぶドキュメントは、最初のデータの次元を下げるためにPCAを使用することをお勧めします: 特徴の数が非常に多い場合は、別の次元削減方法(たとえば、密なデータの場合はPCA、疎なデータの場合はTruncatedSVD)を使用して、次元数を妥当な量(たとえば50)に減らすことを強くお勧めします。 私はこのコードをDarks.LiuによってJavaでPCAを実行するために使用しています: //C=X*X^t / m DoubleMatrix covMatrix = source.mmul(source.transpose()).div(source.columns); ComplexDoubleMatrix eigVal = Eigen.eigenvalues(covMatrix); ComplexDoubleMatrix[] eigVectorsVal = Eigen.eigenvectors(covMatrix); ComplexDoubleMatrix eigVectors = eigVectorsVal[0]; //Sort sigen vector from big to small by eigen values List<PCABean> beans = new ArrayList<PCA.PCABean>(); for (int i = 0; i < eigVectors.columns; i++) { …

1
多様体学習と非線形次元削減の違いは何ですか?
多様性学習と非線形次元削減の違いは何ですか? これら2つの用語が同じ意味で使用されているのを見てきました。例えば: http://www.cs.cornell.edu/~kilian/research/manifold/manifold.html: 多様体学習(非線形次元削減とも呼ばれる)は、本来、高次元空間にあるデータを低次元空間に埋め込む一方で、特性を維持するという目標を追求します。 http://www.stat.washington.edu/courses/stat539/spring14/Resources/tutorial_nonlin-dim-red.pdf: このチュートリアルでは、「多様体学習」と「次元削減」は互換的に使用されます。 https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3337666/: 次元削減法は、多次元クラスの統計的サンプリングに数学的に定義された多様体を使用して、保証された統計的精度の識別ルールを生成するアルゴリズムのクラスです。 ただし、http://scikit-learn.org/stable/modules/manifold.htmlはより微妙です。 多様体学習は、非線形次元削減へのアプローチです。 私が見ることができる最初の違いの1つは、多様体が線形である可能性があることです。したがって、非線形多様体学習と非線形次元削減を比較する必要があります。

2
アイスクリームの販売と温度のこのPCAプロットを理解する
温度とアイスクリームの売上のダミーデータを取得し、K平均(nクラスター= 2)を使用して分類して、2つのカテゴリ(完全にダミー)を区別しています。 今、私はこのデータの主成分分析を行っています。私の目標は、私が見ているものを理解することです。PCAの目的は、次元数を減らし(この場合は明らかにしない)、要素の分散を示すことであることを知っています。しかし、以下のPCAプロットをどのように読みますか。つまり、PCAプロットの温度とアイスクリームについてどのような話をすることができますか?1台目(X)と2台目(Y)のPCはどういう意味ですか?

2
スケーラブルな次元削減
特徴の数が一定であることを考えると、Barnes-Hut t-SNEはの複雑さを持ち、ランダムな投影とPCAは複雑さを持ち、非常に大きなデータセットに対して「手頃」になります。O(nlogn)O(nlog⁡n)O(n\log n)O(n)O(n)O(n) 一方、多次元スケーリングに依存するメソッドは複雑さを持っています。O(n2)O(n2)O(n^2) 複雑さがよりも低い他の次元削減手法(もちろん、最初の列を見るような簡単な手法を除くますか?kkkO(nlogn)O(nlog⁡n)O(n\log n)

1
このオートエンコーダーネットワークを正しく機能させることができません(畳み込みレイヤーとmaxpoolレイヤーを使用)
オートエンコーダネットワークは、通常の分類子MLPネットワークよりも扱いにくいようです。ラザニアを数回使用した後、再構成された出力で得られるすべてのものが、入力桁が実際に何であるかを区別せずに、MNISTデータベースのすべての画像のぼやけた平均化に最もよく似ているものです。 私が選択したネットワーク構造は、次のカスケードレイヤーです。 入力レイヤー(28x28) 2Dたたみ込み層、フィルターサイズ7x7 最大プーリングレイヤー、サイズ3x3、ストライド2x2 高密度(完全に接続された)平坦化層、10ユニット(これがボトルネックです) 高密度(完全接続)レイヤー、121ユニット レイヤーを11x11に変形 2Dたたみ込み層、フィルターサイズ3x3 2Dアップスケーリングレイヤーファクター2 2Dたたみ込み層、フィルターサイズ3x3 2Dアップスケーリングレイヤーファクター2 2Dたたみ込み層、フィルターサイズ5x5 機能の最大プーリング(31x28x28から28x28へ) すべての2Dたたみ込み層には、バイアスが解除された、シグモイドアクティベーションと31のフィルターがあります。 完全に接続されたすべての層には、シグモイドアクティベーションがあります。 使用される損失関数は二乗誤差であり、更新関数はadagradです。学習用のチャンクの長さは100サンプルで、1000エポックに乗算されます。 以下は問題の説明です:上の行はネットワークの入力として設定されたいくつかのサンプルで、下の行は再構成です: 完全を期すために、私が使用したコードは次のとおりです。 import theano.tensor as T import theano import sys sys.path.insert(0,'./Lasagne') # local checkout of Lasagne import lasagne from theano import pp from theano import function import gzip import numpy as np from …

2
多様体の仮定が正しいことを証明する方法は?
機械学習では、データセットが滑らかな低次元多様体(多様体の仮定)にあると想定されることがよくありますが、特定の条件が満たされていると仮定すると、データセットが実際に(ほぼ)生成されることを証明する方法はありません低次元の滑らかな多様体から? たとえば、データシーケンスが与えられた場合、(角度の異なる顔画像のシーケンスと言います)および対応するラベルシーケンスここで、 (フェイスシーケンスの角度など)。とが非常に近い場合、それらのラベルとも非常に近いと仮定すると、{X1…Xn}{X1…Xn}\{\mathbf{X}_1 \ldots \mathbf{X}_n\}Xi∈RdXi∈Rd\mathbf X_i \in \mathbb{R}^d{y1…yn}{y1…yn}\{ y_1 \ldots y_n\}y1⪯y2…⪯yny1⪯y2…⪯yny_1 \preceq y_2 \ldots \preceq y_nXiXiX_iXi+1Xi+1X_{i+1}yiyiy_iyi+1yi+1y_{i+1}{X1…Xn}{X1…Xn}\{\mathbf{X}_1 \ldots \mathbf{X}_n\}低次元の多様体にあります。これは本当ですか?もしそうなら、どうすればそれを証明できますか?または、多様体の仮定が真であると証明できるように、シーケンスはどのような条件を満たす必要がありますか?

3
ICAは最初にPCAを実行する必要がありますか?
私は、ICAを適用する前に(fastICAパッケージを使用して)PCAを適用するというアプリケーションベースの論文をレビューしました。私の質問は、ICA(fastICA)ではPCAを最初に実行する必要があるのですか? この論文では、 ... PCAを事前に適用すると、(1)ホワイトニングの前に小さな後続の固有値を破棄し、(2)ペアごとの依存関係を最小限に抑えることで計算の複雑さを軽減することで、ICAのパフォーマンスが向上することも主張されています。PCAは入力データを非相関化します。残りの高次依存関係はICAによって分離されます。 また、他の論文はICAの前にPCAを適用しています、例えばこれ。 ICAの前にPCAを実行する他の長所と短所はありますか?理論を参考にしてください。

4
PCAに類似した非直交手法
2Dポイントデータセットがあり、データ内のすべての極大分散の方向を検出したいとします。次に例を示します。 PCAは直交分解であるため、この状況では役に立ちません。したがって、青色で示されている両方のラインを検出できません。その出力は、緑色のラインで示されているもののようになります。 この目的に適した手法を推奨します。ありがとう。

2
PCAまたは因子分析における歪んだ変数
22の変数に基づいてSPSSの主成分分析(因子分析)を実行したいと考えています。ただし、一部の変数は非常に歪んでいます(SPSSの範囲から計算された歪度は2〜80です)。 だからここに私の質問があります: そのように歪んだ変数を保持する必要がありますか、それとも主成分分析で変数を変換できますか?はいの場合、どのように因子得点を解釈しますか? どのタイプの変換を行う必要がありますか?log10またはln? 元々、私のKMO(Kaiser–Meyer–Olkin)は0.413です。多くの文献では、最低でも0.5を推奨しています。それでも因子分析を行うことはできますか、またはKMOを0.5に上げるために変数を削除する必要がありますか?


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