文章目录
机器学习之 sklearn 基础教程
本文章由文心一言生成,由arjunna整合编辑
1. 引言
scikit-learn
(通常简写为 sklearn
)是 Python 中最受欢迎的机器学习库之一。它提供了各种用于数据预处理、模型训练、评估以及模型选择的工具。本教程将详细介绍 sklearn
的基础用法,帮助你快速上手机器学习。
2. 安装 sklearn
你可以使用 pip 或 conda 来安装 sklearn
。以下是使用 pip 安装的命令:
pip install scikit-learn
3. 数据集
3.1 加载数据集
sklearn
自带了一些用于示例和测试的数据集,如鸢尾花数据集(Iris dataset)、波士顿房价数据集(Boston housing dataset)等。以下是如何加载鸢尾花数据集的示例:
from sklearn.datasets import load_iris
iris = load_iris()
X = iris.data # 特征数据
y = iris.target # 目标标签
3.2 数据集划分
在训练模型之前,通常需要将数据集划分为训练集和测试集。sklearn
提供了 train_test_split
函数来实现这一功能:
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
4. 数据预处理
4.1 特征缩放
某些机器学习算法(如支持向量机、K近邻等)对特征的尺度敏感。因此,在进行模型训练之前,通常需要对特征进行缩放。sklearn
提供了 StandardScaler
和 MinMaxScaler
等工具来实现特征缩放。
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)
4.2 编码分类特征
如果数据集中包含分类特征(即非数值型特征),则需要将其转换为数值型特征。sklearn
提供了 LabelEncoder
(用于单个分类特征)和 OneHotEncoder
(用于多个分类特征)等工具来实现这一功能。
5. 模型训练与评估
5.1 模型训练
sklearn
提供了许多内置的机器学习算法,如逻辑回归、支持向量机、决策树等。以下是如何使用 LogisticRegression
算法训练模型的示例:
from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
model.fit(X_train_scaled, y_train)
5.2 模型评估
训练好模型后,我们需要评估其在测试集上的性能。sklea