题1.2:与使用单个合取式来进行假设表示相比,使用“析合范式”将使得假设空间具有更强的表示能力。若使用最多包含k个合取式的析合范式来表达1.1的西瓜分类问题的假设空间,试估算有多少种可能的假设。
这道题目我是几乎只用了一些离散数学的方法,没涉及到统计或者编程,和网上的大部分做法思路不太一样。
所有可能的析合范式可以按等价关系(具体来说,如果两个析合范式对样本空间所有点的预测值相等即为等价)划分成一个个等价类,题目的意思就是求等价类的个数。
对任意等价类,可以用其中的某个析合范式S表示出来,S满足组成S的每个合取式的三个属性都取具体值而不取*(显然对每个等价类是都能找到这样一个S的)。则等价类的个数=代表等价类的满足要求的S的个数。再将这些S组成一个集合X。
然后再建立一个真值表集合Y,这个集合里的所有真值表都满足:
①有四列,分别表示色泽的取值、根蒂的取值、敲声的取值、是否为好瓜。
②这些真值表前三项的取值都为具体值而非*,并且一共有2*3*3行。
③真值表至少有一行的标记为T,不能每一行都为F。
并且规定满足这两点的真值表都属于这个真值表集合Y。
显然X到Y能建立一个双射f,f将任意S在样本空间的取值情况映射到对应的真值表上。为什么是双射呢?按照定义单射是没问题的(因为X中不同的S直接对应了不同的等价类,不同的等价类在样本空间有不同取值情况,对应的真值表也不同),然后因为随便给个真值表都能建立一个析取范式S满足组成S的每个合取式的三个属性都取具体值而不取*,所以是双射。
则等价类的个数=代表等价类的满足要求的S的个数=|X|=|Y|==2**(2*3*3)-1=262143。
不知道这样理解是否正确,欢迎大家讨论