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://scikit-learn.org/

  官方文档中文版: https://www.scikitlearn.com.cn/

  内置数据集:https://scikit-learn.org/stable/datasets.html


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 标准数据集主要包括:

  • 测试问题数据集

      1. 波士顿房价:Boston house prices dataset
      1. 鸢尾花问题:Iris plants dataset
      1. 糖尿病数据:Diabetes dataset
      1. 手写数字的识别:Optical recognition of handwritten digits dataset
      1. 葡萄酒鉴别:Linnerrud dataset
      1. 葡萄酒鉴别Wine recognition dataset
      1. 威斯康星州癌症诊断:reast cancer wisconsin (diagnostic) dataset
  • 实际问题数据集
      1. 人脸数据:The Olivetti faces dataset
      1. 20个新闻文本数据:The 20 newsgroups text dataset
      1. 标记的人脸数据:The Labeled Faces in the Wild face recognition dataset
      1. 森林覆盖类型:Forest covertypes
      1. 路透社新闻数据:RCV1 dataset
      1. 网络入侵检测数据:Kddcup 99 dataset
      1. 加州住房数据:California Housing dataset

4、Sklearn 数模笔记的计划

  粗略看看 Sklearn 的文档,是一个功能强大和丰富的机器学习库,远远超出了数学建模学习的范围。

  基于数模教学的目的,本系列主要对应数模学习中的分类、聚类、降维问题,并不打算全面讲解 Sklearn 的各种算法,而是以典型问题为例来介绍原理简单、使用广泛的基本方法,以便新手入门。


版权说明:

YouCans 原创作品

Copyright 2021 YouCans, XUPT

Crated:2021-05-09

Python数模笔记-Sklearn(1) 介绍的更多相关文章

  1. Python数模笔记-Sklearn(4)线性回归

    1.什么是线性回归? 回归分析(Regression analysis)是一种统计分析方法,研究自变量和因变量之间的定量关系.回归分析不仅包括建立数学模型并估计模型参数,检验数学模型的可信度,也包括利 ...

  2. Python数模笔记-Sklearn(2)样本聚类分析

    1.分类的分类 分类的分类?没错,分类也有不同的种类,而且在数学建模.机器学习领域常常被混淆. 首先我们谈谈有监督学习(Supervised learning)和无监督学习(Unsupervised ...

  3. Python数模笔记-Sklearn(3)主成分分析

    主成分分析(Principal Components Analysis,PCA)是一种数据降维技术,通过正交变换将一组相关性高的变量转换为较少的彼此独立.互不相关的变量,从而减少数据的维数. 1.数据 ...

  4. Python数模笔记-Sklearn(5)支持向量机

    支持向量机(Support vector machine, SVM)是一种二分类模型,是按有监督学习方式对数据进行二元分类的广义线性分类器. 支持向量机经常应用于模式识别问题,如人像识别.文本分类.手 ...

  5. Python数模笔记-StatsModels 统计回归(4)可视化

    1.如何认识可视化? 图形总是比数据更加醒目.直观.解决统计回归问题,无论在分析问题的过程中,还是在结果的呈现和发表时,都需要可视化工具的帮助和支持. 需要指出的是,虽然不同绘图工具包的功能.效果会有 ...

  6. Python数模笔记-StatsModels 统计回归(1)简介

    1.关于 StatsModels statsmodels(http://www.statsmodels.org)是一个Python库,用于拟合多种统计模型,执行统计测试以及数据探索和可视化. 2.文档 ...

  7. Python数模笔记-Scipy库(1)线性规划问题

    1.最优化问题建模 最优化问题的三要素是决策变量.目标函数和约束条件. (1)分析影响结果的因素是什么,确定决策变量 (2)决策变量与优化目标的关系是什么,确定目标函数 (3)决策变量所受的限制条件是 ...

  8. Python数模笔记-NetworkX(3)条件最短路径

    1.带有条件约束的最短路径问题 最短路径问题是图论中求两个顶点之间的最短路径问题,通常是求最短加权路径. 条件最短路径,指带有约束条件.限制条件的最短路径.例如,顶点约束,包括必经点或禁止点的限制:边 ...

  9. Python数模笔记-(1)NetworkX 图的操作

    1.NetworkX 图论与网络工具包 NetworkX 是基于 Python 语言的图论与复杂网络工具包,用于创建.操作和研究复杂网络的结构.动力学和功能. NetworkX 可以以标准和非标准的数 ...

随机推荐

  1. MyBatis(三):自定义持久层框架实现

    代码已上传至码云:https://gitee.com/rangers-sun/mybatis 新建Maven工程 架构端MyPersistent.使用端MyPersistentTest,使用端引入架构 ...

  2. Shell编程中变量用法

    1. 变量替换 语法 说明 ${变量名#匹配规则} 从变量开头进行规则匹配,将符合最短的数据删除 ${变量名##匹配规则} 从变量开头进行规则匹配,将符合最长的数据删除,贪婪匹配 ${变量名%匹配规则 ...

  3. 解决图片把父元素向下撑大大约3px问题

    现象  bug: 图片在div\li\dt 等  图片把父元素向下撑大大约3px  <style>         img {             width: 30%; //这里由于 ...

  4. 绿色物流-智慧仓储监控管理 3D 可视化系统

    前言 随着电子商务产业的迅速发展,快递爆仓已成为了困扰仓储物流的一大难题.大量的碎片化订单,传统仓储管理和运作方式已无法满足,加速仓储物流管理的智能化.自动化升级创新,延伸而出的智慧物流概念成为物流行 ...

  5. Nodejs学习笔记(2) 阻塞/非阻塞实例 与 Nodejs事件

    1. Node.js异步编程的特点 2. 阻塞与非阻塞的实例 2.1 阻塞代码实例 2.2 非阻塞代码实例 3. Node.js的事件驱动 4. 事件循环实例 1. Node.js异步编程的特点 参考 ...

  6. .NetCore 导出Execl

    /* Nuget  - NPOI.2.5.1 */ using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using NPOI.XSSF.UserMode ...

  7. Java并发编程之同步辅助类

    CountDownLatch 在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待,基于AbstractQueuedSynchronizer实现,state初始化为count,每cou ...

  8. 如何配置Nginx,实现http访问重定向到https?

    现在越来越多的网站,当我们输入域名时,会自动重定向到https,我们只需要简单修改下Nginx配置文件/usr/local/nginx/conf/nginx.conf(根据个人的实际存储路径)即可. ...

  9. Android学习之简易版的新闻应用

    •准备工作 新建一个项目,命名为 FragmentBestProject,并选择 Empty Activity: 并将项目的模式结构改为 Project 模式: •进入主题 首先,准备好一个新闻实体类 ...

  10. 利用别名切换索引流程Elasticsearch 7.7

    背景 公司里面现在有es集群,由于时间过长,es集群中的某个索引过大但是未删除,一直在写入的情况下,昨天写入突然停止了,发现是索引超时的问题,这时想到通过创建一个新的索引来进行索引切换 操作 es 集 ...