机器学习-7(实战演练k-近邻算法)

首先,这里不讨论你如何获取数据,我们假设这些都已存在我们的库里面了,并已经建立好了正确的分类了。

这里我直接截图我的实验库吧:

现在我们的任务就是随便输入一个经纬度,来看看它属于哪一个国家

先来把我们的读取任务搞定吧

OK,初步清洗完成,把标签国家拿出来了,经纬度拿出来了

先来拿10%来做测试样本吧

错误率58,等于只对了42个,无法接受啊!我们继续来用归一的思想来计算一次

 

  

 

计算出来,错误率依然很高,OK,演示就到这里了,我们来分析一下why?

我去看了下历史数据,oh my god,原来是我的数据太少了,在这个算法里排序的时候,最近的3个,有的时候发现,3个最近的国家计数都是1.。。。。那这算法他就按最先出来的那一个算老大了。。当然就错误了。。

所以这个算法并不适合对于经纬度处于哪个国家的计算,或者说是因为我的数据太少,而且k取的太小

最后我反思了下,及时我的数据仓库存在了很多很多数据,但是对于两国或者多国边界,即便我把k放大,如果是个小国家呢,比如越南和中国交界处。。。明显中国的更多。。所以,总结就是,在此处我们需要另寻他法来解决这个问题了

如何解决,我们留到以后的章节再来细说了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值