Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Fundamentos de la Selección de Características | Ingeniería de Características para Aprendizaje Automático
Preprocesamiento de Datos y Diseño de Características

bookFundamentos de la Selección de Características

La selección de características mejora el rendimiento del modelo al conservar solo las características más relevantes, reducir la complejidad y ayudar a prevenir el sobreajuste causado por datos irrelevantes o redundantes.

Note
Definición

Selección de características es el proceso de elegir un subconjunto de variables de entrada (features) de tus datos que sean más relevantes para el problema de modelado predictivo.

Los métodos de selección de características incluyen la revisión manual y técnicas automatizadas. En tareas de clasificación, se utilizan pruebas estadísticas para puntuar las características y seleccionar aquellas más fuertemente relacionadas con la variable objetivo.

Los métodos de selección de características más populares se agrupan en tres categorías:

  • Métodos de filtro: Seleccionan características basándose en medidas estadísticas, como coeficientes de correlación o pruebas univariadas, independientemente de cualquier modelo de aprendizaje automático;
  • Métodos wrapper: Utilizan un modelo predictivo para evaluar diferentes combinaciones de características, como con la eliminación recursiva de características (RFE), y seleccionan el subconjunto que proporciona el mejor rendimiento del modelo;
  • Métodos embebidos: Realizan la selección de características como parte del proceso de entrenamiento del modelo, como la regularización Lasso, que elimina automáticamente las características menos importantes al reducir sus coeficientes a cero.

Cada método equilibra compensaciones entre costo computacional, interpretabilidad y poder predictivo.

1234567891011121314151617181920212223242526
import pandas as pd import seaborn as sns from sklearn.feature_selection import SelectKBest, f_classif from sklearn.preprocessing import LabelEncoder # Load Titanic dataset train = sns.load_dataset('titanic') # Select numeric and categorical columns (excluding target) features = ['pclass', 'sex', 'age', 'sibsp', 'parch', 'fare', 'embarked'] X = train[features].copy() y = train['survived'] # Encode categorical features X['sex'] = LabelEncoder().fit_transform(X['sex'].astype(str)) X['embarked'] = LabelEncoder().fit_transform(X['embarked'].astype(str)) # Handle missing values by filling with median (for simplicity) X = X.fillna(X.median(numeric_only=True)) # Select top 5 features based on ANOVA F-value selector = SelectKBest(score_func=f_classif, k=5) X_new = selector.fit_transform(X, y) selected_features = X.columns[selector.get_support()] print("Selected features:", list(selected_features))
copy

En este ejemplo, se utiliza SelectKBest de scikit-learn con la función de puntuación f_classif para seleccionar las cinco características más relevantes—pclass, sex, parch, fare y embarked—del conjunto de datos Titanic. Este método evalúa cada característica de forma individual utilizando los valores F de ANOVA y selecciona aquellas con las puntuaciones más altas. Es eficaz para tareas de clasificación porque se centra en las características que mejor separan las clases objetivo.

Note
Nota

Seleccionar demasiadas características, especialmente las irrelevantes, puede llevar a un sobreajuste, donde el modelo tiene un buen desempeño en los datos de entrenamiento pero un rendimiento deficiente en datos nuevos o no vistos. Una selección cuidadosa de características ayuda a reducir este riesgo y conduce a modelos más robustos.

La selección de características no solo mejora la precisión—también hace que tus modelos sean más rápidos y más fáciles de interpretar. Al enfocarse únicamente en las características más importantes, se simplifican los modelos y se reduce la probabilidad de aprender ruido de los datos.

question mark

¿Cuál de las siguientes afirmaciones sobre la selección de características es verdadera?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 1

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you explain why only 'sex' and 'fare' were selected as features in the output?

What are some other feature selection methods I could try?

How does SelectKBest with f_classif work in more detail?

Awesome!

Completion rate improved to 8.33

bookFundamentos de la Selección de Características

Desliza para mostrar el menú

La selección de características mejora el rendimiento del modelo al conservar solo las características más relevantes, reducir la complejidad y ayudar a prevenir el sobreajuste causado por datos irrelevantes o redundantes.

Note
Definición

Selección de características es el proceso de elegir un subconjunto de variables de entrada (features) de tus datos que sean más relevantes para el problema de modelado predictivo.

Los métodos de selección de características incluyen la revisión manual y técnicas automatizadas. En tareas de clasificación, se utilizan pruebas estadísticas para puntuar las características y seleccionar aquellas más fuertemente relacionadas con la variable objetivo.

Los métodos de selección de características más populares se agrupan en tres categorías:

  • Métodos de filtro: Seleccionan características basándose en medidas estadísticas, como coeficientes de correlación o pruebas univariadas, independientemente de cualquier modelo de aprendizaje automático;
  • Métodos wrapper: Utilizan un modelo predictivo para evaluar diferentes combinaciones de características, como con la eliminación recursiva de características (RFE), y seleccionan el subconjunto que proporciona el mejor rendimiento del modelo;
  • Métodos embebidos: Realizan la selección de características como parte del proceso de entrenamiento del modelo, como la regularización Lasso, que elimina automáticamente las características menos importantes al reducir sus coeficientes a cero.

Cada método equilibra compensaciones entre costo computacional, interpretabilidad y poder predictivo.

1234567891011121314151617181920212223242526
import pandas as pd import seaborn as sns from sklearn.feature_selection import SelectKBest, f_classif from sklearn.preprocessing import LabelEncoder # Load Titanic dataset train = sns.load_dataset('titanic') # Select numeric and categorical columns (excluding target) features = ['pclass', 'sex', 'age', 'sibsp', 'parch', 'fare', 'embarked'] X = train[features].copy() y = train['survived'] # Encode categorical features X['sex'] = LabelEncoder().fit_transform(X['sex'].astype(str)) X['embarked'] = LabelEncoder().fit_transform(X['embarked'].astype(str)) # Handle missing values by filling with median (for simplicity) X = X.fillna(X.median(numeric_only=True)) # Select top 5 features based on ANOVA F-value selector = SelectKBest(score_func=f_classif, k=5) X_new = selector.fit_transform(X, y) selected_features = X.columns[selector.get_support()] print("Selected features:", list(selected_features))
copy

En este ejemplo, se utiliza SelectKBest de scikit-learn con la función de puntuación f_classif para seleccionar las cinco características más relevantes—pclass, sex, parch, fare y embarked—del conjunto de datos Titanic. Este método evalúa cada característica de forma individual utilizando los valores F de ANOVA y selecciona aquellas con las puntuaciones más altas. Es eficaz para tareas de clasificación porque se centra en las características que mejor separan las clases objetivo.

Note
Nota

Seleccionar demasiadas características, especialmente las irrelevantes, puede llevar a un sobreajuste, donde el modelo tiene un buen desempeño en los datos de entrenamiento pero un rendimiento deficiente en datos nuevos o no vistos. Una selección cuidadosa de características ayuda a reducir este riesgo y conduce a modelos más robustos.

La selección de características no solo mejora la precisión—también hace que tus modelos sean más rápidos y más fáciles de interpretar. Al enfocarse únicamente en las características más importantes, se simplifican los modelos y se reduce la probabilidad de aprender ruido de los datos.

question mark

¿Cuál de las siguientes afirmaciones sobre la selección de características es verdadera?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 1
some-alt