Preprocesamiento de datos desbalanceados

Código
Avanzado
ScikitLearn
Curso de ScikitLearn
15 min
300 XP
Actualizado: 28/02/2025

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Descripción

Desarrolla un notebook en Python que demuestre cómo manejar datos desbalanceados mediante la estratificación y el ajuste de pesos de clases en un modelo de clasificación.

Crea un archivo .ipynb desde cero que realice lo siguiente:

Guarda tu progreso

Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

Progreso guardado
Asistente IA
Ejercicios
Iniciar sesión gratis

Más de 25.000 desarrolladores ya confían en CertiDevs

  1. Genera un dataset desbalanceado utilizando la función make_classification de Scikit-Learn, donde una clase represente aproximadamente el 90 % de las muestras y la otra el 10 %.
  2. Divide el dataset en conjuntos de entrenamiento y prueba utilizando train_test_split, asegurándote de que la partición se realice de manera estratificada (usando el parámetro stratify) y fija una semilla con random_state (por ejemplo, 42) para la reproducibilidad.
  3. Entrena un modelo de clasificación (por ejemplo, RandomForestClassifier) configurado con el parámetro class_weight='balanced' para mitigar el desbalance de clases.
  4. Muestra en pantalla:
    • La distribución de clases en los conjuntos de entrenamiento y prueba (usando, por ejemplo, value_counts(normalize=True)).
    • Una métrica de evaluación (como la exactitud o el F1-score) en el conjunto de prueba.

Solución al ejercicio de programación en ScikitLearn

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en ScikitLearn para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con ejercicios de programación en ScikitLearn

Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Asistente de IA

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades en ScikitLearn

⭐⭐⭐⭐⭐
4.9/5 valoración