Learning Explanatory Rules from Noisy Data 閱讀筆記0
附錄A 符號約定
用A,B表示ground atom的集合,比如 A = { p(a, b), p(b, c) }
用p,q表示predicate
用a,b表示常量
用X,Y表示變數
用a,b表示向量
用A,B表示矩陣
用x[i]表示向量的第i項
用A[i,j]表示矩陣的第i行,第j列的項
用A[i,:]表示第i行,用A[:,j]表示第j列
用×表示矩陣相乘, ⊙表示按位相乘,· 表示點積
附錄B ILP as Satisfiability
有個語言模板
其中
q/2表示arity(q)=2
一個ILP問題
里的B是背景事實
正例P是
負例N是
給q的兩個規則模板
是(v = 0, int = 0)表示沒有existentially quantified變數和沒有intensional predicate
是(v = 1, int = 1)表示有一個existentially quantified變數和一個intensional predicate
程序模板
其中
這裡沒有auxiliary predicate
對於規則模板
發現只有如下8種生成clause的情況
注意到裡面有相同的 atom 重複兩次,比如clause4
等價於
atom的重複不是有問題,每個clause的body有兩個atom,能否更好的適應矩陣運算
對於規則模板
有58個生成的clause,其前16是
為了表示 是否 讓其中某個生成的clause在程序R里使用,我們定義:
然後對於
的修改後的clause是
以及
的修改後的clause是
再看下ILP的問題,給定背景假設的集合B,正例P負例N,我們要找到一個clause集合R,滿足
轉換成一個可滿足性的問題就是
也就是把induction問題(找到一個規則的集合)轉成找到一個含有atom的子集F ? Φ的可滿足性問題
舉例來說,如果我們有背景事實
如果有正例
以及負例
然後如果滿足限制條件的F是
從這些clause里抽取一個程序R
換句話說R是
這個解定義q為p的 transitive closure
所有符號:
推薦閱讀:
※如何六個月內學會深度學習
※實現屬於自己的TensorFlow(三) - 反向傳播與梯度下降實現
※2-1 Model Representation
※數據嗨客 | 第6期:不平衡數據處理
※機器學習預測地震,信得過嗎?
TAG:機器學習 |