神经网络 手写数字识别
时间: 2024-04-25 17:19:45 浏览: 102
神经网络手写数字识别是一种利用神经网络模型来对手写数字进行自动识别的技术。下面是一个简单的示例代码,演示了如何使用神经网络实现手写数字识别的过程[^1]:
```python
import numpy as np
import matplotlib.pyplot as plt
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
# 加载手写数字数据集
digits = load_digits()
# 划分数据集
X_train, X_test, y_train, y_test = train_test_split(digits.data, digits.target, test_size=0.2, random_state=42)
# 创建神经网络模型
model = MLPClassifier(hidden_layer_sizes=(64, 64), max_iter=1000)
# 训练模型
model.fit(X_train, y_train)
# 预测测试集
y_pred = model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("准确率:", accuracy)
```
这段代码使用了scikit-learn库中的MLPClassifier类来构建一个多层感知器(MLP)神经网络模型,并使用手写数字数据集进行训练和测试。首先,加载手写数字数据集,然后将数据集划分为训练集和测试集。接下来,创建一个具有两个隐藏层的神经网络模型,并使用训练集对模型进行训练。最后,使用测试集进行预测,并计算预测准确率。
阅读全文