Không gian Herbrand Herbrand universe UC của tập các mệnh đề C là tập các hạng thức cụ thể được xây dựng từ hàm và hằng trong C hoặc nếu C không chứa hằng thì cũng coi như nó chứa một
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
-
Phạm Đình Hiệu
HỌC CẤU TRÚC MẠNG LOGIC MARKOV VÀ ỨNG DỤNG
TRONG BÀI TOÁN PHÂN LỚP
LUẬN VĂN THẠC SĨ KHOA HỌC
Hà Nội - 2012
Trang 22
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
-
Phạm Đình Hiệu
HỌC CẤU TRÚC MẠNG LOGIC MARKOV VÀ ỨNG DỤNG
TRONG BÀI TOÁN PHÂN LỚP Chuyên ngành: Bảo đảm toán học cho máy tính và hệ thống tính toán
Mã số: 60 46 35
LUẬN VĂN THẠC SĨ KHOA HỌC
Người hướng dẫn khoa học: TS Nguyễn Thị Minh Huyền
Hà Nội - 2012
Trang 3MỤC LỤC
LỜI NÓI ĐẦU 6
CHƯƠNG 1 CƠ SỞ TOÁN HỌC 8
1.1 Lý thuyết đồ thị 8
1.2 Logic tân từ cấp một 9
1.2.1 Các khái niệm và ký hiệu 9
1.2.2 Công thức trong logic tân từ cấp một 10
1.2.3 Dạng chuẩn hội 12
1.3 Xác suất – thống kê 13
1.3.1 Các khái niệm 13
1.3.2 Công thức Bayes 15
1.3.3 Cực đại hóa xác suất có điều kiện 16
1.3.4 Xích Markov 17
1.3.5 Xích Markov Monte Carlo 19
1.3.6 Phương pháp lấy mẫu Gibbs 20
CHƯƠNG 2 MẠNG LOGIC MARKOV 21
2.1 Giới thiệu 21
2.2 Mạng Markov 22
2.3 Mạng logic Markov 24
2.4 Suy diễn 29
2.4.1 Suy diễn MAP/MPE 29
2.4.2 Suy diễn điều kiện 32
2.5 Học tham số và học cấu trúc 34
2.5.1 Học tham số 34
2.5.2 Học cấu trúc 39
CHƯƠNG 3 ỨNG DỤNG MẠNG LOGIC MARKOV TRONG BÀI TOÁN GÁN NHÃN VAI NGHĨA 3.1 Bài toán gán nhãn vai nghĩa 46
3.2 Mô tả dữ liệu sử dụng 46
Trang 44
3.3 Giới thiệu công cụ Thebeast 47
3.4 Các bước thực hiện bài toán 48
3.4.1 Dữ liệu và cấu trúc dữ liệu trong Thebeast 48
3.4.2 Xây dựng dữ liệu huấn luyện 49
3.5 Đánh giá kết quả thực nghiệm 52
TÀI LIỆU THAM KHẢO 55
Trang 5DANH MỤC HÌNH VẼ
Hình 1-1 Đồ thị G 8
Hình 1-2 Phân phối biên trên biến rời rạc 14
Hình 1-3 Phân phối biên cho biến liên tục 15
Hình 2-1 Minh họa cho mạng Markov 22
Hình 2-2 Mạng Markov nền 26
Hình 3-1 Biểu diễn cây cú pháp 50
Trang 66
LỜI NÓI ĐẦU
Trong sự phát triển về Công nghệ thông tin hiện nay vấn đề xử lý, tính toán không còn thuần túy là tính toán trên các dữ liệu kiểu số biểu diễn dưới dạng cấu trúc, bảng biểu hay véc tơ, vv Nó đã được phát triển mở rộng xử lý trên dữ liệu kiểu hình ảnh, âm thanh, văn bản, đồ thị và nhiều kiểu khác nữa Trong sự phát triển
đó của Công nghệ, học máy được xem là một lĩnh vực của trí tuệ nhân tạo với mục tiêu là nghiên cứu các thuật toán cho phép máy tính có thể học được các khái niệm Thường học máy được phân làm hai phương pháp: phương pháp quy nạp và phương pháp suy diễn Đến nay học máy có ứng dụng rộng khắp trong các ngành khoa học, sản xuất, đặc biệt những ngành cần phân tích khối lượng dữ liệu khổng lồ Một số ứng dụng thường thấy: Rôbốt, trò chơi, phân tích thị trường chứng khoán, phát hiện gian lận tài chính, phân tích ảnh thiên văn, phân loại chuỗi gene, quá trình hình thành gene, phân tích ảnh X-quang, các hệ chuyên gia chẩn đoán tự động, tìm kiếm, nhận dạng hay nhiều ứng dụng liên quan tới xử lý ngôn ngữ tự nhiên
Học quan hệ thống kê cũng là một trong các lĩnh vực của học máy, nó hướng tới sự kết hợp giữa học theo quan hệ và học theo thống kê nhằm xử lý các dữ liệu không chắc chắn với cấu trúc quan hệ phức tạp Có nhiều mô hình được phát triển
gần đây cho học quan hệ thống kê như mô hình quan hệ xác suất (Probabilistic
Relational Model) sử dụng logic kết hợp với các mạng Bayes hay Markov Trong
đó các mạng MLN (Markov Logic Network) mang tính tổng quát cao nhất, có thể
chuyển đổi sang các mô hình khác và ngày càng có nhiều nghiên cứu về các mạng này Mạng logic Markov có thể được xem như là một sự kết hợp hữu cơ giữa học logic và học thống kê Mục đích của MLN là mô tả một minh họa cho trước với một tập các công thức logic có trọng số Nó cho phép sử dụng những ưu điểm của logic tân từ cấp một là khả năng biểu diễn tri thức và các mối quan hệ phức tạp của tri thức, cùng với ưu điểm của mạng Markov có thể xử lý một cách hiệu quả sự không chắc chắn và giải quyết tri thức một cách đối lập và thiếu thông tin
Trang 7Mục tiêu của luận văn là tìm hiểu các mạng MLN và phương pháp học cấu trúc cho mạng MLN Luận văn cũng triển khai một ứng dụng giải quyết bài toán phân lớp với mạng MLN sử dụng phần mềm Thebeast Cụ thể ở đây là bài toán gán nhãn vai nghĩa trong lĩnh vực xử lý ngôn ngữ Xử lý ngôn ngữ chính là xử lý thông tin khi đầu vào là dữ liệu ngôn ngữ, tức là dữ liệu kiểu văn bản hay tiếng nói Các
dữ liệu liên quan đến ngôn ngữ viết (văn bản) và tiếng nói đang dần trở nên kiểu dữ liệu chính con người có và lưu trữ dưới dạng điện tử Việc xây dựng ngữ liệu mẫu cho bài toán gán nhãn vai nghĩa tương đối phức tạp, nên bước đầu thực hiện chúng tôi chỉ dùng giới hạn bài toán ở 2 vai nghĩa “tác thể” và “bị thể” trong câu
Bố cục luận văn được chia làm 3 chương:
Chương I: Cơ sở toán học
Trong chương này sẽ trình bày về một số kiến thức cơ bản được sử dụng trong luận văn liên quan tới lý thuyết đồ thị, logic và xác suất thống kê
Chương II: Mạng logic Markov
Chương này sẽ trình bày các kiến thức về mạng Markov, mạng logic Markov
và một số vấn đề về học máy với mạng logic Markov như suy diễn, học tham số và đặc biệt là học cấu trúc
Chương III: Ứng dụng mạng logic Markov trong bài toán gán nhãn vai nghĩa
Chương này sẽ trình bày về bài toán gán nhãn vai nghĩa, vấn đề xây dựng dữ liệu huấn luyện trong công cụ Thebeast cho bài toán gán nhãn vai nghĩa và đánh giá
kết quả
Trang 8Cho đồ thị Nếu có thì ta nói rằng là một cung và gọi là đỉnh đầu, gọi là đỉnh cuối của cung đó
Hai đỉnh kề nhau là hai đỉnh của cùng một cung Đỉnh nút là đỉnh kề với chính
nó
Định nghĩa 1.1.2 Đồ thị với được gọi là đồ thị con của
Định nghĩa 1.1.3 Hai đỉnh gọi là liên thông với nhau nếu chúng trùng nhau
hoặc có xích nối với nhau[3]
Đồ thị đối xứng gọi là đồ thị vô hướng tức là ta luôn có
Định nghĩa 1.1.4 Đồ thị vô hướng được gọi là đầy đủ nếu hai đỉnh bất kỳ đều
có cung nối với nhau[3]
Định nghĩa 1.1.5 Clic (Clique) của đồ thị là một đồ thị con đầy đủ[3]
Hình 1-1 Đồ thị G
Trang 9Clic cực đại là một clic với số nút là lớn nhất, không thể thêm bất kỳ nút nào nữa để cho nó vẫn còn là một clic
1.2.1 Các khái niệm và ký hiệu
Logic tân từ cấp một là một ngôn ngữ rất mạnh để biểu diễn những thông tin
có quan hệ phức tạp, cho phép ta mô tả thế giới với các đối tượng, các thuộc tính của đối tượng và các mối quan hệ giữa các đối tượng[9]
Một cơ sở tri thức xây dựng trên logic tân từ cấp một (KB) là một tập các câu hay các công thức trong logic tân từ cấp một Công thức được xây dựng bằng cách
sử dụng 4 loại ký hiệu: hằng, biến, hàm và vị từ[9], [12]
Ký hiệu hằng: dùng để chỉ các đối tượng trên một miền (Ví dụ miền chỉ người: Nga, Hùng,…)
Ký hiệu biến: dùng để biểu diễn các đối tượng trong miền (ví dụ x, y)
Ký hiệu vị từ: biểu diễn mối quan hệ giữa các đối tượng trong miền (ví dụ Bạn(x,y) biểu diễn quan hệ x là bạn của y) hay là thuộc tính của các đối tượng (ví dụ Hútthuốc(x) biểu diễn thuộc tính có hút thuốc của đối tượng x (x có hút thuốc))
Các ký hiệu phép toán logic: (hội), (tuyển), (kéo theo), (phủ định), (tương đương)
Trang 1010
Các ký hiệu lƣợng từ: (với mọi), (tồn tại)
Các ký hiệu ngăn cách: Dấu phẩy, dấu mở ngoặc, dấu đóng ngoặc
1.2.2 Công thức trong logic tân từ cấp một
Các hạng thức là các biểu thức mô tả các đối tƣợng Các hạng thức xác định
đệ quy nhƣ sau:
Các hằng, biến là hạng thức
Nếu là các hạng thức và là hàm thì là hạng thức Một hạng thức không chứa biến đƣợc gọi là một hạng thức nền Ví dụ: Nga là
ký hiệu hằng, MotherOf là ký hiệu hàm một biến, thì MotherOf (Nga) là một hạng
thức nền
Một công thức nguyên tử đƣợc định nghĩa là:
Nếu P là vị từ n biến và là các hạng thức thì là công thức nguyên tử
Các công thức đƣợc xây dựng một cách đệ quy từ các công thức nguyên tử bằng cách sử dụng các phép toán logic và các lƣợng từ Nếu và là các công thức thì những ký hiệu sau đây cũng là công thức: : F1, F1^F2, F1 F2, F1 F2, F1 F2, F1 và F1[9]
Mức ƣu tiên:
1 Các lƣợng từ có mức ƣu tiên cao nhất
2 Phép phủ định có mức ƣu tiên cao hơn các phép toán logic khác
3 Phép hội có mức ƣu tiên cao hơn phép tuyển
Ta có thể sử dụng các dấu ngoặc đơn để thực thi các mức ƣu tiên
Ví dụ:
1 Nga và anh trai cô ấy không có bạn chung:
2 Tất cả con chim đều bay:
Trang 11Công thức đóng:
Một biến nằm trong phạm vi của lượng từ gọi là biến ràng buộc Ví dụ là
Một biến nằm ngoài phạm vi của bất kỳ lượng từ nào gọi là biến tự do Ví dụ :
Một công thức được gọi là công thức đóng nếu nó không chứa biến tự do nào
Ở đây chúng ta chỉ quan tâm tới các công thức đóng
Một literal dương (Positive literal) là một công thức nguyên tử, một literal âm (negative literal) là một công thức nguyên tử ở dạng phủ định Các công thức trong
cơ sở tri thức KB (knowledge base) kết nối với nhau bởi phép hội, vì vậy một KB có
thể được coi là một công thức đơn lớn
Một hạng thức nền (hay hạng thức cụ thể) (ground term) là một hạng thức không chứa biến Một công thức nguyên tử nền (ground atom) là một công thức
nguyên tử mà tất cả các tham biến của nó đều là các hạng thức nền
Không gian Herbrand (Herbrand universe) U(C) của tập các mệnh đề C là
tập các hạng thức cụ thể được xây dựng từ hàm và hằng trong C (hoặc nếu C không chứa hằng thì cũng coi như nó chứa một hằng bất kỳ, giả sử là A) Nếu C chứa các hằng thì U(C) là hữu hạn (Ví dụ: Nếu C chỉ chứa duy nhất một hàm và không chứa hằng, U(C) =
Một minh họa (interpretation) là một ánh xạ giữa các hằng, vị từ và hàm
trong ngôn ngữ và các đối tượng, các hàm và các mối quan hệ trong miền Một
minh họa có thể là phép gán giá trị chân lý cho các vị từ Cùng với một minh họa,
nó gán một giá trị chân lý tới mọi công thức nguyên tử, và vì vậy tới mọi công thức trong cơ sở tri thức
Một công thức là thỏa được nếu và chỉ nếu tồn tại ít nhất một minh họa làm cho nó
đúng Vấn đề suy diễn cơ bản trong logic tân từ cấp một là xác định cơ sở tri thức
Trang 1212
KB có suy dẫn ra một công thức F hay không? Nghĩa là nếu F đúng với mọi minh họa khi KB đúng (ký hiệu KB ) Ta có thể viết lại: KB dẫn ra F nếu và chỉ nếu
KB F là không thỏa được Mọi cơ sở tri thức trong logic tân từ cấp một đều có
thể chuyển sang dạng mệnh đề (clausal form) Dạng mệnh đề cho cơ sở tri thức
trong logic tân từ cấp một là hội của các mệnh đề, trong đó mỗi biến đều có các lượng từ toàn thể Việc chuyển đổi này bao gồm việc xóa hết tất cả các lượng từ tồn tại bằng phương pháp Skolem Trong miền hữu hạn một công thức có lượng từ tồn tại có thể thay thế bởi một phép tuyển của các thay thế của nó
1.2.3 Dạng chuẩn hội
Mọi công thức trong logic tân từ cấp một có thể chuyển thành một công thức tương đương trong dạng chuẩn hội (CNF) , trong đó Q là lượng từ, là biến và là hội của các mệnh đề
Trang 131.3 Xác suất – thống kê
1.3.1 Các khái niệm
Định nghĩa 1.3.1 Xác xuất của biến cố A là một số không âm bằn trong
khoảng [0;1], ký hiệu là P(A), biểu thị khả năng xảy ra biến cố A và được xác định như sau:
Trong đó là số trường hợp thuận lợi cho , là số trường hợp có thể có khi phép thử thực hiện
Định nghĩa 1.3.2 Xác suất có điều kiện của biến cố với điều kiện biến cố
đã xảy ra là một con số không âm, được ký hiệu là , nó biểu thị khả năng xảy ra của biến cố trong tình huống biến cố đã xảy ra khi đó:
Định nghĩa 1.3.3 Biến ngẫu nhiên: Một biến nhận các giá trị của nó ứng với
một xác suất nào đấy gọi là biến ngẫu nhiên[1]
Định nghĩa 1.3.4 Hai biến ngẫu nhiên và là độc lập nếu
Định nghĩa 1.3.5 Phân phối đồng thời (joint distribution): Cho hai biến
ngẫu nhiên và được định nghĩa trên cùng một không gian xác suất, phân phối đồng thời của và là xác suất của các biến cố được định nghĩa trong véc tơ ngẫu nhiên của và
Định nghĩa 1.3.6 Phân phối biên (marginal distribution): Cho hai biến ngẫu
nhiên và , và là phân phối đồng thời của chúng Phân phối biên của là phân phối của mà được bỏ qua
Trang 1414
Các công thức cho phân phối đồng thời:
Trường hợp cho các biến rời rạc:
Trường hợp cho các biến liên tục:
trong đó và là phân phối điều kiện của khi biết
và của khi biết và là phân phối biên của và
Phân phối đồng thời cho các biến độc lập:
Trường hợp cho các biến rời rạc:
Trường hợp cho các biến liên tục:
Các công thức cho phân phối biên:
Trường hợp cho các biến rời rạc:
Minh họa bằng hình vẽ:
Hình 1-2 Phân phối biên trên biến rời rạc
Trang 15Trường hợp cho các biến liên tục:
Minh họa bằng hình vẽ:
1.3.2 Công thức Bayes
Cho biến cố và các biến cố sao cho[8]:
- Có tập rời nhau từng đôi một
-
Thì ta có công thức tổng:
Công thức Bayes [1]:
Trong đó:
A1, …, An là hệ đầy đủ : A1+ …+ An = Ω - không gian mẫu
Hình 1-3 Phân phối biên cho biến liên tục
Trang 1616
là xác suất xảy ra biến cố Ak
: Xác suất để biến cố B xảy ra P(B)>0
P(B| Ai) là xác suất để B xảy ra biết rằng Ai đã xảy ra rồi ( tỉ lệ xảy ra B trong Ai)
1.3.3 Cực đại hóa xác suất có điều kiện
Với một tập giả thiết có thể , hệ thống học sẽ tìm giả thiết có thể xảy ra nhất đối với các dữ liệu quan sát được Giả thiết này được gọi là giả thiết cực
đại hóa xác suất có điều kiện (maximum a posteriori – MAP) [6]
theo định lý Bayes
và là như nhau đối với mọi giả thiết
Ví dụ: Tập bao gồm giả thiết : Anh ta chơi tennis, : Anh ta không chơi tennis Tính giá trị của hai xác suất có điều kiện và , trong
đó là tập dữ liệu về thông tin về thời tiết như: trời nắng hay mưa, nhiệt độ,
độ ẩm, sức gió,…
Giả thiết có thể nhất nếu , ngược lại thì
Vì là như nhau đối với cả hai giả thiết nên có thể bỏ qua đại lượng Vì vậy chỉ cần tính hai biểu thức
và và đưa ra kết quả tương ứng
Nếu , thì kết luận anh ta chơi tennis
Ngược lại thì kết luận anh ta không chơi tennis
Giả sử trong phương pháp ước lượng hợp lý cực đại (hay đánh giá khả năng
xảy ra cao nhất – maximum likelihood estimation – MLE) tất cả các giá trị đều có
Trang 17giá trị xác suất tiên nghiệm như nhau : P( thì phương pháp MLE tìm giả thiết cực đại hóa giá trị trong đó gọi là khả năng xảy ra của
dữ liệu đối với
Vẫn với ví dụ trên, tập bao gồm hai giả thiết : Anh ta chơi tennis, : Anh
ta không chơi tennis lúc này là tập dữ liệu mà trong đó biết trời nắng, gió mạnh
là ĐLNN rời rạc Ký hiệu là tập giá trị của các Khi đó là một tập hữu hạn hay đếm được, các phần tử của nó được ký hiệu là Ta gọi
là không gian trạng thái của dãy
Định nghĩa 1.3.7 Ta nói rằng dãy các ĐLNN ( là một xích Markov nếu
Ta coi thời điểm là tương lai, là hiện tại còn là quá khứ Như vậy, xác suất có điều kiện của một sự kiện nào đó trong tương lai nếu biết hiện tại và quá khứ của hệ cũng giống như xác suất có điều kiện của nếu biết trạng thái hiện tại của hệ Đó chính là tính Markov của hệ Đôi khi tính Markov của
hệ còn phát biểu dưới dạng : Nếu biết trạng thái hiện tại của hệ thì quá khứ và
tương lai độc lập với nhau
Trang 1818
Giả sử là xác suất để xích tại thời điểm ở trạng thái sau bước, tại thời điểm chuyển sang trạng thái Đây là một con số nói chung phụ thuộc vào Nếu đại lượng này không phụ thuộc ta nói xích
là thuần nhất[7]
Ma trận xác suất chuyển
Giả sử là xích Markov rời rạc và thuần nhất Nói một cách chính xác là: Giả sử ( là không gian xác suất, là biến (đại lượng) ngẫu nhiên nhận giá trị trong tập đếm được là không gian trạng thái Khi đó, tính Markov và tính thuần nhất của có nghĩa là:
không phụ thuộc vào
được gọi là ma trận xác suất chuyển sau một bước, là xác suất
có điều kiện để hệ tại thời điểm (hiện tại) ở trạng thái , chuyển sang trạng thái tại thời điểm (tương lai)
Xác suất chuyển sau bước được định nghĩa theo công thức:
Trang 19Đặt và gọi là phân phối ban đầu của hệ
Ta có Và được gọi là phân phối dừng nếu
1.3.5 Xích Markov Monte Carlo
Tích phân Monte Carlo
Tiếp cận đầu tiên của Monte Carlo là một phương pháp phát triển bởi các nhà vật lý sử dụng phép sinh số ngẫu nhiên để tính toán Giả sử rằng ta phải tính toán tích phân rất phức tạp:
Nếu ta có thể phân tích hàm về dạng tích của một hàm và một hàm mật độ được định nghĩa trong khoảng
Tích phân có thể hiểu như là một kỳ vọng của hàm qua hàm mật độ
Vì vậy nếu ta sinh một số lượng lớn các biến ngẫu nhiên từ hàm mật độ thì:
Công thức này gọi là tích phân Monte Carlo
Ví dụ:
Trang 2020
Trong đó , khi suy ra
Một vấn đề khi áp dụng tích phân Monte Carlo là việc thu các mẫu từ các phân bố xác suất phức tạp Phương pháp giải quyết vấn đề này là phương pháp Markov chain Monte Carlo (MCMC) Ý tưởng đơn giản của MCMC là: Cho một phân phối xác suất trên tập , ta phải sinh ngẫu nhiên các phần tử của với phân phối MCMC thực hiện việc này bằng cách xây dựng một xích Markov với phân phối dừng và mô phỏng xích này Thuật toán sinh được dùng là phương pháp lấy mẫu Gibbs được trình bày dưới đây
1.3.6 Phương pháp lấy mẫu Gibbs
Cho tập các biến Giả thiết trạng thái hiện tại là
Trang 21CHƯƠNG 2 MẠNG LOGIC MARKOV 2.1 Giới thiệu
Logic tân từ cấp một là ngôn ngữ rất mạnh để biểu diễn những thông tin có quan hệ phức tạp, cho phép chúng ta mô tả một cách đầy đủ rộng lớn của tri thức Xác suất là một cách thức thông thường để biểu diễn những sự kiện hoặc kiến thức không chắc chắn
Kết hợp logic tân từ cấp một và xác suất sẽ cho phép xây dựng các mối quan
hệ dựa trên xác suất phức tạp của dữ liệu nằm trong miền được quan tâm Vấn đề này được quan tâm và phát triển trong một số năm gần đây trong các nghiên cứu về học quan hệ thống kê, khai phá dữ liệu nhiều quan hệ, vv
Mô hình đồ họa: Là mô hình biểu diễn sự kết hợp giữa lý thuyết xác suất và
lý thuyết đồ thị Nó cung cấp một công cụ tự nhiên để giải quyết hai vấn đề xảy ra trong toán học ứng dụng và trong kỹ thuật: Không chắc chắn và phức tạp Đặc biệt
nó đóng vai trò quan trọng trong việc phân tích và thiết kế các thuật toán học máy
Về mặt cơ bản thì ý tưởng của mô hình đồ họa là dựa vào khái niệm của mô đun: Một hệ thống phức tạp được xây dựng bằng việc kết nối các phần đơn giản hơn Về phía lý thuyết đồ thị cung cấp cả giao diện trực quan mà con người có thể mô hình các tập hợp của các biến cũng như cấu trúc dữ liệu để thiết kế các thuật toán mục đích chung hiệu quả
Chương này sẽ giới thiệu một mô hình kết hợp xác suất với logic tân từ cấp một, mới được đưa ra năm 2004[16] Đó là mạng logic Markov, mô hình biểu diễn
cơ sở tri thức dựa trên logic tân từ cấp một với một trọng số kèm theo cho mỗi công thức và nó có thể được coi như là một mẫu cho việc xây dựng các mạng Markov Nội dung trình bày bao gồm: Mạng Markov, mạng logic Markov, suy diễn trên mạng logic Markov, học tham số và đặc biệt là học cấu trúc cho mạng logic Markov
Trang 2222
2.2 Mạng Markov
Mạng Markov[12] (hay còn gọi là trường ngẫu nhiên Markov) là mô hình cho
phân phối đồng thời (joint distribution) của một tập hợp các biến
Nó bao gồm một đồ thị vô hướng và một tập các hàm tiềm năng Đồ thị có một nút cho mỗi biến, và có một hàm tiềm năng cho mỗi clique trong đồ thị Hàm tiềm năng là hàm giá trị thực không âm xác định cho từng trạng thái của các clique Phân phối đồng thời được biểu diễn bởi mạng Markov cho bởi công thức sau:
(2.1) Trong đó là trạng thái của clique thứ (nghĩa là trạng thái của các biến
mà xuất hiện trong clique) Z được gọi là hàm phân hoạch (partition function), cho
Trang 23Giả sử ta muốn tính xác suất:
Vậy:
Trang 2424
Thông thường mạng Markov được biểu diễn qua mô hình log tuyến tính (
, với mỗi hàm tiềm năng được thay thế bởi hàm mũ của tổng trọng số của các đặc trưng của trạng thái:
Mỗi đặc trưng là một hàm giá trị thực bất kỳ của trạng thái Phần này sẽ tập trung vào các đặc trưng nhị phân, Nếu chuyển trực tiếp từ dạng hàm tiềm năng (phương trình 2.1), ta sẽ có một đặc trưng tương ứng với mỗi trạng thái
có thể của mỗi clique, với trọng số của nó là Số đặc trưng này là hàm mũ của kích thước các clique Tuy nhiên chúng ta có thể dùng một số lượng nhỏ hơn các đặc trưng (chẳng hạn hàm logic của trạng thái của clique), cho phép biểu diễn gọn hơn dạng hàm tiềm năng, đặc biệt là khi có các clique kích thước lớn Mạng logic Markov sẽ tận dụng khả năng này
2.3 Mạng logic Markov
Cơ sở tri thức (KB- knowledge base) dựa trên logic tân từ cấp một được xem
như là tập các ràng buộc chặt trên tập các minh họa có thể: Nếu một minh họa chỉ vi phạm một công thức thì nó có xác suất bằng không Ý tưởng đơn giản trong mạng logic Markov là để nới lỏng ràng buộc này: Khi một minh họa vi phạm một công thức trong cơ sở tri thức thì nó có xác suất thấp, nhưng không phải là không thể có Càng ít công thức mà minh họa đó vi phạm thì xác suất xảy ra của minh họa đó càng lớn Mỗi công thức có một trọng số kèm theo phản ánh hạn chế đó mạnh như thế nào: trọng số càng cao thì sự khác biệt trong xác suất giữa một minh họa thỏa mãn công thức và một minh họa không thỏa mãn càng lớn
Định nghĩa 2.2.1 Một mạng logic Markov là một tập các cặp , trong
đó là công thức trong logic tân từ cấp một và là một số thực Cùng với tập hữu hạn các hằng số , nó định nghĩa một mạng Markov như sau:
Trang 25a chứa một nút nhị phân cho mỗi công thức nguyên tử nền có thể của
mỗi vị từ xuất hiện trong Giá trị của nút đó bằng 1 nếu công thức
nguyên tử nền là đúng và bằng 0 nếu ngược lại
b chứa một đặc trưng cho mỗi công thức nguyên tử nền có thể của mỗi
công thức xuất hiện trong L Giá trị của đặc trưng này là 1 nếu như công
thức nguyên tử đúng và sai nếu ngược lại Trọng số của đặc trưng đó là
tương ứng với trong L
Một mạng logic Markov được xem như là một mẫu cho việc xây dựng các mạng Markov Cho các tập hằng khác nhau thì sẽ cho ra các mạng khác nhau và các mạng này có thể có kích thước rất lớn, nhưng tất cả chúng đều có những quy tắc nào đó trong cấu trúc và các tham biến cho bởi mạng logic Markov (ví dụ tất cả các công thức nền sẽ có cùng một trọng số) Chúng ta gọi mỗi một mạng Markov này là mạng Markov nền để phân biệt nó với mạng logic Markov Luận văn này sẽ tập trung vào mạng logic Markov mà các công thức của nó là các mệnh đề không có
hàm (function free clause) và nó cũng được giả thiết trên miền đóng đảm bảo rằng
các mạng Markov được sinh ra là hữu hạn Trong trường hợp này các công thức nền được xác định bằng cách thay thế các biến của nó bằng tất cả các hằng có thể[12], [16], [17]
Ví dụ: Để xây dựng minh họa này, giả sử ta xây dựng mạng Markov nền từ tập gồm hai công thức[17]:
Trang 2626
Ví dụ trên ta có một miền gồm ba vị từ Friends(person, person),
Smoke(person), Cancer(person), ta viết ngắn tên các vị từ này thay cho
Friends(x, y), cho Smoke(x), cho Cancer(x) Thay thế biến , bởi
hai hằng số trong tập hằng C={A, B} ta có: Smoke(A), Smoke(B), Cancer(A), Cancer(B), Friends(A, A), Friends(A, B), Friends(B, A), Friends(B, B) là các nốt (đỉnh) của mạng Markov Thay biến trong công thức đầu bởi hằng số A, ta có
là một thể hiện của mạng
Từ định nghĩa 2.2.1, phương trình 2.1 và phương trình 2.2 phân phối xác suất
qua các minh họa x bởi mạng Markov nền được cho bởi:
trong đó là số lượng các thay thế đúng của trong , là trạng thái (giá trị chân lý) của các công thức nguyên tử xuất hiện trong , và
Cũng từ định nghĩa 2.2.1 ta có nhận xét như sau:
1 Các vị từ trong một công thức nền tạo ra một clique trong , không cần thiết là một clique cực đại Cấu trúc của mạng Markov nền được xác định
Hình 2-2 Mạng Markov nền
Trang 27như sau: Có một cạnh giữa hai nút của khi và chỉ khi các vị từ nền xuất hiện cùng nhau trong ít nhất một công thức nền trong
2 Một mạng logic Markov mà không có biến gọi là mạng Markov tầm thường Bất kỳ một mô hình log-linear trên các biến kiểu nhị phân đều có thể được biểu diễn như một mạng logic Markov, khi đó mỗi trạng thái của một clique được định nghĩa bởi hội của các literal
3 Một mạng logic Markov khác với một cơ sở tri thức biểu diễn bởi logic tân từ cấp một vì nó có thể cung cấp các kết quả hữu ích cho dù nó chứa những mâu thuẫn Một mạng logic Markov cũng có thể thu được bằng cách ghép các
cơ sở tri thức thậm chí chúng không tương thích với nhau hoàn toàn Khi các trọng số tăng dần, thì mạng logic Markov sẽ tiến dần về cơ sở tri thức logic
4 Mỗi trạng thái của biểu diễn một minh họa có thể Khi làm việc với mạng logic Markov, các giả thiết sau đảm bảo rằng tập các minh họa có thể
cho (L, C) là hữu hạn và mạng có được biểu diễn là duy nhất cũng như phân phối xác suất được định nghĩa tốt trên các minh họa đó bất chấp ngữ nghĩa
và miền chứa minh họa đó[15], [16]
Xây dựng công thức nền
Để làm rõ những nhận xét trên, sau đây chúng ta sẽ đưa ra các giả thiết làm đơn giản hóa việc sử dụng mạng logic Markov Những giả thiết này là khá hợp lý trong hầu hết các ứng dụng thực tế Ta sẽ mô tả ở dưới dây:
1 Tên duy nhất: Các hằng khác nhau thì chỉ các đối tượng khác nhau
2 Miền đóng: Chỉ có các đối tượng trong miền được biểu diễn bởi các hằng và
các hàm (L, C)
3 Hàm xác định: Với mỗi hàm xuất hiện trong L, giá trị của hàm được áp
dụng cho một bộ có thể của các tham số và là một phần tử trong C
Giả thiết 3 cho phép chúng ta thay thế các hàm bằng các giá trị của chúng khi thay thế các công thức Các thay thế có thể của một vị từ trong định nghĩa 2.2.1 thu được một cách đơn giản bằng việc thay thế mỗi biến trong vị từ đó với mỗi hằng
Trang 2828
trong C, và thay thế mỗi hàm trong vị từ bằng hằng tương ứng Thuật toán đơn giản
được viết ở thuật toán 1:
Thuật toán 1 Xây dựng tất cả các công thức nền
function Ground(F, C)
inputs: F (công thức trong logic tân từ cấp một)
C (tập các hằng)
output: GF (tập các công thức nền)
calls: CNF(F, C) (chuyển F sang dạng chuẩn hội, thay thế các công
thức có lượng từ tồn tại bằng các phép tuyển của các thay thế của chúng trên C)
for each hàm (các tham số đều là hằng)
với được thay thế bởi ,
until không chứa hàm nào
return
Giả thiết 1 (tên duy nhất) có thể được thay thế bởi việc đưa ra vị từ tương đương, đó là (ta có thể viết tắt là ) và vì thế ta có thêm một giả