七.分类:最近邻算法算法

KNN: K-近邻算法

一.算法解释

  • 数据集的样本空间中,总有k个最相似的样本。
  • 其中大多数属于与一个类比时,则该样本属于该类比

案例: 客户流失预测,欺诈侦测

1.计算步骤

1.算距离: 给定测试对象,计算其到训练集中所有样本的距离
2.排序: 按距离进行排序
3.选k点: 选取当前距离最小的k个点
4.算频率: 计算k个点的频率
5.做分类: 根据频率最高的k点进行当前样本进行的分类

2.算法特性

  • 模型简单,计算开销大,可解释性差
  • 对测试样本进行分类时才去找K个邻近
  • 适用于稀有问题分类(占比级底的问题)
  • 适用于多分类问题

二.算法步骤

1.算距离

计算衡量包括:欧氏距离,余弦夹角

2.找邻居


通过k值选取近邻
决定:近邻的正负

3.分类

  • 投票
  • 加权投票(权重=距离平方的倒数)

三.参数认知

参数名意义接收默认
n_neighbors近邻数int5
weights预测中使用的权重函数“uniform”: 统一权重。 每个邻域中的所有点均被加权。
“distance”: 权重点与其距离的倒数。 在这种情况下,查询点的近邻比远处的近邻具有更大的影响力。
[callable]: 用户定义的函数,该函数接受距离数组,并返回包含权重的相同形状的数组。
“uniform”
algorithm用于计算最近临近点的算法:“ ball_tree”: 将使用BallTree
“kd_tree”: 将使用KDTree
brute”: 将使用暴力搜索。
“auto”: 将尝试根据传递给fit方法的值来决定最合适的算法。
’auto’
leaf_size叶大小的传递int30
pMinkowski指标的功率参数int2
metric树使用的距离度量str’minkowski’
metric_params度量功能的其他关键字参数。dictNone
n_jobs为临近点搜索运行的并行作业数IntNone
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

唐-import-某人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值