Questions tagged «k-nearest-neighbour»

k最近邻分类器这些分类器是基于内存的,不需要模型就可以拟合。给定一个查询点x0,我们找到距离x0最近的k个训练点x(r),r = 1,...,k,然后使用k个邻居中的多数投票进行分类。

1
内核化的k最近邻居
我是内核的新手,在尝试将kNN内核化时遇到了障碍。 初赛 我使用多项式核: ķ(X,Ý)= (1 + ⟨ X,ÿ ⟩ )dķ(X,ÿ)=(1个+⟨X,ÿ⟩)dK(\mathbf{x},\mathbf{y}) = (1 + \langle \mathbf{x},\mathbf{y} \rangle)^d 典型的欧几里得kNN使用以下距离度量: d(x,y)= | | x − y | |d(X,ÿ)=||X-ÿ||d(\mathbf{x}, \mathbf{y}) = \vert\vert \mathbf{x} - \mathbf{y} \vert\vert 令将x映射到某些高维特征空间。然后,可以用内积表示上述距离度量在希尔伯特空间中的平方: d 2(f (x ),f (y ))= K (x,x)− 2 K (x,y)+ K (y,y)F(x)F(X)f(\mathbf{x})XX\mathbf{x}d2(f(x ),f(y))= K(x,x)− 2 K(x,y)+ …

3
单位球N个样本的最接近原点的中值最近点的公式的解释
在《统计学习的元素》中,引入了一个问题以突出高维空间中k-nn的问题。有NNN被均匀地分布在一个数据点ppp维单位球。 从原点到最近的数据点的中值距离由以下表达式给出: d(p,N)=(1−(12)1N)1pd(p,N)=(1−(12)1N)1pd(p,N) = \left(1-\left(\frac{1}{2}\right)^\frac{1}{N}\right)^\frac{1}{p} 当N=1N=1N=1,公式分解为球半径的一半,我可以看到最近的点如何以方式接近边界p→∞p→∞p \rightarrow \infty,从而使knn后面的直觉在高维度上分解。但是我无法理解为什么公式依赖于N。有人可以澄清一下吗? 该书还指出:“……在训练样本的边缘附近进行预测要困难得多。必须从邻近的样本点推断而不是在它们之间进行内插”。这似乎是一个深刻的陈述,但我似乎无法理解它的含义。有人可以改写吗?


1
Jeffries Matusita距离的优点
根据我正在阅读的一些论文,Jeffries和Matusita距离是常用的。但是除了下面的公式,我找不到更多的信息 JMD(x,y)=∑(xi−−√2−yi−−√2)2−−−−−−−−−−−−−√2∑(xi2−yi2)22\sqrt[2]{\sum(\sqrt[2]{x_i}-\sqrt[2]{y_i})^2} 除平方根外,它与欧几里得距离相似 E(x,y)=∑(xi−yi)2−−−−−−−−−−√2∑(xi−yi)22\sqrt[2]{\sum(x_i-y_i)^2} 在分类方面,据称JM距离比欧几里得距离更可靠。谁能解释为什么这种差异使JM距离更好?

4
维度诅咒:kNN分类器
我正在阅读凯文·墨菲(Kevin Murphy)的书:《机器学习-概率论》。在第一章中,作者正在解释维数的诅咒,其中有一部分我不理解。例如,作者指出: 考虑输入沿D维单位立方体均匀分布。假设我们通过在x周围生长一个超立方体直到它包含所需的数据点分数来估计类标签的密度。该立方体的预期边缘长度为。e D(f )= f 1FFfËd(f)= f1个dËd(F)=F1个de_D(f) = f^{\frac{1}{D}} 这是我无法理解的最后一个公式。似乎如果要覆盖10%的点,则沿每个尺寸的边长应为0.1?我知道我的推理是错误的,但我不明白为什么。

1
k最近邻的VC维
如果k等于使用的训练点数,则k最近邻居算法的VC维是多少? 上下文:在我参加的课程中提出了这个问题,给出的答案为0。但是,我确实不明白为什么会这样。我的直觉是,VC-Dimension应该为1,因为应该可以选择两个模型(即训练点集),以便根据第一个模型,每个点都被标记为属于一个类别,而属于另一个类别根据第二种模型,因此应该有可能粉碎单个点。我的推理错误在哪里?

1
非自由午餐定理和K-NN一致性
在计算学习中,NFL定理指出没有通用学习器。对于每种学习算法,都有一个分布使学习者输出具有大误差的假设,而且概率很高(尽管误差假设很低)。结论是,为了学习,必须限制假设的类别或分布。Devroye等人在他们的《模式识别的概率论》一书中证明了K近邻学习者的以下定理: 其中假设 μ 具有密度。如果 k → ∞ 和 k / n → 0 那么对于每一个 ϵ > 0 , 都有 N, 对于所有 n > N , st:P(Rñ− R∗> ϵ )< 2 e x p (− Cdñ ε2)假设 μ 具有密度。如果 ķ→∞ 和 ķ/ñ→0 然后每个 ϵ>0, 有 ñ, 圣 对所有人 ñ>ñ:P([Rñ-[R∗>ϵ)<2ËXp(-Cdñϵ2)\text{Assume } \mu …

2
具有连续变量和二进制变量的K最近邻
我有一个带有列a b c(3个属性)的数据集。a是数值型和连续型的,b并且c分别具有两个级别。我使用的是K-近邻方法进行分类a和b上c。因此,为了能够测量距离,我通过删除b和添加b.level1和来变换数据集b.level2。如果观察i在b类别中处于第一级,则b.level1[i]=1和b.level2[i]=0。 现在,我可以在新数据集中测量距离了: a b.level1 b.level2 从理论/数学角度来看:可以同时对二进制数据和连续数据执行K最近邻(KNN)吗? 我FNN在R和功能中使用包knn()

4
为什么KNN不是“基于模型的”?
ESL第2.4章似乎将线性回归归类为“基于模型”,因为它假设,而k最近邻没有类似的近似值。但是,不是两种方法都假设吗?f(x)≈x⋅βf(x)≈x⋅βf(x) \approx x\cdot\betaf(x)f(x)f(x) 后来在2.4中甚至说: 最小二乘假设由全局线性函数很好地近似。f(x)f(x)f(x) k个近邻假设由局部常数函数很好地近似。f(x)f(x)f(x) KNN假设似乎也可以形式化(尽管不确定这样做是否会以假设为线性导致线性回归的方式导致 KNN算法)。fff 那么,如果KNN实际上不是基于模型的,那为什么呢?还是我误读了ESL?

4
给定10D MCMC链,如何确定R中的后验模式?
问题:假设有10维MCMC链,我准备将抽奖矩阵交给您:10个参数(列)的100,000次迭代(行),我如何才能最好地识别后验模式?我特别关注多种模式。 背景:我认为自己是一位精通计算的统计学家,但是当一位同事问我这个问题时,我为自己无法给出一个合理的答案而感到ham愧。主要关注的是可能会出现多种模式,但前提是必须考虑十个维度中的至少八个左右。我的第一个想法是使用核密度估计,但是对R的搜索没有发现对大于3维问题的希望。同事已经提出了十个维度的临时分箱策略并寻求最大值,但我担心的是带宽可能会导致严重的稀疏性问题或缺乏分辨多种模式的分辨率。就是说,我很乐意接受有关自动带宽建议的建议,与10个内核密度估算器的链接或您所知道的其他任何信息。 顾虑: 我们认为该分布可能会偏斜;因此,我们希望确定后验模式,而不是后验方法。 我们担心可能存在几种后验模式。 如果可能的话,我们希望使用基于R的建议。但是,只要不难以实现,任何算法都可以。我想我不希望通过从头开始自动带宽选择来实现Nd内核密度估计器。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.