Tema 3 - Feature_Engineering.html
|
|
Título del Test:
![]() Tema 3 - Feature_Engineering.html Descripción: Mineria de datos |



| Comentarios |
|---|
NO HAY REGISTROS |
|
En tidymodels, el objeto que define el preprocesamiento y feature engineering es: workflow(). recipe(). parsnip(). yardstick(). Según el guion recomendado, ¿qué paso suele ir primero en una recipe?. Crear dummies. Estandarizar predictores numéricos. Eliminar predictores con varianza nula o casi nula. Aplicar PCA. ¿Qué combinación describe mejor el flujo recomendado?. Modelo → recipe → split → métricas. Recipe → algoritmo → workflow → assessment (resampling/tuning si procede). Métricas → tuning → recipe → modelo. Split → test → CV → training. ¿Cuál es una razón principal para hacer feature engineering antes de modelar?. Para reducir el número de filas. Para adaptar los predictores a los requisitos del algoritmo. Para evitar usar métricas. Para que el modelo siempre sea interpretable. El objetivo de step_dummy() es: Crear interacciones automáticamente. Convertir factores nominales en variables numéricas (dummies). Eliminar outliers. Hacer PCA. En step_dummy(..., one_hot = FALSE) normalmente: Se crean dummies para todos los niveles. Se elimina una dummy de referencia (evitar multicolinealidad exacta). Se transforma a números ordinales. Se imputan missing. En codificación one-hot (no se elimina ninguna dummy), el modelo puede quedar: Perfectamente identificado sin problemas. “Less than full rank” con multicolinealidad exacta. Siempre con mejor rendimiento. Imposible de entrenar en R. step_other(Neighborhood, threshold = 0.01) sirve para: Eliminar la variable Neighborhood. Agrupar niveles poco frecuentes en “other”. Convertir Neighborhood en numérica. Imputar NA en Neighborhood. Si el threshold es 0.01, significa que: Se agrupan niveles con frecuencia < 1%. Se eliminan el 1% de filas. Se normaliza con varianza 0.01. Se imputan valores al 1% de casos. ¿Por qué es útil agrupar niveles raros?. Para aumentar la dimensionalidad. Para reducir ruido y mejorar estabilidad del modelo. Para que haya más outliers. Para evitar usar dummies. Una variable ordinal es aquella cuyos niveles: No tienen orden. Tienen un orden natural (bajo < medio < alto). Son siempre numéricos. No puede usarse en regresión. step_integer(all_ordered_predictors()) suele: Convertir factores ordenados a enteros (1,2,3,…). Aplicar Box-Cox. Normalizar variables. Eliminar NA. Los datos missing en R suelen representarse como: NULL. 0. NA. Inf. step_naomit(all_predictors()) hace: Imputa missing con la mediana. Elimina observaciones con NA/NaN. Convierte NA en 0. Crea una categoría “missing”. ¿Cuál es una desventaja típica de step_naomit()?. Aumenta el tamaño del dataset. Puede eliminar muchas filas y perder información. Crea multicolinealidad. No funciona con recipes. En la “imputación unidimensional”, los valores missing se imputan usando: Información del target. Información de la propia variable. Modelos externos siempre. Solo vecinos kNN. ¿Cuál es un motivo para preferir imputación frente a eliminar filas?. Porque elimina outliers. Porque evita perder muchos casos si hay muchos NA. Porque hace PCA automático. Porque aumenta accuracy siempre. Según el guion, Box-Cox o Yeo-Johnson se aplican para: Crear dummies. Corregir asimetría y tratar outliers (en predictores numéricos). Eliminar correlación entre predictores. Convertir ordinales en factores. En los ejemplos, step_BoxCox(Gr_Liv_Area) se aplica: Después de normalizar. Antes de normalizar. Solo tras PCA. Solo a variables nominales. step_normalize(all_numeric_predictors()) implica: Convertir a factores. Centrar y escalar predictores numéricos. Eliminar niveles raros. Imputar NA. Según el guion, la estandarización es importante cuando: Todos los predictores están en la misma escala. Los predictores numéricos están en distinta escala. Solo en árboles. Solo en regresión logística. step_ns(Longitude, deg_free = 20) se usa para: Crear dummies de Longitude. Introducir relaciones no lineales (splines naturales). Hacer PCA. Imputar missing. Si aumentas deg_free en un spline, normalmente: Disminuye flexibilidad. Aumenta flexibilidad (y riesgo de overfitting). No cambia el modelo. Elimina outliers. Una interacción en un modelo lineal permite: Suponer que el efecto de X es idéntico para todos. Permitir que el efecto de X cambie según otro predictor. Eliminar la necesidad de dummies. Evitar usar training/test. Según el guion, PCA es recomendable cuando: Hay pocos predictores y baja correlación. Hay muchos predictores numéricos y alta correlación. Solo hay variables cualitativas. Solo hay datos sin missing. En step_pca(..., threshold = 0.6), el threshold indica: Se eliminan variables con correlación > 0.6. Se seleccionan componentes para explicar un % de varianza (aquí 60%). Se imputan el 60% de NA. Se crean 0.6 componentes. Según el propio ejemplo, algunas variables se excluyen del PCA para: Evitar normalizar. Mantenerlas como predictores “separados” (no reducidos). Convertirlas a dummies. Eliminar outliers. step_nzv(all_predictors()) elimina: Variables con muchos NA. Variables con varianza nula o casi nula. Variables muy correlacionadas. Variables categóricas. ¿Por qué se aplica step_nzv() al final otra vez en algunos guiones?. Porque siempre falla a la primera. Porque al crear dummies pueden aparecer columnas todo 0. Porque normalizar crea NA. Porque PCA crea outliers. Tras elegir algoritmo y recipe, el material recomienda: Ajustar siempre con test. Estimar el modelo final con todo el training y comparar con test. Hacer PCA en test. Cambiar la métrica a posteriori. ¿Para qué sirve prep(recipe)?. Para entrenar el modelo final. Para “aprender” los parámetros del preprocesado (medias, escalas, niveles…). Para evaluar métricas. Para crear el split training/test. tidy(prep_rec, number = k) se usa para: Ver resultados del modelo. Inspeccionar qué hizo el paso k de la recipe (parámetros aprendidos). Cambiar hiperparámetros. Calcular AUC. ¿Qué se entiende por Feature Engineering?. El proceso de seleccionar el mejor modelo. El proceso de crear, transformar y preparar variables para el modelado. El ajuste de hiperparámetros. La evaluación del modelo final. El objetivo principal del feature engineering es: Reducir el tamaño del dataset. Mejorar la capacidad predictiva del modelo. Eliminar la variable respuesta. Aumentar la complejidad del modelo. ¿Por qué el feature engineering es una etapa clave en machine learning?. Porque reemplaza la validación cruzada. Porque los algoritmos no funcionan sin él. Porque puede influir más que el propio algoritmo en el rendimiento. Porque elimina el overfitting automáticamente. ¿Qué afirmación es correcta?. Todos los modelos necesitan el mismo preprocesamiento. El feature engineering depende del algoritmo utilizado. Solo se aplica en regresión. No influye en la interpretabilidad. Una variable nominal se caracteriza por: Tener un orden natural. Ser siempre numérica. No tener un orden intrínseco. Medir cantidades. Una variable ordinal se diferencia de una nominal porque: Tiene más niveles. Tiene un orden lógico entre categorías. Siempre es numérica. No puede transformarse. ¿Cuál es un ejemplo típico de variable ordinal?. Código postal. Color de coche. Nivel de satisfacción (bajo, medio, alto). Identificador de cliente. Tratar una variable ordinal como nominal puede provocar: Mejores resultados siempre. Pérdida de información sobre el orden. Eliminación de multicolinealidad. Menor dimensionalidad. ¿Cuál es un problema frecuente al trabajar con variables categóricas con muchos niveles?. Overfitting y alta dimensionalidad. Falta de observaciones. Imposibilidad de imputar valores. Sesgo de selección. Agrupar niveles poco frecuentes de una variable categórica suele servir para: Aumentar la complejidad. Reducir ruido y mejorar estabilidad. Eliminar la variable. Forzar normalidad. ¿Qué riesgo existe si no se agrupan niveles raros?. Subajuste. Sobreajuste. Pérdida de la variable respuesta. Reducción del sesgo. Los valores perdidos aparecen normalmente por: Errores de cálculo. Fallos en la recogida de datos o ausencia de información. Normalización incorrecta. Uso de variables ordinales. Eliminar observaciones con valores perdidos es problemático cuando: Hay pocos datos. Hay muchos valores perdidos. El dataset es grande. Las variables son numéricas. La imputación de valores perdidos consiste en: Eliminar filas. Reemplazar valores ausentes por estimaciones. Crear nuevas variables. Eliminar columnas. ¿Cuál es una desventaja potencial de la imputación?. Reduce el tamaño del dataset. Introduce incertidumbre o sesgo. Elimina información. Hace el modelo más simple. ¿Por qué se aplican transformaciones a variables numéricas?. Para aumentar el número de observaciones. Para corregir asimetrías y estabilizar la varianza. Para eliminar missing. Para crear interacciones. Una variable muy asimétrica puede: No afectar al modelo. Afectar negativamente a modelos sensibles a la escala. Mejorar siempre la predicción. Eliminar outliers. La estandarización de variables consiste en: Convertirlas en factores. Centrar y escalar. Eliminar valores extremos. Aplicar PCA. ¿En qué tipo de modelos es especialmente importante la estandarización?. Árboles de decisión. Modelos basados en distancias o regularización. Modelos categóricos. Modelos sin predictores. ¿Qué significa introducir no linealidad en un modelo?. Eliminar relaciones. Permitir relaciones más complejas entre variables. Aumentar el número de observaciones. Reducir la varianza. Una interacción entre dos variables implica que: Sus efectos son independientes. El efecto de una variable depende del valor de otra. Ambas variables se eliminan. El modelo es siempre mejor. ¿Cuál es un riesgo de introducir demasiadas interacciones o no linealidades?. Subajuste. Overfitting. Menor coste computacional. Mayor interpretabilidad. ¿Cuál es el objetivo principal de reducir la dimensionalidad?. Aumentar la varianza. Simplificar el modelo manteniendo información relevante. Eliminar la variable respuesta. Aumentar el número de predictores. La reducción de dimensionalidad es especialmente útil cuando: Hay pocas variables. Hay muchas variables correlacionadas. Las variables son categóricas. No hay ruido. Una desventaja de reducir dimensionalidad es: Aumentar el overfitting. Perder interpretabilidad de las variables originales. Aumentar el número de parámetros. Introducir missing. ¿Por qué el feature engineering debe aprenderse solo con datos de training?. Por eficiencia. Para evitar fuga de información (data leakage). Porque test no tiene variables. Porque mejora la accuracy. Aplicar transformaciones aprendidas con test produce: Subajuste. Resultados optimistas e irreales. Mejor generalización. Menor sesgo. |




