0

我目前正在尝试学习scikit-learn,为此我有一个简单的线性回归,以房屋价格为单位,以平方米为单位。 我已经为一个位置完成了这个模型,一切正常,当我尝试使用另一个数据集时,数据分散得很好,但回归/预测完全关闭了!信心也非常糟糕,往往是负面的。完全关闭的线性回归

这里是一个屏幕截图:

enter image description here

的代码如下:

style.use('ggplot') 

dataset = pd.read_csv('/Path/Data.csv') 

X = np.array(dataset[['size']]) 
y = np.array(dataset[['value']]) 

X_train, X_test, y_train, y_test = cross_validation.train_test_split(X, y, test_size=0.2) 

clf = LinearRegression() 
clf.fit(X_train, y_train) 

plt.scatter(X,y) 
plt.plot(X, clf.predict(X)) 

plt.tight_layout() 
plt.show() 

confidence = clf.score(X_test, y_test) 
print confidence 
+0

只有当数据遵循线性关系时,线性回归才能很好地工作。 – hashcode55

+1

在右端有两个异常值的情况下,没有办法在大部分点上划一条线,而不会为异常值做出令人难以置信的错误。请注意,线性回归假设正态分布的残差 - 因此您计算平方距离。平方对异常值非常敏感。此外,由于@ hashcode55已经暗示,趋势看起来至少是多项式,因此可能还想添加二次项。 – cel

+0

它确实遵循一个,特别是当0 AimiHat

回答

0

的平方误差是异常值过于敏感。我最终删除了它们,因为它们完全关闭了。