给定一个数据集,例如:
(FirstName, LastName, Sex, DateOfBirth, HairColor, EyeColor, Height, Weight, Location)
假设某种模型可以在这个数据集上进行训练,如果只给出其中的一些值,哪种机器学习范式可以用来预测缺失的值?
示例:
已知:
(FirstName: John, LastName: Doe, Sex: M, Height: (5,10))
哪种模型可以预测缺失的值?
(DateOfBirth, HairColor, EyeColor, Weight, Location)
换句话说,该模型应该能够接受任何字段作为输入,并“填补”任何缺失的字段。
这种类型的机器学习/深度学习技术叫做什么?
回答:
如果你想用算法填补缺失的值,这被称为缺失数据的插补。如果你在使用Python,scikit-learn库中有许多插补算法,你可以在文档中探索。
一个不错的算法是KNNImputer,它会查找与当前观测最相似的n_neighbors
个观测,并用这些相似观测中该列的平均值来填补缺失的数据。更多信息请阅读这里:https://scikit-learn.org/stable/modules/generated/sklearn.impute.KNNImputer.html