Regressão: seleção de features

Praticando perguntas de entrevista de Machine Learning em Python

Lisa Stuart

Data Scientist

Selecionando as features corretas:

  • Reduz overfitting
  • Melhora a acurácia
  • Aumenta a interpretabilidade
  • Reduz o tempo de treino

Etapas de seleção de features

1 https://www.analyticsindiamag.com/what-are-feature-selection-techniques-in-machine-learning/
Praticando perguntas de entrevista de Machine Learning em Python

Métodos de seleção de features

  • Filter: ranqueia features por desempenho estatístico
  • Wrapper: usa um método de ML para avaliar desempenho
  • Embedded: treino iterativo do modelo para extrair features
  • Importância de features: modelos de árvore em ML
Praticando perguntas de entrevista de Machine Learning em Python

Comparar e contrastar métodos

Método Usa um modelo de ML Seleciona melhor subconjunto Pode overfitar
Filter Não Não Não
Wrapper Sim Sim Às vezes
Embedded Sim Sim Sim
Importância de features Sim Sim Sim
Praticando perguntas de entrevista de Machine Learning em Python

Testes estatísticos de coeficiente de correlação

Feature/Resposta Contínua Categórica
Contínua Correlação de Pearson LDA
Categórica ANOVA Qui-quadrado
Praticando perguntas de entrevista de Machine Learning em Python

Funções de Filter

Função retorna
df.corr() matriz de correlação de Pearson
sns.heatmap(corr_object) gráfico de mapa de calor
abs() valor absoluto
Praticando perguntas de entrevista de Machine Learning em Python

Métodos Wrapper

  1. Seleção forward (LARS-least angle regression)
    • Começa sem features, adiciona uma por vez
  2. Eliminação backward
    • Começa com todas as features, remove uma por vez
  3. Combinação forward/backward (eliminação bidirecional)
  4. Eliminação recursiva de features
    • RFECV
Praticando perguntas de entrevista de Machine Learning em Python

Métodos Embedded

  1. Regressão Lasso
  2. Regressão Ridge
  3. ElasticNet

Lasso, Ridge e ElasticNet

Praticando perguntas de entrevista de Machine Learning em Python

Importância de features baseada em árvores

  • Random Forest --> sklearn.ensemble.RandomForestRegressor
  • Extra Trees --> sklearn.ensemble.ExtraTreesRegressor
  • Após ajustar o modelo --> tree_mod.feature_importances_
Praticando perguntas de entrevista de Machine Learning em Python
Função retorna
sklearn.svm.SVR estimador de suporte à regressão por vetores
sklearn.feature_selection.RFECV eliminação recursiva com validação cruzada
rfe_mod.support_ array booleano das features selecionadas
ref_mod.ranking_ ranking das features, selecionada=1
sklearn.linear_model.LinearRegression estimador de modelo linear
sklearn.linear_model.LarsCV least angle regression com validação cruzada
LarsCV.score pontuação r-quadrado
LarsCV.alpha_ parâmetro de regularização estimado
Praticando perguntas de entrevista de Machine Learning em Python

Vamos praticar!

Praticando perguntas de entrevista de Machine Learning em Python

Preparing Video For Download...