我正在寻找一种能够处理缺少参数的输入数据的机器学习算法。
示例: 使用包含10个输入参数的数据来训练模型。使用具有NaN值的10个参数中的2个的数据进行预测。
是否有任何机器学习算法可以对此数据进行预测,或者我必须首先以任何方式处理NaN值?是否存在具有处理NaN值的内置功能的机器学习算法?
也许我的问题不够详细。我确实拥有训练模型所需的所有数据,并且我确实知道如何在缺失值训练之前处理数据。我的问题的意思有所不同。一旦我对模型进行了训练,并且可以在生产,实时数据中使用该模型,并且发生这种情况,例如,仅获得了我训练模型所使用的10个功能中的8个的值,那么仍然有一种算法可以执行预测?我的第一个想法是为10个值中的每一个设置一个默认值,如果我会收到Nan值,则设置该值,但是我希望有一种能够自行处理的算法。这样模型就可以用最合适的替换值(均值,回填或任何其他值)替换Nan值
答案 0 :(得分:0)
是的,机器学习算法仍然可以使用可用数据进行预测,但是您应该考虑处理丢失的数据,以便模型能够更好地训练。
在训练模型之前,有几种方法可以处理数据中的缺失值。可以尝试的一些方法是
答案 1 :(得分:0)
这取决于您使用的软件包以及如何表示功能。 NaN
在机器学习包(scikit learning,weka,vowpal wabbit,tensorflow等)之间的解释可能有所不同
您基本上是在描述有点稀疏的数据集。您可以尝试外推/内插这些值(如果可能的话),也可以将它们设置为0。