7.1 Scikit-learn库简介及快速入门

7.1.1 Scikit-learn简介

Scikit-learn(以下简称sklearn)是开源的Python机器学习库,它基于Numpy和Scipy,提供了大量用于数据挖掘和分析的工具,包括数据预处理、交叉验证、算法与可视化算法等一系列接口。sklearn的官方网站是http://scikit-learn.org/stable/,在上面可以找到相关的Scikit-Learn的资源,模块下载,文档,例程等。
sklearn的基本功能主要被分为六个部分,分类,回归,聚类,数据降维,模型选择,数据预处理,具体可以参考官方网站上的文档。

7.1.2 Scikit-learn快速入门

sklearn可以独立完成机器学习的以下六个步骤,

  1. 选择数据,即将数据分成三组,分别是训练数据、验证数据和测试数据。
  2. 模拟数据,使用训练数据来构建使用相关特征的模型。
  3. 验证模型,使用验证数据接入模型。
  4. 测试模型,使用测试数据检查被验证的模型的表现。
  5. 使用模型,使用完全训练好的模型在新数据上做预测。
  6. 调优模型,使用更多数据、不同的特征或调整过的参数来提升算法的性能表现。
    此外sklearn支持多种格式的数据,下面以该库内置的莺尾花(iris)数据集为例,通过k邻近算法,利用scikit-learn模块对数据进行分析,示例代码:
    from sklearn import neighbors, datasets, preprocessing
    from sklearn.cross_validation import train_test_split
    from sklearn.metrics import accuracy_score
    iris = datasets.load_iris()      #通过数据集导入iris数据
    X, y = iris.data[:, :2], iris.target      #将iris数据的自变量和结果标签分别赋予向量X和y
    X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=33)      #切分数据集分别为训练集和测试集
    scaler = preprocessing.StandardScaler().fit(X_train)    #数据预处理,即数据标准化
    X_train = scaler.transform(X_train)
    X_test = scaler.transform(X_test)
    knn = neighbors.KNeighborsClassifier(n_neighbors=5)    #导入k近邻算法
    knn.fit(X_train, y_train)      #模拟数据模型
    y_pred = knn.predict(X_test)    #预测结果
    accuracy_score(y_test, y_pred)    #测试预测结果的准确率
    运行结果:
    0.63157894736842102
    在本例中,通过sklearn库分别导入了k近邻算法的neighbors模块,内置的数据集datasets模块和数据预处理preprocessing模块,此外按照数据分析的流程,还导入了交叉验证模块cross_validation,以及检验数据模型效果的metrics模块。
    此程序运行的结果即为该模型经过测试集检验得出的准确率。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值