Classification : ingénierie des caractéristiques

S’entraîner aux questions d’entretien en Machine Learning avec Python

Lisa Stuart

Data Scientist

Ingénierie des caractéristiques… pourquoi ?

  • Extrait des informations supplémentaires
  • Crée des caractéristiques pertinentes en plus
  • L'un des moyens les plus efficaces d'améliorer les modèles prédictifs
S’entraîner aux questions d’entretien en Machine Learning avec Python

Avantages de l'ingénierie des caractéristiques

  • Pouvoir prédictif accru de l'algorithme d'apprentissage
  • Vos modèles de machine learning performent encore mieux !
S’entraîner aux questions d’entretien en Machine Learning avec Python

Types d'ingénierie des caractéristiques

  • Variables indicatrices
  • Caractéristiques d'interaction
  • Représentation des caractéristiques
S’entraîner aux questions d’entretien en Machine Learning avec Python

Variables indicatrices

  • Seuil indicateur
    • âge : lycée vs université
  • Multiples caractéristiques
    • utilisé comme drapeau
  • Événements spéciaux
    • Black Friday
    • Noël
  • Groupes de classes
    • drapeau trafic web payant
      • Google Adwords{4}}
      • Facebook Ads
S’entraîner aux questions d’entretien en Machine Learning avec Python

Caractéristiques d'interaction

  • Somme
  • Différence
  • Produit
  • Quotient
  • Autres combinaisons mathématiques
S’entraîner aux questions d’entretien en Machine Learning avec Python

Représentation des caractéristiques

  • Horodatages
    • jour de la semaine
    • heure de la journée
  • Regrouper des modalités catégorielles en « Autre »
  • Transformer les catégorielles en variables fictives
    • (k - 1) colonnes binaires
S’entraîner aux questions d’entretien en Machine Learning avec Python

Modalités catégorielles différentes

  • Données d'entraînement :
    • modèle entraîné avec [rouge, bleu, vert]
  • Données de test :

    • modèle testé avec [rouge, vert, jaune]
    • couleur supplémentaire non vue à l'entraînement
    • une couleur manquante
  • One-hot encoding robuste

1 https://blog.cambridgespark.com/robust-one-hot-encoding-in-python-3e29bfcec77e
S’entraîner aux questions d’entretien en Machine Learning avec Python

Ratio dette/revenu

  • Monthly Debt
  • Annual Income/12
S’entraîner aux questions d’entretien en Machine Learning avec Python

Fonctions pour l'ingénierie des caractéristiques

Fonction renvoie
sklearn.linear_model.LogisticRegression régression logistique
sklearn.model_selection.train_test_split fonction de séparation train/test
sns.countplot(x='Loan Status', data=data) diagramme en barres
df.drop(['Feature 1', 'Feature 2'], axis=1) supprime une liste de caractéristiques
df["Loan Status"].replace({'Paid': 0, 'Not Paid': 1}) Loan Status en entiers
pd.get_dummies() k - 1 caractéristiques binaires
sklearn.metrics.accuracy_score(y_test, predict(X_test)) exactitude du modèle
S’entraîner aux questions d’entretien en Machine Learning avec Python

Un excellent tutoriel :

S’entraîner aux questions d’entretien en Machine Learning avec Python

Passons à la pratique !

S’entraîner aux questions d’entretien en Machine Learning avec Python

Preparing Video For Download...