python调用数据集mnist实现数字识别
时间: 2023-11-11 22:04:43 浏览: 287
要实现数字识别,我们可以使用Python中的机器学习库scikit-learn和数据集MNIST。MNIST数据集包含了大量手写数字的图像和对应的标签,可以用于训练和测试机器学习模型。
以下是使用scikit-learn和MNIST数据集实现数字识别的代码示例:
```python
from sklearn.datasets import fetch_openml
from sklearn.neural_network import MLPClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 加载MNIST数据集
mnist = fetch_openml('mnist_784')
# 将图像数据和标签分别存储
X = mnist.data
y = mnist.target
# 将图像数据归一化到0-1之间
X = X / 255.0
# 将数据集分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
# 创建多层感知器分类器模型
model = MLPClassifier(hidden_layer_sizes=(50,), max_iter=10, alpha=1e-4,
solver='sgd', verbose=10, tol=1e-4, random_state=1,
learning_rate_init=.1)
# 训练模型
model.fit(X_train, y_train)
# 在测试集上评估模型性能
_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)
```
在上述代码中,我们首先使用`fetch_openml`函数加载MNIST数据集。然后将图像数据和标签分别存储在`X`和`y`中,并将图像数据归一化到0-1之间。接着,我们将数据集分为训练集和测试集,并创建一个多层感知器分类器模型。最后,我们使用训练好的模型在测试集上进行预测,并计算模型的准确率。
阅读全文