使用mlp算法对Digits数据集进行分类

程序功能

这个程序使用多层感知机(MLP)对 Digits 数据集进行分类。程序将数据集分为训练集和测试集,创建并训练一个具有两个隐藏层的 MLP 模型。训练完成后,模型对测试数据进行预测,并通过准确率、分类报告和混淆矩阵评估模型的效果。这些评估指标帮助了解模型在手写数字分类任务上的表现。

代码

python 复制代码
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
from sklearn.neural_network import MLPClassifier
from sklearn.metrics import accuracy_score, classification_report, confusion_matrix

# 加载Digits数据集
digits = load_digits()

# 分割数据集为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(digits.data, digits.target, test_size=0.3, random_state=42)

# 创建多层感知机分类器
mlp = MLPClassifier(hidden_layer_sizes=(100, 100), max_iter=300, activation='relu', solver='adam', random_state=1)

# 训练模型
mlp.fit(X_train, y_train)

# 对测试集进行预测
y_pred = mlp.predict(X_test)

# 计算并输出准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy}")

# 输出分类报告
print("\nClassification Report:")
print(classification_report(y_test, y_pred))

# 输出混淆矩阵
print("\nConfusion Matrix:")
print(confusion_matrix(y_test, y_pred))
相关推荐
alasnot19 分钟前
BERT情感分类
人工智能·深度学习·bert
只有左边一个小酒窝25 分钟前
(九)现代循环神经网络(RNN):从注意力增强到神经架构搜索的深度学习演进
人工智能·rnn·深度学习
UQI-LIUWJ2 小时前
论文略读:REEF: Representation Encoding Fingerprints for Large Language Models
人工智能·语言模型·自然语言处理
强盛小灵通专卖员2 小时前
基于YOLOv12的电力高空作业安全检测:为电力作业“保驾护航”,告别安全隐患!
人工智能·深度学习·安全·yolo·核心期刊·计算机期刊
万米商云2 小时前
AI推荐系统演进史:从协同过滤到图神经网络与强化学习的融合
人工智能·深度学习·神经网络
cnblogs.com/qizhou/2 小时前
综述论文解读:Editing Large Language Models: Problems, Methods, and Opportunities
人工智能·语言模型·自然语言处理
UQI-LIUWJ2 小时前
论文笔记:Large Language Models for Next Point-of-Interest Recommendation
人工智能·语言模型·自然语言处理
青小莫2 小时前
如何使用deepseek满血版
人工智能
GaolBB3 小时前
博客十二:基本框架概述(上)
人工智能
强盛小灵通专卖员3 小时前
目标检测中F1-Score指标的详细解析:深度理解,避免误区
人工智能·目标检测·机器学习·视觉检测·rt-detr