Trong khi đó, các hệ thống phân lớp đối tượng dựa trên phương pháp học với giám sát yếu chỉ cần thông tin về sự xuất hiện của các phân lớp đối tượng trong ảnh huấn luyện mà không cần biế
Trang 1ĐẠI HỌC QUỐC GIA TP HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÙI LÊ THUẬN
NGHIÊN CỨU CÁC PHƯƠNG PHÁP PHÂN LỚP ĐỐI TƯỢNG TRÊN ẢNH DỰA TRÊN
MULTIPLE INSTANCE LEARNING
KHÓA LUẬN CAO HỌC NGÀNH KHOA HỌC MÁY TÍNH
Mã số : 60480101
TP HỒ CHÍ MINH - 2016
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÙI LÊ THUẬN
NGHIÊN CỨU CÁC PHƯƠNG PHÁP PHÂN LỚP ĐỐI TƯỢNG TRÊN ẢNH DỰA TRÊN
MULTIPLE INSTANCE LEARNING
KHÓA LUẬN CAO HỌC NGÀNH KHOA HỌC MÁY TÍNH
Mã số : 60480101
NGƯỜI HƯỚNG DẪN KHOA HỌC:
TS NGÔ ĐỨC THÀNH
TP HỒ CHÍ MINH - 2016
Trang 3Tôi xin chân thành cảm ơn các thầy, cô và các bạn ở Phòng thí nghiệm Truyền thông Đa phương tiện – Trường Đại học Công nghệ thông tin đã hỗ trợ, tạo điều kiện thuận lợi cũng như đóng góp những ý kiến thiết thực giúp tôi hoàn thành tốt khóa luận
Cuối cùng, tôi xin gửi lời cảm ơn đến gia đình, những người thân yêu luôn bên cạnh và động viên tôi trong suốt quá trình học tập và thực hiện khóa luận này
Học viên Bùi Lê Thuận
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu độc lập của bản thân Các số liệu, kết quả trình bày trong luận văn này là trung thực Những tƣ liệu đƣợc sử dụng trong luận văn có nguồn gốc và trích dẫn rõ ràng, đầy đủ
Tác giả
Bùi Lê Thuận
Trang 5Mục lục
MỤC LỤC
LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
MỤC LỤC 1
DANH MỤC CÁC CHỮ VIẾT TẮT 3
DANH MỤC CÁC HÌNH VẼ 4
DANH MỤC CÁC BẢNG 6
MỞ ĐẦU 7
CHƯƠNG 1 TỔNG QUAN 9
1.1 Phân lớp đối tượng trên ảnh 9
1.1.1 Khái niệm 9
1.1.2 Quá trình phân lớp 10
1.1.3 Ứng dụng của hệ thống phân lớp ảnh 10
1.2 Mô hình máy học 11
1.2.1 Phương pháp học có giám sát đầy đủ 11
1.2.2 Phương pháp học có giám sát yếu 12
CHƯƠNG 2 CÁC CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN 14
2.1 Các phương pháp biểu diễn ảnh trong mô hình phân lớp 14
2.1.1 Tình hình nghiên cứu 14
2.1.2 Mô hình “Bag of Words” 15
2.2 Các thuật toán phân lớp dựa trên MIL 16
2.2.1 Tình hình nghiên cứu 16
2.2.2 Lựa chọn hướng tiếp cận 18
CHƯƠNG 3 MULTIPLE INSTANCE LEARNING 20
3.1 Giới thiệu 20
3.2 Công thức tổng quát của MIL 20
3.3 Support Vector Machine 20
3.3.1 Định nghĩa 20
3.3.2 Các mô hình phân lớp SVM 22
Trang 63.3.3 Kernel Trick 25
3.3.4 Bài toán đối ngẫu 26
3.3.5 Đánh giá 28
3.4 Các thuật toán tiêu biểu 29
3.4.1 Thuật toán mi-SVM 29
3.4.2 Thuật toán MI-SVM 31
3.4.3 Thuật toán spatial-MI-SVM 35
3.5 Các thuật toán đề xuất 40
3.5.1 Thuật toán top-MI-SVM 40
3.5.2 Thuật toán top-spatial-MI-SVM 45
CHƯƠNG 4 THỰC NGHIỆM 49
4.1 Môi trường thực nghiệm 49
4.1.1 Bộ dữ liệu ảnh Caltech 101 49
4.1.2 Công cụ 49
4.2 Xây dựng bộ dữ liệu 49
4.2.1 Phân tách dữ liệu huấn luyện và kiểm thử 49
4.2.2 Xây dựng các “bag” và “instance” 50
4.2.3 Biểu diễn ảnh 52
4.2.4 Điều chỉnh bộ dữ liệu vector 53
4.3 Xây dựng mô hình phân lớp 55
4.3.1 Tham số của thuật toán 55
4.3.2 Các bước thực thi 55
4.4 Kết quả 56
4.4.1 Tổng quát 56
4.4.2 Chi tiết 58
4.4.3 Nhận xét 60
CHƯƠNG 5 KẾT LUẬN 61
TÀI LIỆU THAM KHẢO 62
Trang 7instance Selection
Reduction for Multiple-Instance learning
Trang 8sự khác nhau trong việc gán nhãn cho dữ liệu huấn luyện 12
Hình 2.1 Quá trình xây dựng codebook trong mô hình Bag of Words 15 Hình 2.2 Sơ đồ lựa chọn hướng tiếp cận để giải quyết bài toán phân lớp đối tượng
ảnh và các thuật toán sẽ trình bày trong khóa luận 19
Hình 3.1 Siêu phẳng thực hiện phân chia tập dữ liệu thành 2 lớp trong không gian
2 chiều 21
Hình 3.2 Tập dữ liệu bị nhiễu khi thực hiện phân lớp 23 Hình 3.3 Ánh xạ tập dữ liệu bất khả phân tách tuyến tính từ không gian 2 chiều
sang không gian 3 chiều 24
Hình 3.4 Phân biệt 3 trường hợp khi thực hiện duyệt qua tất cả các “bag” dương
trong thuật toán mi-SVM 30
Hình 3.5 Lựa chọn “instance” có giá trị hàm phân lớp lớn nhất làm đại diện cho
“bag” dương 34
Hình 3.6 Phân vùng A và phân vùng B được xem là trùng lắp với nhau 37 Hình 3.7 Sự khác nhau trong việc lựa chọn các “instance” trong “bag” dương của
cả 3 thuật toán mi-SVM, MI-SVM, spatial-MI-SVM 39
Hình 3.8 Phân biệt 3 trường hợp khi thực hiện duyệt qua tất cả các “bag” dương
trong thuật toán top-MI-SVM với M bằng 3 44
Hình 4.1 “Bag” là toàn bộ khung hình và “instance” thu thập ở lần 1 trong phần
màu xám, khung có nét chấm gạch là “instance” kế tiếp khi dịch chuyển 50
Hình 4.2 “Bag” là toàn bộ khung hình và “instance” thu thập ở lần 2 trong phần
màu xám, khung có nét chấm gạch là “instance” kế tiếp khi dịch chuyển 51
Hình 4.3 “Bag” là toàn bộ khung hình và “instance” thu thập ở lần 3 trong phần
màu xám, khung có nét chấm gạch là “instance” kế tiếp khi dịch chuyển 51
Trang 9Danh mục các hình vẽ
Hình 4.4 Minh họa các tham số của thuật toán DSIFT trong vlfeat 52 Hình 4.5 Tổng hợp kết quả của 5 thuật toán khi thực nghiệm trên 6 nhóm dữ liệu
có tham số “num words” là 100 56
Hình 4.6 Kết quả trung bình của 6 nhóm dữ liệu có tham số “num words” là 100
trên từng thuật toán khi thực nghiệm 57
Hình 4.7 Tổng hợp kết quả của 5 thuật toán khi thực nghiệm trên 6 nhóm dữ liệu
có tham số “num words” là 500 57
Hình 4.8 Kết quả trung bình của 6 nhóm dữ liệu có tham số “num words” là 500
trên từng thuật toán khi thực nghiệm 58
Trang 10DANH MỤC CÁC BẢNG
Bảng 4.1 Tổng số bộ dữ liệu vector thực nghiệm 54 Bảng 4.2 Tỉ lệ chính xác của các mô hình phân lớp trên dữ liệu vector nhóm 1 với
“seed” = 1 và “bin size” = 4 58
Bảng 4.3 Tỉ lệ chính xác của các mô hình phân lớp trên dữ liệu vector nhóm 2 với
“seed” = 2 và “bin size” = 4 58
Bảng 4.4 Tỉ lệ chính xác của các mô hình phân lớp trên dữ liệu vector nhóm 3 với
“seed” = 3 và “bin size” = 4 59
Bảng 4.5 Tỉ lệ chính xác của các mô hình phân lớp trên dữ liệu vector nhóm 4 với
“seed” = 4 và “bin size” = 4 59
Bảng 4.6 Tỉ lệ chính xác của các mô hình phân lớp trên dữ liệu vector nhóm 5 với
“seed” = 1 và “bin size” = 8 59
Bảng 4.7 Tỉ lệ chính xác của các mô hình phân lớp trên dữ liệu vector nhóm 6 với
“seed” = 2 và “bin size” = 8 59
Trang 11Mở đầu
MỞ ĐẦU
Ảnh và video là các nguồn thông tin quan trọng nhất hiện nay được tiếp nhận, xử lý và lưu trữ Khối lượng ảnh và video tăng nhanh, hiện đã vượt quá khả năng xử lý thủ công của con người Phân lớp đối tượng trên ảnh là vấn đề cốt lõi cần phải giải quyết để xây dựng nhiều ứng dụng thực tế về quản lý, sử dụng, phân tích tự động thông tin hình ảnh và video Tuy đã được cộng đồng khoa học tập trung nghiên cứu trong thời gian gần đây, kết quả của các phương pháp tốt nhất hiện tại vẫn chỉ giới hạn trong các tập dữ liệu thí nghiệm nhất định Để đáp ứng được nhu cầu thực tiễn, đạt được độ chính xác cao với dữ liệu ngoài thực tế thì vẫn còn một khoảng cách khá xa, tồn tại nhiều vấn đề cần giải quyết
Việc xây dựng các mô hình máy học hiệu quả đóng vai trò to lớn trong các
hệ thống phân lớp Hiện nay, các hệ thống phân lớp đối tượng dựa trên phương pháp học có giám sát đầy đủ có độ chính xác tương đối cao tuy nhiên rất khó khăn trong việc xây dựng bộ dữ liệu huấn luyện vì yêu cầu chi phí cao Bên cạnh thông tin về sự xuất hiện của đối tượng cũng cần thực hiện chú thích một cách thủ công để chỉ ra vị trí của đối tượng trong ảnh Trong khi đó, các hệ thống phân lớp đối tượng dựa trên phương pháp học với giám sát yếu chỉ cần thông tin về sự xuất hiện của các phân lớp đối tượng trong ảnh huấn luyện mà không cần biết vị trí chính xác Các phương pháp này sau đó sẽ tự động học để xác định vị trí của đối tượng Một trong những phương pháp học với giám sát yếu được sử dụng rộng rãi hiện nay là Multiple Instance Learning (MIL)
Khóa luận này sẽ tập trung nghiên cứu, phân tích các phương pháp máy học dựa trên MIL để giải quyết bài toán phân lớp nhị phân cho đối tượng trên ảnh, với
ba thuật toán tiêu biểu là mi-SVM, MI-SVM [1] và spatial-MI-SVM [2] Dựa trên kết quả phân tích, khóa luận đề xuất hai thuật toán cải tiến là top-MI-SVM và top-spatial-MI-SVM Tất cả các thuật toán này đều sẽ được tiến hành thử nghiệm trên
bộ dữ liệu Caltech-101 [3] và kết quả thực nghiệm cho thấy các phương pháp đề xuất đã giúp nâng cao độ chính xác phân lớp
Nội dung của khóa luận gồm 5 chương sau :
Trang 12 Chương 1 : Trình bày các kiến thức tổng quan về bài toán phân lớp đối tượng trên ảnh với những ứng dụng quan trọng trong thực tiễn cũng như hai mô hình máy học được sử dụng để giải quyết bài toán
Chương 2 : Trình bày các công trình nghiên cứu nổi bật trong những năm gần đây liên quan đến việc biểu diễn ảnh trong mô hình phân lớp và các thuật toán phân lớp sử dụng MIL
Chương 3 : Trình bày chi tiết về các thuật toán tiêu biểu theo hướng tiếp cận MIL gồm mi-SVM, MI-SVM và spatial-MI-SVM, đồng thời đề xuất hai thuật toán mới là top-MI-SVM và top-spatial-MI-SVM Bên cạnh đó, các kiến thức nền tảng về SVM cũng được trình bày trong chương này
Chương 4 : Trình bày quá trình thực nghiệm tất cả các thuật toán đã tìm hiểu ở chương 3 trên bộ dữ liệu Caltech-101 nhằm đánh giá và phân tích mức độ chính xác của các thuật toán
Chương 5 : Tổng kết lại những nội dung chính của khóa luận và đề xuất những hướng nghiên cứu tiếp theo
Trang 13Hình 1.1 Nhận diện sự xuất hiện của các đối tượng
thuộc các phân lớp xác định trong ảnh
Như vậy, nhiệm vụ của bài toán phân lớp đối tượng trên ảnh là cần xây dựng
mô hình phân lớp để khi có một ảnh mới vào thì mô hình phân lớp sẽ cho biết ảnh
đó thuộc lớp đối tượng nào Phân lớp đối tượng ảnh có các loại sau :
- Phân lớp nhị phân là quá trình tiến hành việc phân ảnh vào một trong hai lớp khác nhau
- Phân lớp đa lớp là quá trình phân lớp với số lượng lớp lớn hơn hai Tập hợp ảnh trong miền xem xét được phân chia thành nhiều lớp chứ không đơn thuần chỉ là hai lớp như trong bài toán phân lớp nhị phân Về bản chất, bài toán phân lớp nhị phân là trường hợp riêng của bài toán phân lớp đa lớp
- Phân lớp đa trị là mỗi ảnh trong tập huấn luyện cũng như các ảnh mới sau khi được phân lớp có thể thuộc vào từ hai lớp trở lên
Có nhiều phương pháp phân lớp đối tượng để giải quyết bài toán phân lớp
Trang 14Sau quá trình huấn luyện nếu độ chính xác của bộ phân lớp cao thì thuật toán huấn luyện được đánh giá là tốt Một mô hình phân lớp được xem là tốt phải có chi phí thực thi thấp và độ chính xác cao
1.1.2 Quá trình phân lớp
Các hệ thống phân lớp đối tượng ảnh hiện nay thường gồm hai giai đoạn chính là huấn luyện (training) và kiểm chứng (testing)
Hình 1.2 Mô hình tổng quan của một hệ thống phân lớp đối tượng ảnh
Giai đoạn 1 : Huấn luyện (Training) :
- Đặc trưng thị giác (visual features) được rút trích từ các ảnh huấn luyện Việc lựa chọn các đặc trưng thích hợp sẽ giúp tăng tốc độ và mức độ chính xác của
hệ thống Do đó, việc rút trích đặc trưng cần được xem xét và chọn lựa các thuật toán phù hợp
- Các mô hình máy học (learning model) sẽ được huấn luyện dựa trên các đặc trưng thị giác được rút trích và nhãn của tập ảnh huấn luyện Nhãn của mỗi ảnh huấn luyện cho biết đối tượng thuộc phân lớp nào xuất hiện trong ảnh Với một số phương pháp, nhãn còn cần bao gồm thông tin về vị trí chính xác của đối tượng
Giai đoạn 2 : Kiểm chứng (Testing)
- Đặc trưng thị giác được rút trích từ ảnh mới do người dùng cung cấp Đặc trưng này sau đó được đưa vào các mô hình máy học đã được huấn luyện để nhận biết sự xuất hiện của các phân lớp đối tượng dựa trên đặc trưng toàn cục hoặc cục
bộ của ảnh
1.1.3 Ứng dụng của hệ thống phân lớp ảnh
Các ứng dụng quan trọng của hệ thống phân lớp đối tượng ảnh trong thực tế
Trang 15Chương 1 Tổng quan
cuộc sống :
- Tìm kiếm ảnh và video theo phân lớp các đối tượng : người dùng cho hệ thống truy vấn biết phân lớp đối tượng quan tâm, hệ thống sẽ tự động nhận diện sự xuất hiện của các đối tượng thuộc phân lớp đó trong cơ sở dữ liệu ảnh hoặc video
và trả về kết quả tương ứng
- Phân tích video giám sát phục vụ an ninh quốc phòng : tự động phát hiện sự xuất hiện của người, xe máy, xe hơi, phương tiện quân sự, công trình quốc phòng trong ảnh hoặc video do thám
- Tự động phân tích và đánh chỉ mục cơ sở dữ liệu ảnh và video tài liệu có kích thước lớn theo phân lớp cho trước
- Phân tích ảnh y khoa : nhận biết sự hiện diện của các khối u, các dị tật Với các đóng góp quan trọng trên, phân lớp đối tượng ảnh đã trở thành một công cụ không thể thiếu trong cuộc sống hiện tại phục vụ trong mọi lĩnh vực đời sống, giúp con người có thể xử lý một khối lượng ảnh đang tăng lên một cách nhanh chóng do sự phát triển mạnh mẽ của công nghệ ảnh số
1.2 Mô hình máy học
Việc lựa chọn mô hình máy học hợp lý là yếu tố quan trọng quyết định độ chính xác trong việc phân lớp đối tượng Hai phương pháp được sử dụng chủ yếu để giải quyết bài toán phân lớp đối tượng ảnh là phương pháp học có giám sát đầy đủ (fully supervised learning) và phương pháp học có giám sát yếu (weakly supervised learning)
1.2.1 Phương pháp học có giám sát đầy đủ
Đây là phương pháp phổ biến được sử dụng rộng rãi trong các thuật toán phân lớp, trong đó mỗi đối tượng trong bộ dữ liệu huấn luyện đều được gán nhãn rõ ràng và không có đối tượng nào không được gán nhãn
Với phương pháp học có giám sát đầy đủ, việc thực hiện phân lớp đối tượng ảnh đồng thời chỉ rõ phân vùng chứa đối tượng đòi hỏi bộ dữ liệu huấn luyện phải được gán nhãn chính xác trên phân vùng ảnh có chứa đối tượng Điều này làm cho quá trình chuẩn bị dữ liệu huấn luyện tốn rất nhiều tài nguyên và công sức do hiện nay việc gán nhãn này vẫn được thực hiện một cách thủ công
Trang 161.2.2 Phương pháp học có giám sát yếu
Để giảm bớt chi phí trong việc huấn luyện trên, phương pháp học có giám sát yếu được đề xuất Phương pháp này chỉ cần thông tin về sự xuất hiện của các phân lớp đối tượng trong ảnh huấn luyện mà không cần biết vị trí chính xác, sau đó sẽ tự động học để xác định vị trí của đối tượng Một trong những phương pháp học có giám sát yếu được sử dụng rộng rãi hiện nay là Multiple Instance Learning (MIL)
MIL được xem là phương pháp mang tính tổng quát hóa của quá trình học có giám sát đầy đủ Dữ liệu huấn luyện phân lớp trong phương pháp MIL được chia thành nhiều cụm và mỗi cụm dữ liệu như vậy sẽ gồm có nhiều “instance”, không có
sự dùng chung “instance” giữa các cụm dữ liệu Hay nói cách khác, dữ liệu sẽ chia thành nhiều “bag”, mỗi “bag” chứa các “instance” và nhãn được gán cho từng “bag” một cách tường minh Bản thân “instance” cũng có nhãn nhưng nhãn của các
“instance” được truy xuất gián tiếp thông qua nhãn của “bag”
Trong phạm vi báo cáo khóa luận, ta chỉ xét đến bài toán phân lớp nhị phân trong MIL và việc gán nhãn cho các “instance” được thực hiện theo quy tắc sau :
- “Bag” mang nhãn (-) thì tất cả các “instance” trong “bag” đó sẽ đều mang nhãn (-)
- “Bag” mang nhãn (+) thì có ít nhất một “instance” trong “bag” đó mang nhãn (+)
Hình 1.3 Phân biệt giữa phương pháp học có giám sát đầy đủ (A) và MIL (B)
với sự khác nhau trong việc gán nhãn cho dữ liệu huấn luyện
Trong quá trình huấn luyện, MIL sẽ thực hiện việc gán nhãn cho các
“instance” trong “bag” mang nhãn (+) đồng thời xây dựng mô hình phân lớp Bộ dữ liệu kiểm thử sẽ sử dụng mô hình phân lớp để gán nhãn cho các “bag” và các
“instance” chứa trong “bag”
Quy tắc trên không mang tính đối xứng và dựa trên quy tắc này ta cũng thấy được thách thức lớn nhất trong phương pháp MIL nằm ở chỗ xác định các nhãn cho
Trang 17Chương 1 Tổng quan
các “instance” trong “bag” mang nhãn (+) Như hình 1.3, chúng ta chỉ biết có ít nhất một “instance” mang nhãn (+) nhưng không thể biết chính xác là có bao nhiêu
“instance” như vậy và bao nhiêu “instance” mang nhãn (-)
Trong trường hợp mỗi “bag” chỉ có một “instance” duy nhất thì phương pháp MIL và phương pháp học có giám sát đầy đủ là tương đương nhau
Phân lớp đối tượng ảnh trong MIL
Khi áp dụng phân lớp đối tượng ảnh trong MIL, mỗi tấm ảnh trong tập dữ liệu sẽ được xem là một “bag” và các phân vùng được lựa chọn ngẫu nhiên tùy ý sẽ
là các “instance” Việc gán nhãn cho các “bag” và “instance” được tuân theo quy luật đã nêu ở phần trên Điều đó có nghĩa là :
- Ảnh được gán nhãn dương khi có chứa đối tượng trong ảnh và đối tượng đó
có thể nằm ở bất cứ phân vùng nào
- Ảnh được gán nhãn âm khi không chứa bất kỳ đối tượng cần phân lớp nào
và do đó tất cả các phân vùng trong ảnh cũng đều không chứa đối tượng
Cho tập dữ liệu ảnh huấn luyện, bài toán phân lớp đối tượng ảnh khi áp dụng MIL sẽ thực hiện hai việc là gán nhãn phân vùng nào của ảnh huấn luyện có chứa đối tượng và phân vùng nào không chứa đối tượng, đồng thời xây dựng mô hình phân lớp trên dữ liệu huấn luyện đã được gán nhãn Bộ dữ liệu kiểm thử sẽ sử dụng
mô hình phân lớp vừa xây dựng để phân loại ra ảnh có chứa đối tượng và ảnh không chứa đối tượng Với các ảnh có chứa đối tượng, mô hình phân lớp cũng sẽ chỉ ra phân vùng ảnh nào có chứa đối tượng
Việc áp dụng MIL vào bài toán phân lớp đối tượng ảnh đã làm giảm nhiều chi phí trong việc chuẩn bị bộ dữ liệu huấn luyện do loại bỏ được phần đánh dấu vị trí chứa đối tượng
Trang 18CHƯƠNG 2 CÁC CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN
Đối với bài toán Phân lớp đối tượng ảnh, hai yếu tố quan trọng nhất quyết định độ chính xác của mô hình phân lớp là :
- Cách thức biểu diễn bộ dữ liệu ảnh vào mô hình phân lớp
- Thuật toán thực hiện việc phân lớp đối tượng Trong khóa luận này, các thuật toán sẽ được giới hạn trong phạm vi áp dụng phương pháp MIL
Ứng với từng yếu tố đã có rất nhiều công trình nghiên cứu với các hướng tiếp cận khác nhau Chúng ta sẽ điểm qua một số các phương pháp tiêu biểu trong những năm gần đây để có cái nhìn toàn cảnh cũng như xác định những hướng tiếp cận phù hợp cho bài toán phân lớp ảnh
2.1 Các phương pháp biểu diễn ảnh trong mô hình phân lớp
2.1.1 Tình hình nghiên cứu
Để so sánh các ảnh với nhau hoặc phân lớp các ảnh, cách tiếp cận phổ biến nhất là biểu diễn ảnh dưới dạng các đặc trưng Đã có nhiều nghiên cứu về các phương pháp rút trích và biểu diễn đặc trưng (feature presentation) nhằm mô tả các lớp đối tượng Trong đó có thể phân làm 2 loại đặc trưng chính: đặc trưng cấp thấp
và đặc trưng cấp cao
- Đặc trưng cấp thấp là đặc trưng cơ bản được rút trích trực tiếp từ các điểm ảnh như màu sắc, độ sáng Các đặc trưng cấp thấp tiêu biểu gồm có : Color Histogram (OH), Edge Orientation Histogram (EOH), Scale Invariant Feature Transform (SIFT), Local Binary Pattern, Histogram of Gradients (HOG) Hạn chế của các đặc trưng cấp thấp là không đủ tính tổng quát để mô tả các phân lớp trong
đó các đối tượng cùng phân lớp có khác biệt lớn về đặc trưng thị giác
- Đặc trưng cấp cao là các đặc trưng mang tính ngữ nghĩa cao Ví dụ, đối với các phân lớp đối tượng là “động vật”, các đặc trưng cấp cao có thể là “đi bằng bốn chân”, “có đuôi”, “biết bơi” hoặc “ăn cỏ” Một số nghiên cứu sử dụng đặc trưng cấp cao như Ali Farhadi đã tiến hành nhận dạng đối tượng với kết quả trả về theo hướng
mô tả đối tượng [4], Parikh đề xuất mô hình xác định mức độ của các đặc trưng cấp cao giữa các bức ảnh [5],… Các thách thức đối với các nghiên cứu đặc trưng cấp
Trang 19Chương 2 Các công trình nghiên cứu liên quan
cao bao gồm: làm sao tự động lựa chọn, định nghĩa các đặc trưng phù hợp và làm cách nào phát hiện các đặc trưng này một cách hiệu quả, chính xác nhất
Bên cạnh đó, việc tích hợp thông tin về ngữ cảnh, phân bố không gian vào biểu diễn đối tượng cũng được chú ý Mục đích của các nghiên cứu này nhằm tăng cường các thông tin mang tính riêng biệt, nổi trội của đối tượng, giảm nhập nhằng trong biểu diễn đối tượng, và do đó giúp tăng độ chính xác phân lớp Ví dụ, ngữ cảnh (context) có thể là thông tin về môi trường mà đối tượng thường xuất hiện (“chim” thường ở trên “cây”, “máy bay” thường bay trên “trời”, “xe hơi” chạy trên
“đường”) hoặc các đối tượng khác luôn xuất hiện kèm theo (“màn hình” và “bàn phím”, “bàn” và “ghế”) Và đặc tính phân bố không gian, ví dụ như biểu diễn khuôn mặt người nhìn thẳng (frontal face): vùng “mắt” luôn ở 2 bên, phía trên “mũi” và
“miệng” Điển hình như nghiên cứu của Carolina Galleguillos [6] về việc xem xét đánh giá các cách tiếp cận khác nhau dựa trên những thông tin về ngữ cảnh, từ đó
đề xuất các định mức chung nhất trong việc rút trích ngữ cảnh và mức độ ảnh hưởng qua lại của chúng Khó khăn lớn nhất trong việc tích hợp thông tin ngữ cảnh
là việc xác định ngữ cảnh mang tính tổng quát cho từng đối tượng do mỗi đối tượng
có rất nhiều ngữ cảnh riêng biệt
2.1.2 Mô hình “Bag of Words”
Có nhiều phương pháp để biểu diễn ảnh để xây dựng đầu vào cho bài toán phân lớp nhưng mô hình Bag of Words được sử dụng phổ biến do tính chính xác cao, đơn giản và dễ cài đặt
Hình 2.1 Quá trình xây dựng codebook trong mô hình Bag of Words.
Nguồn : Lý thuyết về mô hình “Bag of Words” [7]
Mô hình này được áp dụng thành công trong bài toán phân lớp văn bản
Rút trích đặc trưng Gom cụm Xây dựng codebook Tập ảnh
Tập các vector đặc trưng
Trang 20Trong đó, văn bản sẽ được mô tả theo mô hình lược đồ tần suất xuất hiện của các từ trong văn bản đó
Áp dụng mô hình Bag of Words vào phân lớp ảnh, đầu tiên chúng ta xem ảnh trong tập huấn luyện là các văn bản Sau đó cần định nghĩa các từ cho văn bản
đó dựa vào việc xây dựng và mô tả các đặc trưng của ảnh Các từ này được gọi là
“visual word” để phân biệt với các từ trong văn bản thông thường
Biểu diễn ảnh theo mô hình này gồm 3 bước :
Bước 1: Xác định và mô tả đặc trưng cho từng ảnh trong tập dữ liệu Các thuật toán rút trích đặc trưng cấp thấp được sử dụng do mô hình này không khai khai thác các ưu điểm của đặc trưng cấp cao Hai hướng tiếp cận chính về biểu diễn đặc trưng ảnh cấp thấp là :
- Đặc trưng toàn cục : Hướng tiếp cận này tuy đơn giản nhưng lại không thật
sự hiệu quả vì cách biểu diễn này không thích hợp với những biến đổi về góc nhìn, biến đổi tỉ lệ, phép quay, độ sáng, sự che khuất, sự biến dạng, sự xáo trộn của ảnh như Color Histogram (OH), Edge Orientation Histogram (EOH)
- Đặc trưng cục bộ : Hướng tiếp cận này khắc phục nhược điểm đã nêu của đặc trưng toàn cục và đạt được kết quả cao trong các bài toán phân lớp ảnh Ví dụ như Scale Invariant Feature Transform (SIFT), Local Intensity Order Pattern (LIOP) Trong đó thuật toán SIFT được đánh giá cao do tính hiệu quả mang lại cho
ta từ điển codebook với n từ
Bước 3: Biểu diễn ảnh dưới dạng vector tần suất từ dựa vào codebook và đây cũng chính là đầu vào của các bài toán phân lớp ảnh
2.2 Các thuật toán phân lớp dựa trên MIL
2.2.1 Tình hình nghiên cứu
Tuy được đánh giá cao trong những thuật toán học có giám sát yếu nhưng
Trang 21Chương 2 Các công trình nghiên cứu liên quan
việc thực hiện huấn luyện với MIL vẫn còn gặp nhiều thách thức :
- Sự khác biệt của đối tượng trong cùng một phân lớp (intra-class variation)
và giữa các phân lớp với nhau (inter-class variation) : các đối tượng trong cùng một phân lớp có thể rất khác nhau, trong khi đó các đối tượng tuy khác phân lớp nhưng lại rất giống nhau
- Các phương pháp MIL có 2 khái niệm cơ bản là “bag” và “instance” “Bag”
là một tập hợp nhiều “instance” Nhãn huấn luyện chỉ cần gán cho “bag” Các phương pháp MIL sẽ học để phân lớp các “bag” và các “instance” trong “bag” Vì thế muốn có độ chính xác cao khi phân lớp đòi hỏi phải xây dựng các ràng buộc hiệu quả giữa “bag” với “instance”, giữa “instance” với “instance”
- Tuy các phương pháp học dựa trên MIL có chi phí chuẩn bị dữ liệu thấp nhưng đánh đổi lại là độ chính xác của phương pháp này thường thấp hơn các phương pháp học có giám sát đầy đủ
Cho đến nay, các nhà nghiên cứu cố gắng tập trung xây dựng các phương pháp tiếp cận khác nhau dựa trên Multiple Instance Learning (MIL) để tăng tính hiệu quả cho việc phân lớp đối tượng như chọn một số “instance” tiêu biểu trong
“bag”, dựa vào các “instance” đó để chuyển đổi MIL thành thuật toán học có giám sát đầy đủ Tuy nhiên, vấn đề gặp phải ở đây là “bag” bao gồm rất nhiều “instance”
sẽ làm tăng độ phức tạp trong việc lựa chọn các đối tượng để thực hiện việc chuyển đổi Để giải quyết vấn đề này một số phương pháp đã được nghiên cứu và áp dụng
Có thể kể đến như phương pháp MIPSIR [8] của L Yuan dựa trên các điểm tương đồng theo từng cặp “instance” trong “bag” để tăng tốc độ trong quá trình lựa chọn Một hướng tiếp cận nhằm xây dựng các mối liên hệ, ràng buộc giữa các “instance” trong cùng “bag”, như nghiên cứu về tăng cường độ chính xác phân lớp bằng cách phát hiện vùng đặc trưng và kết hợp thông tin toàn cục của ảnh được thực hiện bởi
Trang 22quanh nó có ít nhất một “instance” của mỗi “bag” dương và cách xa tất cả các
“instance” âm khác Dựa vào “concept instance”, các “bag” sẽ được xác định nhãn dựa vào khoảng cách giữa các “instance” trong “bag” đó đến “concept instance” Ngoài ra còn một số thuật toán khác như EM-DD [12], axis parallel hyper-rectangles [13] Mặc dù thu được những kết quả khả quan nhưng các thuật toán này dựa trên giả thuyết là tất cả các “instance” thực sự chứa đối tượng đều hội tụ lại thành một nhóm và cách xa các “instance” không chứa đối tượng, điều này khó khả thi trong thực tế khi các “instance” có xu hướng đa cụm
- Discriminative MIL : Hướng tiếp cận này thực hiện việc chuyển hóa từ phương pháp học có giám sát yếu MIL sang phương pháp học có giám sát đầy đủ, phổ biến nhất là thuật toán SVM Việc chuyển đổi này nhằm tận dụng lại khả năng phân lớp với độ chính xác cao của các thuật toán học có giám sát đầy đủ đã được kiểm chứng trong các thử nghiệm cũng như trong thực tế Là một trong những người tiên phong trong việc sử dụng thuật toán phân lớp SVM trên MIL, Stuart Andrew trình bày hai phương pháp là mi-SVM và MI-SVM [1] Bên cạnh đó còn có các thuật toán khác như spatial-MI-SVM [2], IS-MIL [14], MILES [15] và hai thuật toán đã được giới thiệu ở phần trên là MIPSIR của L Yuan và phát hiện vùng đặc trưng và kết hợp thông tin toàn cục của ảnh được thực hiện bởi Thanh Duc Ngo
2.2.2 Lựa chọn hướng tiếp cận
Các kết quả thực nghiệm thu được [8-15] đã cho thấy rằng các thuật toán thuộc nhóm “discriminative MIL” có độ chính xác phân lớp tốt hơn so với các thuật toán trong nhóm “generative MIL” Và với việc không phụ thuộc vào giả thuyết phải có sự ràng buộc gom nhóm giữa các “instance” nên hướng tiếp cận
“discriminative MIL” thường được lựa chọn để giải quyết các bài toán phân lớp đối tượng ảnh
Vì vậy khóa luận sẽ tập trung tìm hiểu các thuật toán “discriminative MIL” dựa trên việc chuyển đổi từ phương pháp học có giám sát yếu sang phương pháp học có giám sát đầy đủ SVM mà tiêu biểu là các thuật toán mi-SVM, MI-SVM và spatial-MI-SVM Dựa trên việc đánh giá, phân tích làm rõ những ưu điểm và khuyết điểm của các thuật toán này, khóa luận đề xuất hai hướng cải tiến mới ứng với thuật toán top-MI-SVM và top-spatial-MI-SVM nhằm nâng cao độ chính xác khi phân
Trang 23Chương 2 Các công trình nghiên cứu liên quan
lớp cũng như khắc phục các hạn chế còn tồn đọng của các thuật toán tiêu biểu đó trong việc giải quyết các bài toán phân lớp đối tượng ảnh
Hình 2.2 Sơ đồ lựa chọn hướng tiếp cận để giải quyết bài toán phân lớp đối tượng ảnh và
các thuật toán sẽ trình bày trong khóa luận
Sơ đồ ở hình 2.2 trình bày tổng quát hướng tiếp cận các thuật toán dựa trên phương pháp MIL trong việc giải quyết bài toán phân lớp đối tượng ảnh và 5 thuật toán sẽ được tìm hiểu, đánh giá trong khóa luận này
Bài toán phân lớp đối tượng ảnh
Generative MIL
Trang 24CHƯƠNG 3 MULTIPLE INSTANCE LEARNING
3.1 Giới thiệu
Trong chương này, chúng ta sẽ tìm hiểu một cách chi tiết về các thuật toán tiêu biểu áp dụng phương pháp MIL theo hướng tiếp cận chuyển đổi từ phương pháp học có giám sát yếu MIL sang phương pháp học có giám sát mạnh SVM gồm mi-SVM, MI-SVM, spatial-MI-SVM và hướng cải tiến với 2 thuật toán top-MI-SVM và top-spatial-MI-SVM
Trong cả 5 thuật toán trên, các mô hình phân lớp đều được quy về SVM vì thế để chuẩn bị kiến thức nền tảng trước khi tiếp cận các thuật toán trên, chương này cũng sẽ trình bày về thuật toán SVM từ các khái niệm chính cho đến các dạng
mở rộng dựa trên tính chất của bộ dữ liệu
3.2 Công thức tổng quát của MIL
Xét bài toán phân lớp nhị phân với tập huấn luyện D cho trước
Trang 25Chương 3 Multiple Instance Learning
Phương trình tổng quát của một siêu phẳng phân chia được biểu diễn có dạng
Với w là vector pháp tuyến p chiều, b là độ dịch của siêu phẳng so với gốc tọa độ Khi thay đổi w và b thì hướng và khoảng cách từ gốc tọa độ đến mặt siêu phẳng thay đổi
Siêu phẳng phân chia có vai trò quan trọng trong việc phân lớp, nó quyết định xem một bộ dữ liệu sẽ thuộc về lớp nào Một siêu phẳng phân chia dữ liệu được gọi là tối ưu, nếu khoảng cách từ điểm dữ liệu gần nhất đến siêu phẳng là lớn nhất
Hình 3.1 Siêu phẳng thực hiện phân chia tập dữ liệu thành 2 lớp
trong không gian 2 chiều
Nguồn : Mô hình phân lớp Support Vector Machine theo [16]
Ví dụ : Cho bộ dữ liệu huấn luyện trong không gian hai chiều
Trang 26Oxy, ta xây dựng hai đường thẳng H1 và H2 (hình 3.1) theo công thức sau :
trình trên được gọi là vector hỗ trợ (support vector) Các vector hỗ trợ là những điểm gần với siêu phẳng phân chia nhất Trong thực tế có thể tìm được vô số những siêu phẳng phân chia trên cùng một tập dữ liệu Do đó mục tiêu của phương pháp phân lớp SVM là tìm một siêu phẳng phân cách giữa hai lớp sao cho khoảng cách giữa hai lớp đạt cực đại, nghĩa là có sai sót phân loại bé nhất trên bộ dữ liệu Ở đây
Siêu phẳng có biên độ lớn nhất sẽ được chọn như là siêu phẳng phân chia tập
dữ liệu một cách tốt nhất Nếu có 2 siêu phẳng có thể phân chia được tất cả những
bộ dữ liệu cho trước với biên độ của nó Siêu phẳng với biên độ lớn hơn sẽ chính xác hơn trong việc phân loại các bộ dữ liệu trong tương lai so với siêu phẳng có biên độ nhỏ hơn
3.3.2 Các mô hình phân lớp SVM
Khái quát
Với dữ liệu có thể phân chia tuyến tính thì SVM khi được sử dụng để xây dựng mô hình phân lớp trên tập dữ liệu đó được gọi là SVM tuyến tính Với bất kỳ một tập dữ liệu khả tách tuyến tính thì luôn tồn tại một siêu phẳng phân lớp tất cả các điểm dữ liệu Trong dữ liệu phân chia tuyến tính có thể phân làm hai loại là không nhiễu và có nhiễu
Hướng tiếp cận của SVM tuyến tính có thể được mở rộng để tạo ra SVM không tuyến tính cho việc phân lớp các dữ liệu mà nếu không chuyển đổi dữ liệu huấn luyện hợp lý thì không thể tìm được siêu phẳng phân cách Những SVM như
Trang 27Chương 3 Multiple Instance Learning
vậy được gọi là SVM phi tuyến
Mô hình phân lớp tuyến tính không nhiễu
Tập dữ liệu được gọi phân chia tuyến tính mà không có nhiễu là tập dữ liệu
mà tất cả các điểm được gán nhãn (+) thuộc về bờ dương của siêu phẳng và tất cả các điểm được gán nhãn (–) thuộc về bờ âm của siêu phẳng
giữa siêu phẳng phân chia với điểm gần nhất có giá trị 1 (hình 3.1), ta xác định
phần bờ âm của siêu phẳng :
Mô hình phân lớp tuyến tính có nhiễu
Tập dữ liệu được gọi phân chia tuyến tính có nhiễu là tập dữ liệu mà trong
đó, hầu hết các điểm trong tập dữ liệu được phân chia bởi siêu phẳng tuyến tính nhưng có một số ít điểm bị nhiễu, nghĩa là điểm có nhãn dương nhưng lại thuộc về phía âm của siêu phẳng, điểm có nhãn âm thuộc về phía dương của siêu phẳng
Hình 3.2 Tập dữ liệu bị nhiễu khi thực hiện phân lớp
Trang 28lệch giữa điểm phân lớp không chính xác với đường biên được tạo bởi các vector hỗ trợ ở phần bờ đối diện (hình 3.2) Khi đó, bài toán tìm khoảng cách lớn nhất giữa hai biên của tập dữ liệu bị nhiễu được biểu diễn dưới dạng :
Đây là dạng mô hình SVM tổng quát giải quyết đồng thời hai mục tiêu: độ rộng lớn nhất và lỗi phân lớp là bé nhất
Mô hình phân lớp phi tuyến
Bên cạnh các tập dữ liệu có thể phân tách tuyến tính, chúng ta sẽ gặp trường hợp các tập dữ liệu không thể dùng bất cứ siêu phẳng nào để phân lớp dữ liệu Do
đó, giải pháp được đưa ra là ánh xạ tập vector dữ liệu vào không gian đặc trưng có
số chiều cao hơn nhiều so với không gian ban đầu Trong không gian mới vừa được chuyển đổi, dữ liệu có khả năng phân chia tuyến tính
Hình 3.3 Ánh xạ tập dữ liệu bất khả phân tách tuyến tính
từ không gian 2 chiều sang không gian 3 chiều
Ở hình 3.3, tập dữ liệu với hai lớp riêng biệt trong không gian hai chiều không thể phân tách bằng bất cứ đường thẳng nào, nhưng khi chuyển toàn bộ dữ liệu đó sang không gian ba chiều xuất hiện một khoảng phân cách để có thể xây dựng siêu phẳng phân chia
Trang 29Chương 3 Multiple Instance Learning
Siêu phẳng có biên độ lớn nhất được tìm thấy trong không gian mới tương ứng với siêu phẳng phân chia không tuyến tính trong không gian ban đầu Tuy nhiên quá trình phân tách sẽ dễ dàng hơn khi ta chọn một hàm chuyển thích hợp Để giải quyết vấn đề này ta cần sử dụng đến hàm Kernel
Bài toán được chuyển về tìm khoảng cách lớn nhất giữa 2 biên của tập dữ liệu trong trường hợp tổng quát biểu diễn dưới dạng :
đó, Kernel Trick được sử dụng để giải quyết vấn đề vừa đặt ra
3.3.3 Kernel Trick
Ý tưởng
Trong các thuật toán máy học, khái niệm Kernel Trick là cách ánh xạ một tập
dữ liệu D thông thường vào một không gian F gọi là “Inner Products Space” mà không phải xác định ánh xạ đó một cách tường minh Sự phân lớp tuyến tính trong không gian F tương đương với việc phân lớp D trong không gian ban đầu
Thủ thuật (trick) để tránh việc xác định ánh xạ một cách tường minh bởi vì các thuật toán học máy chỉ yêu cầu một phép tính tích vô hướng (inner product) giữa các vector trong không gian F và chọn ánh xạ sao cho các tích vô hướng trong không gian nhiều chiều này có thể được tính toán trong không gian dữ liệu ban đầu bằng các hàm kernel
Khái niệm
Trong không gian N chiều ta có :
Trong đó
Trang 30xi, xj RN
Với việc sử dụng hàm kernel, điều này cho phép chúng ta thực hiện tích vô
Một số hàm kernel phổ biến đƣợc áp dụng trong SVM
Để có thể áp dụng kernel trick vào SVM, ta thực hiện chuyển các công thức SVM về dạng đối ngẫu
3.3.4 Bài toán đối ngẫu
Đối với mô hình SVM tuyến tính không nhiễu
Ta có bài toán SVM tuyến tính với tập dữ liệu phân chia hoàn toàn theo công thức (3.13) :
Áp dụng điều kiện Karush-Kuhn-Tucker, lấy đạo hàm từng phần theo (3.18.1) và cho các đạo hàm vừa tìm đƣợc bằng 0 ta có :
Trang 31-Chương 3 Multiple Instance Learning
Đối với mô hình SVM tuyến tính có nhiễu
Ta có bài toán SVM tuyến tính với tập dữ liệu phân chia không hoàn toàn theo công thức (3.14) :
Hàm Lagrange được xác định cho bài toán SVM trên như sau :
(3.19.1)
Áp dụng điều kiện Karush-Kuhn-Tucker, lấy đạo hàm từng phần theo công thức (3.19.1) và cho các đạo hàm vừa tìm được bằng 0 ta có :
Trang 32 Ưu điểm:
Cách giải quyết vấn đề mang tính tổng quát
Việc mở rộng SVM trên các ứng dụng khác nhau cho thấy tính nhất quán giữa lý thuyết và áp dụng tạo nên sức thuyết phục cho phương pháp SVM
Có độ chính xác phân lớp cao và ổn định Vì thế, SVM là một trong những phương pháp phân lớp phổ biến hiện nay
Khuyết điểm :
SVM về cơ bản chỉ được thiết kế cho phân lớp nhị phân Muốn sử dụng phân lớp đa lớp cần phải áp dụng thêm các hướng tiếp cận khác như One vs All, One vs One
Trang 33Chương 3 Multiple Instance Learning
3.4 Các thuật toán tiêu biểu
3.4.1 Thuật toán mi-SVM
Ý tưởng
Thuật toán mi-SVM sẽ xây dựng bộ phân lớp dựa trên mô hình SVM sao cho khoảng cách từ các “instance” đến siêu phẳng là lớn nhất Các nhãn của “instance” trong các “bag” mang nhãn dương vẫn đang là ẩn số, do đó thuật toán cũng sẽ thực hiện việc gán nhãn cho các “instance” trong “bag” có nhãn dương và xây dựng siêu phẳng phân lớp dựa trên các “instance” đã được gán nhãn
trong công thức Dựa trên các ràng buộc của công thức, ta thấy rằng thuật toán SVM sẽ sử dụng toàn bộ “instance” trong tất cả các “bag” để thực hiện việc tìm kiếm siêu phẳng phân lớp
mi-Việc giải bài toán là một thách thức lớn cho dù điều chỉnh kích thước của bộ
dữ liệu huấn luyện ở mức độ vừa phải, do đó tác giả của thuật toán – Stuart Andrew
đã đề xuất giải quyết bài toán theo hướng dùng heuristic
Giải thuật mi-SVM sử dụng Heuristic :
KHỞI TẠO
LẶP
Tìm siêu phẳng phân cách trên tập dữ liệu đã gán nhãn
Trang 34Gán yi = sgn(fi) Cuối
Duyệt tất cả “bag” có nhãn dương
Cuối Cuối
ĐIỀU KIỆN LẶP (tồn tại “instance” có nhãn thay đổi so với các lần lặp trước) Trả về siêu phẳng tối ưu
Heuristic trên gồm 4 bước chính :
Bước 1 : Khởi tạo nhãn các “instance” bằng cách lấy nhãn của “bag” gán cho các “instance” chứa bên trong nó Tức là mọi “instance” trong “bag” âm đều có nhãn âm và mọi “instance” trong “bag” dương đều có nhãn dương
“instance” trong “bag” dương
Bước 3 : Duyệt qua tất cả các “bag” có nhãn dương, ta sẽ có 3 trường hợp :
Hình 3.4 Phân biệt 3 trường hợp khi thực hiện
duyệt qua tất cả các “bag” dương trong thuật toán mi-SVM
- Trường hợp 1 : Tất cả các “instance” đều nằm bên bờ dương của siêu phẳng Trường hợp này thì thuật toán sẽ xem như các “instance” này đều có khả năng chứa đối tượng và gán nhãn dương cho tất cả các “instance” trong “bag”
- Trường hợp 2 : Tồn tại ít nhất một “instance” nằm bên bờ dương của siêu
Trường hợp 1
Trường hợp 2 Trường hợp 3