No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Entrenamiento con regresión logística binomial

8/17
Recursos

Aportes 9

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Otro método para obtener el accuracy.

El accuracy es una métrica que mide la frecuencia con la que un modelo de aprendizaje automático predice correctamente el resultado . Puede calcular la precisión dividiendo el número de predicciones correctas por el número total de predicciones.

Estoy haciendo un módelo de predicción para peritonitis, pero el módelo no logra encontrar la relación. Ojalá todo fuera así de fácil como en la explicación :c

Creo que los resultados podrían estar sesgados dado un a desbalance entre cantidad de casos positivos (1) y negativos (0). * Es decir, el modelo es bueno en predicciones de casos positivos, pero no tanto en negativos. ![](https://static.platzi.com/media/user_upload/Captura%20de%20pantalla%202024-08-09%20a%20la%28s%29%2012.53.25p.m.-52ad15f0-268a-40b0-8834-162abe66a2da.jpg) ```js def classification_metrics(y_real, y_pred, print_results: bool= True): tn, fp, fn, tp = cm(y_real, y_pred).ravel() # aplanamos la matriz de confusión accuracy = (tp + tn) / (tp + tn + fp + fn) precision = tp / (tp + fp) recall = tp / (tp + fn) f_score = 2 * (precision * recall) / (precision + recall) if print_results: print(f'\nClassification metrics:\n', f'- Accuracy: {accuracy:.2f}\n - Precision: {precision:.2f}\n', f'- Recall: {recall:.2f}\n - F1-Score: {f_score:.2f}') else: return accuracy, precision, recall, f_score classification_metrics(y_test, y_pred, True) ```
Me bajé la matriz de confusión para probar de forma visual cómo se comportaban las predicciones. Este es el código: ```python from sklearn.metrics import confusion_matrix y_pred = model.predict(X_test) conf_matrix = confusion_matrix(y_test, y_pred) plt.figure(figsize=(6, 4)) sns.heatmap(conf_matrix, annot=True, fmt='d', cmap='Blues', cbar=False) plt.title('Confusion Matrix') plt.xlabel('Predicted') plt.ylabel('Actual') plt.show() ``` ![](https://static.platzi.com/media/user_upload/image-50238d60-bada-4296-9851-1fe08d7f15a8.jpg)
En un modelo de regresión logística, es esencial seleccionar las variables independientes que realmente influyan en la variable dependiente. Trabajar con todas las variables puede introducir ruido y no mejorar el modelo, especialmente si algunas no tienen correlación con la variable objetivo. Es recomendable aplicar técnicas de selección de variables, como la eliminación hacia atrás o la regularización, para optimizar tu modelo y evitar el sobreajuste.
![](https://static.platzi.com/media/user_upload/image-ae2eca4a-388a-450d-b6d0-c20cd1742648.jpg) Aunque inicialmente ya sabia que mis variable no tenian relación me dio esta precision ..

Para este ejercicio, es necesario analizar y verificar que la funcionalidad de este sea correcta porque sino vas a quedarte estancado y no podras avanzar mas adelante.

Así funciona el comando “metrics.accuracy_score”:

  • La función metrics.accuracy_score es una función que se utiliza comúnmente en el contexto de la evaluación de modelos de aprendizaje automático, especialmente en el ámbito de la clasificación. Esta función es parte de la biblioteca scikit-learn en Python, que es ampliamente utilizada para tareas de aprendizaje automático y minería de datos.

metrics.accuracy_score se utiliza para calcular la precisión (accuracy) de un modelo de clasificación. La precisión es una métrica que mide la proporción de predicciones correctas realizadas por el modelo en relación con el número total de predicciones. Matemáticamente, se define como:

ACCURACU = Número de predicciones correctas/ Número total de predicciones.

from sklearn import metrics

# Definir las etiquetas reales y las etiquetas predichas por el modelo
y_true = [0, 1, 1, 0, 1, 1, 0]
y_pred = [0, 1, 0, 0, 1, 1, 1]

# Calcular la precisión
accuracy = metrics.accuracy_score(y_true, y_pred)

print("Accuracy:", accuracy)

La función metrics.accuracy_score compara las etiquetas reales (y_true) con las etiquetas predichas por el modelo (y_pred) y devuelve la precisión como un valor decimal entre 0 y 1. Un valor de 1 significa que todas las predicciones del modelo son correctas, mientras que un valor más bajo indica que el modelo cometió errores en sus predicciones. La precisión es una métrica importante para evaluar el rendimiento de los modelos de clasificación, pero no siempre es la única métrica relevante, ya que puede no ser adecuada para todos los conjuntos de datos, especialmente cuando las clases están desequilibradas.