Sobes.tech
Middle

Lze použít lineární regresi k předpovědi prodeje s omezením na nezáporné hodnoty?

sobes.tech AI

Odpověď od AI

Lineární regrese lze použít k předpovědi prodeje, ale ve výchozím nastavení nezohledňuje omezení na nezáporné hodnoty. U klasické lineární regrese mohou předpovědi nabývat jakýchkoli hodnot, včetně záporných, což nedává smysl u prodeje.

Pro zohlednění omezení na nezáporné hodnoty lze:

  • Použít modely s omezeními, například regresi s omezeními (constrained regression) nebo kvadratické programování.
  • Aplikovat transformaci cílové proměnné, například logaritmickou (log(y + 1)), aby byla zajištěna kladná předpověď, a poté výsledek zpětně transformovat.
  • Použít specializované modely, například regresi s nezápornými koeficienty (Non-negative Least Squares).

Příklad s logaritmickou transformací:

import numpy as np
from sklearn.linear_model import LinearRegression

# X - znaky, y - prodej
X = ...
y = ...

# Transformace cílové proměnné
log_y = np.log1p(y)

model = LinearRegression()
model.fit(X, log_y)

# Předpověď
log_pred = model.predict(X_new)
pred = np.expm1(log_pred)  # Inverzní transformace

Tímto způsobem lze lineární regresi použít, ale pro dodržení nezápornosti je třeba použít další metody nebo transformace.