Valeurs aberrantes et mise à l'échelle

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

Lisa Stuart

Data Scientist

Valeurs aberrantes

  • Une ou plusieurs observations très éloignées du reste pour une même caractéristique.

Valeurs aberrantes

1 https://bolt.mph.ufl.edu/6050-6052/unit-1/one-quantitative-variable-introduction/understanding-outliers/
S’entraîner aux questions d’entretien en Machine Learning avec Python

Écart interquartile (IQR)

IQR des données

1 By Jhguch at en.wikipedia, CC BY-SA 2.5, https://commons.wikimedia.org/w/index.php?curid=14524285
S’entraîner aux questions d’entretien en Machine Learning avec Python

Droite de régression optimale

Ajustement linéaire

1 https://www.r-bloggers.com/outlier-detection-and-treatment-with-r/
S’entraîner aux questions d’entretien en Machine Learning avec Python

Fonctions pour valeurs aberrantes

Fonction renvoie
sns.boxplot(x= , y='Loan Status') boxplot conditionné par la variable cible
sns.distplot() histogramme et estimation de densité (kde)
np.abs() valeur absolue
stats.zscore() calcule le z-score
mstats.winsorize(limits=[0.05, 0.05]) applique plancher et plafond aux valeurs aberrantes
np.where(condition, true, false) valeurs remplacées
S’entraîner aux questions d’entretien en Machine Learning avec Python

Forte vs faible variance

Variance

1 https://machinelearningmastery.com/a-gentle-introduction-to-calculating-normal-summary-statistics/
S’entraîner aux questions d’entretien en Machine Learning avec Python

Standardisation vs normalisation

  • Standardisation :
    • Standardisation par z-score
    • Met à moyenne 0 et écart-type 1

Formule z-score standardization

  • Normalisation :
    • Normalisation min/max
    • Ramène dans l'intervalle (0, 1)

Formule min-max scaling

1 https://medium.com/@rrfd/standardize-or-normalize-examples-in-python-e3f174b65dfc
S’entraîner aux questions d’entretien en Machine Learning avec Python

Fonctions de mise à l'échelle

  • scikit-learn.preprocessing.StandardScaler() --> (mean=0, sd=1)
  • sklearn.preprocessing.MinMaxScaler() --> (0,1)
S’entraîner aux questions d’entretien en Machine Learning avec Python

Valeurs aberrantes et mise à l'échelle

Comment identifier et traiter correctement les valeurs aberrantes ? Quel effet la normalisation min/max ou la standardisation par z-score a-t-elle sur les données ? Sélectionnez l'énoncé vrai :

  • Une valeur aberrante est un point juste en dehors de l'intervalle des points similaires d'une caractéristique.
  • Dans un contexte donné, des valeurs aberrantes considérées comme anormales aident à construire un modèle prédictif de ML.
  • La mise à l'échelle min/max donne une moyenne de 0, un ET de 1, et augmente la variance.
  • La standardisation par z-score ramène les données dans (0,1) et améliore l'ajustement du modèle.
S’entraîner aux questions d’entretien en Machine Learning avec Python

Valeurs aberrantes et mise à l'échelle : réponse

Comment identifier et traiter correctement les valeurs aberrantes ? Quel effet la normalisation min/max ou la standardisation par z-score a-t-elle sur les données ? La bonne réponse est :

  • Dans un contexte donné, des valeurs aberrantes considérées comme anormales aident à construire un modèle prédictif de ML. (Les anomalies sont courantes en détection de fraude, cybersécurité et autres cas où l'objectif est de les trouver.)
S’entraîner aux questions d’entretien en Machine Learning avec Python

Valeurs aberrantes et mise à l'échelle : réponses incorrectes

Comment identifier et traiter correctement les valeurs aberrantes ? Quel effet la normalisation min/max ou la standardisation par z-score a-t-elle sur les données ?

  • Une valeur aberrante est juste en dehors de l'intervalle des points similaires d'une caractéristique. (Un point n'est suspecté d'être aberrant que s'il est au-delà de 1,5 fois l'IQR.)
  • La mise à l'échelle min/max donne une moyenne de 0, un ET de 1, et augmente la variance. (La mise à l'échelle min/max ramène les données dans (0,1) ; l'augmentation ou la diminution de la variance dépend des données d'origine.)
  • La standardisation par z-score ramène les données dans (0,1) et améliore l'ajustement. (La standardisation par z-score met moyenne 0 et ET 1, ce qui peut améliorer l'ajustement.)
S’entraîner aux questions d’entretien en Machine Learning avec Python

Une dernière chose…

Étapes de prétraitement

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...