请用PYTHON编写一段代码,要求基于Mnist数据集,用朴素贝叶斯分类器对手写数字进行识别
时间: 2024-05-08 13:19:33 浏览: 118
下面是使用朴素贝叶斯分类器对手写数字进行识别的python代码:
```python
from sklearn.naive_bayes import GaussianNB
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 加载手写数字数据集
digits = load_digits()
X, y = digits.data, digits.target
# 将数据集分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
# 创建朴素贝叶斯分类器
model = GaussianNB()
# 在训练集上拟合朴素贝叶斯分类器
model.fit(X_train, y_train)
# 在测试集上进行预测
y_pred = model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("朴素贝叶斯分类器在手写数字识别上的准确率为:", accuracy)
```
代码中使用`load_digits()`函数加载Mnist数据集,然后将数据集分为训练集和测试集。接着创建一个朴素贝叶斯分类器,并在训练集上进行拟合。最后在测试集上进行预测,计算准确率并输出。
阅读全文