Learning logic programs by explaining their failures
원문 초록
Scientists form hypotheses and experimentally test them. If a hypothesis fails (is refuted), scientists try to explain the failure to eliminate other hypotheses. The more precise the failure analysis the more hypotheses can be eliminated. Thus inspired, we introduce failure explanation techniques for inductive logic programming. Given a hypothesis represented as a logic program, we test it on examples. If a hypothesis fails, we explain the failure in terms of failing sub-programs. In case a positive example fails, we identify failing sub-programs at the granularity of literals. We introduce a failure explanation algorithm based on analysing branches of SLD-trees. We integrate a meta-interpreter based implementation of this algorithm with the test-stage of the Popper ILP system. We show that fine-grained failure analysis allows for learning fine-grained constraints on the hypothesis space. Our experimental results show that explaining failures can drastically reduce hypothesis space exploration and learning times.
함께 살펴볼 논문
공통 태그를 근거로 연결했습니다. 실제 인용 관계나 논문의 우수성을 뜻하지 않습니다.
Inductive Learning of Robot Task Knowledge from Raw Data and Online Expert Feedback
Learning Rules Explaining Interactive Theorem Proving Tactic Prediction
Learning Robust Reward Machines from Noisy Labels
Relational decomposition for program synthesis
AutoCoder: Enhancing Code Large Language Model with \textsc{AIEV-Instruct}
Learning big logical rules by joining small rules
토론
이 논문과 연결된 포럼 글이 아직 없습니다.