机器学习(公式推导与代码实现)--sklearn机器学习库
一.scikit-learn概述
1.sklearn模型
sklearn全称是scikit-learn,它是一个基于Python的机器学习类库,主要建立在NumPy、Pandas、SciPy和Matplotlib等类库之上,基本上覆盖了常见了分类、回归、聚类、降维、模型选择和预处理模块。

2.sklearn源码
下图是sklearn在GitHub上的源代码,编程语言主要包括:91.4%的Python,6.5%的Cython,1.3%的C++和0.8%的Other。如下所示:

二.模型选择和预处理
1.模型选择
解析:网格搜索,交叉验证
2.预处理
解析:评估指标,数据预处理
三.有监督学习模型
可以将有监督模型分为生成式模型和判别式模型,常见的生成式模型包括朴素贝叶斯、HMM和隐含狄利克雷分配(LDA),其它的基本都是判别式模型。
1.线性模型
解析:线性回归,对数几率回归,LASSO回归,Ridge回归,线性判别分析(LDA)
2.\({k}\)近邻
3.决策树
解析:ID3,C4.5,CART
4.神经网络
解析:感知机,神经网络
5.支持向量机
解析:线性可分,近似线性可分,线性不可分
6.集成模型
(1)Boosting
解析:AdaBoost,GBDT,XGBoost,LightGBM,CatBoost
(2)Bagging
解析:随机森林
四.无监督学习模型
1.聚类
解析:\(k\)均值聚类,层次聚类,谱聚类
2.降维
解析:主成分分析(PCA),奇异值分解(SVD)
五.概率模型
1.最大信息熵模型
2.贝叶斯概率模型
解析:朴素贝叶斯,贝叶斯网络
3.期望最大化(EM)算法
4.概率图模型
解析:隐马尔科夫模型(HMM),条件随机场(CRF)
5.马尔可夫链蒙特卡洛(MCMC)
参考文献:
[1]scikit-learn:https://scikit-learn.org/stable/
[2]scikit-learn(sklearn)官方文档中文版:https://sklearn.apachecn.org/#/?id=scikit-learn-sklearn-官方文档中文版
[3]scikit-learn安装:https://scikit-learn.org/stable/install.html
[4]scikit-learn用户指南:https://scikit-learn.org/stable/user_guide.html
[5]scikit-learn API参考:https://scikit-learn.org/stable/modules/classes.html
[6]scikit-learn例子:https://scikit-learn.org/stable/auto_examples/index.html
[7]scikit-learn博客:https://blog.scikit-learn.org/
[8]scikit-learn教程:https://scikit-learn.org/stable/tutorial/index.html
[9]scikit-learn FAQ:https://scikit-learn.org/stable/faq.html
[10]scikit-learn GitHub:https://github.com/scikit-learn/scikit-learn
[11]scikit-learn不同版本文档:https://scikit-learn.org/dev/versions.html
[12]scikit-learn wiki:https://github.com/scikit-learn/scikit-learn/wiki
[13]scikit-learn版本更新日志:https://scikit-learn.org/stable/whats_new/v1.1.html
[14]scikit-learn开发指南:https://scikit-learn.org/dev/developers/index.html
[15]scikit-learn相关类库:https://scikit-learn.org/stable/related_projects.html
[16]Hugging Face:https://huggingface.co/
[17]《机器学习:公式推导与代码实现》
机器学习(公式推导与代码实现)--sklearn机器学习库的更多相关文章
- Python线性回归算法【解析解,sklearn机器学习库】
一.概述 参考博客:https://www.cnblogs.com/yszd/p/8529704.html 二.代码实现[解析解] import numpy as np import matplotl ...
- 使用sklearn机器学习库实现线性回归
import numpy as np # 导入科学技术框架import matplotlib.pyplot as plt # 导入画图工具from sklearn.linear_model imp ...
- Python 3 利用 Dlib 19.7 和 sklearn机器学习模型 实现人脸微笑检测
0.引言 利用机器学习的方法训练微笑检测模型,给一张人脸照片,判断是否微笑: 使用的数据集中69张没笑脸,65张有笑脸,训练结果识别精度在95%附近: 效果: 图1 示例效果 工程利用pytho ...
- 用python+sklearn(机器学习)实现天气预报 准备
用python+sklearn机器学习实现天气预报 准备 项目地址 系列教程 0.流程介绍 1. 环境搭建 a.python b.涉及到的机器学习相关库 sklearn panda seaborn j ...
- 机器学习算法及代码实现–K邻近算法
机器学习算法及代码实现–K邻近算法 1.K邻近算法 将标注好类别的训练样本映射到X(选取的特征数)维的坐标系之中,同样将测试样本映射到X维的坐标系之中,选取距离该测试样本欧氏距离(两点间距离公式)最近 ...
- 用python+sklearn(机器学习)实现天气预报数据 模型和使用
用python+sklearn机器学习实现天气预报 模型和使用 项目地址 系列教程 0.前言 1.建立模型 a.准备 引入所需要的头文件 选择模型 选择评估方法 获取数据集 b.建立模型 c.获取模型 ...
- 用python+sklearn(机器学习)实现天气预报数据 数据
用python+sklearn机器学习实现天气预报 数据 项目地址 系列教程 勘误表 0.前言 1.爬虫 a.确认要被爬取的网页网址 b.爬虫部分 c.网页内容匹配取出部分 d.写入csv文件格式化 ...
- 机器学习:如何通过Python入门机器学习
我们都知道机器学习是一门综合性极强的研究课题,对数学知识要求很高.因此,对于非学术研究专业的程序员,如果希望能入门机器学习,最好的方向还是从实践触发. 我了解到Python的生态对入门机器学习很有帮助 ...
- Python机器学习笔记:不得不了解的机器学习知识点(2)
之前一篇笔记: Python机器学习笔记:不得不了解的机器学习知识点(1) 1,什么样的资料集不适合用深度学习? 数据集太小,数据样本不足时,深度学习相对其它机器学习算法,没有明显优势. 数据集没有局 ...
随机推荐
- Linux:可执行程序的Shell传参格式规范
1. Linux下可执行程序的Shell传参格式规范 Linux下的可执行程序在运行时经常需要传一些参数,而这些参数是有规范的.包括我们自己写的在Linux系统下运行的Shell脚本.Python脚本 ...
- 131_Power Query之获取钉钉日志自动刷新Power BI报告
博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 最近在玩钉钉日志,企业填写简单数据后方便汇总到一起比较实用的工具,但数据填写以后还是需要下载日志报表,比较麻烦. ...
- layui数据表格搜索
简单介绍 我是通过Servlet传递json给layui数据表格模块,实现遍历操作的,不过数据量大的话还是需要搜索功能的.这是我参考网上大佬代码写出的搜索功能. 实现原理 要实现搜索功能,肯定需要链接 ...
- v86.01 鸿蒙内核源码分析 (静态分配篇) | 很简单的一位小朋友 | 百篇博客分析 OpenHarmony 源码
本篇关键词:池头.池体.节头.节块 内存管理相关篇为: v31.02 鸿蒙内核源码分析(内存规则) | 内存管理到底在管什么 v32.04 鸿蒙内核源码分析(物理内存) | 真实的可不一定精彩 v33 ...
- 手把手教你使用 Spring Boot 3 开发上线一个前后端分离的生产级系统(一) - 介绍
项目简介 novel 是一套基于时下最新 Java 技术栈 Spring Boot 3 + Vue 3 开发的前后端分离的学习型小说项目,配备详细的项目教程手把手教你从零开始开发上线一个生产级别的 J ...
- 第一次的ssm整合
数据库表 导入依赖 <dependencies> <dependency> <groupId>javax.servlet</groupId> <a ...
- 论文解读(LA-GNN)《Local Augmentation for Graph Neural Networks》
论文信息 论文标题:Local Augmentation for Graph Neural Networks论文作者:Songtao Liu, Hanze Dong, Lanqing Li, Ting ...
- vue跑马灯vue3-marquee
安装vue3-marquee 如果您使用的是 npm: npm install vue3-marquee@latest --save 如果您使用的是yarn: yarn add vue3-marque ...
- MySQL锁(乐观锁、悲观锁、多粒度锁)
锁 并发事务可能出现的情况: 读-读事务并发:此时是没有问题的,读操作不会对记录又任何影响. 写-写事务并发:并发事务相继对相同的记录做出改动,因为写-写并发可能会产生脏写的情况,但是没有一个隔离级别 ...
- fiddler的安装以及使用同时对Android 与IOS 抓包配置进行分析 进阶 一
由于工作方向的原因,很久没有用过APP抓包工具了,有那么一天遇到了bug需要协助开发工程师进行定位分析,然后又重新梳理了一下之前常用的抓包工具,这里重点介绍一下目前市面上最流行的几款抓包工具,根据自己 ...