我发现一个消息来源说是“由线性模型解释的响应变量变化的百分比”。(来源)
由于kNN不是线性模型(它是非参数的),是否适合使用评价它?如果不是,什么错误度量是合适的?我在 python 中使用 scikit-learn 提供的 kNN 分类器。
我发现一个消息来源说是“由线性模型解释的响应变量变化的百分比”。(来源)
由于kNN不是线性模型(它是非参数的),是否适合使用评价它?如果不是,什么错误度量是合适的?我在 python 中使用 scikit-learn 提供的 kNN 分类器。
是线性模型对数据拟合优度的粗略度量,用于回归分析。在决定线性和非线性回归模型时,它似乎是一个流行的选择。
您似乎打算使用 kNN 进行分类,其评估指标与回归不同。Scikit-learn 提供'accuracy'、'true-positive'、'false-positive'等(TP、FP、TN、FN)、'precision'、'recall'、'F1 score'等来评估一个分类器。
奖励:kNN 是简单的分类器,当数据显示局部结构而不是全局结构时使用,即在数据空间中的多个局部集群中找到具有相同标签的数据。调整的关键参数是“k”,它应该基于这些本地化集群的大小,因为使用不同的“k”值可以获得相当不同的结果。您可以进行网格搜索(也在 scikit-learn 中)来调整您的参数(当然包括“k”)。
评估指标:准确率或 ROC 或平均平均精度或 F1 分数:有多种指标可供选择,选择取决于您正在执行的任务以及您的优先级。(您可以查看这些指标以获取更多详细信息)但您可以从初学者的准确性开始。
用于具有数值范围的数据。按 k 最近邻分类分配的类标签只是标签(即使您选择它们是数字,它们也不像实数)。
您在有监督的环境中使用 kNN,典型的质量评估包括将您的数据拆分为训练集和测试集(n 折交叉验证)并确定精度、召回率和 F 分数。