Hay 2 formas de hacerlo: usando el método de score
clasificadores o haciéndolo “manualmente” usando el accuracy_score
del módulo de metrics
. P.ej,
de sklearn.metrics import precision_score importar numpy como np y_true = np.array ([0, 0, 0, 1, 1, 1, 2, 2, 2, 2]) y_pred = np.array ([0, 0, 0, 1, 1, 1, 2, 2, 2, 0]) precision_score (y_true, y_pred)
esto devolvería la precisión no ponderada, es decir
0,90
Para ponderar la precisión por el número de muestras por clase, podríamos usar el parámetro sample_weight
. Por ejemplo,
- Como humanos, aprendemos de las experiencias. ¿Es posible construir una máquina que aprenda de tus experiencias y luego te reemplace después de tu muerte?
- ¿Cómo puede un sistema detectar preguntas sobre Quora y responderlas automáticamente?
- ¿Qué tan segura es la IA desarrollada en Palantir?
- ¿Cuál es el robot humanoide más avanzado del mundo?
- ¿Podrán las computadoras igualar el cerebro humano (procesos de pensamiento similares, etc.)?
w = np.ones (y_true.shape [0]) para idx, i en enumerate (np.bincount (y_true)): w [y_true == idx] * = (i / float (y_true.shape [0])) precision_score (y_true, y_pred, sample_weight = w)
que luego regresa
0.88235294117647056