手写数字识别python
时间: 2023-09-14 12:07:42 浏览: 72
手写数字识别python.zip
可以使用Python编写一个手写数字识别程序,以下是一个简单的示例代码:
```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()
# 显示一部分手写数字图像
plt.figure(figsize=(20, 4))
for index, (image, label) in enumerate(zip(digits.data[0:5], digits.target[0:5])):
plt.subplot(1, 5, index + 1)
plt.imshow(np.reshape(image, (8, 8)), cmap=plt.cm.gray)
plt.title('Training: %i\n' % label, fontsize=20)
# 将数据集分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(digits.data, digits.target, test_size=0.25, random_state=0)
# 创建一个多层感知器模型,并训练模型
mlp = MLPClassifier(hidden_layer_sizes=(30, 30, 30), max_iter=1000)
mlp.fit(X_train, y_train)
# 在测试集上进行预测,并计算准确率
y_pred = mlp.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)
```
这个程序使用了Scikit-learn库中的手写数字数据集来训练一个多层感知器模型,然后在测试集上进行预测,并计算准确率。你可以通过调整模型的超参数来提高准确率,比如调整隐藏层的大小或迭代次数等。
阅读全文