Python凭借其简洁性、多功能性和丰富的库生态系统,成为机器学习 (ML) 的首选语言。如果您是ML新手,并希望开始使用Python,本指南将引导您掌握基础知识,介绍核心库,并演示如何构建简单的ML模型。
Python在ML领域广泛应用,原因如下:
无论您是分析数据、训练模型还是部署机器学习解决方案,Python都能提供简化流程的工具。
在深入学习ML之前,让我们了解一些关键的Python库:
NumPy: NumPy(Numerical Python)是Python数值计算的基础。它提供对数组、矩阵和数学函数的支持。
Pandas: Pandas是一个强大的数据操作和分析库。它引入了诸如DataFrame等数据结构,简化了结构化数据的处理。
Scikit-learn: Scikit-learn是Python中最流行的ML库。它提供简单高效的工具用于数据挖掘和分析,包括分类、回归、聚类等算法。
首先,您需要安装这些库。如果您尚未安装,可以使用pip安装:
pip install numpy pandas scikit-learn
安装完成后,即可开始编写代码!
让我们用Python演练基本的ML流程。我们将使用著名的鸢尾花数据集,其中包含不同品种鸢尾花的信息。我们的目标是构建一个模型,根据花瓣长度和宽度等特征对物种进行分类。
步骤1:导入库
首先,导入必要的库:
import numpy as np
import pandas as pd
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score
步骤2:加载数据集
Scikit-learn提供内置数据集,包括鸢尾花数据集。让我们加载它:
# 加载鸢尾花数据集
iris = load_iris()
# 转换为Pandas DataFrame以便于操作
data = pd.DataFrame(iris.data, columns=iris.feature_names)
data['species'] = iris.target
步骤3:数据探索
在构建模型之前,了解数据至关重要:
# 显示前几行数据
print(data.head())
# 检查缺失值
print(data.isnull().sum())
# 获取基本统计信息
print(data.describe())
步骤4:数据准备
将数据分成特征 (X) 和标签 (y),然后将其分成训练集和测试集:
# 特征 (X) 和标签 (y)
X = data.drop('species', axis=1)
y = data['species']
# 将数据分成训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
步骤5:模型训练
让我们使用随机森林分类器,这是一种流行的机器学习算法:
# 初始化模型
model = RandomForestClassifier(random_state=42)
# 训练模型
model.fit(X_train, y_train)
步骤6:预测和模型评估
使用训练好的模型对测试集进行预测并评估其准确性:
# 进行预测
y_pred = model.predict(X_test)
# 评估模型
accuracy = accuracy_score(y_test, y_pred)
print(f"模型准确率: {accuracy * 100:.2f}%")
恭喜!您刚刚使用Python构建了您的第一个ML模型。以下是一些继续学习的建议:
如果您想深入学习,以下是一些优秀的资源: