同样,类似于[贝叶斯四]之贝叶斯分类器设计,我们用一个例子:字母分类,来阐述朴素贝叶斯分类器的设计。
老套路,搞个三部曲:
- 特征向量生成
- 决策函数设计
- 模型训练
在做问题分析之前,请先做数据集的分析。
一、数据集分析
数据集来自于UCI: UCI字母分类数据集链接
这个数据集原始数据一共包含20000张图像(一般取前16000张图像作为训练,后4000张图像作为测试),每张图像经过作者处理后得到了一个16维的特征(特征值是一个0-15的整数),标签就是所代表的字母A-Z。数据形式如下:
1. lettr capital letter (26 values from A to Z)
2. x-box horizontal position of box (integer)
3. y-box vertical position of box (integer)
4. width width of box (integer)
5. high height of box (integer)
6. onpix total # on pixels (integer)
7. x-bar mean x of on pixels in box (integer)
8. y-bar mean y of on pixels in box (integer)
9. x2bar mean x variance (integer)
10. y2bar mean y variance (integer)
11. xybar mean x y correlation (integer)
12. x2ybr mean of x * x * y (integer)
13. xy2br mean of x * y * y (integer)
14. x-ege mean edge count left to right (integer)
15. xegvy correlation of x-ege with y (integer)
16. y-ege mean edge count bottom to top (integer)
17. yegvx correlation of y-ege with x (integer)
其中20000张图像的分布如下:
1. 789 A 766 B 736 C 805 D 768 E 775 F 773 G
2. 734 H 755 I 747 J 739 K 761 L 792 M 783 N
3. 753 O 803 P 783 Q 758 R 748 S 796 T 813 U
4. 764 V 752 W 787 X 786 Y 734 Z
整理一下这个数据集。
- 一个文件。共20000条数据,我们将前16000条数据作为训练数据,后4000条数据作为测试数据。
- 数据格式。16维的特征向量,一个A-Z的label
二、特征向量生成
由上述的数据集的描述中我们可以知道,字母数据集已经帮我们做好了特征向量提取(16维数据)的工作。数据形式如下所示。
由此我们只需要经过简单的处理就能得到我们想要的数据。
- Image数据。上图所示每行16维向量,每个特征值取值为0-15的整数。形式为16*N。
- Label。上图中每行第1列,A-Z。
Step1:数据读入(loadData.m)
% load data from file, start --start line, end --end line
function [labels, features] = loadData(filename,start,endl)
[data1,data2,data3,data4,data5,data6,data7,data8,data9,data10,data11,data12,data13,data14,data15,data16,data17] = textread(filename, '%c%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d','delimiter',',');
labels = data1(start:endl,1);
features = [data2,data3,data4,data5,data6,data7,data8,data9,data10,data11,data12,data13,data14,data15,data16,data17];
features = features(start:endl,:);
%labels = labels.';
features = features.' + 1;
% 注意:这里的下标是0~15
end
三、决策函数分析
这里我们也使用最小错分准则来设计贝叶斯分类器。所以,我们的目的是求解后验概率 p(wi|x) p ( w i | x ) .
3.1 决策函数
由[贝叶斯五]之朴素贝叶斯分析可以知道。

最低0.47元/天 解锁文章
1377

被折叠的 条评论
为什么被折叠?



