提出了基于高阶归纳逻辑编程发现面向对象数据库中的频繁模式的算法。此算法使用高阶逻辑编程语言Escher作为数据及模式表示语言。由于高阶逻辑编程语言不仅能描述复杂结构的数据而且还能描述复杂的模式,以及Escher语言的强类型语法能有效缩小由于高阶逻辑编程语言较强表达能力所带来的较大的模式搜索空间,故此算法能充分利用面向对象数据库中丰富的语义信息引导频繁模式搜索过程且能发现复杂频繁模式。实验证明,此算法在效率和发现的频繁模式质量上都优于经典的WARMAR算法。
The paper presents an algorithm for discovering frequent patterns in object-oriented databases based on higher-order inductive logic programming. The algorithm adopts the higher-order logic programming language Escher to represent data and patterns. As the higher-order logic programming language not only can describe complex structured data but also can represent complex pattems, and the typed syntax of Escher can effectively reduce the huge search space of patterns caused by the stronger representation ability of the higher-order logic programming language, the proposed algorithm can take full advantage of rich semantic information of object-oriented databases to guide the process of search and find complex frequent patterns. The experiments show that the algorithm is superior to the WARMAR (a typical algorithm) in both the quality of frequent patterns and the efficiency.