机器学习day3-KNN算法、模型调优与选择

五 sklearn机器学习概述

1.实例化预估器(估计器)对象(estimator), 预估器对象很多,都是estimator的子类
    (1)用于分类的预估器
        sklearn.neighbors.KNeighborsClassifier k-近邻
        sklearn.naive_bayes.MultinomialNB 贝叶斯
        sklearn.linear_model.LogisticRegressioon 逻辑回归
        sklearn.tree.DecisionTreeClassifier 决策树
        sklearn.ensemble.RandomForestClassifier 随机森林
    (2)用于回归的预估器
        sklearn.linear_model.LinearRegression线性回归
        sklearn.linear_model.Ridge岭回归
    (3)用于无监督学习的预估器
        sklearn.cluster.KMeans 聚类
2.进行训练,训练结束后生成模型
    estimator.fit(x_train, y_train)
3.模型评估
    (1)方式1,直接对比
        y_predict = estimator.predict(x_test)
        y_test == y_predict
    (2)方式2, 计算准确率
        accuracy = estimator.score(x_test, y_test)
4.使用模型(预测)
y_predict = estimator.predict(x_true)

六 KNN算法-分类

1.样本距离判断

①.欧式距离
②.曼哈顿距离

2.KNN算法原理

K-近邻算法(K-Nearest Neighbors,简称KNN),根据K个邻居样本的类别来判断当前样本的类别。

(物以类聚,人以群分)

3.KNN缺点

大规模数据集,计算量大。

维度灾难:对于高维数据,距离度量意义不大

合适的k值和距离度量,需要实验调整

4.API

class sklearn.neighbors.KNeighborsClassifier(n_neighbors=5, algorithm='auto')
参数:                                             
(1)n_neighbors: 
        int, default=5, 默认情况下用于kneighbors查询的近邻数,就是K
(2)algorithm:
    {‘auto’, ‘ball_tree’, ‘kd_tree’, ‘brute’}, default=’auto’。找到近邻的方式,注意不是计算距离的方式,与机器学习算法没有什么关系,开发中请使用默认值'auto'
 *:关键词参数,*后面的关键词都要写
方法:
 (1) fit(x, y) 
        使用X作为训练数据和y作为目标数据  
 (2) predict(X) 预测提供的数据,得到预测数据   
eg1
#K
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值