1、SKlearn 是什么
Sklearn(全称 SciKit-Learn),是基于 Python 语言的机器学习工具包。
Sklearn 主要用Python编写,建立在 Numpy、Scipy、Pandas 和 Matplotlib 的基础上,也用 Cython编写了一些核心算法来提高性能。
Sklearn 包括六大功能模块:
-
分类(Classification):识别样本属于哪个类别,常用算法有 SVM(支持向量机)、nearest neighbors(最近邻)、random forest(随机森林)
-
回归(Regression):预测与对象相关联的连续值属性,常用算法有 SVR(支持向量机)、 ridge regression(岭回归)、Lasso
-
聚类(Clustering):对样本进行无监督的自动分类,常用算法有 k-Means(k均值)、spectral clustering(特征聚类)、mean-shift(均值漂移)
-
数据降维(Dimensionality reduction):减少相关变量维数,常用算法有 PCA(主成分分析)、feature selection(特征选择)、non-negative matrix factorization(非负矩阵分解)
-
模型选择(Model Selection):比较,验证,选择参数和模型,常用模块有 grid search(网格搜索)、cross validation(交叉验证)、 metrics(度量)
-
数据处理 (Preprocessing):特征提取和归一化,常用模块有 preprocessing(预处理),feature extraction(特征提取)
这六个功能模块涉及 4类算法,分类、回归 属于监督学习,聚类属于非监督学习。
官方文档中文版: https://www.scikitlearn.com.cn/
2、SKlearn 的安装
Sklearn 的安装要求:Python 3.5 以上版本,需要安装 NumPy、SciPy、Pandas 工具包的支持,部分内容需要使用 Matplotlib、joblib 工具包。
pip 安装命令:
pip3 install -U scikit-learn
pip3 install -U scikit-learn -i https://pypi.douban.com/simple
注意 Sklearn 建议安装 Numpy+mkl,可以在网址http://www.lfd.uci.edu/~gohlke/pythonlibs/ 找到你需要的numpy+mkl版本,下载后 pip3安装:
pip install numpy-1.11.1+mkl-cp27-cp27m-win_amd64.whl
3、SKlearn 内置数据集
Sklearn 内置了一些标准数据集可以用于练习和测试,都是经常被引用的经典问题,数据网址:https://scikit-learn.org/stable/datasets.html
Sklearn 标准数据集主要包括:
- 测试问题数据集
-
- 波士顿房价:Boston house prices dataset
-
- 鸢尾花问题:Iris plants dataset
-
- 糖尿病数据:Diabetes dataset
-
- 手写数字的识别:Optical recognition of handwritten digits dataset
-
- 体能训练:Linnerrud dataset
-
- 葡萄酒鉴别:Wine recognition dataset
-
- 威斯康星州癌症诊断:reast cancer wisconsin (diagnostic) dataset
-
- 实际问题数据集
-
- 人脸数据:The Olivetti faces dataset
-
- 20个新闻文本数据:The 20 newsgroups text dataset
-
- 标记的人脸数据:The Labeled Faces in the Wild face recognition dataset
-
- 森林覆盖类型:Forest covertypes
-
- 路透社新闻数据:RCV1 dataset
-
- 网络入侵检测数据:Kddcup 99 dataset
-
- 加州住房数据:California Housing dataset
-
4、Sklearn 数模笔记的计划
粗略看看 Sklearn 的文档,是一个功能强大和丰富的机器学习库,远远超出了数学建模学习的范围。
基于数模教学的目的,本系列主要对应数模学习中的分类、聚类、降维问题,并不打算全面讲解 Sklearn 的各种算法,而是以典型问题为例来介绍原理简单、使用广泛的基本方法,以便新手入门。
作者:youcans
出处:https://www.cnblogs.com/youcans/p/14748020.html