我是机器学习领域的新手。我已经完成了Udacity的“机器学习入门”课程。因此,我知道如何使用sklearn和Python运行基本的分类器。但课程中教授的所有分类器都是基于单一数据类型进行训练的。
我有一个问题,我希望将代码提交分类为“干净”或“有bug”。我的特征集包含字符串数据(如人的姓名)、分类数据(如“干净”与“有bug”)、数值数据(如提交次数)和时间戳数据(如提交时间)。我如何基于这三种特征同时训练一个分类器?假设我计划使用朴素贝叶斯分类器和sklearn。请帮助我!
我正在尝试实现这篇论文。任何帮助都将非常感激。
回答:
许多机器学习分类器,如逻辑回归、随机森林、决策树和支持向量机(SVM),都能很好地处理连续和分类特征。我认为你有两条路可以走。第一条是数据预处理。例如,将所有字符串/分类数据(如人的姓名)转换为整数,或者你可以使用集成学习。
集成学习是指你将不同的分类器(每个分类器处理一种异构特征)结合起来,例如使用多数投票的方式,以便它们在分类时达成共识。希望这对你有帮助。