介绍
我已经使用实现了线性回归,sklearn
并且在所有计算之后我得到了这样的结果:
Feature: 0, coef: -9985335237.46533
Feature: 1, coef: 417387013140.39661
Feature: 2, coef: -2.85809
Feature: 3, coef: 1.50522
Feature: 4, coef: -1.07076
数据
我的数据是基于用户在健身房的访问。所有数据归一化0 <= x <= 1
。数据集有 10k 个观测值。
X:
- feature_0:健身房的评分
- feature_1:健身房的评论(评分)计数
- feature_2:健身房的单次访问价格
- feature_3:健身房的无限订阅价格
- feature_4:从用户家到健身房的距离| 计算
min(x / 30, 1.0)
,因为平均值是 15.17
Y:用户对该健身房的访问次数
代码
from sklearn.datasets import make_regression
from sklearn.linear_model import LinearRegression
from matplotlib import pyplot
from numpy import loadtxt
# define dataset
x = loadtxt('formatted_data_x.txt')
y = loadtxt('formatted_data_y.txt')
# define the model
model = LinearRegression()
# fit the model
model.fit(x, y)
# get importance
importance = model.coef_
# summarize feature importance
for i,v in enumerate(importance):
print('Feature: %0d, coef: %.5f' % (i,v))
问题
为什么线性回归特征系数变得超大?没事吧?
Feature: 0, coef: -9985335237.46533
Feature: 1, coef: 417387013140.39661
...
PS:我完全不熟悉StackExchange和ML\DS的这个“部分” ,所以如果我做错了什么或者我必须提供更多信息,请告诉我!任何帮助,将不胜感激。提前致谢!