Python中机器学习的朴素贝叶斯分类器

我一直在尝试机器学习,需要开发一个基于多个变量进行预测的模型。我可以通过下面的“打高尔夫”示例来解释这一点:

train.csv

Outlook,Temperature,Humidity,Windy,Playovercast,hot,high,FALSE,yesovercast,cool,normal,TRUE,yesovercast,mild,high,TRUE,yesovercast,hot,normal,FALSE,yesrainy,mild,high,FALSE,yesrainy,cool,normal,FALSE,yesrainy,cool,normal,TRUE,norainy,mild,normal,FALSE,yesrainy,mild,high,TRUE,nosunny,hot,high,FALSE,nosunny,hot,high,TRUE,nosunny,mild,high,FALSE,nosunny,cool,normal,FALSE,yessunny,mild,normal,TRUE,yes

程序需要将预测结果插入到makeprediciton.csv文件中

Outlook,Temperature,Humidity,Windy,Playrainy,hot,normal,TRUE,

我已经能够在Excel中应用这个分类器。想知道在Python中是否有简单易用的库,可以帮助我对频率进行分组并进行计算,而不需要手动编写所有代码。

你可以通过下面的链接看到我在Excel中的方法:http://www.filedropper.com/playgolf

任何帮助都将不胜感激。


回答:

这取决于你的需求。如果你不想编写代码,可以尝试使用Rapidminer。它非常易学且适合实验。它的文档非常清晰详尽。你可以参考这个示例来使用朴素贝叶斯分类器并获得结果。


如果你想进行一些编程并使用Python语言,可以尝试Scikit-learn,这是Python中更高级的库。它利用了scipy和numpy,并提供了非常强大的数据挖掘算法实现。对于你的示例,你首先需要使用One-Hot-Encoding将你的分类特征转换为高维稀疏向量,然后使用如朴素贝叶斯的分类器


另外,对于读取CSV文件,你可以使用Pandas

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注