我已经满足了方程式。现在我想要RMSE值
q3_1=data1[['bedrooms', 'bathrooms', 'sqft_living', 'sqft_lot', 'floors', 'zipcode']]
q3_2=data1[['bedrooms', 'bathrooms', 'sqft_living', 'sqft_lot', 'floors','zipcode','condition','grade','waterfront','view','sqft_above','sqft_basement','yr_built','yr_renovated',
'lat', 'long','sqft_living15','sqft_lot15']]
reg = LinearRegression()
reg.fit(q3_1,data1.price)
reg.fit(q3_2,data1.price)
我无法从这里继续。在这两种情况下,我都需要RMSE值。
答案 0 :(得分:0)
据我了解,您正在Google Colab上使用TensorFlow。
我不确定您的LinearRegression
对象是什么,但是我想它是一个具有单个节点的Keras模型。
因此,我有一个问题,如何使用具有不同架构的数据集训练同一个模型(您的reg
实例)-一个包含6列,另一个包含16列?
顺便说一句,在训练/拟合过程中,keras可以为您提供纪元的MSE,如果您提供验证数据集,还可以为您提供验证MSE。最后,您可以使用evaluate
方法,
返回模型[...]的损失值和指标值
只需使用“ mean_squared_error”指标即可。
在使用scikit-learn
时,您必须自己照顾该指标。
您可以使用predict
方法从训练有素的模型针对数据集获取预测。
然后,有一个mean_squared_error
度量标准可以直接使用。
train_x, train_y = data1.features[:-100], data1.price[:-100]
test_x, test_y = data1.features[-100:], data1.price[-100:]
reg = LinearRegression()
reg.fit(train_x, train_y)
predictions = reg.predict(test_x)
mse = sklearn.metrics.mean_squared_error(test_y, predictions)
print("RMSE: %s" % math.sqrt(mse))