d******e 发帖数: 7844 | 1 【 以下文字转载自 CS 讨论区 】
发信人: drburnie (专门爆料), 信区: CS
标 题: 问两个个KNN的问题
发信站: BBS 未名空间站 (Sat Jan 9 18:37:31 2010, 美东)
使用KNN分类器做两类问题的分类。
实验步骤是分成80%作Training,20%做Testing。
然后再Training Set里用Leave one out cross validation来确定K.
参与cross validation的选取是K=1,3,5,,7... ...
然后选取cross validation error最小的K,如果同时有多个K达到最小的erorr,那么
这是选择最小的K还是最大的K?
另一个问题,有人说KNN的K不应该从1开始选,而是应该指定一个minimum,从这个
minimum开始。标准的KNN分类器有这个说法么? |
B****n 发帖数: 11290 | 2 你可以random 一萬次選擇training set and test set 然後看看選擇到不同的k值的頻
率 選個頻率最大的
還有 knn常常收斂到local解 而不是global解 所以最好用不同的initial values測試
一下讓分類的錯誤率最低
【在 d******e 的大作中提到】 : 【 以下文字转载自 CS 讨论区 】 : 发信人: drburnie (专门爆料), 信区: CS : 标 题: 问两个个KNN的问题 : 发信站: BBS 未名空间站 (Sat Jan 9 18:37:31 2010, 美东) : 使用KNN分类器做两类问题的分类。 : 实验步骤是分成80%作Training,20%做Testing。 : 然后再Training Set里用Leave one out cross validation来确定K. : 参与cross validation的选取是K=1,3,5,,7... ... : 然后选取cross validation error最小的K,如果同时有多个K达到最小的erorr,那么 : 这是选择最小的K还是最大的K?
|
d******e 发帖数: 7844 | 3 是KNN,不是K-means... ...
【在 B****n 的大作中提到】 : 你可以random 一萬次選擇training set and test set 然後看看選擇到不同的k值的頻 : 率 選個頻率最大的 : 還有 knn常常收斂到local解 而不是global解 所以最好用不同的initial values測試 : 一下讓分類的錯誤率最低
|
s**c 发帖数: 1247 | 4 既然小k和大k能取得一样的效果
小k肯定计算时间少
【在 d******e 的大作中提到】 : 【 以下文字转载自 CS 讨论区 】 : 发信人: drburnie (专门爆料), 信区: CS : 标 题: 问两个个KNN的问题 : 发信站: BBS 未名空间站 (Sat Jan 9 18:37:31 2010, 美东) : 使用KNN分类器做两类问题的分类。 : 实验步骤是分成80%作Training,20%做Testing。 : 然后再Training Set里用Leave one out cross validation来确定K. : 参与cross validation的选取是K=1,3,5,,7... ... : 然后选取cross validation error最小的K,如果同时有多个K达到最小的erorr,那么 : 这是选择最小的K还是最大的K?
|
d******e 发帖数: 7844 | 5 但是小K容易出现overfitting.
【在 s**c 的大作中提到】 : 既然小k和大k能取得一样的效果 : 小k肯定计算时间少
|
D******n 发帖数: 2836 | 6 leave one out seems linient to me
【在 d******e 的大作中提到】 : 【 以下文字转载自 CS 讨论区 】 : 发信人: drburnie (专门爆料), 信区: CS : 标 题: 问两个个KNN的问题 : 发信站: BBS 未名空间站 (Sat Jan 9 18:37:31 2010, 美东) : 使用KNN分类器做两类问题的分类。 : 实验步骤是分成80%作Training,20%做Testing。 : 然后再Training Set里用Leave one out cross validation来确定K. : 参与cross validation的选取是K=1,3,5,,7... ... : 然后选取cross validation error最小的K,如果同时有多个K达到最小的erorr,那么 : 这是选择最小的K还是最大的K?
|
g********r 发帖数: 8017 | 7 如果CV表现一样,还有什么其他鉴定overfitting的办法?
【在 d******e 的大作中提到】 : 但是小K容易出现overfitting.
|
d******e 发帖数: 7844 | 8 testing
【在 g********r 的大作中提到】 : 如果CV表现一样,还有什么其他鉴定overfitting的办法?
|
h***i 发帖数: 3844 | 9 用cv就容易overfitting
【在 d******e 的大作中提到】 : 但是小K容易出现overfitting.
|
d******e 发帖数: 7844 | 10 用单独的validation set会好一些。不过性能未必会好。
【在 h***i 的大作中提到】 : 用cv就容易overfitting
|
|
|
g********r 发帖数: 8017 | 11 用m-fold CV做吧.
【在 d******e 的大作中提到】 : 用单独的validation set会好一些。不过性能未必会好。
|
d******e 发帖数: 7844 | 12 对于KNN这种分类器,n-fold cv会出现一个问题,sample density是不一样的。
比如5-fold cv,每次只有80%的样本参与训练,得到的最优参数K对于所有样本都参与训
练的情况会有所不同。
【在 g********r 的大作中提到】 : 用m-fold CV做吧.
|
h***i 发帖数: 3844 | 13 这么一说,那aic,bic之类的都不考虑了。
那就考虑structure risk minimization 之类的了
【在 d******e 的大作中提到】 : 对于KNN这种分类器,n-fold cv会出现一个问题,sample density是不一样的。 : 比如5-fold cv,每次只有80%的样本参与训练,得到的最优参数K对于所有样本都参与训 : 练的情况会有所不同。
|
g********r 发帖数: 8017 | 14 没有那么严重吧? 只要地形复杂程度没有因为减少20%数据变化太多.
【在 d******e 的大作中提到】 : 对于KNN这种分类器,n-fold cv会出现一个问题,sample density是不一样的。 : 比如5-fold cv,每次只有80%的样本参与训练,得到的最优参数K对于所有样本都参与训 : 练的情况会有所不同。
|
d******e 发帖数: 7844 | 15 当样本数量很大的时候,这么做没有问题,当样本少的时候就有麻烦了。尤其是高维数
据。
其实普通的KNN overfitting就是很严重,而我也只是拿KNN来做baseline。我导师非要
我弄一个overfitting最小的训练策略然后用这个数据来做baseline。
【在 g********r 的大作中提到】 : 没有那么严重吧? 只要地形复杂程度没有因为减少20%数据变化太多.
|
g********r 发帖数: 8017 | 16 好奇你在多少维上做KNN? 感觉超过三维,就算几千个点也稀疏.除非边界很简单,否则没
啥搞头.假定边界简单,那确实k大点
好.
【在 d******e 的大作中提到】 : 当样本数量很大的时候,这么做没有问题,当样本少的时候就有麻烦了。尤其是高维数 : 据。 : 其实普通的KNN overfitting就是很严重,而我也只是拿KNN来做baseline。我导师非要 : 我弄一个overfitting最小的训练策略然后用这个数据来做baseline。
|
d******e 发帖数: 7844 | 17 什么数据都用,从个数维到几千维。
【在 g********r 的大作中提到】 : 好奇你在多少维上做KNN? 感觉超过三维,就算几千个点也稀疏.除非边界很简单,否则没 : 啥搞头.假定边界简单,那确实k大点 : 好.
|
h***i 发帖数: 3844 | 18 几千维能直接做KNN么,虽然维数不算太夸张,但是感觉非参在这种dimensi
on上也不靠谱啊
【在 d******e 的大作中提到】 : 什么数据都用,从个数维到几千维。
|
d******e 发帖数: 7844 | 19 本来就是一个不靠铺的baseline,要不然能显出其他方法NB么,哈哈
【在 h***i 的大作中提到】 : 几千维能直接做KNN么,虽然维数不算太夸张,但是感觉非参在这种dimensi : on上也不靠谱啊
|
h***i 发帖数: 3844 | 20 反正把classification看成regression,干脆加个penalty,搞Lasso, Scad之类的做
还可以同时做variable selection
【在 d******e 的大作中提到】 : 本来就是一个不靠铺的baseline,要不然能显出其他方法NB么,哈哈
|