Régression logistique est un algorithme d'apprentissage automatique supervisé utilisé pour tâches de classification où le but est de prédire la probabilité qu'une instance appartienne ou non à une classe donnée. La régression logistique est un algorithme statistique qui analyse la relation entre deux facteurs de données. L'article explore les principes fondamentaux de la régression logistique, ses types et ses implémentations.
Table des matières
- Qu’est-ce que la régression logistique ?
- Fonction logistique – Fonction sigmoïde
- Types de régression logistique
- Hypothèses de régression logistique
- Comment fonctionne la régression logistique ?
- Implémentation de code pour la régression logistique
- Compromis précision-rappel dans la définition du seuil de régression logistique
- Comment évaluer le modèle de régression logistique ?
- Différences entre la régression linéaire et logistique
Qu’est-ce que la régression logistique ?
La régression logistique est utilisée pour les binaires classification où nous utilisons fonction sigmoïde , qui prend les entrées comme variables indépendantes et produit une valeur de probabilité comprise entre 0 et 1.
Par exemple, nous avons deux classes Classe 0 et Classe 1 si la valeur de la fonction logistique pour une entrée est supérieure à 0,5 (valeur seuil) alors elle appartient à la Classe 1 sinon elle appartient à la Classe 0. On parle de régression car elle est l'extension de régression linéaire mais est principalement utilisé pour les problèmes de classification.
Points clés:
- La régression logistique prédit le résultat d'une variable dépendante catégorielle. Par conséquent, le résultat doit être une valeur catégorielle ou discrète.
- Cela peut être oui ou non, 0 ou 1, vrai ou faux, etc. mais au lieu de donner la valeur exacte entre 0 et 1, il donne les valeurs probabilistes comprises entre 0 et 1.
- Dans la régression logistique, au lieu d'ajuster une droite de régression, nous ajustons une fonction logistique en forme de S, qui prédit deux valeurs maximales (0 ou 1).
Fonction logistique – Fonction sigmoïde
- La fonction sigmoïde est une fonction mathématique utilisée pour mapper les valeurs prédites aux probabilités.
- Il mappe toute valeur réelle en une autre valeur comprise dans une plage de 0 et 1. La valeur de la régression logistique doit être comprise entre 0 et 1, qui ne peut pas dépasser cette limite, elle forme donc une courbe comme la forme S.
- La courbe en forme de S est appelée fonction sigmoïde ou fonction logistique.
- Dans la régression logistique, nous utilisons le concept de valeur seuil, qui définit la probabilité de 0 ou de 1. Par exemple, les valeurs supérieures à la valeur seuil tendent vers 1, et une valeur inférieure aux valeurs seuils tend vers 0.
Types de régression logistique
Sur la base des catégories, la régression logistique peut être classée en trois types :
- Binôme: Dans la régression logistique binomiale, il ne peut y avoir que deux types possibles de variables dépendantes, telles que 0 ou 1, réussite ou échec, etc.
- Multinomial : Dans la régression logistique multinomiale, il peut y avoir au moins 3 types non ordonnés possibles de variable dépendante, tels que chat, chien ou mouton.
- Ordinal: Dans la régression logistique ordinale, il peut y avoir au moins 3 types ordonnés possibles de variables dépendantes, telles que faible, moyenne ou élevée.
Hypothèses de régression logistique
Nous explorerons les hypothèses de la régression logistique, car il est important de comprendre ces hypothèses pour garantir que nous utilisons une application appropriée du modèle. L'hypothèse comprend :
- Observations indépendantes : Chaque observation est indépendante de l'autre. ce qui signifie qu'il n'y a aucune corrélation entre les variables d'entrée.
- Variables dépendantes binaires : l'hypothèse est que la variable dépendante doit être binaire ou dichotomique, ce qui signifie qu'elle ne peut prendre que deux valeurs. Pour plus de deux catégories, les fonctions SoftMax sont utilisées.
- Relation de linéarité entre les variables indépendantes et le log des chances : La relation entre les variables indépendantes et le log des chances de la variable dépendante doit être linéaire.
- Aucune valeur aberrante : il ne doit y avoir aucune valeur aberrante dans l'ensemble de données.
- Grande taille d’échantillon : la taille de l’échantillon est suffisamment grande
Terminologies impliquées dans la régression logistique
Voici quelques termes courants impliqués dans la régression logistique :
- Variables indépendantes: Les caractéristiques d’entrée ou les facteurs prédictifs appliqués aux prédictions de la variable dépendante.
- Variable dépendante: La variable cible dans un modèle de régression logistique, que nous essayons de prédire.
- Fonction logistique : Formule utilisée pour représenter la manière dont les variables indépendantes et dépendantes sont liées les unes aux autres. La fonction logistique transforme les variables d'entrée en une valeur de probabilité comprise entre 0 et 1, qui représente la probabilité que la variable dépendante soit 1 ou 0.
- Chances: C'est le rapport entre quelque chose qui se produit et quelque chose qui ne se produit pas. elle est différente de la probabilité car la probabilité est le rapport entre quelque chose qui se produit et tout ce qui pourrait éventuellement se produire.
- Log-cotes : Le log des cotes, également connu sous le nom de fonction logit, est le logarithme népérien des cotes. Dans la régression logistique, les log-cotes de la variable dépendante sont modélisées comme une combinaison linéaire des variables indépendantes et de l'ordonnée à l'origine.
- Coefficient: Les paramètres estimés du modèle de régression logistique montrent comment les variables indépendantes et dépendantes sont liées les unes aux autres.
- Intercepter: Terme constant dans le modèle de régression logistique, qui représente le log des chances lorsque toutes les variables indépendantes sont égales à zéro.
- Estimation de vraisemblance maximale : Méthode utilisée pour estimer les coefficients du modèle de régression logistique, qui maximise la probabilité d'observer les données étant donné le modèle.
Comment fonctionne la régression logistique ?
Le modèle de régression logistique transforme le régression linéaire fonction de sortie de valeur continue en sortie de valeur catégorielle à l'aide d'une fonction sigmoïde, qui mappe tout ensemble de variables indépendantes à valeur réelle entrée en une valeur comprise entre 0 et 1. Cette fonction est connue sous le nom de fonction logistique.
Soit les caractéristiques d'entrée indépendantes :
et la variable dépendante est Y n'ayant qu'une valeur binaire, c'est-à-dire 0 ou 1.
langage prologue
puis appliquez la fonction multilinéaire aux variables d'entrée X.
Ici
tout ce dont nous avons discuté ci-dessus est le régression linéaire .
Fonction sigmoïde
Maintenant, nous utilisons le fonction sigmoïde où l'entrée sera z et nous trouvons la probabilité entre 0 et 1. c'est-à-dire y prédit.

Fonction sigmoïde
Comme indiqué ci-dessus, la fonction figure sigmoïde convertit les données variables continues en probabilité c'est à dire entre 0 et 1.
sigma(z) tend vers 1 lorsquez ightarrowinfty sigma(z) tend vers 0 lorsquez ightarrow-infty sigma(z) est toujours borné entre 0 et 1
où la probabilité d’être une classe peut être mesurée comme suit :
Équation de régression logistique
L’impair est le rapport entre quelque chose qui se produit et quelque chose qui ne se produit pas. elle est différente de la probabilité car la probabilité est le rapport entre quelque chose qui se produit et tout ce qui pourrait éventuellement se produire. ce sera si étrange :
Application du journal naturel sur impair. alors le log impair sera :
alors l'équation de régression logistique finale sera :
Fonction de vraisemblance pour la régression logistique
Les probabilités prédites seront :
- pour y=1 Les probabilités prédites seront : p(X;b,w) = p(x)
- pour y = 0 Les probabilités prédites seront : 1-p(X;b,w) = 1-p(x)
Prendre des bûches naturelles des deux côtés
Gradient de la fonction log-vraisemblance
Pour trouver les estimations du maximum de vraisemblance, nous différencions w.r.t w,
Implémentation de code pour la régression logistique
Régression logistique binomiale :
La variable cible ne peut avoir que 2 types possibles : 0 ou 1 qui peut représenter une victoire contre une perte, une réussite contre un échec, une mort contre un vivant, etc., dans ce cas, des fonctions sigmoïdes sont utilisées, ce qui a déjà été discuté ci-dessus.
Importation des bibliothèques nécessaires en fonction des exigences du modèle. Ce code Python montre comment utiliser l'ensemble de données sur le cancer du sein pour implémenter un modèle de régression logistique à des fins de classification.
Python3 # import the necessary libraries from sklearn.datasets import load_breast_cancer from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score # load the breast cancer dataset X, y = load_breast_cancer(return_X_y=True) # split the train and test dataset X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.20, random_state=23) # LogisticRegression clf = LogisticRegression(random_state=0) clf.fit(X_train, y_train) # Prediction y_pred = clf.predict(X_test) acc = accuracy_score(y_test, y_pred) print('Logistic Regression model accuracy (in %):', acc*100)>
Sortir :
Précision du modèle de régression logistique (en %) : 95,6140350877193
Régression logistique multinomiale :
La variable cible peut avoir 3 types possibles ou plus qui ne sont pas ordonnés (c'est-à-dire que les types n'ont aucune signification quantitative) comme la maladie A contre la maladie B contre la maladie C.
Dans ce cas, la fonction softmax est utilisée à la place de la fonction sigmoïde. Fonction Softmax pour les classes K sera :
Ici, K représente le nombre d'éléments dans le vecteur z, et i, j parcourt tous les éléments du vecteur.
Alors la probabilité pour la classe c sera :
Dans la régression logistique multinomiale, la variable de sortie peut avoir plus de deux sorties discrètes possibles . Considérez l'ensemble de données numériques.
Python3 from sklearn.model_selection import train_test_split from sklearn import datasets, linear_model, metrics # load the digit dataset digits = datasets.load_digits() # defining feature matrix(X) and response vector(y) X = digits.data y = digits.target # splitting X and y into training and testing sets X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=1) # create logistic regression object reg = linear_model.LogisticRegression() # train the model using the training sets reg.fit(X_train, y_train) # making predictions on the testing set y_pred = reg.predict(X_test) # comparing actual response values (y_test) # with predicted response values (y_pred) print('Logistic Regression model accuracy(in %):', metrics.accuracy_score(y_test, y_pred)*100)>
Sortir:
Précision du modèle de régression logistique (en %) : 96,52294853963839
Comment évaluer le modèle de régression logistique ?
Nous pouvons évaluer le modèle de régression logistique à l'aide des métriques suivantes :
- Précision: Précision fournit la proportion d’instances correctement classées.
Accuracy = frac{True , Positives + True , Negatives}{Total}
- Précision: Précision se concentre sur l’exactitude des prédictions positives.
Precision = frac{True , Positives }{True, Positives + False , Positives}
- Rappel (sensibilité ou taux de vrais positifs) : Rappel mesure la proportion d’instances positives correctement prédites parmi toutes les instances positives réelles.
Recall = frac{ True , Positives}{True, Positives + False , Negatives}
- Résultats F1 : score F1 est le moyen harmonique de précision et de rappel.
F1 , Score = 2 * frac{Precision * Recall}{Precision + Recall}
- Zone sous la courbe caractéristique de fonctionnement du récepteur (AUC-ROC) : La courbe ROC représente le taux de vrais positifs par rapport au taux de faux positifs à différents seuils. CUA-ROC mesure l’aire sous cette courbe, fournissant une mesure globale des performances d’un modèle sur différents seuils de classification.
- Zone sous la courbe de précision-rappel (AUC-PR) : Semblable à l'AUC-ROC, AUC-PR mesure l’aire sous la courbe précision-rappel, fournissant un résumé des performances d’un modèle selon différents compromis précision-rappel.
Compromis précision-rappel dans la définition du seuil de régression logistique
La régression logistique ne devient une technique de classification que lorsqu’un seuil de décision est pris en compte. La définition de la valeur seuil est un aspect très important de la régression logistique et dépend du problème de classification lui-même.
La décision concernant la valeur du seuil est principalement influencée par les valeurs de précision et rappel. Idéalement, nous voulons que la précision et le rappel soient égaux à 1, mais c'est rarement le cas.
Dans le cas d'un Compromis précision-rappel , nous utilisons les arguments suivants pour décider du seuil :
- Faible précision/Rappel élevé : Dans les applications où l'on souhaite réduire le nombre de faux négatifs sans nécessairement réduire le nombre de faux positifs, on choisit une valeur de décision qui a une faible valeur de Précision ou une valeur élevée de Rappel. Par exemple, dans une application de diagnostic de cancer, nous ne voulons pas qu'un patient affecté soit classé comme non affecté sans prêter beaucoup d'attention au fait que le patient reçoit un diagnostic erroné de cancer. En effet, l'absence de cancer peut être détectée par d'autres maladies médicales, mais la présence de la maladie ne peut pas être détectée chez un candidat déjà rejeté.
- Haute précision/faible rappel : Dans les applications où l'on souhaite réduire le nombre de faux positifs sans nécessairement réduire le nombre de faux négatifs, on choisit une valeur de décision qui a une valeur élevée de Précision ou une valeur faible de Rappel. Par exemple, si nous classons les clients selon qu'ils réagiront positivement ou négativement à une publicité personnalisée, nous voulons être absolument sûrs que le client réagira positivement à la publicité, car sinon, une réaction négative peut entraîner une perte de ventes potentielles de la part du client. client.
Différences entre la régression linéaire et logistique
La différence entre la régression linéaire et la régression logistique réside dans le fait que le résultat de la régression linéaire est la valeur continue qui peut être n'importe quoi, tandis que la régression logistique prédit la probabilité qu'une instance appartienne ou non à une classe donnée.
Régression linéaire | Régression logistique |
---|---|
La régression linéaire est utilisée pour prédire la variable dépendante continue à l'aide d'un ensemble donné de variables indépendantes. | La régression logistique est utilisée pour prédire la variable dépendante catégorielle à l'aide d'un ensemble donné de variables indépendantes. |
La régression linéaire est utilisée pour résoudre le problème de régression. | Il est utilisé pour résoudre des problèmes de classification. |
En cela, nous prédisons la valeur des variables continues | En cela, nous prédisons les valeurs des variables catégorielles |
En cela, nous trouvons la ligne la mieux adaptée. | En cela, nous trouvons la courbe en S. |
La méthode d’estimation des moindres carrés est utilisée pour estimer la précision. | La méthode d'estimation du maximum de vraisemblance est utilisée pour l'estimation de la précision. |
Le résultat doit être une valeur continue, telle que le prix, l'âge, etc. | La sortie doit être une valeur catégorielle telle que 0 ou 1, Oui ou non, etc. |
Cela nécessitait une relation linéaire entre les variables dépendantes et indépendantes. | Cela ne nécessitait pas de relation linéaire. |
Il peut y avoir une colinéarité entre les variables indépendantes. | Il ne devrait pas y avoir de colinéarité entre les variables indépendantes. |
Régression logistique – Foire aux questions (FAQ)
Qu’est-ce que la régression logistique dans l’apprentissage automatique ?
La régression logistique est une méthode statistique permettant de développer des modèles d'apprentissage automatique avec des variables dépendantes binaires, c'est-à-dire binaires. La régression logistique est une technique statistique utilisée pour décrire les données et la relation entre une variable dépendante et une ou plusieurs variables indépendantes.
Quels sont les trois types de régression logistique ?
La régression logistique est classée en trois types : binaire, multinomiale et ordinale. Ils diffèrent par leur exécution ainsi que par leur théorie. La régression binaire concerne deux résultats possibles : oui ou non. La régression logistique multinomiale est utilisée lorsqu'il y a trois valeurs ou plus.
Pourquoi la régression logistique est-elle utilisée pour le problème de classification ?
La régression logistique est plus facile à mettre en œuvre, à interpréter et à entraîner. Il classe très rapidement les enregistrements inconnus. Lorsque l’ensemble de données est linéairement séparable, il fonctionne bien. Les coefficients du modèle peuvent être interprétés comme des indicateurs de l'importance des caractéristiques.
Qu'est-ce qui distingue la régression logistique de la régression linéaire ?
Alors que la régression linéaire est utilisée pour prédire des résultats continus, la régression logistique est utilisée pour prédire la probabilité qu'une observation tombe dans une catégorie spécifique. La régression logistique utilise une fonction logistique en forme de S pour cartographier les valeurs prédites entre 0 et 1.
Quel rôle joue la fonction logistique dans la régression logistique ?
La régression logistique s'appuie sur la fonction logistique pour convertir le résultat en un score de probabilité. Ce score représente la probabilité qu'une observation appartienne à une classe particulière. La courbe en forme de S facilite le seuillage et la catégorisation des données en résultats binaires.