When engineering new features on the column vector data, by performing something like: x = np.concatenate([data, data ** 2, data ** 3], axis=1)
, and then fitting a sklearn.linear_model.LinearRegression(x,y)
with the corresponding target y
, why is this approach still called a linear fit? By fitting or training a linear model, I understand that we try to describe the data with a linear model of the form y = m*x + b
, finding an approximation for the slope m
, and the intercept b
. In reality, we seem to be approximating the coefficients m, n, k
of the polynomial y = m*x + n*x*x + k*x*x*x
. So why is this still seen as a linear regression? Because we are still only inverting a matrix, or why? How should I be thinking this conceptually?
Any explanation that would help clarify my interpretation would be greatly appreciated.
Cheers,
c4rlos