KNN算法中的超参数--scikit-learn,python

1.超参数:在机器学习中,超参数是指在机器学习之前,提前设置好的参数。而不是由数据训练出来的。
2.KNN算法通过测量观测点与相邻最近点之间的距离,判断观测点所属的类别,而测量距离的方法有很多种。有曼哈顿距离(又称“L1范数”),欧拉距离(又称“L2范数”)以及明科夫斯基距离等。
3.从上述的距离公式中,我们可以得到他们公式的共同点,有一个参数p,曼哈顿距离公式的参数p=1,欧拉距离公式的参数p=2。而在scikit-learn提供的KNN算法中提供了参数p。
4.scikit-learn在KNN算法中还提供了另一个权重的参数(weights),它有两个取值,一个是“uniform”,每个相邻点与观测点的距离的权重都是相同的。另一个取值为“distance”,权重点按其距离的倒数表示。在这种情况下,查询点的近邻比远处的近邻具有更大的影响力。
5.KNN算法中另一个重要的参数就是k,就是看观测点与近邻k个点的距离。

import numpy as np
from sklearn import datasets

digits = datasets.load_digits()
X = digits.data
y = digits.target

from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test = train_test_split(X,y)

from sklearn
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值