有人告诉我,这两个是非参数模型。但我不知道为什么,尤其是对于 KNN。
谁能回答我的问题?
有人告诉我,这两个是非参数模型。但我不知道为什么,尤其是对于 KNN。
谁能回答我的问题?
kNN 和 SVM 不是模型,它们是算法。
你的模型就是你要为你的数据假设的东西。例如, :
在前两种情况下,模型是参数化的,因为除了有限数量的参数(第一种情况下的一个 - 均值,第二种情况下的两个 - 均值和方差)之外,它是完全已知的。在第三种和第四种情况下,模型是非参数的,因为您需要无限数量的参数来指定数据(您无法用有限数量的参数来描述所有有界或连续数据的集合)。
在参数模型中,您拥有更多信息,并且可以使用非常具体的算法(在我们的示例算法中,仅适用于高斯数据)。在非参数设置中,您必须使用更通用的算法,因为您对数据的假设更少。没有什么可以阻止您对参数模型使用通用的非参数算法,它们会起作用,但是您通常可以通过使用特定的算法做得更好。
kNN(甚至用高斯权重定义)是一种非参数算法,设计用于非参数模型,即非常通用的模型。SVM 的标签更复杂。基本 SVM 是线性分类器,也是参数算法。高级 SVM 可以处理非线性数据,如果您有一个 SVM 可以处理不受限制在由有限数量的参数描述的系列中的数据,那么它是非参数的。
PS:就像 Nicolas 所说,所有这些算法,参数或非参数(指的是他们工作的模型)也有你必须选择的参数(对于 kNN,,最近邻居的数量)。