我对机器学习非常新手,需要澄清一些问题。我正在尝试根据某人在Facebook上的点赞情况,预测他们喜欢某项活动的概率。我使用的是朴素贝叶斯分类器,但对以下几点不太确定。1. 我的标签/输入应该是什么?2. 我需要收集哪些信息作为训练数据?我猜想可以创建一个调查,问人们是否会喜欢某项活动(从1到10的评分)
回答:
在监督分类中,所有分类器都需要用已知的标记数据进行训练,这些数据被称为训练数据。你的数据应该包含一个特征向量,后面跟一个特殊的称为类的特征。在你的问题中,这个类就是一个人是否喜欢这项活动。
一旦你训练了分类器,你应该用另一个数据集来测试它的行为,以避免偏见。这个数据集必须与训练数据具有相同的类。如果你用相同的数据集进行训练和测试,你的分类器预测可能会非常好,但这是不公平的。
我建议你看看评估技术,比如K折交叉验证。
你还应该知道,常见的朴素贝叶斯分类器用于预测二元数据,所以你的类应该为0或1,分别表示你调查的人是否喜欢这项活动。它也在像Weka(Java)或SkLearn(Python)这样的软件包中实现。
如果你对贝叶斯分类器真的很感兴趣,我需要指出,实际上,朴素贝叶斯用于二元分类并不是最好的,因为Minsky在1961年发现决策边界是超平面。此外,Brier评分非常差,有人说这个分类器校准得不好。但总的来说,它的预测效果还是不错的。
希望这对你有帮助。