Johnson–Lindenstrauss 定理-Johnson–Lindenstrauss lemma
Johnson–Lindenstrauss 定理是这样的:一个一百万维空间里的随便一万个点,一定可以几乎被装进一个几十维的子空间里!
严格说来是这样:在 M 维空间中的 N 个点,几乎总是被包含在一个 D 维子空间里的。这里的 D 按照直觉应当等于 N 的阶,可是实际上我们只需要让 D 是 log(N) 的阶就可以了。这里「几乎被包含在」的确切含义是它在这个子空间上的投影几乎是等距的(允许有一个 ε 的误差,而常数 D/log(N) 就依赖于 ε)。很显然,这件事情在高维数据降维时有极重要的意义。
这个定理的证明很初等。它依赖于这样的一个基本概率事实:一个随机的 M 维单位向量到一个随机的 D 维子空间上的投影的长度几乎一定约等于 D/M。这件事情本身也有点不同寻常,虽然它可以通过简单的计算来证实。这是概率论计算中常常出现的由于高维度而导致的反直觉现象的一例。
这让我想起另一个高维度导致的悖论,是我在学大数定律时了解到的。在 M 维单位立方体中随机取一个点,当 M 充分大时根据大数定理容易算出这个点到立方体中心的距离几乎一定等于 √(M/3)/2。于是这就说明 M 维实心单位立方体几乎就完全位于一个半径为 √(M/3)/2 的球壳上。这里没有任何捣鬼之处,事实上就是如此。
Johnson–Lindenstrauss 引理表明任何高维数据集均可以被随机投影到一个较低维度的欧氏空间,同时可以控制pairwise距离的失真.
理论边界
由一个随机投影P所引入的失真是确定的,这是由于p定义了一个esp-embedding.其概率论定义如下:

u和v是从一个形状是[n样例,n特征]=[n_samples, n_features]的数据集中的任意行,p室友一个形状是[n成分,n特征]=[n_components, n_features]的随机高斯N(0,1)矩阵的投影(或一个稀疏Achlioptas矩阵).
用于保证eps-embedding的最小成分数有下面的公式得到:

Johnson–Lindenstrauss 定理-Johnson–Lindenstrauss lemma的更多相关文章
- 最短路径算法——Dijkstra,Bellman-Ford,Floyd-Warshall,Johnson
根据DSqiu的blog整理出来 :http://dsqiu.iteye.com/blog/1689163 PS:模板是自己写的,如有错误欢迎指出~ 本文内容框架: §1 Dijkstra算法 §2 ...
- Latex中定义、定理、引理、证明 设置方法总结
Latex中定义.定理.引理.证明 设置方法总结 在LaTex中需要有关定理.公理.命题.引理.定义等时,常用如下命令 \newtheorem{定理环境名}{标题}[主计数器名] \newtheore ...
- Theorem、Proposition、Lemma和Corollary等的解释与区别
Theorem:定理.是文章中重要的数学化的论述,一般有严格的数学证明. Proposition:可以翻译为命题,经过证明且interesting,但没有Theorem重要,比较常用. Lemma:一 ...
- [未完成]scikit-learn一般实例之九:用于随机投影嵌入的Johnson–Lindenstrauss lemma边界
Johnson–Lindenstrauss 引理表明任何高维数据集均可以被随机投影到一个较低维度的欧氏空间,同时可以控制pairwise距离的失真. 理论边界 由一个随机投影P所引入的失真是确定的,这 ...
- 基于Hash算法的高维数据的最近邻检索
一.摘要 最紧邻检索:一种树基于树结构,一种是基于hash a.随机投影算法,需要产生很多哈希表,才能提高性能. b.基于学习的哈希算法在哈希编码较短时候性能不错,但是增加编码长度并不能显著提高性能. ...
- NLP相关问题中文本数据特征表达初探
1. NLP问题简介 0x1:NLP问题都包括哪些内涵 人们对真实世界的感知被成为感知世界,而人们用语言表达出自己的感知视为文本数据.那么反过来,NLP,或者更精确地表达为文本挖掘,则是从文本数据出发 ...
- NLP问题特征表达基础 - 语言模型(Language Model)发展演化历程讨论
1. NLP问题简介 0x1:NLP问题都包括哪些内涵 人们对真实世界的感知被成为感知世界,而人们用语言表达出自己的感知视为文本数据.那么反过来,NLP,或者更精确地表达为文本挖掘,则是从文本数据出发 ...
- Java牛人
Java领域有很多著名的人物,他们为Java社区编写框架.产品.工具或撰写书籍改变了Java编程的方式.本文是<最受欢迎的8位Java牛人>的2.0版本. PS:排名不分先后.本文的信息整 ...
- Address Book(地址薄)
<?xml version="1.0" encoding="UTF-8"?> <?import javafx.scene.Scene?> ...
随机推荐
- 2019年12月12日英语学习-Will I Or Won't I ?For Since
没办法,听不懂,记不住.就会一句.艹
- Spring-Security (学习记录七)--实现FilterInvocationSecurityMetadataSource的类将无法切入声明式事物
目录 1 查看继承关系 2 说明 3 查看源码: 实现了FilterInvocationSecurityMetadataSource 的类将无法切入声明式事物. 原因: 1 查看继承关系 先查看Fil ...
- tensorflow 训练的时候loss=nan
出现loss为nan 可能是使用了relu激活函数,导致的.因为在负半轴上输出都是0
- java-day13
异常 指的是程序在执行过程中,出现的非正常情况,最终会导致JVM的非正常停止 异常分类:编译异常,运行期异常 异常的产生过程分析 throw关键字:指方法中抛出指定异常 使用格式:throw new ...
- qt5下面中文显示异常
在源文件中插入# pragma execution_character_set("utf-8")即可
- CSS代码命名惯例语义化的方法
CSS代码的命名惯例一直是大家热门讨论的话题.今天暴风彬彬想通过分析一个流行三栏布局中的必要元素,来为大家讲解关于使用语义化方法替代结构化方法来命名CSS类的建议和指导. 您还可以参考彬Go的相关文章 ...
- Thread-per-Message 这个工作交给你了
Per是“每一”的意思,所以thread per message解释过来就是“每个消息一个线程”,message在这里可以看做是“命令”或“请求”的意思,对每隔命令或请求,分配一个线程,有这个线程执行 ...
- META标签的定义与使用(一、HTTP标题信息(http-equiv))
META标签分两大部分:HTTP标题信息(http-equiv)和页面描述信息(name). 一.http-equiv类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页 ...
- vue+ElementUI——表格分页(前端实现方法)
1.使用ElementUI中的<el-table></el-table>和 <el-pagination></el-pagination>组件来实现 2 ...
- BlueHost主机建站方案怎样选择?
BlueHost是知名美国主机商,近年来BlueHost不断加强中国市场客户的用户体验,提供多种主机租用方案,基本能够满足各类网站建设需求.下面就和大家介绍一下建站应该怎样选择主机. 1.中小型网站 ...