找到点较稀疏的向量

时间:2017-07-08 00:47:58

标签: math optimization geometry mathematical-optimization

enter image description here (1)我在3D空间中有n个点 (2)我有一个随机向量
(3)我将所有n个点投射到矢量
中 然后我找到所有点之间的平均距离
我怎样才能找到将点投射到其中的矢量,点之间的平均距离最大? 这可以在O(n)中完成吗?

1 个答案:

答案 0 :(得分:0)

您可以从机器学习中使用一种方法,特别是降维。 (这是基于其中一条评论中提到的PCA。)

  1. 计算协方差矩阵。
  2. 找到特征值和特征向量。
  3. 具有最大特征值的特征向量将对应于最大方差的方向,因此点的分布方向最为分散。
  4. 将点映射到矢量定义的直线上。
  5. 在投影前将点围绕 0 居中,然后再将其移回。问题在于它在时间上相当昂贵。有关详细信息,请查看此问题:How is the complexity of PCA O(min(p^3,n^3))?