標籤:

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:機器學習 |