我试图通过观察使用归纳逻辑编程的人来学习拼图和棋盘游戏的规则。我使用 PROGOL,它是一个用 Prolog 编写的 ILP 程序。虽然对于某些游戏,它能够正确地给我规则,但对于其他一些游戏,由于缺乏反面例子,它不能。
例如,在河内塔谜题中,规则之一是较大的块不会放在较小的块之上。这是一个消极的规则。但是由于在训练期间没有发生此事件,因此没有可以从中学习此规则的明确负面示例。
简而言之,如何在 ILP 中生成负面示例?
我试图通过观察使用归纳逻辑编程的人来学习拼图和棋盘游戏的规则。我使用 PROGOL,它是一个用 Prolog 编写的 ILP 程序。虽然对于某些游戏,它能够正确地给我规则,但对于其他一些游戏,由于缺乏反面例子,它不能。
例如,在河内塔谜题中,规则之一是较大的块不会放在较小的块之上。这是一个消极的规则。但是由于在训练期间没有发生此事件,因此没有可以从中学习此规则的明确负面示例。
简而言之,如何在 ILP 中生成负面示例?
我认为您只能在 progol 中使用正数据进行学习?
http://link.springer.com/chapter/10.1007/3-540-63494-0_65
马格尔顿,斯蒂芬。“从积极的数据中学习。” 归纳逻辑编程。施普林格柏林海德堡,1997。358-376。
通过在 Progol 中执行此操作,将仅正数据模式的学习设置为开启:
|- 设置(仅位置)?