基于训练集,我们对一些都是数字的属性应用了简单的线性回归。
现在我们在类别方面有了更多的属性,当然我们应用了 one-hot-encoding 将类别转换为二进制属性
以这个简单的python代码为例:
X_train, X_test, y_train, y_test = train_test_split(X, y, train_size = 0.8, test_size=0.2)
model = LinearRegression(normalize=True).fit(X_train, y_train)
printErrorMetrics(trueTargets=y_test, predictions=model.predict(X_test))
当表 X 仅具有原始数字属性时,来自 printErrorMetrics 函数(RMSE 等)的分数都足够好
在添加 one-hot-encoded 类别后,我们期待更好的结果,但结果非常糟糕,以至于该方法似乎不起作用。
我们错过了什么吗?
添加 one-hot-encoded 列/属性后,我们是否需要对数据进行预处理?