关于线性/逻辑回归、ANN、SVM等机器学习算法的两个问题:
-
这些算法中的模型处理的数据集,每个样本都有一系列特征和一个可能的输出值(例如:根据特征f获取房价),但如果这些特征足以产生关于感兴趣项目的多个信息,即多个输出呢?请看这个例子:一个关于汽车的数据集,每个样本(汽车)具有以下特征(初始速度、加速度和时间),在现实世界中,这些特征足以知道两个变量:通过
v = v_i + at
计算速度和通过s = (v_i * t ) + (0.5 * a *t^2 )
计算距离。因此,我希望样本X
具有特征(x1 , x2 , ... , xn)
,在同一步骤中输出y1
和y2
,这样在训练模型后,如果给定一个新的汽车样本,具有初始速度、加速度和时间,模型能够同时预测速度和距离,这是可能的吗? -
在房价预测的例子中,样本
X
给定特征(x1, x2, x3)
,模型预测价格,这个过程可以通过某种方式逆转吗?也就是说,如果我给模型样本X
提供特征x1
、x2
和价格y
,它能预测特征x3
吗?
回答:
-
这取决于模型。像线性回归这样的线性模型无法可靠地学习距离公式,因为它是给定变量的三次函数。你需要添加v×t和a×t²作为特征来获得距离的良好预测。然而,像三次核SVM回归或多层ANN这样的非线性模型应该能够从给定的特征中学习到这一点,前提是有足够的数据。
更一般地说,用单一模型预测多个值有时有效,有时无效——当有疑问时,只需拟合多个模型即可。
-
你可以尝试。是否有效取决于变量之间的关系和模型本身。