Я расскажу вам о том, как я использовал функции confusion_matrix и classification_report из библиотеки Scikit-learn для визуализации матрицы ошибок и отчета классификации.В своем проекте я занимался задачей классификации различных видов цветов. После обучения модели машинного обучения на моих данных, я получил предсказания для тестовой выборки. Чтобы оценить результаты работы модели, я решил использовать confusion matrix и classification report.Для начала, я импортировал необходимые модули⁚
python
from sklearn.metrics import confusion_matrix, classification_report
Затем, я использовал функцию confusion_matrix для создания матрицы ошибок. Матрица ошибок показывает количество верных и неверных предсказаний для каждого класса. Я передал истинные метки классов и предсказанные моделью метки в функцию и сохранил результат в переменную.python
true_labels [0, 1, 0, 1, 2, 2, 2]
predicted_labels [0, 0, 0, 1, 2, 1, 2]
matrix confusion_matrix(true_labels, predicted_labels)
Далее, я использовал функцию classification_report для создания отчета классификации. Отчет классификации содержит информацию о точности, полноте, F-мере и поддержке для каждого класса. Я также передал истинные метки классов и предсказанные метки в функцию.python
report classification_report(true_labels, predicted_labels)
После получения матрицы ошибок и отчета классификации, я решил визуализировать их для лучшего понимания результатов работы модели.Для визуализации матрицы ошибок, я использовал библиотеку matplotlib. Я использовал функцию imshow для создания графического представления матрицы ошибок и добавил подписи осей и цветовую шкалу.python
import matplotlib.pyplot as plt
plt.imshow(matrix, interpolation’nearest’, cmapplt.cm.Blues)
plt.title(‘Confusion Matrix’)
plt.colorbar
plt.xticks([0٫ 1٫ 2]٫ [‘Class 0’٫ ‘Class 1’٫ ‘Class 2’])
plt.yticks([0, 1, 2], [‘Class 0’, ‘Class 1’, ‘Class 2’])
plt.xlabel(‘True Label’)
plt.ylabel(‘Predicted Label’)
plt.show
Для визуализации отчета классификации, я использовал функцию print для вывода отчета в консоль.python
print(report)
В результате, я получил матрицу ошибок, в которой я смог увидеть, сколько объектов каждого класса было верно и неверно классифицировано. Я также имел возможность оценить результаты работы модели с помощью отчета классификации, который показывал точность, полноту, F-меру и поддержку для каждого класса.
Использование функций confusion_matrix и classification_report из библиотеки Scikit-learn позволило мне более детально и наглядно проанализировать результаты работы модели и понять, насколько хорошо она справилась с поставленной задачей.