Python3玩转机器学习第四章笔记

第四章笔记 - kNN- k近邻算法(k-Nearest Neighbors)

  • 算法思想:在一个散点分布的数据中,取出k个与新传入数据最近的点,以这些点中属于某种样本最多的点为该数据的target

  • 调参:指调超参数,而不是模型参数
    可通过网格搜索,GridSearich。

不同距离计算公式:
曼哈顿距离
欧拉距离
明可夫斯基距离

feature scaler

对每一个特征:

  • 最值归一化
 (x - np.min(x)) / (np.max(x) - np.min(x)) 
  • 均值方差归一化
X = (X - np.mean(X)) / np.std(X) 

Note: 对训练数据集做归一化,并且用训练数据集的归一化方式来对测试数据集和预测数据进行一样的归一化。
(对X_train做了归一化,一定要对X_test也做归一化)

总结及一些思考:

  • k近邻算法既能解决分类问题,也可以解决回归问题。
    (KNeighborsRegressor类)

缺点

  • 效率低下,复杂度O(m*n)
  • 高度数据相关(只看了k个数据)
  • 预测结果不具有可解释性
  • 维数灾难:随着维度增加,“看似相近”的两个点的距离越来越大。
    在这里插入图片描述

机器学习流程

1 数据划分成训练数据和测试数据
2 对数据进行归一化
3 训练模型
4 评价模型
(使用网格搜索寻找最好的超参数)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值