sklearn框架介绍

文章目录

sklearn与经典机器学习算法

sklearn

在学习的过程中,除了需要深入理解底层原理时,其实就需要避免重复的造轮子的过程,Python的强大的库就是一个非常好玩的功能

既能避免重复造轮子,还能快速的调用对应的api来使用功能

在机器学习领域的scikit-learn是一个非常常用的机器学习框架,我们将使用sklearn来说实现经典的机器学习算法

sklearn简介

sklearn是一款07年至今的机器学习开源项目,基于NumPy和SciPy,提供了很多用于数据挖掘和分析的工具和接口

sklearn主打一个只做机器学习,不轻易支持新的算法,他的好处就是非常稳定

我们可以用几行代码就完成机器学习的七个步骤

数据处理

读取数据并进行预处理,归一化、标准化、正则化等内容

分割数据

数据随机分割成三组,训练集、验证集(可以没有)、测试集

训练模型

针对选取好的特征,使用训练数据来构建模型,拟合数据,寻找最优的模型参数

这里的拟合数据主要是使用各种机器学习算法来学习数据中的特征,拟合出损失函数最小的参数

验证模型

接入验证集给模型,我们将模型在验证集上的表现作为参数优化和选择的依据,常用的方法有Holdout验证,留一验证等

测试模型

评估模型的泛化性能

需要说明的是,验证集和测试集合分开是有一定必要的,主要是因为经过多轮测试集的调整,测试集也会变为训练集,从而产生过拟合的现象,因此测试集一般也不参与模型优化

调优模型

当我们的模型通过测试时,投入使用,其实在这个过程中也是不断训练的过程,收集更全面的数据,使用不同的特征,调整参数来优化模型

sklearn功能

sklearn的功能主要分六部分:分类、回归、聚类、数据降维、模型选择、数据预处理、

分类

如果只是定性的预测,也就是预测结果是一个离散值,就可以称之为分类,sklearn已经实现的经典分类算法包括:支持向量机、最邻近算法、Logistic回归、随机森林、决策树、多层感知器等

回归

如果是定量的预测,也就是预测结果是连续值,就称之为回归,比如预测房价,股票等。经典回归算法有:线性回归、支持向量回归、岭回归、Lasso回归、贝叶斯回归等

聚类

聚类是将相似的对象进行分组,跟分类有一点像。常见的算法有:k均值聚类、谱聚类、均值漂移等。这种算法一般用在客户细分、实验结果分组、数据压缩

数据降维

数据降维主要是用于减少随机变量的数量。常见的算法有:主成分分析、特征选择、非负矩阵分解等。一般用于数据压缩、模型优化

模型选择

模型选择就是用于评估和验证模型了,对模型的参数进行选择与平衡。sklearn有很多模块可以实现功能,包括模型度量、网格搜索、交叉验证。主要是用于调整模型参数来提高模型性能

数据预处理

数据预处理就是把输入的数据转换为机器学习算法适用的数据,文本、图像等内容,主要就是包括数据特征的抽取和归一化,常用的模块是数据预处理,特征抽取等

我们这里只是做一个非常简略的介绍,具体使用方法还是需要参考官方文档,可以通过pip3命令安装sklearn

shell 复制代码
pip3 install scikit-learn

目前的规划是,接下来我们会逐步学习并使用一些常见的机器学习算法,线性回归、k-临近算法、Logistic回归、神经网络学习算法、k均值聚类,然后我们再学习机器学习的一个分支------深度学习,同样也是通过样例来实践

相关推荐
简简单单做算法6 小时前
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
神经网络·机器学习·人脸识别·dnn·grnn·pnn·orl人脸库
B站计算机毕业设计超人8 小时前
计算机毕业设计Python+卷积神经网络CNN交通标志识别 机器学习 深度学习 爬虫 数据可视化 人工智能 模型训练
图像处理·python·深度学习·机器学习·cnn·tensorflow·卷积神经网络
IT古董10 小时前
【人工智能】Python常用库-Scikit-learn常用方法教程
人工智能·python·机器学习·scikit-learn
qq_1893704910 小时前
鸢尾花植物的结构认识和Python中scikit-learn工具包的安装
python·机器学习·scikit-learn
Mr.谢尔比11 小时前
李宏毅机器学习课程知识点摘要(6-13集)
人工智能·pytorch·深度学习·神经网络·机器学习·计算机视觉
sp_fyf_202412 小时前
【大语言模型】ACL2024论文-16 基于地图制图的罗马尼亚自然语言推理语料库的新型课程学习方法
人工智能·深度学习·机器学习·语言模型·数据挖掘·学习方法
橙子小哥的代码世界12 小时前
【大模型】从零样本到少样本学习:一文读懂 Zero-shot、One-shot 和 Few-shot 的核心原理与应用!
深度学习·神经网络·自然语言处理·tensorflow·sklearn
魍魉198814 小时前
神经网络的数学——一个完整的例子
神经网络·决策树·机器学习
IT古董14 小时前
【人工智能】Python常用库-TensorFlow常用方法教程
人工智能·python·机器学习·tensorflow
L_cl15 小时前
NLP 2、机器学习简介
人工智能·机器学习·自然语言处理