Logistic regression is used in various fields, including machine learning, most medical fields, and social sciences. For example, the Trauma and Injury Severity Score (TRISS), which is widely used to predict mortality in injured patients, was originally developed by Boyd et al. using logistic regression. Many other medical scales used to assess severity of a patient have been developed using logistic regression. Logistic regression may be used to predict whether a patient has a given disease (e.g. diabetes; coronary heart disease), based on observed characteristics of the patient (age, sex, body mass index, results of various blood tests, etc.). Another example might be to predict whether an American voter will vote Democratic or Republican, based on age, income, sex, race, state of residence, votes in previous elections, etc. The technique can also be used in engineering, especially for predicting the probability of failure of a given process, system or product. It is also used in marketing applications such as prediction of a customer's propensity to purchase a product or halt a subscription, etc. In economics it can be used to predict the likelihood of a person's choosing to be in the labor force, and a business application would be to predict the likelihood of a homeowner defaulting on a mortgage. Conditional random fields, an extension of logistic regression to sequential data, are used in natural language processing.
Suppose we wish to answer the following question:
A group of 20 students spend between 0 and 6 hours studying for an exam. How does the number of hours spent studying affect the probability that the student will pass the exam?
The reason for using logistic regression for this problem is that the dependent variable pass/fail represented by "1" and "0" are not cardinal numbers. If the problem were changed so that pass/fail was replaced with the grade 0–100 (cardinal numbers), then simple regression analysis could be used.
The table shows the number of hours each student spent studying, and whether they passed (1) or failed (0).
The graph shows the probability of passing the exam versus the number of hours studying, with the logistic regression curve fitted to the data.
The logistic regression analysis gives the following output.
The output indicates that hours studying is significantly associated with the probability of passing the exam (
p
=
0.0167
, Wald test). The output also provides the coefficients for
Intercept
=
−
4.0777
and
Hours
=
1.5046
. These coefficients are entered in the logistic regression equation to estimate the probability of passing the exam:
Probability of passing exam
=
1
1
+
exp
(
−
(
1.5046
⋅
Hours
−
4.0777
)
)
For example, for a student who studies 2 hours, entering the value
Hours
=
2
in the equation gives the estimated probability of passing the exam of 0.26:
Probability of passing exam
=
1
1
+
exp
(
−
(
1.5046
⋅
2
−
4.0777
)
)
=
0.26
Similarly, for a student who studies 4 hours, the estimated probability of passing the exam is 0.87:
Probability of passing exam
=
1
1
+
exp
(
−
(
1.5046
⋅
4
−
4.0777
)
)
=
0.87
This table shows the probability of passing the exam for several values of hours studying.
The output from the logistic regression analysis gives a pvalue of
p
=
0.0167
, which is based on the Wald zscore. Rather than the Wald method, the recommended method to calculate the pvalue for logistic regression is the Likelihood Ratio Test (LRT), which for this data gives
p
=
0.0006
.
Logistic regression can be binomial, ordinal or multinomial. Binomial or binary logistic regression deals with situations in which the observed outcome for a dependent variable can have only two possible types, "0" and "1" (which may represent, for example, "dead" vs. "alive" or "win" vs. "loss"). Multinomial logistic regression deals with situations where the outcome can have three or more possible types (e.g., "disease A" vs. "disease B" vs. "disease C") that are not ordered. Ordinal logistic regression deals with dependent variables that are ordered. In binary logistic regression, the outcome is usually coded as "0" or "1", as this leads to the most straightforward interpretation. If a particular observed outcome for the dependent variable is the noteworthy possible outcome (referred to as a "success" or a "case") it is usually coded as "1" and the contrary outcome (referred to as a "failure" or a "noncase") as "0". Logistic regression is used to predict the odds of being a case based on the values of the independent variables (predictors). The odds are defined as the probability that a particular outcome is a case divided by the probability that it is a noncase.
Like other forms of regression analysis, logistic regression makes use of one or more predictor variables that may be either continuous or categorical. Unlike ordinary linear regression, however, logistic regression is used for predicting binary dependent variables (treating the dependent variable as the outcome of a Bernoulli trial) rather than a continuous outcome. Given this difference, the assumptions of linear regression are violated. In particular, the residuals cannot be normally distributed. In addition, linear regression may make nonsensical predictions for a binary dependent variable. What is needed is a way to convert a binary variable into a continuous one that can take on any real value (negative or positive). To do that logistic regression first takes the odds of the event happening for different levels of each independent variable, then takes the ratio of those odds (which is continuous but cannot be negative) and then takes the logarithm of that ratio. This is referred to as logit or logodds) to create a continuous criterion as a transformed version of the dependent variable.
Thus the logit transformation is referred to as the link function in logistic regression—although the dependent variable in logistic regression is binomial, the logit is the continuous criterion upon which linear regression is conducted.
The logit of success is then fitted to the predictors using linear regression analysis. The predicted value of the logit is converted back into predicted odds via the inverse of the natural logarithm, namely the exponential function. Thus, although the observed dependent variable in logistic regression is a zeroorone variable, the logistic regression estimates the odds, as a continuous variable, that the dependent variable is a success (a case). In some applications the odds are all that is needed. In others, a specific yesorno prediction is needed for whether the dependent variable is or is not a case; this categorical prediction can be based on the computed odds of a success, with predicted odds above some chosen cutoff value being translated into a prediction of a success.
Logistic regression measures the relationship between the categorical dependent variable and one or more independent variables by estimating probabilities using a logistic function, which is the cumulative logistic distribution. Thus, it treats the same set of problems as probit regression using similar techniques, with the latter using a cumulative normal distribution curve instead. Equivalently, in the latent variable interpretations of these two methods, the first assumes a standard logistic distribution of errors and the second a standard normal distribution of errors.
Logistic regression can be seen as a special case of the generalized linear model and thus analogous to linear regression. The model of logistic regression, however, is based on quite different assumptions (about the relationship between dependent and independent variables) from those of linear regression. In particular the key differences of these two models can be seen in the following two features of logistic regression. First, the conditional distribution
y
∣
x
is a Bernoulli distribution rather than a Gaussian distribution, because the dependent variable is binary. Second, the predicted values are probabilities and are therefore restricted to (0,1) through the logistic distribution function because logistic regression predicts the probability of particular outcomes.
Logistic regression is an alternative to Fisher's 1936 method, linear discriminant analysis. If the assumptions of linear discriminant analysis hold, the conditioning can be reversed to produce logistic regression. The converse is not true, however, because logistic regression does not require the multivariate normal assumption of discriminant analysis.
The logistic regression can be understood simply as finding the
β
parameters that best fit:
y
=
{
1
β
0
+
β
1
x
+
ε
>
0
0
else
where
ε
is an error distributed by the standard logistic distribution. (If the standard normal distribution is used instead, it is a probit regression.)
The associated latent variable is
y
′
=
β
0
+
β
1
x
+
ε
. The error term
ε
is not observed, and so the
y
′
is also an unobservable, hence termed "latent". (The observed data are values of
y
and
x
.) Unlike ordinary regression, however, the
β
parameters cannot be expressed by any direct formula of the
y
and
x
values in the observed data. Instead they are to be found by an iterative search process, usually implemented by a software program, that finds the maximum of a complicated "likelihood expression" that is a function of all of the observed
y
and
x
values. The estimation approach is explained below.
An explanation of logistic regression can begin with an explanation of the standard logistic function. The logistic function is useful because it can take any real input
t
, (
t
∈
R
) , whereas the output always takes values between zero and one and hence is interpretable as a probability. The logistic function
σ
(
t
)
is defined as follows:
σ
(
t
)
=
e
t
e
t
+
1
=
1
1
+
e
−
t
A graph of the logistic function on the tinterval (6,6) is shown in Figure 1.
Let us assume that
t
is a linear function of a single explanatory variable
x
(the case where
t
is a linear combination of multiple explanatory variables is treated similarly). We can then express
t
as follows:
t
=
β
0
+
β
1
x
And the logistic function can now be written as:
F
(
x
)
=
1
1
+
e
−
(
β
0
+
β
1
x
)
Note that
F
(
x
)
is interpreted as the probability of the dependent variable equaling a "success" or "case" rather than a failure or noncase. It's clear that the response variables
Y
i
are not identically distributed:
P
(
Y
i
=
1
∣
X
)
differs from one data point
X
i
to another, though they are independent given design matrix
X
and shared with parameters
β
.
We can now define the inverse of the logistic function,
g
, the logit (log odds):
g
(
F
(
x
)
)
=
ln
(
F
(
x
)
1
−
F
(
x
)
)
=
β
0
+
β
1
x
,
and equivalently, after exponentiating both sides:
F
(
x
)
1
−
F
(
x
)
=
e
β
0
+
β
1
x
.
In the above equations, the terms are as follows:
g
is the logit function. The equation for
g
(
F
(
x
)
)
illustrates that the logit (i.e., logodds or natural logarithm of the odds) is equivalent to the linear regression expression.
ln
denotes the natural logarithm.
F
(
x
)
is the probability that the dependent variable equals a case, given some linear combination of the predictors. The formula for
F
(
x
)
illustrates that the probability of the dependent variable equaling a case is equal to the value of the logistic function of the linear regression expression. This is important in that it shows that the value of the linear regression expression can vary from negative to positive infinity and yet, after transformation, the resulting expression for the probability
F
(
x
)
ranges between 0 and 1.
β
0
is the intercept from the linear regression equation (the value of the criterion when the predictor is equal to zero).
β
1
x
is the regression coefficient multiplied by some value of the predictor.
base
e
denotes the exponential function.
The odds of the dependent variable equaling a case (given some linear combination
x
of the predictors) is equivalent to the exponential function of the linear regression expression. This illustrates how the logit serves as a link function between the probability and the linear regression expression. Given that the logit ranges between negative and positive infinity, it provides an adequate criterion upon which to conduct linear regression and the logit is easily converted back into the odds.
So we define odds of the dependent variable equaling a case (given some linear combination
x
of the predictors) as follows:
odds
=
e
β
0
+
β
1
x
.
For a continuous independent variable the odds ratio can be defined as:
O
R
=
odds
(
x
+
1
)
odds
(
x
)
=
(
F
(
x
+
1
)
1
−
F
(
x
+
1
)
)
(
F
(
x
)
1
−
F
(
x
)
)
=
e
β
0
+
β
1
(
x
+
1
)
e
β
0
+
β
1
x
=
e
β
1
This exponential relationship provides an interpretation for
β
1
: The odds multiply by
e
β
1
for every 1unit increase in x.
For a binary independent variable the odds ratio is defined as
a
d
b
c
where a, b, c and d are cells in a 2×2 contingency table.
If there are multiple explanatory variables, the above expression
β
0
+
β
1
x
can be revised to
β
0
+
β
1
x
1
+
β
2
x
2
+
⋯
+
β
m
x
m
.
Then when this is used in the equation relating the logged odds of a success to the values of the predictors, the linear regression will be a multiple regression with m explanators; the parameters
β
j
for all j = 0, 1, 2, ..., m are all estimated.
Because the model can be expressed as a generalized linear model (see below), for
0
<
p
<
1
, ordinary least squares can suffice, with Rsquared as the measure of goodness of fit in the fitting space. When
p
=
0
or
1
, more complex methods are required.
A widelyused rule of thumb states that logistic regression models give stable values for the explanatory variables if based on a minimum of about 10 events per explanatory variable (EPV); where event denotes the cases belonging to the less frequent category in the dependent variable. Thus a study designed to use
k
explanatory variables for an event (eg myocardial infarction) expected to occur in a proportion
p
of participants in the study will require a total of
10
k
/
p
participants. However, there is considerable debate about the reliability of this rule, which is based on simulation studies and lacks a secure theoretical underpinning. According to some authors the rule is overconservative, some circumstances; with the authors stating "If we (somewhat subjectively) regard confidence interval coverage less than 93 percent, type I error greater than 7 percent, or relative bias greater than 15 percent as problematic, our results indicate that problems are fairly frequent with 2–4 EPV, uncommon with 5–9 EPV, and still observed with 10–16 EPV. Cox models appear to be slightly more susceptible than logistic. The worst instances of each problem were not severe with 5–9 EPV and usually comparable to those with 10–16 EPV".
The regression coefficients are usually estimated using maximum likelihood estimation. Unlike linear regression with normally distributed residuals, it is not possible to find a closedform expression for the coefficient values that maximize the likelihood function, so that an iterative process must be used instead; for example Newton's method. This process begins with a tentative solution, revises it slightly to see if it can be improved, and repeats this revision until no more improvement is made, at which point the process is said to have converged.
In some instances the model may not reach convergence. Nonconvergence of a model indicates that the coefficients are not meaningful because the iterative process was unable to find appropriate solutions. A failure to converge may occur for a number of reasons: having a large ratio of predictors to cases, multicollinearity, sparseness, or complete separation.
Having a large ratio of variables to cases results in an overly conservative Wald statistic (discussed below) and can lead to nonconvergence.
Multicollinearity refers to unacceptably high correlations between predictors. As multicollinearity increases, coefficients remain unbiased but standard errors increase and the likelihood of model convergence decreases. To detect multicollinearity amongst the predictors, one can conduct a linear regression analysis with the predictors of interest for the sole purpose of examining the tolerance statistic used to assess whether multicollinearity is unacceptably high.
Sparseness in the data refers to having a large proportion of empty cells (cells with zero counts). Zero cell counts are particularly problematic with categorical predictors. With continuous predictors, the model can infer values for the zero cell counts, but this is not the case with categorical predictors. The model will not converge with zero cell counts for categorical predictors because the natural logarithm of zero is an undefined value, so that final solutions to the model cannot be reached. To remedy this problem, researchers may collapse categories in a theoretically meaningful way or add a constant to all cells.
Another numerical problem that may lead to a lack of convergence is complete separation, which refers to the instance in which the predictors perfectly predict the criterion – all cases are accurately classified. In such instances, one should reexamine the data, as there is likely some kind of error.
Binary logistic regression (
y
=
0
or
y
=
1
) can, for example, be calculated using iteratively reweighted least squares (IRLS), which is equivalent to minimizing the Loglikelihood of a Bernoulli distributed process using Newton's method. If the problem is written in vector matrix form, with parameters
w
T
=
[
β
0
,
β
1
,
β
2
,
…
]
, explanatory variables
x
(
i
)
=
[
1
,
x
1
(
i
)
,
x
2
(
i
)
,
…
]
T
and expected value of the Bernoulli distribution
μ
(
i
)
=
1
1
+
e
−
w
T
x
(
i
)
, the parameters
w
can be found using the following iterative algorithm:
w
k
+
1
=
(
X
T
S
k
X
)
−
1
X
T
(
S
k
X
w
k
+
y
−
μ
k
)
where
S
=
d
i
a
g
(
μ
(
i
)
(
1
−
μ
(
i
)
)
)
is a diagonal weighting matrix,
μ
=
[
μ
(
1
)
,
μ
(
2
)
,
…
]
the vector of expected values,
X
=
[
1
x
1
(
1
)
x
2
(
1
)
…
1
x
1
(
2
)
x
2
(
2
)
…
⋮
⋮
⋮
]
the regressor matrix and
y
(
i
)
=
[
y
(
1
)
,
y
(
2
)
,
…
]
T
the vector of response variables. More details can be found e.g. here
Discrimination in linear regression models is generally measured using R^{2}. Since this has no direct analog in logistic regression, various methods including the following can be used instead.
In linear regression analysis, one is concerned with partitioning variance via the sum of squares calculations – variance in the criterion is essentially divided into variance accounted for by the predictors and residual variance. In logistic regression analysis, deviance is used in lieu of sum of squares calculations. Deviance is analogous to the sum of squares calculations in linear regression and is a measure of the lack of fit to the data in a logistic regression model. When a "saturated" model is available (a model with a theoretically perfect fit), deviance is calculated by comparing a given model with the saturated model. This computation gives the likelihoodratio test:
D
=
−
2
ln
likelihood of the fitted model
likelihood of the saturated model
.
In the above equation D represents the deviance and ln represents the natural logarithm. The log of this likelihood ratio (the ratio of the fitted model to the saturated model) will produce a negative value, hence the need for a negative sign. D can be shown to follow an approximate chisquared distribution. Smaller values indicate better fit as the fitted model deviates less from the saturated model. When assessed upon a chisquare distribution, nonsignificant chisquare values indicate very little unexplained variance and thus, good model fit. Conversely, a significant chisquare value indicates that a significant amount of the variance is unexplained.
When the saturated model is not available (a common case), deviance is calculated simply as −2·(log likelihood of the fitted model), and the reference to the saturated model's log likelihood can be removed from all that follows without harm.
Two measures of deviance are particularly important in logistic regression: null deviance and model deviance. The null deviance represents the difference between a model with only the intercept (which means "no predictors") and the saturated model. The model deviance represents the difference between a model with at least one predictor and the saturated model. In this respect, the null model provides a baseline upon which to compare predictor models. Given that deviance is a measure of the difference between a given model and the saturated model, smaller values indicate better fit. Thus, to assess the contribution of a predictor or set of predictors, one can subtract the model deviance from the null deviance and assess the difference on a
χ
s
−
p
2
,
chisquare distribution with degrees of freedom equal to the difference in the number of parameters estimated.
Let
D
null
=
−
2
ln
likelihood of null model
likelihood of the saturated model
D
fitted
=
−
2
ln
likelihood of fitted model
likelihood of the saturated model
.
Then the difference of both is:
D
null
−
D
fitted
=
−
2
(
ln
likelihood of null model
likelihood of the saturated model
−
ln
likelihood of fitted model
likelihood of the saturated model
)
=
−
2
ln
(
likelihood of null model
likelihood of the saturated model
)
(
likelihood of fitted model
likelihood of the saturated model
)
=
−
2
ln
likelihood of the null model
likelihood of fitted model
.
If the model deviance is significantly smaller than the null deviance then one can conclude that the predictor or set of predictors significantly improved model fit. This is analogous to the Ftest used in linear regression analysis to assess the significance of prediction.
In linear regression the squared multiple correlation, R^{2} is used to assess goodness of fit as it represents the proportion of variance in the criterion that is explained by the predictors. In logistic regression analysis, there is no agreed upon analogous measure, but there are several competing measures each with limitations.
Four of the most commonly used indices and one less commonly used one are examined on this page:
Likelihood ratio R^{2}_{L}
Cox and Snell R^{2}_{CS}
Nagelkerke R^{2}_{N}
McFadden R^{2}_{McF}
Tjur R^{2}_{T}
R^{2}_{L} is given by
R
L
2
=
D
null
−
D
fitted
D
null
.
This is the most analogous index to the squared multiple correlation in linear regression. It represents the proportional reduction in the deviance wherein the deviance is treated as a measure of variation analogous but not identical to the variance in linear regression analysis. One limitation of the likelihood ratio R^{2} is that it is not monotonically related to the odds ratio, meaning that it does not necessarily increase as the odds ratio increases and does not necessarily decrease as the odds ratio decreases.
R^{2}_{CS} is an alternative index of goodness of fit related to the R^{2} value from linear regression. It is given by:
R
CS
2
=
1
−
(
L
M
L
0
)
2
/
n
.
where L_{M} and L_{0} are the likelihoods for the model being fitted and the null model, respectively. The Cox and Snell index is problematic as its maximum value is
1
−
L
0
2
/
n
. The highest this upper bound can be is 0.75, but it can easily be as low as 0.48 when the marginal proportion of cases is small.
R^{2}_{N} provides a correction to the Cox and Snell R^{2} so that the maximum value is equal to 1. Nevertheless, the Cox and Snell and likelihood ratio R^{2}s show greater agreement with each other than either does with the Nagelkerke R^{2}. Of course, this might not be the case for values exceeding .75 as the Cox and Snell index is capped at this value. The likelihood ratio R^{2} is often preferred to the alternatives as it is most analogous to R^{2} in linear regression, is independent of the base rate (both Cox and Snell and Nagelkerke R^{2}s increase as the proportion of cases increase from 0 to .5) and varies between 0 and 1.
R^{2}_{McF} is defined as
R
McF
2
=
1
−
ln
(
L
M
)
ln
(
L
0
)
,
and is preferred over R^{2}_{CS} by Allison. The two expressions R^{2}_{McF} and R^{2}_{CS} are then related respectively by,
R
CS
2
=
1
−
(
1
L
0
)
2
(
R
McF
2
)
n
R
McF
2
=
−
n
2
⋅
ln
(
1
−
R
CS
2
)
ln
(
L
0
)
However, Allison now prefers R^{2}_{T} which is a relatively new measure developed by Tjur. It can be calculated in two steps:
 For each level of the dependent variable, find the mean of the predicted probabilities of an event.
 Take the absolute value of the difference between these means
A word of caution is in order when interpreting pseudoR^{2} statistics. The reason these indices of fit are referred to as pseudo R^{2} is that they do not represent the proportionate reduction in error as the R^{2} in linear regression does. Linear regression assumes homoscedasticity, that the error variance is the same for all values of the criterion. Logistic regression will always be heteroscedastic – the error variances differ for each value of the predicted score. For each value of the predicted score there would be a different value of the proportionate reduction in error. Therefore, it is inappropriate to think of R^{2} as a proportionate reduction in error in a universal sense in logistic regression.
The Hosmer–Lemeshow test uses a test statistic that asymptotically follows a
χ
2
distribution to assess whether or not the observed event rates match expected event rates in subgroups of the model population. This test is considered to be obsolete by some statisticians because of its dependence on arbitrary binning of predicted probabilities and relative low power.
After fitting the model, it is likely that researchers will want to examine the contribution of individual predictors. To do so, they will want to examine the regression coefficients. In linear regression, the regression coefficients represent the change in the criterion for each unit change in the predictor. In logistic regression, however, the regression coefficients represent the change in the logit for each unit change in the predictor. Given that the logit is not intuitive, researchers are likely to focus on a predictor's effect on the exponential function of the regression coefficient – the odds ratio (see definition). In linear regression, the significance of a regression coefficient is assessed by computing a t test. In logistic regression, there are several different tests designed to assess the significance of an individual predictor, most notably the likelihood ratio test and the Wald statistic.
The likelihoodratio test discussed above to assess model fit is also the recommended procedure to assess the contribution of individual "predictors" to a given model. In the case of a single predictor model, one simply compares the deviance of the predictor model with that of the null model on a chisquare distribution with a single degree of freedom. If the predictor model has a significantly smaller deviance (c.f chisquare using the difference in degrees of freedom of the two models), then one can conclude that there is a significant association between the "predictor" and the outcome. Although some common statistical packages (e.g. SPSS) do provide likelihood ratio test statistics, without this computationally intensive test it would be more difficult to assess the contribution of individual predictors in the multiple logistic regression case. To assess the contribution of individual predictors one can enter the predictors hierarchically, comparing each new model with the previous to determine the contribution of each predictor. There is some debate among statisticians about the appropriateness of socalled "stepwise" procedures. The fear is that they may not preserve nominal statistical properties and may become misleading.[1]
Alternatively, when assessing the contribution of individual predictors in a given model, one may examine the significance of the Wald statistic. The Wald statistic, analogous to the ttest in linear regression, is used to assess the significance of coefficients. The Wald statistic is the ratio of the square of the regression coefficient to the square of the standard error of the coefficient and is asymptotically distributed as a chisquare distribution.
W
j
=
β
j
2
S
E
β
j
2
Although several statistical packages (e.g., SPSS, SAS) report the Wald statistic to assess the contribution of individual predictors, the Wald statistic has limitations. When the regression coefficient is large, the standard error of the regression coefficient also tends to be large increasing the probability of TypeII error. The Wald statistic also tends to be biased when data are sparse.
Suppose cases are rare. Then we might wish to sample them more frequently than their prevalence in the population. For example, suppose there is a disease that affects 1 person in 10,000 and to collect our data we need to do a complete physical. It may be too expensive to do thousands of physicals of healthy people in order to obtain data for only a few diseased individuals. Thus, we may evaluate more diseased individuals, perhaps all of the rare outcomes. This is also retrospective sampling, or equivalently it is called unbalanced data. As a rule of thumb, sampling controls at a rate of five times the number of cases will produce sufficient control data.
Logistic regression is unique in that it may be estimated on unbalanced data, rather than randomly sampled data, and still yield correct coefficient estimates of the effects of each independent variable on the outcome. That is to say, if we form a logistic model from such data, if the model is correct in the general population, the
β
j
parameters are all correct except for
β
0
. We can correct
β
0
if we know the true prevalence as follows:
β
0
∗
^
=
β
0
^
+
log
π
1
−
π
−
log
π
~
1
−
π
~
where
π
is the true prevalence and
π
~
is the prevalence in the sample.
There are various equivalent specifications of logistic regression, which fit into different types of more general models. These different specifications allow for different sorts of useful generalizations.
The basic setup of logistic regression is the same as for standard linear regression.
It is assumed that we have a series of N observed data points. Each data point i consists of a set of m explanatory variables x_{1,i} ... x_{m,i} (also called independent variables, predictor variables, input variables, features, or attributes), and an associated binaryvalued outcome variable Y_{i} (also known as a dependent variable, response variable, output variable, outcome variable or class variable), i.e. it can assume only the two possible values 0 (often meaning "no" or "failure") or 1 (often meaning "yes" or "success"). The goal of logistic regression is to explain the relationship between the explanatory variables and the outcome, so that an outcome can be predicted for a new set of explanatory variables.
Some examples:
The observed outcomes are the presence or absence of a given disease (e.g. diabetes) in a set of patients, and the explanatory variables might be characteristics of the patients thought to be pertinent (sex, race, age, blood pressure, bodymass index, etc.).
The observed outcomes are the votes (e.g. Democratic or Republican) of a set of people in an election, and the explanatory variables are the demographic characteristics of each person (e.g. sex, race, age, income, etc.). In such a case, one of the two outcomes is arbitrarily coded as 1, and the other as 0.
As in linear regression, the outcome variables Y_{i} are assumed to depend on the explanatory variables x_{1,i} ... x_{m,i}.
Explanatory variables
As shown above in the above examples, the explanatory variables may be of any type: realvalued, binary, categorical, etc. The main distinction is between continuous variables (such as income, age and blood pressure) and discrete variables (such as sex or race). Discrete variables referring to more than two possible choices are typically coded using dummy variables (or indicator variables), that is, separate explanatory variables taking the value 0 or 1 are created for each possible value of the discrete variable, with a 1 meaning "variable does have the given value" and a 0 meaning "variable does not have that value". For example, a fourway discrete variable of blood type with the possible values "A, B, AB, O" can be converted to four separate twoway dummy variables, "isA, isB, isAB, isO", where only one of them has the value 1 and all the rest have the value 0. This allows for separate regression coefficients to be matched for each possible value of the discrete variable. (In a case like this, only three of the four dummy variables are independent of each other, in the sense that once the values of three of the variables are known, the fourth is automatically determined. Thus, it is necessary to encode only three of the four possibilities as dummy variables. This also means that when all four possibilities are encoded, the overall model is not identifiable in the absence of additional constraints such as a regularization constraint. Theoretically, this could cause problems, but in reality almost all logistic regression models are fitted with regularization constraints.)
Outcome variables
Formally, the outcomes Y_{i} are described as being Bernoullidistributed data, where each outcome is determined by an unobserved probability p_{i} that is specific to the outcome at hand, but related to the explanatory variables. This can be expressed in any of the following equivalent forms:
Y
i
∣
x
1
,
i
,
…
,
x
m
,
i
∼
Bernoulli
(
p
i
)
E
[
Y
i
∣
x
1
,
i
,
…
,
x
m
,
i
]
=
p
i
Pr
(
Y
i
=
y
∣
x
1
,
i
,
…
,
x
m
,
i
)
=
{
p
i
if
y
=
1
1
−
p
i
if
y
=
0
Pr
(
Y
i
=
y
∣
x
1
,
i
,
…
,
x
m
,
i
)
=
p
i
y
(
1
−
p
i
)
(
1
−
y
)
The meanings of these four lines are:
 The first line expresses the probability distribution of each Y_{i}: Conditioned on the explanatory variables, it follows a Bernoulli distribution with parameters p_{i}, the probability of the outcome of 1 for trial i. As noted above, each separate trial has its own probability of success, just as each trial has its own explanatory variables. The probability of success p_{i} is not observed, only the outcome of an individual Bernoulli trial using that probability.
 The second line expresses the fact that the expected value of each Y_{i} is equal to the probability of success p_{i}, which is a general property of the Bernoulli distribution. In other words, if we run a large number of Bernoulli trials using the same probability of success p_{i}, then take the average of all the 1 and 0 outcomes, then the result would be close to p_{i}. This is because doing an average this way simply computes the proportion of successes seen, which we expect to converge to the underlying probability of success.
 The third line writes out the probability mass function of the Bernoulli distribution, specifying the probability of seeing each of the two possible outcomes.
 The fourth line is another way of writing the probability mass function, which avoids having to write separate cases and is more convenient for certain types of calculations. This relies on the fact that Y_{i} can take only the value 0 or 1. In each case, one of the exponents will be 1, "choosing" the value under it, while the other is 0, "canceling out" the value under it. Hence, the outcome is either p_{i} or 1 − p_{i}, as in the previous line.
Linear predictor function
The basic idea of logistic regression is to use the mechanism already developed for linear regression by modeling the probability p_{i} using a linear predictor function, i.e. a linear combination of the explanatory variables and a set of regression coefficients that are specific to the model at hand but the same for all trials. The linear predictor function
f
(
i
)
for a particular data point i is written as:
f
(
i
)
=
β
0
+
β
1
x
1
,
i
+
⋯
+
β
m
x
m
,
i
,
where
β
0
,
…
,
β
m
are regression coefficients indicating the relative effect of a particular explanatory variable on the outcome.
The model is usually put into a more compact form as follows:
The regression coefficients β_{0}, β_{1}, ..., β_{m} are grouped into a single vector β of size m + 1.
For each data point i, an additional explanatory pseudovariable x_{0,i} is added, with a fixed value of 1, corresponding to the intercept coefficient β_{0}.
The resulting explanatory variables x_{0,i}, x_{1,i}, ..., x_{m,i} are then grouped into a single vector X_{i} of size m + 1.
This makes it possible to write the linear predictor function as follows:
f
(
i
)
=
β
⋅
X
i
,
using the notation for a dot product between two vectors.
The particular model used by logistic regression, which distinguishes it from standard linear regression and from other types of regression analysis used for binaryvalued outcomes, is the way the probability of a particular outcome is linked to the linear predictor function:
logit
(
E
[
Y
i
∣
x
1
,
i
,
…
,
x
m
,
i
]
)
=
logit
(
p
i
)
=
ln
(
p
i
1
−
p
i
)
=
β
0
+
β
1
x
1
,
i
+
⋯
+
β
m
x
m
,
i
Written using the more compact notation described above, this is:
logit
(
E
[
Y
i
∣
X
i
]
)
=
logit
(
p
i
)
=
ln
(
p
i
1
−
p
i
)
=
β
⋅
X
i
This formulation expresses logistic regression as a type of generalized linear model, which predicts variables with various types of probability distributions by fitting a linear predictor function of the above form to some sort of arbitrary transformation of the expected value of the variable.
The intuition for transforming using the logit function (the natural log of the odds) was explained above. It also has the practical effect of converting the probability (which is bounded to be between 0 and 1) to a variable that ranges over
(
−
∞
,
+
∞
)
— thereby matching the potential range of the linear prediction function on the right side of the equation.
Note that both the probabilities p_{i} and the regression coefficients are unobserved, and the means of determining them is not part of the model itself. They are typically determined by some sort of optimization procedure, e.g. maximum likelihood estimation, that finds values that best fit the observed data (i.e. that give the most accurate predictions for the data already observed), usually subject to regularization conditions that seek to exclude unlikely values, e.g. extremely large values for any of the regression coefficients. The use of a regularization condition is equivalent to doing maximum a posteriori (MAP) estimation, an extension of maximum likelihood. (Regularization is most commonly done using a squared regularizing function, which is equivalent to placing a zeromean Gaussian prior distribution on the coefficients, but other regularizers are also possible.) Whether or not regularization is used, it is usually not possible to find a closedform solution; instead, an iterative numerical method must be used, such as iteratively reweighted least squares (IRLS) or, more commonly these days, a quasiNewton method such as the LBFGS method.
The interpretation of the β_{j} parameter estimates is as the additive effect on the log of the odds for a unit change in the jth explanatory variable. In the case of a dichotomous explanatory variable, for instance gender,
e
β
is the estimate of the odds of having the outcome for, say, males compared with females.
An equivalent formula uses the inverse of the logit function, which is the logistic function, i.e.:
E
[
Y
i
∣
X
i
]
=
p
i
=
logit
−
1
(
β
⋅
X
i
)
=
1
1
+
e
−
β
⋅
X
i
The formula can also be written as a probability distribution (specifically, using a probability mass function):
Pr
(
Y
i
=
y
∣
X
i
)
=
p
i
y
(
1
−
p
i
)
1
−
y
=
(
e
β
⋅
X
i
1
+
e
β
⋅
X
i
)
y
(
1
−
e
β
⋅
X
i
1
+
e
β
⋅
X
i
)
1
−
y
=
e
β
⋅
X
i
⋅
y
1
+
e
β
⋅
X
i
The above model has an equivalent formulation as a latentvariable model. This formulation is common in the theory of discrete choice models, and makes it easier to extend to certain more complicated models with multiple, correlated choices, as well as to compare logistic regression to the closely related probit model.
Imagine that, for each trial i, there is a continuous latent variable Y_{i}^{*} (i.e. an unobserved random variable) that is distributed as follows:
Y
i
∗
=
β
⋅
X
i
+
ε
where
ε
∼
Logistic
(
0
,
1
)
i.e. the latent variable can be written directly in terms of the linear predictor function and an additive random error variable that is distributed according to a standard logistic distribution.
Then Y_{i} can be viewed as an indicator for whether this latent variable is positive:
Y
i
=
{
1
if
Y
i
∗
>
0
i.e.
−
ε
<
β
⋅
X
i
,
0
otherwise.
The choice of modeling the error variable specifically with a standard logistic distribution, rather than a general logistic distribution with the location and scale set to arbitrary values, seems restrictive, but in fact it is not. It must be kept in mind that we can choose the regression coefficients ourselves, and very often can use them to offset changes in the parameters of the error variable's distribution. For example, a logistic errorvariable distribution with a nonzero location parameter μ (which sets the mean) is equivalent to a distribution with a zero location parameter, where μ has been added to the intercept coefficient. Both situations produce the same value for Y_{i}^{*} regardless of settings of explanatory variables. Similarly, an arbitrary scale parameter s is equivalent to setting the scale parameter to 1 and then dividing all regression coefficients by s. In the latter case, the resulting value of Y_{i}^{*} will be smaller by a factor of s than in the former case, for all sets of explanatory variables — but critically, it will always remain on the same side of 0, and hence lead to the same Y_{i} choice.
(Note that this predicts that the irrelevancy of the scale parameter may not carry over into more complex models where more than two choices are available.)
It turns out that this formulation is exactly equivalent to the preceding one, phrased in terms of the generalized linear model and without any latent variables. This can be shown as follows, using the fact that the cumulative distribution function (CDF) of the standard logistic distribution is the logistic function, which is the inverse of the logit function, i.e.
Pr
(
ε
<
x
)
=
logit
−
1
(
x
)
Then:
Pr
(
Y
i
=
1
∣
X
i
)
=
Pr
(
Y
i
∗
>
0
∣
X
i
)
=
Pr
(
β
⋅
X
i
+
ε
>
0
)
=
Pr
(
ε
>
−
β
⋅
X
i
)
=
Pr
(
ε
<
β
⋅
X
i
)
(because the logistic distribution is symmetric)
=
logit
−
1
(
β
⋅
X
i
)
=
p
i
(see above)
This formulation—which is standard in discrete choice models—makes clear the relationship between logistic regression (the "logit model") and the probit model, which uses an error variable distributed according to a standard normal distribution instead of a standard logistic distribution. Both the logistic and normal distributions are symmetric with a basic unimodal, "bell curve" shape. The only difference is that the logistic distribution has somewhat heavier tails, which means that it is less sensitive to outlying data (and hence somewhat more robust to model misspecifications or erroneous data).
Yet another formulation uses two separate latent variables:
Y
i
0
∗
=
β
0
⋅
X
i
+
ε
0
Y
i
1
∗
=
β
1
⋅
X
i
+
ε
1
where
ε
0
∼
EV
1
(
0
,
1
)
ε
1
∼
EV
1
(
0
,
1
)
where EV_{1}(0,1) is a standard type1 extreme value distribution: i.e.
Pr
(
ε
0
=
x
)
=
Pr
(
ε
1
=
x
)
=
e
−
x
e
−
e
−
x
Then
Y
i
=
{
1
if
Y
i
1
∗
>
Y
i
0
∗
,
0
otherwise.
This model has a separate latent variable and a separate set of regression coefficients for each possible outcome of the dependent variable. The reason for this separation is that it makes it easy to extend logistic regression to multioutcome categorical variables, as in the multinomial logit model. In such a model, it is natural to model each possible outcome using a different set of regression coefficients. It is also possible to motivate each of the separate latent variables as the theoretical utility associated with making the associated choice, and thus motivate logistic regression in terms of utility theory. (In terms of utility theory, a rational actor always chooses the choice with the greatest associated utility.) This is the approach taken by economists when formulating discrete choice models, because it both provides a theoretically strong foundation and facilitates intuitions about the model, which in turn makes it easy to consider various sorts of extensions. (See the example below.)
The choice of the type1 extreme value distribution seems fairly arbitrary, but it makes the mathematics work out, and it may be possible to justify its use through rational choice theory.
It turns out that this model is equivalent to the previous model, although this seems nonobvious, since there are now two sets of regression coefficients and error variables, and the error variables have a different distribution. In fact, this model reduces directly to the previous one with the following substitutions:
β
=
β
1
−
β
0
ε
=
ε
1
−
ε
0
An intuition for this comes from the fact that, since we choose based on the maximum of two values, only their difference matters, not the exact values — and this effectively removes one degree of freedom. Another critical fact is that the difference of two type1 extremevaluedistributed variables is a logistic distribution, i.e.
ε
=
ε
1
−
ε
0
∼
Logistic
(
0
,
1
)
.
We can demonstrate the equivalent as follows:
Pr
(
Y
i
=
1
∣
X
i
)
=
Pr
(
Y
i
1
∗
>
Y
i
0
∗
∣
X
i
)
=
Pr
(
Y
i
1
∗
−
Y
i
0
∗
>
0
∣
X
i
)
=
Pr
(
β
1
⋅
X
i
+
ε
1
−
(
β
0
⋅
X
i
+
ε
0
)
>
0
)
=
Pr
(
(
β
1
⋅
X
i
−
β
0
⋅
X
i
)
+
(
ε
1
−
ε
0
)
>
0
)
=
Pr
(
(
β
1
−
β
0
)
⋅
X
i
+
(
ε
1
−
ε
0
)
>
0
)
=
Pr
(
(
β
1
−
β
0
)
⋅
X
i
+
ε
>
0
)
(substitute
ε
as above)
=
Pr
(
β
⋅
X
i
+
ε
>
0
)
(substitute
β
as above)
=
Pr
(
ε
>
−
β
⋅
X
i
)
(now, same as above model)
=
Pr
(
ε
<
β
⋅
X
i
)
=
logit
−
1
(
β
⋅
X
i
)
=
p
i
As an example, consider a provincelevel election where the choice is between a rightofcenter party, a leftofcenter party, and a secessionist party (e.g. the Parti Québécois, which wants Quebec to secede from Canada). We would then use three latent variables, one for each choice. Then, in accordance with utility theory, we can then interpret the latent variables as expressing the utility that results from making each of the choices. We can also interpret the regression coefficients as indicating the strength that the associated factor (i.e. explanatory variable) has in contributing to the utility — or more correctly, the amount by which a unit change in an explanatory variable changes the utility of a given choice. A voter might expect that the rightofcenter party would lower taxes, especially on rich people. This would give lowincome people no benefit, i.e. no change in utility (since they usually don't pay taxes); would cause moderate benefit (i.e. somewhat more money, or moderate utility increase) for middleincoming people; and would cause significant benefits for highincome people. On the other hand, the leftofcenter party might be expected to raise taxes and offset it with increased welfare and other assistance for the lower and middle classes. This would cause significant positive benefit to lowincome people, perhaps weak benefit to middleincome people, and significant negative benefit to highincome people. Finally, the secessionist party would take no direct actions on the economy, but simply secede. A lowincome or middleincome voter might expect basically no clear utility gain or loss from this, but a highincome voter might expect negative utility, since he/she is likely to own companies, which will have a harder time doing business in such an environment and probably lose money.
These intuitions can be expressed as follows:
This clearly shows that
 Separate sets of regression coefficients need to exist for each choice. When phrased in terms of utility, this can be seen very easily. Different choices have different effects on net utility; furthermore, the effects vary in complex ways that depend on the characteristics of each individual, so there need to be separate sets of coefficients for each characteristic, not simply a single extra perchoice characteristic.
 Even though income is a continuous variable, its effect on utility is too complex for it to be treated as a single variable. Either it needs to be directly split up into ranges, or higher powers of income need to be added so that polynomial regression on income is effectively done.
Yet another formulation combines the twoway latent variable formulation above with the original formulation higher up without latent variables, and in the process provides a link to one of the standard formulations of the multinomial logit.
Here, instead of writing the logit of the probabilities p_{i} as a linear predictor, we separate the linear predictor into two, one for each of the two outcomes:
ln
Pr
(
Y
i
=
0
)
=
β
0
⋅
X
i
−
ln
Z
ln
Pr
(
Y
i
=
1
)
=
β
1
⋅
X
i
−
ln
Z
Note that two separate sets of regression coefficients have been introduced, just as in the twoway latent variable model, and the two equations appear a form that writes the logarithm of the associated probability as a linear predictor, with an extra term
−
l
n
Z
at the end. This term, as it turns out, serves as the normalizing factor ensuring that the result is a distribution. This can be seen by exponentiating both sides:
Pr
(
Y
i
=
0
)
=
1
Z
e
β
0
⋅
X
i
Pr
(
Y
i
=
1
)
=
1
Z
e
β
1
⋅
X
i
In this form it is clear that the purpose of Z is to ensure that the resulting distribution over Y_{i} is in fact a probability distribution, i.e. it sums to 1. This means that Z is simply the sum of all unnormalized probabilities, and by dividing each probability by Z, the probabilities become "normalized". That is:
Z
=
e
β
0
⋅
X
i
+
e
β
1
⋅
X
i
and the resulting equations are
Pr
(
Y
i
=
0
)
=
e
β
0
⋅
X
i
e
β
0
⋅
X
i
+
e
β
1
⋅
X
i
Pr
(
Y
i
=
1
)
=
e
β
1
⋅
X
i
e
β
0
⋅
X
i
+
e
β
1
⋅
X
i
.
Or generally:
Pr
(
Y
i
=
c
)
=
e
β
c
⋅
X
i
∑
h
e
β
h
⋅
X
i
This shows clearly how to generalize this formulation to more than two outcomes, as in multinomial logit. Note that this general formulation is exactly the Softmax function as in
Pr
(
Y
i
=
c
)
=
softmax
(
c
,
β
0
⋅
X
i
,
β
1
⋅
X
i
,
…
)
.
In order to prove that this is equivalent to the previous model, note that the above model is overspecified, in that
Pr
(
Y
i
=
0
)
and
Pr
(
Y
i
=
1
)
cannot be independently specified: rather
Pr
(
Y
i
=
0
)
+
Pr
(
Y
i
=
1
)
=
1
so knowing one automatically determines the other. As a result, the model is nonidentifiable, in that multiple combinations of β_{0} and β_{1} will produce the same probabilities for all possible explanatory variables. In fact, it can be seen that adding any constant vector to both of them will produce the same probabilities:
Pr
(
Y
i
=
1
)
=
e
(
β
1
+
C
)
⋅
X
i
e
(
β
0
+
C
)
⋅
X
i
+
e
(
β
1
+
C
)
⋅
X
i
=
e
β
1
⋅
X
i
e
C
⋅
X
i
e
β
0
⋅
X
i
e
C
⋅
X
i
+
e
β
1
⋅
X
i
e
C
⋅
X
i
=
e
C
⋅
X
i
e
β
1
⋅
X
i
e
C
⋅
X
i
(
e
β
0
⋅
X
i
+
e
β
1
⋅
X
i
)
=
e
β
1
⋅
X
i
e
β
0
⋅
X
i
+
e
β
1
⋅
X
i
.
As a result, we can simplify matters, and restore identifiability, by picking an arbitrary value for one of the two vectors. We choose to set
β
0
=
0
.
Then,
e
β
0
⋅
X
i
=
e
0
⋅
X
i
=
1
and so
Pr
(
Y
i
=
1
)
=
e
β
1
⋅
X
i
1
+
e
β
1
⋅
X
i
=
1
1
+
e
−
β
1
⋅
X
i
=
p
i
which shows that this formulation is indeed equivalent to the previous formulation. (As in the twoway latent variable formulation, any settings where
β
=
β
1
−
β
0
will produce equivalent results.)
Note that most treatments of the multinomial logit model start out either by extending the "loglinear" formulation presented here or the twoway latent variable formulation presented above, since both clearly show the way that the model could be extended to multiway outcomes. In general, the presentation with latent variables is more common in econometrics and political science, where discrete choice models and utility theory reign, while the "loglinear" formulation here is more common in computer science, e.g. machine learning and natural language processing.
The model has an equivalent formulation
p
i
=
1
1
+
e
−
(
β
0
+
β
1
x
1
,
i
+
⋯
+
β
k
x
k
,
i
)
.
This functional form is commonly called a singlelayer perceptron or singlelayer artificial neural network. A singlelayer neural network computes a continuous output instead of a step function. The derivative of p_{i} with respect to X = (x_{1}, ..., x_{k}) is computed from the general form:
y
=
1
1
+
e
−
f
(
X
)
where f(X) is an analytic function in X. With this choice, the singlelayer neural network is identical to the logistic regression model. This function has a continuous derivative, which allows it to be used in backpropagation. This function is also preferred because its derivative is easily calculated:
d
y
d
X
=
y
(
1
−
y
)
d
f
d
X
.
A closely related model assumes that each i is associated not with a single Bernoulli trial but with n_{i} independent identically distributed trials, where the observation Y_{i} is the number of successes observed (the sum of the individual Bernoullidistributed random variables), and hence follows a binomial distribution:
Y
i
∼
Bin
(
n
i
,
p
i
)
,
for
i
=
1
,
…
,
n
An example of this distribution is the fraction of seeds (p_{i}) that germinate after n_{i} are planted.
In terms of expected values, this model is expressed as follows:
p
i
=
E
[
Y
i
n
i

X
i
]
,
so that
logit
(
E
[
Y
i
n
i

X
i
]
)
=
logit
(
p
i
)
=
ln
(
p
i
1
−
p
i
)
=
β
⋅
X
i
,
Or equivalently:
Pr
(
Y
i
=
y
∣
X
i
)
=
(
n
i
y
)
p
i
y
(
1
−
p
i
)
n
i
−
y
=
(
n
i
y
)
(
1
1
+
e
−
β
⋅
X
i
)
y
(
1
−
1
1
+
e
−
β
⋅
X
i
)
n
i
−
y
.
This model can be fit using the same sorts of methods as the above more basic model.
In a Bayesian statistics context, prior distributions are normally placed on the regression coefficients, usually in the form of Gaussian distributions. There is no conjugate prior of the likelihood function in logistic regression. Back when Bayesian inference was performed analytically, this made the posterior distribution difficult to calculate except in very low dimensions. Now, though, automatic software such as OpenBUGS, JAGS and Stan allow these posteriors to be computed using simulation, so lack of conjugacy is not a concern. However, when the sample size or the number of parameters is large, full Bayesian simulation can be slow, and people often use approximate methods such as variational Bayes and expectation propagation.
There are large numbers of extensions:
Multinomial logistic regression (or multinomial logit) handles the case of a multiway categorical dependent variable (with unordered values, also called "classification"). Note that the general case of having dependent variables with more than two values is termed polytomous regression.
Ordered logistic regression (or ordered logit) handles ordinal dependent variables (ordered values).
Mixed logit is an extension of multinomial logit that allows for correlations among the choices of the dependent variable.
An extension of the logistic model to sets of interdependent variables is the conditional random field.
Conditional logistic regression handles matched or stratified data when the strata are small. It is mostly used in the analysis of observational studies.
Most statistical software can do binary logistic regression.
SAS
PROC LOGISTIC for basic logistic regression.
PROC CATMOD when all the variables are categorical.
PROC GLIMMIX for multilevel model logistic regression.
R
glm
in the stats package (using family = binomial)
GLMNET package for an efficient implementation regularized logistic regression
lmer for mixed effects logistic regression
arm package for bayesian logistic regression
python
Bayesian Logistic Regression with ARD prior code, tutorial
Variational Bayes Logistic Regression with ARD prior code , tutorial
Bayesian Logistic Regression code, tutorial
NCSS
Logistic Regression in NCSS
Notably, Microsoft Excel's statistics extension package does not include it.