填空题

实现朴素贝叶斯分类器

发布于 2022-03-03 17:11:34

朴素贝叶斯分类器假设在给定样本label的情况下,样本的不同特征之间相互独立。现用朴素贝叶斯分类器进行垃圾邮件识别,数据包含4个特征。现有的训练数据如下表:

现在将所有的特征进行转换后,得到下表(请在程序以硬编码方式读入):
转换规则如下:(注:[m,n]表示m,n之间的闭区间,[m,+]表示大于m的开区间)
标题长度(feature 1):1: [0,3], 2: [3,6], 3: [6,+]

正文长度(feature 2):1: [0,10], 2:[10,20], 3: [20,+]

附件含有可执行程序(feature 3):1: 是, 0:

正文含特殊字符(feature 4):1:是,0:

请在程序中读入上述训练数据,实现朴素贝叶斯分类器,语言不限,但不能使用第三方库,不需要考虑平滑方法,然后对给定的测试数据(特征已转换)进行预测,输出结果;


输入描述: 输入数据如下,第一行一个数字M,表示共有M行训练数据,
第2~M+1行,每行5个数字,分别以空格隔开,前四个数字分别代表四个特征,第5个数字代表这一个样本label值。
第M+2行是一个数字N,表示共有N行测试样本,随后的N行每行4个数字,分别代表四个特征的值。

14
1 1 1 0 1
1 1 1 1 1
2 1 1 0 0
3 2 1 0 0
3 3 0 0 0
3 3 0 1 1
2 3 0 1 0
1 2 1 0 1
1 3 0 0 0
3 2 0 0 0
1 2 0 0 0
2 2 1 1 0
2 1 0 0 0
3 2 1 1 1
5
3 1 0 0
1 1 0 0
2 2 1 1
2 3 1 1
3 3 0 0输入样例: 14 1 1 1 0 1 1 1 1 1 1 2 1 1 0 0 3 2 1 0 0 3 3 0 0 0 3 3 0 1 1 2 3 0 1 0 1 2 1 0 1 1 3 0 0 0 3 2 0 0 0 1 2 0 0 0 2 2 1 1 0 2 1 0 0 0 3 2 1 1 1 5 1 1 0 0 1 1 1 0 1 2 1 0 2 1 0 1 2 2 1 1 输出描述: 使用贝叶斯模型对测试样本进行预测,所有结果按顺序输出到一行,以空格分隔;

0 0 0 0 0输出样例 0 1 1 0 0
关注者
0
被浏览
63
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看