Cấu trúc của một mạng logic của Markov là tập hợp các công thức hoặc điều khoản để
mà chúng tôi chú trọng. Về nguyên tắc, cấu trúc này có thể được học hoặc được sửa đổi
bằng cách sử dụng bất kỳ kỹ thuật lập trình logic quy nạp (ILP). Tuy nhiên, kể từ khi một MLN
đại diện cho một phân phối xác suất, kết quả tốt hơn nhiều thu được bằng cách sử dụng
một chức năng đánh giá dựa trên giả khả năng, chứ không phải là những người ILP điển hình
như độ chính xác và độ bao phủ [18]. Đăng nhập-likelihood hoặc có điều kiện log-likelihood là
có khả năng đánh giá chức năng tốt hơn, nhưng là bao la đắt hơn để tính toán. Trong các thí nghiệm trên hai tập dữ liệu thực tế, học tập MLN cấu trúc của chúng tôi
tìm thấy thuật toán tốt hơn MLN quy tắc hơn CLAUDIEN [6], lá [42], Aleph [54],
và thậm chí là một cơ sở kiến thức viết tay.
MLN học cấu trúc có thể bắt đầu từ một mạng lưới trống hoặc từ một hiện
KB. Dù bằng cách nào, chúng tôi đã tìm thấy nó hữu ích để bắt đầu bằng cách thêm tất cả các điều khoản đơn vị
(các nguyên tử đơn) đến MLN. Trọng lượng của những chụp (khoảng nói)
phân bố biên của các nguyên tử, cho phép các khoản thời gian để tập trung vào
phụ thuộc mô hình nguyên tử. Để mở rộng mô hình ban đầu này, chúng ta hoặc là liên tục
tìm thấy những điều khoản tốt nhất sử dụng tìm kiếm beam và thêm nó vào MLN, hoặc thêm cả "tốt"
khoản của chiều dài l khoản trước khi cố gắng chiều dài l + 1. khoản Ứng viên được
hình thành bằng cách thêm mỗi vị (phủ nhận hoặc không) cho mỗi khoản hiện tại,
với tất cả các kết hợp có thể có của các biến, chịu sự ràng buộc mà ít nhất
một biến số trong các vị mới phải xuất hiện trong mệnh đề hiện tại. Hand-mã hóa
các khoản cũng được thay đổi bằng cách loại bỏ các vị.
Bây giờ chúng ta thảo luận về các biện pháp đánh giá, khai thác công trình khoản, tìm kiếm
chiến lược và phương pháp tăng tốc trong chi tiết hơn.
Như một biện pháp đánh giá, pseudo-likelihood (Equation 5) có xu hướng đưa ra không đáng có
trọng lượng tới lớn nhất-arity predicates, dẫn đến mô hình nghèo của phần còn lại. Chúng tôi
do đó xác định trọng pseudo-log-likelihood (WPLL) như
Markov L ogic 107
g lo Pw • (X = x) =?
r ∈R
c
r
gr
k?
= 1
log Pw (Xr, k = xr, k | MBX (Xr, k)) (7)
trong đó R là tập hợp các nguyên tử đầu tiên đặt hàng, gr là số groundings của nguyên tử firstorder r, và xr, k là giá trị thật (0 hoặc 1) của nền tảng thứ k của r. Việc
lựa chọn trọng lượng nguyên tử cr phụ thuộc vào mục tiêu của người dùng. Trong thí nghiệm của chúng tôi, chúng tôi
chỉ đơn giản là đặt cr = 1 / gr, trong đó có các tác dụng của trọng số tất cả các bậc vị
không kém. Nếu mô hình hóa một vị là không quan trọng (ví dụ, bởi vì nó sẽ luôn luôn là
một phần của các bằng chứng), chúng tôi đặt trọng lượng của nó không. Để chống overfitting, chúng ta trừng phạt
các WPLL với một cấu trúc trước của e -α Fi = 1 di, nơi di là số các chữ
đó khác nhau giữa các phiên bản hiện tại của các khoản và các bản gốc. (Nếu
mệnh đề là mới, điều này chỉ đơn giản là chiều dài của nó.) Điều này cũng tương tự như các phương pháp được sử dụng trong
việc học mạng Bayes [14].
Một vấn đề nghiêm trọng tiềm tàng phát sinh khi đánh giá các khoản ứng viên
sử dụng WPLL là tối ưu (WPLL tối đa) trọng lượng cần phải được tính toán cho mỗi ứng cử viên. Cho rằng đây liên quan đến việc tối ưu hóa số, và
có thể cần phải được thực hiện hàng ngàn hoặc hàng triệu lần, nó có thể dễ dàng thực hiện các thuật toán quá chậm để được thực tế. Chúng ta tránh nghẽn này bằng cách đơn giản khởi
L-BFGS với trọng lượng hiện tại (và không cân đối với một điều khoản mới). Secondorder, phương pháp bậc hai tụ như L-BFGS được biết đến là rất nhanh, nếu
bắt đầu gần tối ưu. Đây là những gì xảy ra trong trường hợp của chúng tôi; L-BFGS thường
hội tụ chỉ trong một vài lần lặp lại, đôi khi một. Thời gian cần thiết để đánh giá
một điều khoản là trong thực tế bị chi phối bởi thời gian cần thiết để tính toán số lượng của nó
groundings đúng trong các dữ liệu. Thời gian này có thể được giảm đáng kể sử dụng lấy mẫu
và kỹ thuật khác [18].
Khi học một MLN từ đầu (tức là, từ một tập hợp các điều khoản đơn vị), các
nhà điều hành tự nhiên để sử dụng là việc bổ sung thêm một chữ để một mệnh đề. Khi tinh chỉnh một
mã hóa bằng tay KB, mục tiêu là để sửa chữa sai sót được thực hiện bởi các chuyên gia của con người.
Những lỗi này bao gồm các điều kiện Không ghi từ các quy định và bao gồm cả những người giả mạo,
và có thể được sửa chữa bằng cách khai thác thêm và loại bỏ các chữ từ một mệnh đề.
Đây là những các nhà khai thác cơ bản mà chúng ta sử dụng. Ngoài ra, chúng tôi đã phát hiện ra rằng nhiều
lỗi phổ biến (sai hướng của ý nghĩa, sử dụng sai các từ nối với
định lượng, vv) có thể được điều chỉnh ở mức độ khoản bằng cách lật các dấu hiệu của
các nguyên tử, và chúng tôi cũng cho phép điều này. Khi thêm một chữ để một điều khoản, chúng tôi xem xét tất cả
những cách có thể trong đó các biến của chữ có thể được chia sẻ với những cái hiện có,
chịu sự ràng buộc về nghĩa đen mới phải có ít nhất một biến
xuất hiện trong một hiện tại. Để kiểm soát kích thước của không gian tìm kiếm, chúng tôi thiết lập một
giới hạn về số lượng các biến riêng biệt trong một mệnh đề. Chúng tôi chỉ cố gắng loại bỏ các chữ
từ các khoản tay mã hóa ban đầu hoặc con cháu của họ, và chúng tôi chỉ xem xét
loại bỏ một chữ nếu nó lá ít nhất một con đường của các biến được chia sẻ giữa mỗi
cặp chữ còn lại.
Chúng tôi đã thực hiện hai chiến lược tìm kiếm, một nhanh hơn và . một hoàn chỉnh hơn
các phương pháp tiếp cận đầu tiên thêm khoản vào một trong các MLN tại một thời điểm, sử dụng tìm kiếm beam
để tìm các điều khoản tốt nhất để thêm: bắt đầu với các điều khoản đơn vị và những người expertsupplied, chúng tôi áp dụng mỗi lần thêm chữ pháp lý và xóa từng khoản,
108 P. D omin gos et al.
giữ cho b cái tốt nhất, áp dụng các toán tử để những người, và lặp lại cho đến khi không có điều khoản mới
cải thiện WPLL. Các khoản được chọn là một trong những với WPLL cao nhất được tìm thấy ở
bất cứ lặp đi lặp lại của việc tìm kiếm. Nếu mệnh mới là một sự tinh tế của một bàn tay mã
một, nó thay thế nó. (Chú ý rằng, mặc dù cả hai chúng tôi thêm và xóa chữ, không có
vòng lặp có thể xảy ra bởi vì mỗi thay đổi phải cải thiện WPLL để được chấp nhận.)
Phương pháp thứ hai cho biết thêm k khoản tại một thời gian để các MLN, và cũng tương tự như
của McCallum [30 ]. Ngược lại để tìm kiếm beam, có thêm các điều khoản tốt nhất
của bất kỳ chiều dài được tìm thấy, cách tiếp cận này cho biết thêm tất cả "tốt" khoản của chiều dài l trước khi
thử bất kỳ chiều dài l + 1. Chúng tôi gọi nó là tìm kiếm ngắn nhất đầu tiên.
Các thuật toán được mô tả trong các trước phần có thể rất chậm, đặc biệt là trong các lĩnh vực lớn. Tuy nhiên, họ có thể được tăng tốc đáng kể bằng cách sử dụng một sự kết hợp
của kỹ thuật mô tả trong Kok và Domingos [18]. Chúng bao gồm các ngưỡng lỏng tụ, các nguyên tử mẫu phụ, khoản, kết quả bộ nhớ đệm, và đặt hàng
các điều khoản để tránh việc đánh giá các khoản ứng viên tương tự hai lần.
Gần đây, Mihalkova và Mooney [31] giới thiệu BUSL, một sự thay thế, thuật toán học của cấu trúc dưới lên cho logic Markov. Thay vì mù quáng xây dựng các khoản ứng viên một đen một lúc, họ để cho dẫn dữ liệu huấn luyện
và hạn chế xây dựng mệnh đề. Đầu tiên, họ sử dụng một mệnh đề Markov cấu trúc mạng người học để tạo ra một đồ thị của các mối quan hệ giữa các nguyên tử. Sau đó,
họ tạo điều từ con đường trong đồ thị này. Bằng cách này, BUSL tập trung vào
các khoản có hỗ trợ trong dữ liệu huấn luyện. Trong các thí nghiệm trên ba bộ dữ liệu,
đánh giá BUSL nhiều điều khoản ứng cử viên ít hơn so với thuật toán của chúng tôi từ trên xuống,
chạy nhanh hơn, và học được mô hình chính xác hơn.
Chúng tôi hiện đang khảo sát thêm để MLNs học, bao gồm cả tự động phát minh vị mới (hoặc, trong thuật ngữ thống kê , Sự khám phá
các biến ẩn) [19]
đang được dịch, vui lòng đợi..
