AIPyTorchpython开发

使用python机器学习(五)-scikit-learn

2017-07-13  本文已影响1345人  jacksu在简书

解决机器学习问题,最困难的部分通常是找到合适的算法模型,不同的算法模型适合于不同类数据和不同的问题。
scikit-learn提供的主要功能就是主要关注数据建模,而非加载、操作、数据统计, 这些任务有NumPy、Pandas就足够了。

下图为用户的数据问题,提供尝试选择算法模型的指南。

image.png

原图并有超链接介绍相关算法

scikit-learn 主要提供了以下功能:

  • 测试数据集,sklearn.datasets模块提供了乳腺癌、kddcup 99、iris、加州房价等诸多开源的数据集
  • 降维(Dimensionality Reduction): 为了特征筛选、统计可视化来减少属性的数量。
  • 特征提取(Feature extraction): 定义文件或者图片中的属性。
  • 特征筛选(Feature selection): 为了建立监督学习模型而识别出有真实关系的属性。
  • 按算法功能分类,分为监督学习:分类(classification)和回归(regression),以及非监督学习:聚类(clustering)。sklearn提供了很全面的算法实现,详细算法清单http://scikit-learn.org/stabl...
  • 聚类(Clustring): 使用KMeans之类的算法,给未标记的数据分类。
  • 交叉验证(Cross Validation): 评估监督学习模型的性能。
  • 参数调优(Parameter Tuning): 调整监督学习模型的参数以获得最大效果。
  • 流型计算(Manifold Learning): 统计和描绘多维度的数据

Scikit-learn进行计算的主要步骤为:

  • 数据获取、预处理。
  • 可选的降维过程。如果原始数据的维度比较大, 需要先找出真正跟预测目标相关的属性。
  • 学习以及预测的过程。
  • 反复学习的过程。通过增加样本、调优参数、更换算法等各种方式,提高预测的准确率。

下一篇通过上面介绍的理论处理一个实际问题。

参考

Python机器学习工具:Scikit-Learn介绍与实践
基于 Python 和 Scikit-Learn 的机器学习介绍

上一篇下一篇

猜你喜欢

热点阅读