Machine learning 收集机器学习训练数据

Machine learning 收集机器学习训练数据,machine-learning,naivebayes,Machine Learning,Naivebayes,我对机器学习非常陌生,需要澄清一些事情。我试图根据某人对Facebook的喜好来预测他们喜欢某项活动的可能性。我使用的是朴素贝叶斯分类器,但有几件事我不确定。1.我的标签/输入是什么?2.我需要为培训数据收集哪些信息?我的猜测是创建一个调查,并对该人是否喜欢某项活动提出问题(1-10分)对于天真的贝叶斯来说,这可能相当困难。你需要收集(或计算)一个人是否喜欢活动X的样本,以及他们喜欢Facebook的详细信息(以某种一致的方式组织) 基本上,对于朴素贝叶斯,训练数据应该与测试数据的数据类型相同

我对机器学习非常陌生,需要澄清一些事情。我试图根据某人对Facebook的喜好来预测他们喜欢某项活动的可能性。我使用的是朴素贝叶斯分类器,但有几件事我不确定。1.我的标签/输入是什么?2.我需要为培训数据收集哪些信息?我的猜测是创建一个调查,并对该人是否喜欢某项活动提出问题(1-10分)

对于天真的贝叶斯来说,这可能相当困难。你需要收集(或计算)一个人是否喜欢活动X的样本,以及他们喜欢Facebook的详细信息(以某种一致的方式组织)

基本上,对于朴素贝叶斯,训练数据应该与测试数据的数据类型相同


如果您可以访问每个人类似Facebook的历史记录,那么调查方法可能会起作用。

在监督分类中,所有分类器都需要使用已知的标记数据进行训练,这些数据称为训练数据。您的数据应该有一个特征向量,后跟一个称为类的特殊向量。在你的问题中,如果这个人是否喜欢这个活动

训练分类器后,应使用另一个数据集测试其行为,以免产生偏见。此数据集必须具有类作为列车数据。如果您使用相同的数据集进行训练和测试,那么分类器预测可能非常好,但不公平

我建议您看看评估技术,比如K折叠交叉验证

另一件你应该知道的事情是,普通的朴素贝叶斯分类器用于预测二进制数据,所以你的类应该是0或1,这意味着你做调查的人喜欢或不喜欢这个活动。它也在Weka(Java)或SkLearn(Python)等包中实现

如果你真的对贝叶斯分类器感兴趣,我需要说,事实上,二元分类的朴素贝叶斯并不是最好的分类方法,因为它发现决策边界是超平面。另外,这个分类器非常糟糕,据说这个分类器没有很好地校准。但是,它毕竟做出了很好的预测


希望能有所帮助。

有没有其他分类器可以让这更容易?理想情况下,如果我确实可以访问此人的Facebook喜好,我仍然对如何设置培训输入阶段感到有点困惑。我将深入了解Bayes定理/Bayes规则,以充分了解如何从您的数据进行培训。做了一个伟大的工作概述这一点!充分理解作为朴素贝叶斯一部分的条件概率和贝叶斯规则,对于理解如何使用该方法进行训练和测试是非常重要的。这些特征是什么?我仍然对数据的结构有点困惑。如果你在寻找一个案例,正式称为个人,它应该是:2,2,7,10,0,1。这意味着:第一个问题的答案是2,第二个问题是2,依此类推。最后一个数字(粗体)对应于类别特征,即1,表示该人员对活动感到满意。请注意,您并不是只使用一个实例,而是有一个矩阵,每一行对应一个实例。