论文部分内容阅读
经典的机器学习算法大都是针对特定数据类型设计的,例如,ID3算法适用于离散型数据、BP算法适用于连续型数据。而在实际的学习问题中,学习数据与学习算法不匹配的情形不可避免地经常出现。通常的解决方案是通过属性转换使数据与算法的类型一致,这一模式被称为“面向算法的学习”(Algorithm Oriented Learning, AOL)。然而,实验表明AOL并不是一种有效的学习模式,一些重要的数据信息可能会在属性转换中被破坏,进而影响学习的效果。本文以基于结构的属性分类和算法分类观点,深入分析了信息在属性转换中损失的本质,并在此基础上提出了“面向结构的学习”(Structure Oriented Learning, SOL),该模式引入了具有一定结构复杂性的中间结构,并以此作为联系数据与算法的纽带——SOL要求数据和算法都转换成与中间结构一致的类型。中间结构的选择在SOL模式中是非常重要的。中间结构必须有一定的普遍性,使其能定义在大多数的属性集合上;又必须有一定的描述力,使其能对其他结构进行合理的解释。“格”正是这样一个合适的、具有一定结构复杂度的、既简单又复杂的结构。本文主题就是以“格”为中间结构的机器学习。在讨论具体的“面向格的机器学习”实例之前,本文梳理了“学习”的一般过程,提出了“机器学习机”的六元组表示,并在此基础上给出了“学习”相关概念的形式化定义。至此,本文的前半部分回答了以下三个问题,“什么是学习?”,“什么是面向结构的学习?”,“什么是面向格的学习?”。而本文的后半部分则回答了“怎样进行面向格的学习?”,这里讨论了两个“面向格的机器学习”的实例。本文讨论的第一个实例是基于格的规则归纳。本文首先提出了基于认知的带例外规则(rule with exception, RE)学习框架——CBREL,以及该框架下的CBREL-CBL算法和CBREL-ID3算法;接着,通过两种不同的方法分别将两个算法转换为SOL模式下“格”类算法,最后,本文通过大量实验比较了AOL模式与SOL模式运用于混合类型数据分类问题的学习效果。实验结果表明,“格嵌入+格算法”的分类结果明显好于“离散化+离散型算法”的分类结果,而没有表现出对“连续化+连续型算法”的优势。分析认为离散化是复杂结构向简单结构的转换,这一过程存在信息损失;连续化是简单结构向复杂结构的转换,这一过程没有信息损失。以上结论也验证了本文提出的关于信息损失原因的观点。本文讨论的第二个实例是基于半格的LDA类模型学习。LDA是应用于语料的主题模型,它将主题表示为词上的一种分布,而文档则是各种主题的随机混合。LDA类模型是LDA模型及其变形的统称。LDA类模型一般适用于未标注的语料(unannotated corpus),此时,模型的训练过程可以被看作是离散型数据上的聚类过程。本文讨论了如何在面向半格的学习模式下,将LDA类模型运用于由分析树属性(parser tree attribute)构成的标注语料(annotated corpus)。