Luận văn Thạc sĩ Khoa học máy tính. NGHIÊN CỨU CÁC PHƯƠNG PHÁP TÍNH KHOẢNG CÁCH, KẾT HỢP VỚI MÔ HÌNH MÁY HỌC ĐỂ CẢI THIỆN N NG CAO ĐỘ CHÍNH XÁC TRONG VIỆC PH N LOẠI HÌNH ẢNH. Mục tiêu của đề tài này là thu thập số lớn dữ liệu hình ảnh của 05 chủ đề Văn hóa Phi vật thể của Việt Nam từ Web và công cụ Google Image Search. Sau đó, nghiên cứu các phương pháp học số đo khoảng cách kết hợp với mô hình máy học (SVM) để cải thiện nâng cao độ chính xác trong việc phân loại hình ảnh. Hình ảnh của từng lớp chủ đề sau khi được lấy về, sẽ được xếp thứ hạng từ cao xuống thấp dựa vào chú thích, nội dung văn bản đi kèm, bằng bộ phân loại Bayes thơ ngây. Những hình ảnh có thứ hạng cao sẽ được lấy làm dữ liệu đào tạo. Trong luận văn này sẽ so sánh các phương pháp học số đo khoảng cách, kết hợp với bộ phân loại kNN để đào tạo, phân loại hình ảnh. Từ đó, lấy ra ma trận học phép đo khoảng cách của thuật toán tốt nhất làm hàm nhân (kernel) cho mô hình máy học SVM để phân loại và xếp hạng lại hình ảnh cho từng lớp chủ đề. Kết quả việc thực nghiệm chỉ ra rằng, dùng phương pháp học số đo khoảng cách kết hợp với bộ phân loại kNN để đào tạo và phân loại hình ảnh cho độ chính xác bằng hoặc cao hơn so với mô hình máy học vectơ hỗ trợ SVM.
GIỚI THIỆU
Lý do chọn đề tài
Ngày nay, cùng với sự bùng nổ của công nghệ thông tin, dữ liệu đa phương tiện (chẳng hạn như hình ảnh, âm thanh, video) đóng một vai trò quan trọng trong tất cả lĩnh vực Trong đó, sự phát triển mạnh mẽ của công nghệ ảnh kỹ thuật số làm lượng ảnh lưu trữ trên web tăng lên một cách nhanh chóng đòi hỏi phải có các công cụ hỗ trợ tìm kiếm ảnh hiệu quả và tiện lợi Vì vậy, việc xây dựng các hệ thống tìm kiếm và xếp hạng ảnh là rất cần thiết và thực tế đã có nhiều công cụ tìm kiếm ảnh thương mại xuất hiện.Các công cụ tìm kiếm ảnh thường dựa vào hai đặc trưng chính là văn bản đi kèm ảnh hoặc nội dung ảnh.
Một số công cụ tìm kiếm ảnh theo văn bản đi kèm như Google Image Search, Yahoo!, MSN,… các hệ thống này cho phép người sử dụng nhập truy vấn về các ảnh cần quan tâm Thông qua việc phân tích các văn bản đi kèm ảnh, hệ thống gửi trả các ảnh tương ứng với truyvấn của người dùng.
Một số công cụ lại tìm kiếm ảnh dựa vào nội dung ảnh như Google Image Swirl, Bing, Tiltomo,Tineye,… cho phép người dùng nhập câu hỏi dưới dạng ảnh Nghĩa là việc tìm kiếm sẽ phân tích nội dung thực sự của các bức ảnh Nội dung ảnh ở đây được thể hiện bằng màu sắc, hình dạng, kết cấu (texture), các đặc trưng cục bộ (local features), đặc trưng toàn cục (global features) … hay bất cứ thông tin nào có từ chính nội dung ảnh Các công cụ này sẽ dựa vào nội dung đó để tìm kiếm và trả về những ảnh tương đồng.
Mặc dù các công cụ tìm kiếm ảnh ra đời cho phép người dùng tìm kiếm ảnh với thời gian đáp ứng khá nhanh, tuy nhiên, các công cụ này vẫn còn hạn chế trong việc giải quyết độ chính xác giữa nội dung truy vấn và nội dung hiển thị của ảnh trả về Ví dụ, với truy vấn “Apple”, máy tìm kiếm khó phân biệt được người dùng muốn tìm hình ảnh quả táo hay những sản phẩm của hãng Apple.
Các kỹ thuật tìm kiếm ảnh có một nguyên tắc chung đó là: phải trích rút đặc trưng văn bản, đặc trưng hình ảnh, rồi dùng các phương pháp tính khoảng cách hoặc so sánh độ tương đồng, kết hợp các mô hình máy học để phân loại hình ảnh.
Sự sẵn có của cơ sở dữ liệu hình ảnh đã được chứng minh là vô giá đối với việc đào tạo và thử nghiệm các mô hình nhận dạng lớp đối tượng trong thời gian đây Tuy nhiên, việc tạo ra các cơ sở dữ liệu như vậy chứa một số lượng lớn hình ảnh với độ chính xác cao vẫn là một cộng việc thủ công khó khăn Các công cụ tìm kiếm hình ảnh đã cho phép tìm kiếm hình ảnh một cách dễ dàng, nhưng hiện tại bị giới hạn bởi độ chính xác kém của các hình ảnh được trả về và các hạn chế đối với tổng số hình ảnh được cung cấp.
Vì thế cần đặt ra phương pháp giúp người dùng có thể lấy được dữ liệu ảnh hiệu quả, phục vụ cho công việc của mình Đó cũng là lý do tôi chọn đề tài "Nghiên cứu các phương pháp tính khoảng cách, kết hợp với mô hình máy học để cải thiện nâng cao độ chính xác trong việc phân loại hình ảnh" để làm đề tài luận văn.
Mục tiêu nghiên cứu
1.2.1 Mục tiêu nghiên cứu tổng quát
Mục tiêu của luận văn này là lấy một số lượng lớn dữ liệu hình ảnh của 05 chủ đề
"Văn hóa Phi vật thể của Việt Nam" từ web và công cụ Google Image Search Sau đó, nghiên cứu các phương pháp tính khoảng cách, kết hợp với mô hình máy học để cải thiện nâng cao độ chính xác trong việc phân loại hình ảnh theo mỗi chủ đề.
1.2.2 Mục tiêu nghiên cứu cụ thể
- Cách thu thập một số lượng lớn hình ảnh từ Internet.
- Các hàm tính khoảng cách.
- Các thuật toán học phép đo khoảng cách: LMNN, KLMNN, NCA kết hợp với kNN để phân loại ảnh.
- Mô hình Máy học Vector hỗ trợ SVM
- Thực nghiệm trên dữ liệu để so sánh kết quả các phương pháp đạt được.
- Kết hợp giữa ma trận học phép đo khoảng cách NCA, KLMNN với SVM để phân loại hình ảnh.
Đối tượng nghiên cứu
Các vấn đề về xử lý dữ liệu hình ảnh, các phương pháp tính khoảng cách, các thuật toán học phép đo khoảng cách, mô hình máy học Vector hỗ trợ (SVM) kết hợp với các hàm nhân tính khoảng cách (kernel) để phân loại hình ảnh.
Phương pháp nghiên cứu
- Tìm hiểu tài liệu, kiến thức về: Cách thu thập hình ảnh từ Internet, các hàm tính khoảng cách, các thuật toán về việc học phép đo khoảng cách, mô hình máy học Vector hỗ trợ SVM, các khung phân loại hàm nhân (kernel).
- Xử lý dữ liệu hình ảnh Đề xuất xây dựng mô hình.
- Thực nghiệm trên tập dữ liệu 05 lớp hình ảnh chủ đề "Văn hóa phi vật thể Việt Nam"
- Sử dụng ngôn ngữ lập trình Python 3.8 để kiểm tra và đánh giá kết quả thực nghiệm của mô hình đề xuất.
Phạm vi nghiên cứu
Đề tài tập trung nghiên cứu trên tập dữ liệu 05 lớp hình ảnh chủ đề "Văn hóa phi vật thể Việt Nam" để làm thử nghiệm mô hình đề xuất phân loại lớp hình ảnh.
Bố cục luận văn
Báo cáo luận văn gồm 5 chương như sau:
Chương 1: Giới thiệu Giới thiệu tổng quan lý do chọn đề tài, mục tiêu nghiên cứu, đối tượng nghiên cứu, phương pháp nghiên cứu, phạm vị nghiên cứu và bố cục của luận văn.
Chương 2: Tổng quan tài liệu Luận văn sẽ giới thiệu các nghiên cứu liên quan đến đề tài trước đó Các cơ sở lý thuyết về: các hàm tính khoảng cách, các thuật toán học phép đo khoảng cách, khung phân loại hàm nhân cho việc học phép đo khoảng cách, mô hình máy học Vector hỗ trợ SVM kết hợp với khung phân loại hàm nhân (kernel).
Chương 3: Phương pháp nghiên cứu Trình bày cách thu thập và xử lý dữ liệu, các thiết bị trong nghiên cứu, các bước thực hiện, cách xây dựng mô hình, đánh giá mô hình, phương pháp thực nghiệm và cách đánh giá kết quả thực nghiệm được áp dụng trong đề tài.
Chương 4: Kết quả và thảo luận.
Chương 5: Kết luận và đề xuất.
CƠ SỞ LÝ THUYẾT
Nghiên cứu liên quan
2.1.1 Thu hoạch ảnh từ Web
Việc tạo ra các cơ sở dữ liệu chứa một lượng lớn hình ảnh và với độ chính xác cao vẫn là một công việc thủ công khó khăn Các công cụ tìm kiếm hình ảnh đã cung cấp cho chúng ta một cách thực hiện dễ dàng, nhưng hiện tại bị giới hạn bởi độ chính xác kém của các hình ảnh được trả lại và các hạn chế đối với tổng số hình ảnh được cung cấp.
❖Tại Hội nghị Hiệp hội Máy tính IEEE về Nhận dạng Mẫu và Thị giác Máy tính, năm 2006 Bài báo " Động vật trên Web" của nhóm tác giả Tamara L Berg và
David A Forsyth [1] đã đề xuất một phương pháp tìm kiếm cho ra hàng ngàn ảnh các lớp động vật có độ chính xác cao từ Web Phương pháp của họ được tiến hành theo hai giai đoạn: Đầu tiên, các chủ đề được phát hiện dựa trên các từ xuất hiện trên các Trang web bằng cách sử dụng Phân bổ Dirichlet tiềm ẩn (LDA) trên văn bản Cụm hình ảnh cho mỗi chủ đề được hình thành bởi những hình ảnh chọn nơi lân cận văn bản là tốp xếp đầu tiên theo chủ đề này Sau đó, bằng cách thủ công (con người) mỗi lớp được phân vùng thành các cụm tích cực và tiêu cực.
Thứ hai, hình ảnh và văn bản liên quan từ các cụm này được sử dụng làm mẫu để huấn luyện bộ phân loại dựa trên biểu quyết về hình ảnh (hình dạng, màu sắc và kết cấu) và các tính năng văn bản Bộ phân loại sau đó được sử dụng để chạy lại tập dữ liệu đã tải xuống Việc ghi nhãn bởi người dùng của các cụm tránh được vấn đề về đa năng, cũng như cung cấp dữ liệu huấn luyện tốt cho trình phân loại.
Phương pháp này thành công trong việc đạt được năng suất cao hơn, nhưng với chi phí can thiệp thủ công.
❖Trong bài báo " Thu thập cơ sở dữ liệu ảnh từ Web" của nhóm tác giả Florian
Schroff, Antonio Criminisi, and Andrew Zisserman [2] tại Hội nghị quốc tế lần thứ 11
IEEE về thị giác máy tính năm 2007, đã đề xuất ra một phương pháp là tự động tạo ra một số lượng lớn hình ảnh cho một lớp đối tượng được chỉ định Bằng cách sử dụng WebSearch và Google Image Search với hướng tiếp cận đa phương thức sử dụng cả văn bản, siêu dữ liệu và các tính năng trực quan được sử dụng để thu thập nhiều hình ảnh chất lượng cao từ Web Các bước thực hiện của phương pháp này như sau:
Bước thứ nhất, tải hình ảnh và dữ liệu văn bản liên quan của hình ảnh cho một lớp đối tượng được chỉ định bằng cách sử dụng WebSearch & GoogleImages.
Bước thứ hai, loại bỏ những biểu tượng, hình vẽ trừ tượng của hình ảnh không liên quan.
Bước thứ ba, xếp thứ hạng của những hình ảnh dựa trên thuộc tính văn bản của hình ảnh đó bằng việc sử dụng phân loại xác suất Bayes.
Bước thứ tư, huấn luyện phân loại trực quan SVM trên những hình ảnh đã được xếp thứ hạng dựa vào thuộc tính văn bản.
Bước thứ năm, sắp xếp lại thứ hạng của tất cả hình ảnh tải xuống (bước 1) sử dụng công cụ phân loại trực quan đánh giá.
Hình 2.1 Mô tả lại sơ đồ hệ thống của nhóm tác giả Florian Schroff, Antonio Criminisi, and
Với phương pháp này, nhóm tác giả đã lấy được một số lượng lớn các hình ảnh của một lớp học đặc biệt tự động, đạt được độ chính xác cao hơn so với công cụ tìm kiếm Google Image Search.
Trong phương pháp này, có một số lớp hình ảnh khi phân loại cho hiệu suất cao như: đồng hồ đeo tay, hươu cao cổ bởi vì sự nhiễu loạn thông tin miêu tả về văn bản các hình này thấp (đa ngữ nghĩa văn bản) Một số lớp hình ảnh cho hiệu suất phân loại thấp như: máy bay, lạc đà, hổ Nguyên nhân là thiếu tính phân biệt ngữ nghĩa của truy vấn văn bản đối với hình ảnh cần tìm kiếm (ví dụ: đối với máy bay, có hình ảnh của thực phẩm máy bay, máy bay đồ chơi, máy bay giấy, nội thất máy bay…).
2.1.2 Khảo sát và nghiên cứu thực nghiệm về các phương pháp học phép đo khoảng cách
❖ Vào năm 2018, Dewei Li và Yingjie Tian, đã “ Khảo sát và nghiên cứu thực nghiệm về phương pháp học phép đo khoảng cách” [3]cách toàn diện để so sánh tất cả các phương pháp được đề xuất từ năm 2003 đến 2017.Khám phá khả năng cải thiện độ chính xác, mối quan hệ giữa thay đổi khoảng cách và độ chính xác, mối quan hệ giữa độ chính xác và kích thước lân cận kNN.
Trong bài báo này, có tất cả 18 phương pháp được đánh giá và trình bày phân loại dựa trên đặc điểm riêng biệt nhất của mỗi phương pháp Tất cả các phương pháp được phân loại thành năm lớp, bao gồm: chi phí theo cặp, khung xác suất, phương pháp tiếp cận tăng, các biến thể có lợi và các ứng dụng cụ thể Tất cả các kết quả thử nghiệm xác minh rằng học phép đo khoảng cách phi tuyến có lợi thế lớn hơn so với học phép đo khoảng cách tuyến tính trong việc trích xuất phép đo hữu ích Tuy nhiên, học phép đo khoảng cách phi tuyến thường cần nhiều thời gian hơn để có được thông tin phụ thuộc dữ liệu Nhóm tác giả xác nhận rằng không có một phương pháp nào có thể thực hiện tốt nhất trên tất cả các bộ dữ liệu, nhưng kết quả thử nghiệm cung cấp bằng chứng cho thấy một số phương pháp có khả năng cao trong việc học các phép đo thông tin
Một số gợi ý về việc lựa chọn phương pháp học theo phép đo: (1) Ba phương pháp BoostMetric,LMNNvà SERAPH được đề xuất trước tiên vì điểm số thống kê (độ chính xác và đánh giá phân loại), với thời gian tính toán tương đối thấp hơn (2) GBLMNN và MCML được khuyến nghị khi tìm kiếm chính xác và đánh giá phân loại cao với thời gian tính toán là yếu tố phụ Nhưng đối với dữ liệu phi cấu trúc, chẳng hạn như bộ dữ liệu hình ảnh, GBLMNN không phải là một lựa chọn tốt; (3) ITML và DML-eig là hai lựa chọn tốt khi học phép đo khoảng cách cho bộ dữ liệu quy mô lớn do độ phức tạp tính toán thấp hơn nhiều.
❖ Tháng 12 năm 2018, nhóm tác giả gồm: Juan Lúi Suárez Díaz, Salvador
Garcia, Francisco Herrera thuộc DaSCI Viện nghiên cứu Andalusian về Khoa học Dữ liệu và Trí tuệ Tính Toán Đại học Granada, Tây Ban Nha, có đăng bài " Hướng dẫn về Học phép đo khoảng cách từ xa: Cơ sở Toán học, Thuật toán, Phân tích Thực nghiệm, Triển vọng và Thách thức (với Phụ lục về Cơ sở Toán học và Giải thích Thuật toán chi tiết)" [4] trên Computer Sciences Bài đăng đầu tiên vào ngày 14 tháng
12 năm 2018, lần chỉnh sửa cuối cùng là ngày 19 tháng 08 năm 2020 Trong bài báo này, nhóm tác giả đã mô tả vấn đề học phép đo khoảng cách và các cơ sở toán học thành ba khối chính: phân tích lồi, phân tích ma trận và lý thuyết thông tin Các thuật toán được nhóm tác giả nghiên cứu, đánh giá thử nghiệm toàn diện để phân tích khả năng của chúng trong các bài toán phân loại tiêu chuẩn, đặc biệt là xem xét giảm kích thước và các hàm nhân (kernezation).
Trong quá trình thực hiện, nhóm tác giả đã thu thập 34 bộ dữ liệu để thử nghiệm.Tất cả các tập dữ liệu này là số, không chứa các giá trị bị thiếu và được định hướng cho các vấn đề phân loại tiêu chuẩn Ngoài ra, mặc dù một số thuật toán học phép đo khoảng cách có thể xử lý tốt với những tập dữ liệu lớn, nhưng cũng có các thuật toán khác không thể xử lý tập dữ liệu quá lớn Vì vậy đối với các tập hợp có số lượng mẫu cao, một tập hợp con có kích thước mà tất cả các thuật toán có thể giải quyết, giữ nguyên phân bố lớp, sẽ được chọn.
Sau đây là bảng mô tả chi tiết 34 bộ dữ liệu dùng để thực nghiệm của nhóm tác giả:
Bảng 2 Mô tả 34 bộ dữ liệu thực nghiệm của nhóm tác giả Juan Lúi Suárez Díaz, Salvador
Garcia, Francisco Herrera (trích dẫn từ: https://jlsuarezdiaz.github.io/software/pyDML/stats/#)
Trên cơ sở 34 bộ dữ liệu đã thu thập, nhóm tác giả đã thực nghiệm trên 19 thuật toán học phép đo khoảng cách Các thuật toán sẽ được đánh giá với các bộ phân loại kNN (với k=3, 5, 7) Cụ thể các thuật toán thực nghiệm như sau:
●Average Neighborhood Margin Maximization (ANMM)
●Local Linear Discriminant Analysis (LLDA)
●Large Margin Nearest Neighbors (LMNN)
●Nearest Class Mean Metric Learning (NCMML)
●Nearest Class with Multiple Centroids (NCMC)
●Information Theoretic Metric Learning (ITML)
●Distance Metric Learning through the Maximization of the Jeffrey Divergence (DMLMJ)
●Maximally Collapsing Metric Learning (MCML)
●Learning with Side Information (LSI)
●Distance Metric Learning with Eigenvalue Optimization (DML-eig)
●Logistic Discriminant Metric Learning (LDML)
●Kernel Large Margin Nearest Neighbors (KLMNN)
●Kernel Average Neighborhood Margin Maximization (KANMM)
●Kernel Distance Metric Learning through the Maximization of the Jeffrey divergence (KDMLMJ)
●Kernel Local Linear Discriminant Analysis (KLLDA)
Từ kết quả thực nghiệm, nhóm tác giả đã có đánh giá rằng:
Các hàm tính khoảng cách
Một hàm khoảng cách phải thỏa mãn bốn điều kiện thiết yếu như sau:
❖ Định nghĩa 1: Khoảng cách trên tập X là một cặp hàm d: X x X ∈ R thỏa mãn các điều kiện sau ∀x , x ' , x '' ∈X: a d(x, x’) 0 (không âm), b d(x, x’) = 0 nếu và chỉ nếu x = x’, c d(x, x’) = d(x’, x) (đối xứng), d d(x, x’’) d(x, x’) + d(x’, x’’) (bất đẳng thức tam giác).
Những điều kiện này, được gọi là các tiên đề khoảng cách, phản ánh các thuộc tính trực quan về khái niệm khoảng cách Mặc dù hàm khoảng cách là một đối tượng toán học được xác định rõ, nhưng không có thỏa thuận chung về định nghĩa của hàm tương đồng, về cơ bản có thể là bất kỳ hàm cặp nào Chúng ta sẽ sử dụng định nghĩa sau.
❖ Định nghĩa 2: Một hàm tương đồng là một cặp hàm S: X x X ∈ R.
Chúng ta nói rằng S là một hàm tương đồng đối xứng nếu ∀x , x ' , x '' ∈X, S(x, x’) = S (x’, x).
Theo quy ước, giá trị của hàm tương tự càng lớn, cặp đầu vào càng giống nhau (ngược lại gọi là hàm không tương đồng) Bình thường, các hàm khoảng cách là các hàm không giống nhau.
❖ Định nghĩa 3: Hàm tương đồng đối xứng K là một hạt nhân (kernel), nếu tồn tại hàm ánh xạ ϕ:X → Htừ không gian thể hiện X đến không gian vecto H được gọi là một tích trong (-,-).
2.2.2 Các phép đo Khoảng cách.
Hình 2.2 Khoảng cách Minkowski: vòng tròn đơn vị cho các giá trị khác nhau của p
( H được gọi là một không gian Hilbert ) sao cho Kcó thể được viết là:
Tương đương, K là một hạt nhân (kernel) nếu nó là bán dương (PSD) tức là:
∑ j=1 n c i c j K( x i , x j ) ≥ 0 ( 2.2 ) cho tất cả các chuỗi hữu hạn của x 1 ,….x n và c 1 , …, c n R.
Nói cách khác, hạt nhân (kernel) là một hàm có dạng tích trong và có thể được hiểu là thước đo tương đồng.
Khoảng cách Minkowski là một họ của khoảng cách được tạo ra bởi định mức
Từ công thức (4.2.2.1) khi cho p=1, ta có khoảng cách Mahattan: d man (x, x’) =||x – x’|| 1 = ¿ ¿ (2.4)
Từ công thức (4.2.2.1) khi cho p=2, ta có khoảng cách Euclidean:
Từ công thức (4.2.2.1) khi cho ∞, ta có khoảng cách Chebyshes: p p p p p p p p p p p p p p
❖Khoảng cách Mahalanobis: Được Mahalanobis đề xuất năm 1936.
Trong máy học, tất cả các thuật toán hiện đang triển khai đều học được cái gọi là khoảng cách Mahalanobis Đưa ra một ma trận tham số có giá trị thực L có kích thước(num_dims, n_features) Trong đó, n_features là số đặc tính của dữ liệu, khoảng cách Mahalanobis có mối liên quan với ma trận L được xác định như sau:
Nói cách khác, khoảng cách Mahalanobis là khoảng cách Euclide sau khi biến đổi tuyến tính của không gian tính năng được xác định bởi L (khi L là ma trận đơn vị thì công thức trên chính là khoảng cách Euclide tiêu chuẩn)
Do đó, học phép đo khoảng cách Mahalanobis có thể được coi là học một không gian nhúng mới của số chiều (num_dims) Lưu ý: số chiều (num_dims) luôn nhỏ hơn số đặc tính (n_features).
Học phép đo khoảng cách Mahalanobis phải thỏa mãn ba tính chất: “không âm”,
“đối xứng”, “bất đẳng thức tam giác”.
Ngoài ra, khoảng cách Mahalanobis cũng có thể được tham số hóa bằng ma trận bán xác định (PSD) dương M:
Sử dụng thực tế là ma trận bán xác định (PSD) M luôn luôn có thể biểu diễn thành M=L ⊤ L, người ta đã chứng minh rằng hai tham số này tương đương nhau.
❖Độ tương đồng Cosine: Độ tương đồng Cosine đo cos của góc giữa các vectơ đầu vào, và được tính bằng công thức:
T x ' ¿|x|∨¿ 2 ∨¿x ' ¿∨¿ 2 ¿ ¿ (2.9) Độ tương đồng Cosine được sử dụng rộng rãi trong khai thác dữ liệu, đặc biệt là trong truy xuất văn bản [Baeza-Yates and Ribeiro-Neto, 1999] [5] và gần đây hơn trong phục hồi hình ảnh [see for instance Sivic and Zisserman, 2009] [6] khi dữ liệu được biểu diễn dưới dạng thuật ngữ vecto [Salton et al., 1975].
❖Sự tương đồng song tuyến tính ( Bilinear similarity ): Độ tương đồng song tuyến có liên quan đến độ tương đồng cosin nhưng không bao gồm chuẩn hóa theo định mức của các đầu vào và được tham số hóa bằng ma trận M:
Trong đó, M R dxd không yêu cầu phải là kiểu ma trận bán dương (PSD) hay đối xứng Sự tương đồng song tuyến đã được sử dụng trong truy xuất hình ảnh Khi M là ma trận đơn vị, S M là độ tương đồng Cosine không chuẩn hóa.
Sự tương đồng song tuyến tính có hai ưu điểm chính Đầu tiên, nó có thể tính toán một cách hiệu quả cho các đầu vào thưa thớt: if x và x’ có các giá trị tương ứng k và k’ khác không, S M (x, x’) có thể được tính trong phép toán O(k k’) Thứ hai, nó có thể được sử dụng như một thước đo tương tự giữa các trường hợp có kích thước khác nhau (ví dụ: tài liệu và truy vấn trong tìm kiếm trên web) bằng cách sử dụng ma trận không vuông M.
❖ Hàm nhân tuyến tính (Linear kernel):
Hạt nhân tuyến tính (linear kernel) đơn giản là một tích trong trong không gian ban đầu X:
Nói cách khác, không gian tương ứng H = X và ϕ là một ánh xạ định danh:
❖Hàm nhân đa thức (Polynomial kernels) Hạt nhân đa thức bậc p N được định nghĩa là:
Có thể chỉ ra rằng, không gian H tương ứng với Kpoly là không gian của tất cả đơn thức ở bậc p.
❖Hàm nhân Gausian RBF (Gausian RBF): Là một hàm nhân được sử dụng rộng rãi, được định nghĩa là:
Trong đó σ 2 > 0 được gọi là tham số chiều rộng Đối với hạt nhân này, có thể chỉ ra rằng H là số chiều vô hạn.
❖Khoảng cách Biểu đồ (Histogram distance):
Một biểu đồ (được chuẩn hóa) là một vecto đặc trưng dựa trên xác suất đơn giản
Sự biểu diễn như vậy là phổ biến trong xử lý văn bản và thị giác máy tính, trong đó các tài liệu được biểu diễn dưới dạng vectơ tần số của các từ (trực quan) [Li và Perona, 2005, Salton et al.,1975].
Khoảng cách X 2 [Hafner et al., 1995] là khoảng cách biểu đồ giả định được lấy từ phép thử thống kê X 2 và được định nghĩa là:
X 2 là khoảng cách biểu đồ bin-to-bin, được giới thiệu bởi Rubner và cộng sự
Các thuật toán học số phép đo LMNN, KLMNN, NCA
2.3.1 Kỹ thuật LMNN (Large Margin Nearest Neighbor)
Kỹ thuật phân loại biên lớn làng giềng gần nhất (LMNN) [7] được đề xuất, cải tiến bởi Weinberger và các cộng sự vào các năm 2005, 2008, 2009 LMNN là một trong những phương pháp học phép đo khoảng cách Mahalanobis mở rộng được sử dụng rộng rãi nhất và là chủ đề của nhiều phần mở rộng Một trong những lý do cho sự phổ biến của nó là các ràng buộc được xác định theo cách cục bộ, nghĩa là: k hàng xóm gần nhất (hàng xóm mục tiêu) của bất kỳ trường hợp đào tạo nào phải thuộc về chính xác một lớp, trong khi đó tránh xa các lớp khác (kẻ mạo danh) Ý tưởng của thuật toán là phân biệt giữa hai loại điểm dữ liệu đặc biệt: hàng xóm mục tiêu và kẻ mạo danh.Khoảng cách Euclide được sử dụng để xác định hàng xóm mục tiêu Các ràng buộc được xác định như sau:
S = {(x i , x j ) : y i =y j and x j belongs to the k-neighborhood of x j },
Trong thuật toán LMNN khoảng cách Mahalanobis đầu ra được tối ưu hóa với mục tiêu sao cho mỗi điểm, k hàng xóm gần nhất của nó luôn thuộc cùng một lớp. Trong khi các điểm từ các lớp khác nhau được phân tách bằng một lề lớn.
Hình 2.3 Sơ đồ minh họa của thuật toán LMNN Đối với mỗi điểm x i , ta xác định k hàng xóm mục tiêu của nó là k điểm đầu vào khác nhau có cùng nhãn y i , gần với x i nhất Giả sử với w ij ∈ {0,1} để cho biết điểm x j đầu vào có phải là hàng xóm mục tiêu của x i đã cho hay không Để thuận tiện, chúng ta xác định y ij ∈ {0,1} để cho biết các nhãn y i và y j có khớp nhau hay không Hàm mục tiêu của LMNN như sau:
Trong đó: [.]+ biểu thị mất bản lề tiêu chuẩn: [z] + = max (z, 0) Thuật ngữ c > 0 là hằng số dương thường được đặt bằng xác nhận chéo Hàm mục tiêu ở trên là hàm lồi và có hai thuật ngữ đối ngược nhau Thuật ngữ đầu tiên, “xử phạt khoảng cách lớn” giữa mỗi đầu vào và hàng xóm mục tiêu của nó.Thuật ngữ thứ hai, “xử phạt khoảng cách nhỏ” giữa mỗi đầu vào và tất cả các đầu vào khác không có cùng chung một nhãn.
Thuật toán học phép đo khoảng cách về hàng xóm gần biên lớn (LMNN) đã được sử dụng thành công trong nhiều ứng dụng và liên tục thúc đẩy các công trình nghiên cứu mới Tuy nhiên, độ phức tạp tính toán cao trong việc đào tạo thuật toán LMNN khiến nó không thể áp dụng được cho các bộ dữ liệu lớn, đặc biệt là khi chúng ta cần điều chỉnh các siêu tham số của thuật toán LMNN.
2.3.2 Kỹ thuật KLMNN (Kernel Large Margin Nearest Neighbor)
KLMNN là phiên bản hàm nhân viết tắt của LMNN (Large Margin Nearest Neighbor) Trong đó, dữ liệu trong X được gửi đến không gian đặc trưng để học trong không gian đó một khoảng cách tối thiểu hàm mục tiêu đặt trong bài toán LMNN. ε(L)=(1−μ)∑ i=1
Theo đó, với mỗi x i ∈ X , L ᶲ (x) = AK i , trong đó A∈M d' × N (R) là ma trận được đưa ra bởi định lý trên, và K i đại diện cho cột thứ i của ma trận hạt nhân cho tập huấn luyện Sử dụng điều này trong biểu thức lỗi, chúng ta nhận được:
Biểu thức trên chỉ phụ thuộc vào A và các hàm nhân, và tối thiểu hóa nó như một hàm của A (chúng ta sẽ ký hiệu là ε (A)) chúng ta nhận được cùng một giá trị với tối thiểu hóa ε (L) Cũng lưu ý rằng biểu thức ε (A) cũng yêu cầu tính toán hàng xóm và kẻ mạo danh mục tiêu, nhưng chúng chỉ phụ thuộc vào khoảng cách trong không gian đặc trưng, có thể tính toán được Do đó, tất cả các thành phần của ε (A) đều có thể thao tác tính toán, vì vậy nếu chúng ta áp dụng phương pháp giảm dần gradient trên ε (A), chúng ta có thể giảm giá trị của hàm mục tiêu, luôn nhớ rằng chúng ta có thể bị mắc kẹt trong tối ưu cục bộ, vì bài toán không lồi Cuối cùng, khi tìm thấy ma trận A cực tiểu ε (A), chúng ta sẽ xác định được ánh xạ L tương ứng nhờ vào định lý đại diện, và chúng ta có thể sử dụng A cùng với các hàm nhân để biến đổi dữ liệu mới.
2.3.3 Kỹ thuật NCA (Neighborhood Components Analysis)
Phân tích thành phần lân cận [8] (NCA) là một thuật toán học phép đo khoảng cách khoảng các nhằm mục đích cải thiện độ chính xác của việc phân loại hàng xóm gần nhất so với khoảng cách Eclid tiêu chuẩn Thuật toán tối đa hóa trực tiếp một biến thể ngẫu nhiên của điểm số k-hàng xóm gần nhất (kNN) bỏ đi trên trập huấn luyện. Mục đích của nó là tìm hiểu một phép biến đổi tuyến tính với mục tiêu giảm thiểu sai số sót lại được mong đợi bởi phân loại láng giềng gần nhất Ngoài ra, phép chuyển đổi này có thể được sử dụng để giảm kích thước của tập dữ liệu và do đó làm cho bộ phân loại hiệu quả hơn.
Phân tích thành phần lân cận (NCA) sử dụng phép phân tích M=L T L và xác định xác suất p ij mà x i là lân cận của x j bằng cách tính toán khả năng xảy ra tối đa mềm của khoảng cách Mahalanobis:
Khi đó xác suất để xi được phân loại chính xác theo quy tắc ngẫu nhiên láng giềng gần nhất là:
Bài toán tối ưu hóa là tìm ma trận L tối đa hóa tổng xác suất được phân loại đúng:
Mô hình máy học Vector hỗ trợ (Support Vector Machines - SVM)
Máy học véctơ hỗ trợ (Support Vector Machines - SVM) là phương pháp học có giám sát do Vapnik nghiên cứu từ những năm 1965, và ngày càng được sử dụng phổ biến trong nhiều lĩnh vực, đặc biệt là lĩnh vực phân loại mẫu và nhận dạng mẫu
Bài toán phân lớp, sử dụng SVM nhằm mục đích tìm một siêu phẳng có biên cực đại giữa lớp mẫu âm và mẫu dương, đồng thời cực tiểu hóa các mẫu không phân chia được trong tập huấn luyện SVM dựa trên cơ sở toán học vững chắc Tuy nhiên việc huấn luyện mẫu sử dụng SVM đòi hỏi phải giải bài toán tối ưu nhiều biến Ban đầu, SVM được phát triển để giải các bài toán phân lớp, về sau do tính ưu việt, nó còn được ứng dụng rộng rãi để giải các bài toán hồi quy.
Việc tìm siêu phẳng tối ưu của SVM được làm như sau
Hình 2.4 Phân lớp tuyến tính với máy học Vectơ hỗ trợ
Xét ví dụ phân lớp nhị phân tuyến tính như hình 4 SVM tìm siêu phẳng tối ưu (xác định bởi véctơ pháp tuyến w và độ lệch của siêu phẳng b) dựa trên 2 siêu phẳng hỗ trợ của 2 lớp Các phần tử lớp +1 nằm bên phải của siêu phẳng hỗ trợ cho lớp +1, các phần tử lớp -1 nằm phía bên trái của siêu phẳng hỗ trợ cho lớp -1 Những phần tử nằm ngược phía với siêu phẳng hỗ trợ được coi như lỗi Khoảng cách giữa 2 siêu phẳng hỗ trợ được gọi là lề Mô hình phân hoạch tốt (siêu phẳng tối ưu nằm giữa 2 siêu phẳng hỗ trợ) tìm được từ 2 tiêu chí là cực đại hóa lề (lề càng lớn, mô hình phân lớp càng an toàn) và cực tiểu hóa lỗi.
Vấn đề dẫn đến việc giải bài toán quy hoạch toàn phương được biết phổ biến trong toán tối ưu hóa SVM có thể sử dụng hàm nhân để phân lớp phi tuyến tính.
PHƯƠNG PHÁP NGHIÊN CỨU
Thu thập dữ liệu
Để thực hiện đề tài này, căn cứ vào "Danh sách Di sản văn hóa phi vật thể quốc gia" do Bộ Văn hóa, Thể thao và Du lịch công nhận Trong luận văn này đã lựa chọn
05 chủ đề "Văn hóa phi vật thể Việt Nam" để thu thập dữ liệu hình ảnh.
Mục tiêu của công việc là thu thập một số lượng lớn hình ảnh cho một lớp đối tượng được chỉ định Bằng cách sử dụng công cụ Google Images Search với hướng tiếp cận đa phương thức sử dụng cả văn bản, siêu dữ liệu và các tính năng trực quan được sử dụng để thu thập nhiều hình ảnh chất lượng từ Web Hình ảnh cần tìm được thực hiện bằng một truy vấn tìm kiếm trên web dựa vào văn bản nhận dạng đối tượng đó Các trang web và hình ảnh mà chứa chúng được tải xuống Nhiệm vụ sau đó là loại bỏ các hình ảnh không liên quan và lấy phần hình ảnh còn lại làm tập dữ liệu để thực nghiệm đề tài Dữ liệu hình ảnh cụ thể của 05 chủ đề như sau:
STT Tên chủ đề Số lượng hình
1 Đờn ca tài tử Nam Bộ 1940
Nghệ thuật trình diễn dân gian. Tỉnh An Giang, Bà Rịa-Vũng Tàu, Bạc Liêu, Bến Tre, Bình Dương, Bình Phước, Bình Thuận,
Cà Mau, Đồng Nai, Đồng Tháp, Hậu Giang, Kiên Giang, Long An, Ninh Thuận, Sóc Trăng, Tây Ninh, Tiền Giang, Trà Vinh, Vĩnh Long, thành phố Hồ Chí Minh và Cần Thơ
Nghề thủ công truyền thống Xã Định An và Định Yên, huyện Lấp
3 Lễ hội Ok Om Bok của người Khmer 1907 Lễ hội truyền thống Tỉnh Trà
4 Hội đua bò Bảy Núi 1947 Lễ hội truyền Thống Tỉnh An
5 Lễ hội Miếu Bà Chúa Xứ núi Sam 1944 Lễ hội truyền thống Tp Châu Đốc, tỉnh An Giang.
Bảng 3.1 Mô tả tập dữ liệu
Hình 3.5 Mô tả tập dữ liệu hình ảnh cụ thể của lớp chủ đề
Những hình ảnh của một lớp đối tượng sau khi được tải xuống, bằng trực quan người dùng sẽ được loại bỏ những hình ảnh trừu tượng không có liên quan Đồng thời, căn cứ vào nội dung thể hiện mỗi bức hình, kết hợp với chú thích, văn bản miêu tả đi kèm của bức hình đó, sẽ thực hiện việc gán nhãn bằng tay trên tập dữ liệu trong lớp hình ảnh đối tượng đó
Bảng 3.2 Mô tả việc gán nhãn bằng tay cho mỗi bức hình thuộc các lớp chủ đề
Trong bảng 3 mô tả việc gán nhãn bằng tay cho mỗi bức hình thuộc các lớp chủ đề của tập dữ liệu Mỗi bức hình được gán nhãn gồm có 4 thuộc tính: Lớp chủ đề, ID hình, Nội dung hình, Nội dung văn bản Trong đó, nội dung hình có giá trị là True (T) khi bức hình đó thể hiện nội dung đúng với lớp chủ đề, có giá trị là False (F) khi nội dung hình không đúng với lớp chủ đề Nội dung văn bản chính là phần chú thích văn bản đi kèm với bức hình, nếu phần chú thích này phản ánh ý nghĩa đúng với chủ đề thì có giá trị True (T), ngược lại có giá trị False (F).
Phương pháp bố trí thực nghiệm
3.3.1 Môi trường thực nghiệm Để chạy thực nghiệm cho luận văn này, về thiết bị phần cứng đã được sử dụng : Laptop HP EliteBook WorkStation 8560W, CPU core i7-2760QM 2.4Ghz, card đồ họa NVIDIA Quadro 1000M, ram 12Gb, SDD 256Gb.
Ngôn ngữ lập trình để thực nghiệm là Python 3.8.
Tập dữ liệu tải về sau quá trình xử lý tiền dữ liệu, sẽ được chia thành 2 phần: 1 phần dùng để huấn luyện và 1 phần dùng để kiểm tra với tỉ lệ là 7:3 (70% là tập Train, 30% là tập Test). m
Các bước tiến hành thực nghiệm cụ thể như sau:
Dữ liệu tải về sẽ được tiền xử lý và gán nhãn bằng tay cho mỗi bức hình của các lớp chủ đề Căn cứ vào chú thích, nội dung miêu tả đi kèm của hình ảnh, những hình ảnh này sẽ được xếp thứ hạng lại Các hình ảnh được xếp thứ hạng từ cao xuống thấp dựa trên xác suất Những hình ảnh có thứ hạng cao là những hình ảnh có phần nội dung hình và nội dung văn bản đúng với lớp chủ đề đã cho Những hình ảnh có thứ hạng xếp đầu sẽ được sử dụng làm dữ liệu đào tạo.
Sau đó, luận văn chạy thực nghiệm trên các thuật toán học phép đo khoảng cách như: NCA, LMNN, KLMM kết hợp với kNN [9] để phân loại hình ảnh thu được Tiếp theo sẽ đối chiếu so sánh với việc dùng mô hình máy học Vector hỗ trợ (SVM) trên các kernel tuyến tính (linear), kernel phi tuyến tính (rbf) để đánh giá kết quả đạt được giữa các phương pháp.
Hình 3.6 Minh họa tập chia tập dữ liệu thực nghiệm
Từ các phương pháp học phép đo khoảng cách đã thực nghiệm ở trên, chọn ra phương pháp có kết quả phân loại ảnh có độ chính xác tốt nhất Lấy ma trận học phép đo khoảng cách từ phương pháp ấy, xây dựng thành hàm nhân mới để kết hợp với mô hình máy học SVM, để đào tạo và phân lớp lại cho các hình ảnh thuộc các lớp đối tượng đang xét, so sánh kết quả phương pháp với các phương pháp khác để xem mức độ phân lớp hình ảnh có được cải thiện hơn không.
Hình 3.7 Sơ đồ hệ thống các bước làm thực nghiệm
Xếp hạng lại những hình ảnh của các thuật toán học khoảng cách dựa vào bộ phân loại kNN
Sử dụng các thuật toán học khoảng cách (NCA, LMNN, KLMNN) và bộ phân loại kNN (k=3,
5, 7) dựa vào kết quả từ xếp hạng văn bản
Lấy ma trận học số liệu khoảng cách của thuật toán tốt nhất làm Hàm nhân (kernel) cho SVM
So sánh các kết quả đạt được từ các phương pháp
Sắp thứ hạng hình ảnh dựa vào thông tin văn bản
Xếp hạng lại hình ảnh dựa vào thông tin văn bản + trực quan hình ảnh Đào tạo công cụ phân tách hình ảnh và Xếp hạng lại hình ảnh Đào tạo công cụ phân tách hình ảnh
Loại bỏ một số hình ảnh trừu tượng, không liên quan
Bộ phân loại Bayes thơ ngây
Bộ phân loại SVM dựa vào kết quả từ xếp hạng văn bản
Xếp hạng lại những hình ảnh dựa vào bộ phân loạiSVM
Hình 3.8 Sơ đồ mô tả phương pháp thực hiện việc kết hợp giữa Ma trận học số liệu khoảng cách với mô hình máy học Vectơ hỗ trợ SVM
Đánh giá mô hình
Đánh giá là một nhiệm vụ quan trọng trong việc đánh giá mô hình dữ liệu nói chung và phân lớp lớp dữ liệu nói riêng Thông qua việc đánh giá người ta biết được thuật đó tốt hay không, có đạt được độ chính xác cần thiết hay không Ngoài ra, nó còn giúp chúng ta so sánh được các thuật học phép đo khoảng cách này với thuật toán học sô liệu khác, thuật toán phân lớp này với phân lớp khác, khi chúng cùng giải quyết một vấn đề cụ thể Để đánh giá mô hình người ta cần có nghi thức đánh giá và các tiêu chí đo tính hiệu quả của thuật toán.
Nghi thức kiểm tra là cách thức sử dụng dữ liệu đầu vào của các giải thuật phân lớp, được các nhà khoa học trong lĩnh vực khoa học máy tính quy ước để kiểm tra, đánh giá các giỉa thuật phân lớp của họ.
3.4.1.1 Nghi thức huấn luyện-kiểm tra (training-test)
Khi dữ liệu dùng để chạy giải thuật phân lớp có cả tập dữ liệu huấn luyện (hay tập học) và tập dữ liệu kiểm tra (hay tập thử), thì nghi thức kiểm tra được sử dụng là huấn luyện – kiểm tra Theo cách này thì tập dữ liệu học được sử dụng để xây dựng mô hình học, sau đó từng phần tử của tập dữ liệu thử được phân lớp dựa trên mô hình học, cuối cùng là đánh giá kết quả.
3.4.1.2 Nghi thức kiểm tra chéo (Cross validation)
Nghi thức kiểm tra chéo là nghi thức mà người ta sử dụng một phần của tập dữ liệu để xây dựng mô hình học và phần còn lại của cùng tập dữ liệu để kiểm tra Nghi thức này được dùng khi dữ liệu để chạy giải thuật phân lớp không có tập kiểm tra mà chỉ có tập dữ liệu huấn luyện Tùy theo đặc tính của dữ liệu mà những nghi thức kiểm tra chéo khác nhau được sử dụng như: k-fold hay leave-one-out.
Nghi thức kiểm tra chéo k-phần (k-fold cross- validation)
Trong nghi thức kiểm tra chéo k-phần, dữ liệu ban đầu được chi ra ngẫu nhiên k tập con (hay k phần loại trừ lẫn nhau, D 1 , D 2 , …, D k mỗi phần có kích thước tương đối bằng nhau.Việc huấn luyện và thử được tiến hành k lần Trong lần lặp thứ i, phần D i được dùng làm tập thử, và các phần còn lại được ghép lại với nhau để huấn luyện mô hình học Có nghĩa là, trong lần lặp đầu tiên, các tập con D 2 , D 3 , …, D k kết hợp với nhau để làm tập dữ liệu huấn luyện để đạt được mô hình học đầu tiên, mô hình này được kiểm tra trên tập thử D 1 ; lần lặp thứ hai, mô hình được huấn luyện trên tập dữ liệu có được từ việc kết hợp các phần D 1 , D 3 ,…D k và được thử trên D 2 ; và cứ tiếp tục như vậy đúng k lần Theo cách này, mỗi mẫu dữ liệu có số lần được sử dụng bằng nhau để học và để thử Từ cơ sở đó, việc ước lượng độ chính xác cho mô hình học được tính bằng tổng số lần phân lớp đúng trong k lần lặp chia cho tổng số mẫu trong tập dữ liệu ban đầu; và việc ước lượng lỗi cho việc đoán lớp trong giai đoạn thử được tính bằng tổng số lần đoán sai từ k lần lặp, chia cho tổng số mẫu ban đầu.
Nghi thức kiểm tra chéo leave-one-out
Nghi thức leave-one-out là một trường hợp đặc biệt của kiểm tra chéo k-phần, trong đó k được gán bằng số mẫu của tập dữ liệu ban đầu Nghĩa là, chỉ mộtmẫu được bỏ ra cho một lần học và dùng để thử, do đó số lần lặp của việc học vàthử là bằng với số mẫu trong tập dữ liệu ban đầu.Thông thường, nghi thức kiểm tra chéo 10-phần được khuyên dùng để ước lượng độ chính xác đối với những tập dữ liệu nhiều hơn 300 mẫu (ngay cả khi máytính đủ mạnh cho phép sử dụng nhiều phần hơn) bởi vì theo thực nghiệm, kiểm trachéo 10- phần giữ cho bias và variance tương đối thấp Tương tự, trong trường hợpsố mẫu ít hơn 300 mẫu thì nghi thức leave-one-out được khuyên dùng.
3.4.2 Các tiêu chí đo tính hiệu quả của giải thuật phân lớp.
Precisio n của một lớp là tỷ lệ số mẫu dữ liệu được phân lớp đúng về lớp này trên tổng số mẫu dữ liệu được phân về lớp này (bởi giải thuật phân lớp).
Recall của một lớp là tỷ lệ số mẫu dữ liệu được phân lớp đúng về lớp này trên tổng số mẫu dữ liệu của lớp.
F1-score là tổng hợp của precision và recall, và được định nghĩa là hàm trung bình điều hòa giữa hai giá trị precision và recall. Độ chính xác Accuracy là tỉ lệ số mẫu dữ liệu được phân lớp đúng của tất cả các lớp trên tổng số mẫu dư liệu.