©PaperWeekly 原创 · 作者 | 苏剑林
单位 | 追一科技
研究方向 | NLP、神经网络
上一篇文章中,我们比较详细地介绍了 Johnson-Lindenstrauss 引理(JL 引理)的理论推导,这一篇我们来关注它的应用。
作为一个内容上本身就跟降维相关的结论,JL 引理最基本的自然就是作为一个降维方法来用。但除了这个直接应用外,很多看似不相关的算法,比如局部敏感哈希(LSH)、随机 SVD 等,本质上也依赖于 JL 引理。此外,对于机器学习模型来说,JL 引理通常还能为我们的维度选择提供一些理论解释。
降维的工具
JL 引理提供了一个非常简单直接的“随机投影”降维思路:
给定 个向量 ,如果想要将它降到 维,那么只需要从 中采样一个 矩阵 ,然后 就是降维后的结果。
这个思路简单快速是毋庸置疑的,读者随之而来的疑问就是:它跟 PCA、t-SNE 等降维方法相比效果如何?
其实,正如“存在就是合理的”,更复杂的 PCA、t-SNE 等方法既然还没有被淘汰,那就说明它肯定有比随机投影更好的地方。事实上,JL 引理的随机投影只是提供了一种非常基本的降维方法,显示出哪怕在这么简单的方法之后,降维后的维度也只需要 ,它更多的是一个理论证明。
所以,真要追求降维精度的话,多数情况下 PCA、t-SNE 等这些专门的降维方法,效果肯定是要比随机投影要好的。而且上一篇文章中我们也提过,JL 引理是一个非常充分的条件,它得到的 甚至 都只是非常充分的界,比如取 的话,就有 了,基本没有实用价值。而换用 PCA、t-SNE 等更精准的降维方法,可以放宽这个要求,即在更小的维度下达到更好的效果。