## When You Want Win Probability Directly
Logistic regression models the probability of a binary outcome (win/not win) directly as a function of input features. It is simpler than the two-stage Poisson approach and appropriate when you care about match result probabilities but not about the specific goal distribution.
## The Model Structure
P(home win) = 1 / (1 + e^(−(β₀ + β₁×X₁ + β₂×X₂ + ...)))
This S-shaped function maps any linear combination of features to a probability between 0 and 1.
## Fitting a 1X2 Logistic Model
Features: home strength (xG differential per match), away strength, home advantage, rest differential.
In Python:
```
from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
model.fit(X_train, y_train) # y = 0 (home loss), 1 (draw), 2 (home win)
```
For three-outcome modelling, use multinomial logistic regression.
## Calibration Requirement
A logistic model's output must be calibrated — the predicted probability should match the actual frequency. If the model predicts 70% home win probability, home teams should win approximately 70% of those matches.
Test calibration using the calibration curve (reliability diagram). Isotonic regression or Platt scaling can correct miscalibrated outputs.
## Logistic vs Poisson Approach
| Aspect | Logistic Regression | Poisson Regression |
|---|---|---|
| Prediction target | Win probability directly | Goal distribution → all markets |
| Simplicity | Simpler | More complex |
| Market coverage | 1X2, basic AH | All markets (O/U, correct score, AH) |
| Recommended for | Beginners, 1X2 focus | Full market coverage |
Create a free account to track your progress and save bookmarks.