本文介绍了一种新的示例式机器学习算法,旨在解决传统算法在处理大量属性和实例时效率低下甚至无法完成任务的问题。这种算法的核心思想是通过构建规则来覆盖尽可能多的正例,同时避免覆盖反例,以此提高学习效率。
算法定义了一个有限的实例空间E,其中包含了所有可能的属性值组合。每个实例r由其属性值Dj组成,属性下标集合IV表示属性的种类。正例集P、反例集N和无关集D分别表示与学习任务相关的实例类别,且它们之间互不相交。
在学习过程中,算法从空公式开始,尝试构建一个临时公式来覆盖P中的正例。如果这个公式同时也覆盖了反例N,则需要添加新的选择子以排除反例。这个过程持续进行,直到不再覆盖反例,此时形成的公式就成为规则的一部分。正例一旦被覆盖,就会从P中移出,如果P变为空集,算法结束,否则继续生成下一个规则,直到P为空。
算法的目标是最优化规则,即寻找具有最少公式数量且公式中包含最少选择子的规则。由于这是一个NP-C问题,难以找到精确的最优解,因此算法采取启发式策略来逼近最优结果。具体包括以下三个策略:
1. 选择MP(某个矩阵的最大元素值)对应属性值构造选择子,加入当前公式中,以覆盖最多的正例,减少结果公式数量。如果有多个最大元素,优先选择IV-N中值较小的属性,若仍有多个选项,可根据用户定义的属性优先级或随机选择。
2. 使用只在正例集中出现而在反例集中未出现的属性值构建选择子,这样可以直接形成结果,减少选择子的数量。如果有多个这样的候选属性,优先选择覆盖更多正例的属性。
3. 当策略1和2冲突时,策略2优先于策略1执行,因为直接形成结果的效率更高。
这种示例式机器学习新算法通过优化选择子的构造和优先级,提高了处理大规模属性和实例的学习效率,对于处理复杂数据集提供了新的解决方案。同时,算法的灵活性允许用户根据特定需求调整属性优先级,增强了算法的适应性。然而,文中并未详细介绍如何处理属性间的关系以及如何评估和验证算法的性能,这些都是实际应用中需要进一步研究和探讨的关键点。