1.示例
#!/usr/bin/python # -*- coding: UTF-8 -*- """ @author:livingbody @file:accuracy_score.py @time:2022/08/29 """ from sklearn.metrics import accuracy_score if __name__ == '__main__': y_pred = [0, 2, 1, 3, 4] y_true = [0, 1, 2, 3, 4] acc = accuracy_score(y_true, y_pred) print(f"acc: {acc}")
acc: 0.6
如上所示,5个值得情况下,错2个,准确率60%,浅显易懂。
2.api介绍
sklearn.metrics.accuracy_score(y_true, y_pred, *, normalize=True, sample_weight=None)
- 可用来计算分类准确率分数。
- 可用来计算多分类准确率分数。
"""Accuracy classification score. In multilabel classification, this function computes subset accuracy: the set of labels predicted for a sample must *exactly* match the corresponding set of labels in y_true. Read more in the :ref:`User Guide <accuracy_score>`. Parameters ---------- y_true : 1d array-like, or label indicator array / sparse matrix Ground truth (correct) labels. y_pred : 1d array-like, or label indicator array / sparse matrix Predicted labels, as returned by a classifier. normalize : bool, default=True If ``False``, return the number of correctly classified samples. Otherwise, return the fraction of correctly classified samples. sample_weight : array-like of shape (n_samples,), default=None Sample weights. Returns ------- score : float If ``normalize == True``, return the fraction of correctly classified samples (float), else returns the number of correctly classified samples (int). The best performance is 1 with ``normalize == True`` and the number of samples with ``normalize == False``.
3.多分类准确率分数计算
import numpy as np accuracy_score(np.array([[0, 1], [1, 1]]), np.ones((2, 2))) 0.5