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.