2017-07-08 57 views
1

enter image description here (1)I具有n個在三維空間中的點
(2)I有一個隨機向量
(3)I項目中的所有n個點到載體
然後我找到所有點之間的平均距離
我怎樣才能找到向其中投影的點後,點之間的平均距離是最大的?
這可以在O(n)中完成嗎?查找矢量中哪些點更稀疏

+1

我認爲你的意思是「將點投影到一條線」,而不是「將點折入矢量」。請記住,一個矢量具有固定的長度。要考慮的另一件事是線的位置並不重要,它只是**的方向**,因爲平行投影不區分遠近,所以需要計算**角度* *線。希望能幫助到你。 – Garmekain

+0

也許我在這裏誤解了一些東西,但這不正是* [主成分分析](https://en.wikipedia.org/wiki/Principal_component_analysis)在做什麼? – Marco13

回答

0

有一種方法可以用於機器學習,特別是降維。 (這是基於在其中一個評論中提到的PCA)。

  1. 計算協方差矩陣。
  2. 找到特徵值和特徵向量。
  3. 具有最大特徵值的特徵向量將對應最多方差的方向,因此點的分佈方向最爲分散。
  4. 將點映射到矢量定義的線上。

居中點周圍投影之前,再移動回之後,可能需要爲好。與此相關的問題是,它在時間上相當昂貴。欲瞭解更多細節看這個問題:How is the complexity of PCA O(min(p^3,n^3))?

相關問題