机器学习 —— 训练与测试

摘要:机器学习中,训练集-测试集划分是评估模型性能的关键技术。通过将数据分为训练集(用于模型训练)和测试集(用于性能评估),可以避免过拟合问题,确保模型具有良好的泛化能力。示例使用sklearn的train_test_split函数将鸢尾花数据集按8:2划分,训练逻辑回归模型后获得100%的测试准确率。该方法通过独立测试集验证模型对新数据的预测能力,random_state参数保证了实验可重复性。

目录

[机器学习 ------ 训练与测试](#机器学习 —— 训练与测试)

示例

输出结果

术语说明


机器学习 ------ 训练与测试

在机器学习中,训练集 - 测试集划分(train-test split)是一种常用的模型性能评估技术。其核心思想是将现有数据划分为两个数据集:训练集(training set)和测试集(testing set)。训练集用于模型的训练过程,测试集则用于评估模型的性能表现。

训练集 - 测试集划分至关重要,因为它能让我们在模型未见过的数据上进行测试。这一过程的必要性在于:若直接使用训练数据评估模型,可能会出现模型在训练集上表现优异,但对新数据的泛化能力较差的情况。

示例

在 Python 中,可以使用sklearn.model_selection模块中的train_test_split函数实现数据的划分。以下是具体实现示例:

python 复制代码
# 导入所需库和数据集
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression

# 加载鸢尾花数据集
data = load_iris()
X = data.data  # 特征数据
y = data.target  # 目标标签

# 将数据划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 创建逻辑回归模型并在训练集上训练
model = LogisticRegression()
model.fit(X_train, y_train)

# 在测试集上评估模型性能
accuracy = model.score(X_test, y_test)
print(f"准确率: {accuracy:.2f}")

在上述示例中,我们首先加载了鸢尾花(iris)数据集,然后通过train_test_split函数将数据划分为训练集和测试集。接着创建逻辑回归模型并使用训练集进行训练,最后通过模型的score方法在测试集上评估性能。

train_test_split函数中的test_size参数用于指定测试集所占的比例。本示例中该参数设为 0.2,即 20% 的数据用于测试,80% 的数据用于训练。random_state参数用于保证数据划分的可重复性,确保每次运行代码都能得到相同的划分结果。

输出结果

运行上述代码后,将得到以下输出:

plaintext

python 复制代码
准确率: 1.00

总而言之,训练集 - 测试集划分是评估机器学习模型性能的关键步骤。通过将数据分离为训练集和测试集,能够有效避免模型对训练数据的过拟合(overfitting),确保模型具备良好的新数据泛化能力。

术语说明

  1. 训练集(training set):用于模型训练的数据集合,模型通过学习该数据集的特征规律构建预测逻辑。
  2. 测试集(testing set):独立于训练集的评估数据集合,用于检验模型对未见过数据的预测能力。
  3. 泛化能力(generalization ability):模型从训练数据中学习到的规律,应用于新数据时的预测准确性。
  4. 过拟合(overfitting):模型过度贴合训练数据的细节(包括噪声),导致在新数据上表现下降的现象。
  5. random_state:控制随机数据划分的种子参数,设定固定值可确保实验结果的可重复验证。
相关推荐
小王毕业啦3 分钟前
1990-2024年 省级-绿色金融指数(+文献)
大数据·人工智能·数据挖掘·数据分析·社科数据·实证分析·经管数据
victory04316 分钟前
CPQS-TUNING 论文引文阅读
人工智能
哎呦哥哥和巨炮叔叔9 分钟前
GPT-Image-2最优使用渠道推荐:AI1505一站式AI创作平台,解锁创意新可能
人工智能·ai视频生成·gpt-image-2·ai1505平台·ai生图工具·一站式ai创作平台·免费ai生图
AI模力圈10 分钟前
多模态理解类模型技术小结
人工智能·多模态
QuestLab11 分钟前
【第25期】2026年4月28日 AI日报
人工智能
新知图书11 分钟前
LangGraph 基础图创建思路
人工智能·agent·智能体·langgraph·langchian
AI 编程助手GPT11 分钟前
GPT-5.5与Claude Opus 4.7编程能力深度对比:2026年4月主流AI编程模型选型指南
大数据·人工智能·gpt·ai·ai编程
小王毕业啦12 分钟前
1985.1-2026.1 世界各国经济政策不确定性指数(xlsx)
大数据·人工智能·数据挖掘·数据分析·社科数据·实证数据·经管数据
ai产品老杨13 分钟前
解构企业级AI视频中台:基于X86/ARM与GPU/NPU异构架构的深度演进与源码交付实践
arm开发·人工智能·音视频
神仙别闹13 分钟前
基于Python实现上下消化道病历分类
开发语言·python·分类