神经网络与手写数字识别
时间: 2023-12-15 10:06:14 浏览: 26
神经网络可以用于手写数字识别。下面是一个简单的手写数字识别的例子:
```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
# 加载手写数字数据集
digits = load_digits()
# 显示数据集中的一些数字
fig, axes = plt.subplots(4, 4)
for i, ax in enumerate(axes.flat):
ax.imshow(digits.images[i], cmap='binary')
ax.set(xticks=[], yticks=[])
# 将数据集分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(digits.data, digits.target, random_state=0)
# 创建神经网络模型
mlp = MLPClassifier(hidden_layer_sizes=(30, 30, 30), max_iter=1000)
# 训练模型
mlp.fit(X_train, y_train)
# 在测试集上测试模型
print("Test set score: %f" % mlp.score(X_test, y_test))
```
这个例子中,我们使用了sklearn库中的手写数字数据集,将数据集分为训练集和测试集,创建了一个包含3个隐藏层的神经网络模型,并在训练集上训练模型。最后,在测试集上测试模型的准确率。