在西瓜问题中,如何根据训练集求所对应的版本空间?
①写出假设空间:先列出所有可能的样本点(即特征向量)(即每个属性都取到所有的属性值)
②对应着给出的已知数据集,将与正样本不一致的、与负样本一致的假设删除。
即可得出与训练集一致的假设集合,也就是版本空间了。
假设空间是在已知属性和属性可能取值的情况下,对所有可能满足目标(好瓜)的情况的一种毫无遗漏的假设集合。
例子:
假设一个瓜的好或不好,由三个属性确定。分别是色泽、根蒂、敲声。
其中,色泽有青绿、乌黑、浅白3种取值,根蒂有蜷缩、稍蜷、硬挺3种取值,敲声有浊响、清脆、沉闷3种取值。
那么假设空间由形如 “(色泽=?) ∧ (根蒂=?) ∧ (敲声=?)” 的所有假设组成。
除了考虑属性色泽、根蒂、敲声分别有3 、3、3种可能取值,还要考虑到一种属性可能无论取什么值都合适(用通配符*表示),另外有一种情况就是好瓜这个概念根本不成立(用∅表示),则假设空间大小为 (3 + 1)×(3 + 1)×(3 + 1)+ 1 = 65 。
编号 | 色泽 | 根蒂 | 敲声 |
1 | * | * | * |
2 | 青绿 | * | * |
3 | 乌黑 | * | * |
4 | 浅白 | * | * |
5 | * | 蜷缩 | * |
6 | * | 硬挺 | * |
7 | * | 稍蜷 | * |
8 | * | * | 浊响 |
9 | * | * | 清脆 |
10 | * | * | 沉闷 |
11 | 青绿 | 蜷缩 | * |
12 | 青绿 | 硬挺 | * |
13 | 青绿 | 稍蜷 | * |
14 | 乌黑 | 蜷缩 | * |
15 | 乌黑 | 硬挺 | * |
16 | 乌黑 | 稍蜷 | * |
17 | 浅白 | 蜷缩 | * |
18 | 浅白 | 硬挺 | * |
19 | 浅白 | 稍蜷 | * |
20 | 青绿 | * | 浊响 |
21 | 青绿 | * | 清脆 |
22 | 青绿 | * | 沉闷 |
23 | 乌黑 | * | 浊响 |
24 | 乌黑 | * | 清脆 |
25 | 乌黑 | * | 沉闷 |
26 | 浅白 | * | 浊响 |
27 | 浅白 | * | 清脆 |
28 | 浅白 | * | 沉闷 |
29 | * | 蜷缩 | 浊响 |
30 | * | 蜷缩 | 清脆 |
31 | * | 蜷缩 | 沉闷 |
32 | * | 硬挺 | 浊响 |
33 | * | 硬挺 | 清脆 |
34 | * | 硬挺 | 沉闷 |
35 | * | 稍蜷 | 浊响 |
36 | * | 稍蜷 | 清脆 |
37 | * | 稍蜷 | 沉闷 |
38 | 青绿 | 蜷缩 | 浊响 |
39 | 青绿 | 蜷缩 | 清脆 |
40 | 青绿 | 蜷缩 | 沉闷 |
41 | 青绿 | 硬挺 | 浊响 |
42 | 青绿 | 硬挺 | 清脆 |
43 | 青绿 | 硬挺 | 沉闷 |
44 | 青绿 | 稍蜷 | 浊响 |
45 | 青绿 | 稍蜷 | 清脆 |
46 | 青绿 | 稍蜷 | 沉闷 |
47 | 乌黑 | 蜷缩 | 浊响 |
48 | 乌黑 | 蜷缩 | 清脆 |
49 | 乌黑 | 蜷缩 | 沉闷 |
50 | 乌黑 | 硬挺 | 浊响 |
51 | 乌黑 | 硬挺 | 清脆 |
52 | 乌黑 | 硬挺 | 沉闷 |
53 | 乌黑 | 稍蜷 | 浊响 |
54 | 乌黑 | 稍蜷 | 清脆 |
55 | 乌黑 | 稍蜷 | 沉闷 |
56 | 浅白 | 蜷缩 | 浊响 |
57 | 浅白 | 蜷缩 | 清脆 |
58 | 浅白 | 蜷缩 | 沉闷 |
59 | 浅白 | 硬挺 | 浊响 |
60 | 浅白 | 硬挺 | 清脆 |
61 | 浅白 | 硬挺 | 沉闷 |
62 | 浅白 | 稍蜷 | 浊响 |
63 | 浅白 | 稍蜷 | 清脆 |
64 | 浅白 | 稍蜷 | 沉闷 |
65 | Ø |
|
|
西瓜数据集如下:
编号 | 色泽 | 根蒂 | 敲声 | 好瓜 |
---|---|---|---|---|
1 | 青绿 | 蜷缩 | 浊响 | 是 |
2 | 乌黑 | 蜷缩 | 浊响 | 是 |
3 | 青绿 | 硬挺 | 清脆 | 否 |
4 | 乌黑 | 稍蜷 | 沉闷 | 否 |
接下来进行版本空间的计算:
版本空间为与训练集一致的“假设集合”。
在此‘西瓜例’中,我们的学习目标为“好瓜”,所以我们要通过训练集(表2),从假设空间中删除与正例不一致的假设、和(或)与反例一致的假设,最终将会获得与训练集一致(即对所有训练样本能够进行正确判断)的假设,这就是我们学得的结果,学得的假设集合即为要求的版本空间。步骤如下:
1) 根据表2的样本1,我们知“好瓜”的概念是成立的,所以先删除 ∅ 的假设。删除假设空间中的红色样本。
2) 删除与正例(好瓜)不一致的假设。
根据样本((色泽=青绿)^(根蒂=蜷缩)^(敲声=浊响))——>好瓜,删除橙色样本
根据样本((色泽=乌黑)^(根蒂=蜷缩)^(敲声=浊响))——>好瓜,在上一步的基础上再删除绿色样本
这里把((色泽=乌黑)^(根蒂=蜷缩)^(敲声=浊响))删除,这个和样本2符合,不要觉得心虚,因为利用样本2进行删除的时候也会删掉((色泽=青绿)^(根蒂=蜷缩)^(敲声=浊响))这样刚好留下了((色泽=*)^(根蒂=蜷缩)^(敲声=浊响))
3)删除与反例(不是好瓜)一致的假设。
根据样本((色泽=青绿)^(根蒂=硬挺)^(敲声=清脆))——>不是好瓜,在上一步的基础上再删除蓝色样本
根据样本((色泽=乌黑)^(根蒂=稍蜷)^(敲声=沉闷))——>不是好瓜,剩余假设空间中已无满足此条件可被删的假设。
此时,只剩余(5)、(8)、(29)与训练集一致。
(5) (色泽=*)^(根蒂=蜷缩)^(敲声=*)
(8) (色泽=*)^(根蒂=*)^(敲声=浊响)
(29)(色泽=*)^(根蒂=蜷缩)^(敲声=浊响)
即表1所对应的版本空间为:
色泽=*,根蒂=蜷缩,敲声=*
色泽=*,根蒂=*,敲声=浊响
色泽=*,根蒂=蜷缩,敲声=浊响
现实问题中,我们常面临很大的假设空间,但学习过程是根据有限的样本训练集进行的,那么对于不同版本的训练集,应该会有不同版本的“删除后”的假设空间与之对应。便称之为版本空间。
版本空间内每一个假设都可以判断上面数据集中的每一条数据,是好瓜还是不是好瓜,但是用不同的假设判断一条新数据可能会得出不一样的结果,这属于“归纳偏好”问题。