1. Trang chủ
  2. » Luận Văn - Báo Cáo

Áp dụng các phương pháp giải tích và tối ưu toán học vào phân lớp nhị phân và phân đoạn hình ảnh trong học máy

122 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 122
Dung lượng 3,18 MB

Cấu trúc

  • Chương 1. KIẾN THỨC CHUẨN BỊ 20 (0)
    • 1.1 Mô hình chung của quá trình học máy (24)
    • 1.2 Dữ liệu cho học máy (28)
    • 1.3 Các “đặc trưng” trong học máy (31)
    • 1.4 Kiểm tra hiệu quả của máy (34)
    • 1.5 Biểu quyết và kiểm định chéo (35)
    • 1.6 Tối ưu dựa trên Gradient (36)
    • 1.7 Phép tích chập và mạng nơ-ron tích chập (39)
    • 1.8 Kết luận và bình luận cuối chương (41)
  • Chương 2. ĐỘ CHÍNH XÁC CỦA MÁY PHÂN LOẠI NHỊ PHÂN 38 (0)
    • 2.1 Các thước đo độ chính xác của máy phân loại nhị phân (42)
      • 2.1.1 Âm tính, dương tính và ba tỉ lệ cơ bản (42)
      • 2.1.2 Độ chính xác có trọng số (weighted accuracy) (45)
      • 2.1.3 Độ chính xác cân bằng (balanced accuracy) (46)
      • 2.1.4 Điểm số F (F-score) (47)
    • 2.2 Đường cong ROC và các thước đo độ chính xác của các máy phân loại nhị phân mềm 45 (51)
    • 2.3 Phép chiếu thông tin, hàm sigmoid và máy tối ưu (56)
    • 2.4 Cải thiện độ chính xác bằng biểu quyết (60)
    • 2.5 Kết luận và bình luận cuối chương (62)
  • Chương 3. ẢNH HƯỞNG CỦA HÀM MẤT MÁT ĐẾN CÁC BÀI TOÁN PHÂN LOẠI NHỊ PHÂN 57 (0)
    • 3.1 Tổng quan về các hàm mất mát (loss function) (63)
      • 3.1.1 Các hàm mất mát hồi quy (64)
      • 3.1.2 Các hàm mất mát phân loại (phân lớp) (65)
      • 3.1.3 Các hàm mất mát thường dùng trong bài toán phân đoạn hình ảnh (66)
    • 3.2 Học máy vi phân và hàm mất mát (67)
    • 3.3 Hàm mất mát lồi và xác suất bị bóp méo (73)
    • 3.4 Các hàm mất mát không lồi và các bẫy ngẫu nhiên (75)
    • 3.5 Kết luận và bình luận cuối chương (81)
    • 4.1 Phương pháp biểu quyết tô-pô (83)
      • 4.1.1 Phân đoạn hình ảnh và khoảng cách Jaccard (83)
      • 4.1.2 Biểu quyết số học (85)
      • 4.1.3 Biểu quyết tô-pô: Dạng đơn giản nhất (86)
      • 4.1.4 Biểu quyết tô-pô địa phương (87)
      • 4.1.5 Biểu quyết kết hợp (biểu quyết lai): tô-pô và số học (89)
    • 4.2 Tính hợp lý của biểu quyết tô-pô (90)
      • 4.2.1 Trường hợp một chiều (91)
      • 4.2.2 Trường hợp hai chiều (96)
    • 4.3 Các kết quả thực nghiệm của biểu quyết tô-pô (99)
      • 4.3.1 Phân đoạn muối trong các hình ảnh địa chấn (99)
      • 4.3.2 Phân đoạn khuôn mặt người (104)
      • 4.3.3 Phân đoạn mạch máu (109)
    • 4.4 Kết luận và bình luận cuối chương (112)

Nội dung

KIẾN THỨC CHUẨN BỊ 20

Mô hình chung của quá trình học máy

Nói một cách toán học, một chương trình máy tính cổ điển có thể được biểu diễn như là một ánh xạ

M :Ω→R từ tập đầu vào Ω đến tập đầu ra R Ví dụ như, đầu vào v ∈ Ω là một văn bản, đầu ra r = M(v) ∈ R là các lỗi chính tả được chương trình phát hiện trong văn bản đó Một chương trình có học máy cũng là một ánh xạ có dạng

M :Θ×Ω→R, trong đó ngoài tập đầu vào Ω và tập đầu ra R còn có một tập Θ nữa, gọi là tập các tham số có thể học (learnable parameters), tức là có thể thay đổi qua một “quá trình học” Với mỗi θ ∈ Θ cố định thì ta được một “máy cổ điển” M θ tương ứng: M θ (v) = M(θ, v) Quá trình học của máy M chính là quá trình thay đổi và chọn lựa θ sao cho có được một máy M θ “thông minh”, làm được công việc yêu cầu một cách tốt nhất có thể.

Một ý tưởng chính của các nhà tiên phong trong AI là thiết kế máy biết học dựa trên mô phỏng bộ não, quá trình suy nghĩ và học tập của con người và động vật Đặc biệt là, máy cũng có các nơ-ron (neuron) Ngày nay, người ta đã thiết kế ra nhiều kiểu mạng nơ-ron nhân tạo (ANN) khác nhau, ví dụ như mạng nơ-ron dạng tích chập (CNN) phổ biến trong xử lý ảnh, mạng nơ-ron hồi quy (RNN) phổ biến trong xử lý chuỗi thời gian, v.v Một mạng nơ-ron nhân tạo được minh họa như trong Hình 1.1, bao gồm các nơ-ron nhân tạo, là chỗ chứa thông tin (đầu vào, đầu ra, và trung gian trong quá trình xử lý) Các đường kết nối giữa các nơ-ron (axon),chính là các hàm số để tính toán với các dữ liệu đầu vào và trung gian.Các hàm số này có các tham số có thể điều chỉnh, và đó chính là các thành phần của không gian tham số Θ.

Các nơ-ron được phân thành các lớp, tương tự như trong não bộ của người. mạng nơ-ron càng có nhiều lớp, càng có nhiều nơ-ron và các đường kết nối, thì càng phức tạp và càng có khả năng học để làm những việc phức tạp Việc thiết kế và dạy học những mạng nơ-ron nhiều lớp được gọi là học sâu.

Hình 1.1: Sơ đồ mạng nơ-ron: các nút tròn là “nơ-ron”, các đường nối là “axon”.

Thực ra cho đến cách đây một thập kỷ, những thuật toán phổ biến nhất cho học máy, ví dụ như thuật toán Máy vec-tơ hỗ trợ (SVM - Support Vector Machine), còn chưa dùng đến khái niệm “mạng nơ-ron”, tuy rằng khái niệm này có từ những năm 1960 Khái niệm “mạng nơ-ron” chỉ trở nên thật sự phổ biến khi người ta thiết kế được các mạng nơ-ron có nhiều lớp và các phương pháp học sâu.

Việc học sâu cho ra các kết quả rất mạnh, nhưng nó đòi hỏi các máy tính hiệu suất cao, có khả năng tính toán song song (parallel processing), và chỉ mới trở nên phổ biến hơn các phương pháp học máy khác trong thập kỷ

2010 Đến ngày hôm nay, hầu hết các chương trình học máy quan trọng nhất và hiệu quả nhất đều dựa trên học sâu, cũng tương tự như ti-vi kỹ thuật số đã thay thế hoàn toàn ti-vi có ống tia ca-tốt (CRT-Cathode Ray Tube) vậy. Sau khi đã thiết kế mạng nơ-ron của một máy AI, tức là tạo ra ánh xạ

M:Θ×Ω→R (1.1) từ tích của tập tham số Θ và tập dữ liệu Ω vào tập đầu ra R, ta cần huấn luyện máy Quá trình học máy là quá trình thay đổi dần các tham số qua từng bước thời gian (từng bước học), θ = θ 0 θ 1 ã ã ã θ n θ n+1 ã ã ã (1.2) theo một quy trình (phương pháp, thuật toán huấn luyện) nào đó, nhằm tìm ra một giá trị tham số θ n sau một số hữu hạn các bước học, với một máy M θ n “đủ thông minh” như mong muốn.

Tại thời điểm ban đầu θ 0 có thể bằng 0 (một điểm gốc của không gian các tham số, ở đó máy chưa biết gì hết, như một “tờ giấy trắng”), hoặc được chọn ngẫu nhiên, hoặc đã qua huấn luyện trước đó cho cùng một vấn đề, hoặc đã qua huấn luyện trước đó nhưng cho việc giải quyết một vấn đề khác. Khi người ta dùng tham số của một máy M A đã được học để giải quyết vấn đề A làm xuất phát điểm cho một máy M B cần được học để giải quyết vấn đề

B, thì người ta gọi đó là phương pháp học chuyển giao (transfer learning) Ví dụ (1.1) minh họa cụ thể cho việc học chuyển giao này.

Ví dụ 1.1 A là vấn đề phân tách cô đọng các tính chất (distilled features) của tất cả các ảnh nói chung, và máy M A đã được học trên hàng triệu ảnh, còn vấn đề B là phân loại ảnh cho một bệnh ung thư hiếm nào đó, chỉ có vài chục cái ảnh làm ví dụ để học Nếu chỉ dùng vài chục cái ảnh này làm dữ liệu cho học máy thì không đủ phong phú, nên trong trường hợp này người ta sẽ chuyển giao các thứ đã được học từ vấn đề A (máy đã biết phân tách các tính chất cô đọng của ảnh) sang học tiếp cho vấn đề B (xem những tính chất cô đọng nào của ảnh thì là dấu hiệu của ung thư).

Sau mỗi bước học thứ n, để biết xem máy M θ n “đủ thông minh chưa” hay “có học được gì không”, ta phải kiểm tra (test) máy đó, tương tự như đối với học sinh khi đi học Khi làm kiểm tra, ta đưa cho máy xử lý m đầu vào (input) x 1 , , x m, rồi chấm điểm các kết quả đầu ra (output) y 1 = M θ n (x 1 ), , y m = M θ n

(x m ), theo một phương thức nào đó để đo độ chính xác (trong những vấn đề như kiểu hồi quy hay phân lớp), hiệu quả (ví dụ như khi đầu ra cuối cùng ở dạng thắng hay thua với một ván cờ), hoặc độ hay (ví dụ như khi đầu ra là một bản nhạc được máy sáng tác) trung bình tổng hợp trên m bài tập này. Để đo độ chính xác của máy thì cần có “đáp án”, hay sự thật cơ bản (ground truth) và thước đo độ chính xác (the accuracy measure) cho phép đo xem kết quả sai lệch với đáp án từng nào Việc đo độ hay tế nhị hơn vì đối với một sáng tác y, hay không có nghĩa là giống hệt một “ground truth” y true nào đó. Người ta có thể đo gián tiếp độ hay của y bằng cách áp dụng một ánh xạ

“tìm tính chất” ϕ nào đó lên y rồi so sánh ϕ(y) với một “tính chất” ϕ ref erence chuẩn mực nào đó.

Quá trình học máy của một máy M có thể dừng lại tại thời điểm n nếu một trong những điều sau xảy ra, tùy theo quy trình huấn luyện cụ thể được áp dụng:

1 Số bước học được cố định từ trước, cứ sau từng đó bước thì dừng.

2 Quá trình học bị lỗi giữa chừng, bị quá tải, mất điện, v.v

3 Học nhiều mà không thấy tiến bộ thêm (điểm kiểm tra không tăng lên sau nhiều bước học).

4 Đã đủ giỏi (điểm kiểm tra đạt đủ cao).

Nếu sau bước học thứ n, không có gì khiến cho máy dừng học, thì nó sẽ học tiếp bước thứ n + 1 để biến đổi giá trị tham số từ θ n thành θ n+1 Ở bước học thứ n + 1, máy đón nhận một số dữ liệu (data) đầu vào mới x 1 , , x k (khác với những x i phía trước tuy cùng ký hiệu) Quy trình huấn luyện sử dụng một hàm gọi là hàm mất mát (loss function) để đo độ mất mát của máy trên những đầu vào mới này. Định nghĩa 1.1 Hàm mất mát là hàm sử dụng trong quy trình huấn luyện mô hình trong học máy, để đo độ mất mát của máy trên những dữ liệu đầu vào.

Hàm mất mát là một thứ ủy nhiệm (proxy) cho độ thiếu chính xác hay thiếu hoàn thiện của máy Công thức của hàm mất mát có thể tương tự nhưng cũng có thể khác biệt công thức của thước đo độ chính xác Chương 3 sẽ trình bày chi tiết về các hàm mất mát cho các máy phân lớp (phân loại) nhị phân.

Dữ liệu cho học máy

Theo mô hình học máy tổng quát phía trên, ta thấy để huấn luyện cho máy nói chung cần có dữ liệu Càng nhiều dữ liệu thì càng dễ học Bởi vậy có khái niệm dữ liệu lớn (big data) Khái niệm này vừa chỉ độ lớn của dữ liệu vừa hàm ý độ phức tạp của dữ liệu Để học làm những thứ phức tạp cho tốt, như là dịch thuật giữa tiếng Anh và tiếng Việt, thì cần dữ liệu rất lớn (hàng triệu câu được dịch làm ví dụ), bởi bản thân khối lượng từ vựng rất lớn, các cách đặt câu, dùng từ, thành ngữ khác nhau, với rất nhiều quy luật (ngữ pháp, chính tả) và ngoại lệ.

Trong thực tế, bộ dữ liệu mà người ta có được để cho học máy có thể gặp phải nhiều vấn đề, như là:

• Dữ liệu bị “thủng lỗ”, thiếu hụt những mảng nào đó Ví dụ, chúng ta muốn tạo một AI chẩn đoán bệnh Nhưng một bệnh B có một kiểu biểu hiện nào đó mà không có trong tập dữ liệu để học Khi gặp phải kiểu biểu hiện này, máy nói chung sẽ không chẩn đoán được ra bệnh B, mà dễ nói nhầm thành các thứ khác Một bộ dữ liệu lý tưởng không những cần lớn (big) mà còn cần phải trù mật (dense) theo nghĩa bao phủ đầy đủ các loại trường hợp khác nhau, không có “lỗ thủng”.

• Dữ liệu có nhiều lỗi Ví dụ bệnh A ghi nhầm thành bệnh B, 15 nhầm thành 51, v.v Học máy kiểu xác suất (đa số thắng thiểu số) thường có khả năng tự sửa sai: khi phần lớn dữ liệu để học được dán đúng nhãn và chỉ có một lượng ít nhãn dán sai, máy có thể phát hiện ra nhãn bị dán sai, vì xác suất của nó xuất hiện trong quá trình test quá thấp so với nếu là nhãn dán đúng Tuy nhiên nếu dữ liệu bị “loạn” với quá nhiều nhãn bị dán sai, thì học máy theo nhãn dán sai đó hiển nhiên cũng sẽ bị loạn theo.

• Dữ liệu bị thiên lệch Ví dụ như trong một dữ liệu y tế có quá ít dữ liệu của người da đen, hoặc tỷ lệ dữ liệu của một bệnh quan trọng nào đó trong đó quá thấp so với các bệnh khác v.v Trên thực tế, hầu hết các bộ dữ liệu đều bị thiên lệch (bias, imbalance) theo hướng này hay hướng khác Nếu không cẩn thận, học máy trên dữ liệu bị thiên lệch cũng sẽ bị thiên lệch theo, gây nhầm lẫn hoặc phân biệt đối xử Các thuật toán học máy phải chú ý đến các thiên lệch này để giảm thiểu tác động xấu của nó, ví dụ qua việc cân bằng lại các số lượng dữ liệu (tăng cường thêm các dữ liệu “thiểu số”) trong quá trình cho dữ liệu vào cho học máy, và điều chỉnh các hàm mất mát nhằm cân bằng lại tỷ trọng của các khoản mất mát (sử dụng các hàm mất mát kiểu “bất đối xứng”, xem trong Chương 3).

Trong AI việc có được một bộ dữ liệu tốt để học máy là một trong những việc tối quan trọng, và có thể đến 80-90% thời gian công việc phát triển phần mềm học máy là dành cho việc tạo dữ liệu tốt, chỉ có 10-20% thời gian còn lại là dành cho các việc khác như thiết kế mạng nơ-ron nhân tạo, thiết kế hàm mất mát và các thuật toán huấn luyện máy, kiểm tra đánh giá kết quả của máy, v.v

Tập dữ liệu mà chúng ta có được để cho học máy, dù có lớn đến mức hàng triệu dữ liệu khác nhau vẫn chỉ là một tập rất nhỏ trong không gian khổng lồ các dữ liệu có thể xảy ra Điều này được minh họa qua Ví dụ 1.4.

Ví dụ 1.4 Xét các ảnh kỹ thuật số có kích thước khiêm tốn là 600 × 400, tức là có 240000 điểm ảnh (pixel) Mỗi điểm ảnh có 24 bit thông tin (3 màu cơ bản, mỗi màu 8 bit), tổng cộng là 240000 × 24 = 5760000 bit = 720 000 byte thông tin (cần quãng 0.7MB trong bộ nhớ để chứa một ảnh như vậy nếu chưa nén) Về mặt lý thuyết, số ảnh khác nhau cỡ đó có thể có là

2 5760000 , là một con số khổng lồ, gần như “vô cùng” (cho vào bàn tính của google phép tính đó thì nhận được kết quả là “infinity”) Tất nhiên, hầu hết các “ảnh” như thế là nhiễu loạn vô nghĩa, nhưng ta có thể hình dùng là số ảnh cỡ 600 × 400 có thể coi là có nghĩa cũng là một con số lớn khổng lồ, ít ra hàng tỷ tỷ ảnh, và dù tập dữ liệu ảnh của chúng ta có đến hàng tỷ ảnh thì cũng chỉ là một tập con bé xíu trong không gian khổng lồ đó.

Vì thế khả năng là có rất nhiều mảng lớn trong không gian đầu vào bị “lọt lưới”, tức là nằm ở cách xa mọi dữ liệu mà chúng ta có Các công thức do học máy tạo ra cho các bài toán kiểu đo đạc và phân loại thường có thể được coi là các công thức kiểu nội suy (interpolation): nó suy từ giá trị của hàm từ các điểm nút lưới (tức là các điểm dữ liệu mà chúng ta có) ra giá trị của hàm tại các điểm khác (các dữ liệu mà không nằm trong tập dữ liệu dùng để học) Nếu một điểm mới bị vây quanh bởi các điểm nút lưới (các dữ liệu đã học) thì công thức dễ cho ra kết quả gần chính xác Còn đối với những dữ liệu nằm xa các nút lưới thì vấn đề trở thành ngoại suy(extrapolation), kết quả rất khó chính xác, sai số thường cao Để giảm thiểu sai số chúng ta cần phải “lan tỏa cái lưới” sao cho nó phủ được càng kín không gian dữ liệu càng tốt Việc “lan tỏa cái lưới” đó chính là vấn đề tăng cường dữ liệu (data augmentation) rất quan trọng trong học máy.

Có nhiều cách tăng cường dữ liệu khác nhau, tùy vấn đề cụ thể mà người ta chọn những cách phù hợp nhất Ví dụ, khi vấn đề là phân biệt ảnh chó với ảnh mèo, thì từ một ảnh chó với hình của toàn bộ một con chó, ta có thể phóng to, thu nhỏ, bóp méo, che bớt nửa thân nó, tô thêm các thứ khác vào ảnh, v.v., miễn sao vẫn nhận ra được là có con chó trong ảnh Thế là chỉ từ một dữ liệu thuộc lớp “chó” qua các phép tăng cường ta tạo được thêm hàng nghìn dữ liệu “chó”.

Một trong những hướng quan trọng để tăng cường dữ liệu là hướng tạo dữ liệu tổng hợp (synthetic data) Ví dụ, tập dữ liệu có các dữ liệu có tính chất A, có các dữ liệu có tính chất B, v.v., và có những dữ liệu có cả tính chất A và tính chất B, tuy rằng số dữ liệu như thế rất ít Người ta lấy một dữ liệu x a có tính chất A xáo trộn vào với một dữ liệu x b có tính chất B một cách nào đó để tạo ra một dữ liệu x t tổng hợp có cả hai tính chất A và B.

Trong nhiều trường hợp, dữ liệu tổng hợp x t này trông “rõ là giả”, không giống thật, nhưng việc cho các dữ liệu tổng hợp đó vào cho học máy vẫn giúp làm tăng hiệu quả của máy.

Trong một số trường hợp, thuật toán huấn luyện máy có thể tự sáng tạo ra dữ liệu cho học máy chứ không nhất thiết phải có sẵn một bộ dữ liệu để học.

Ví dụ như máy đánh cờ có thể tự chơi cờ với các phiên bản khác của chính nó để từ đó tạo ra các thế cờ, các nước đi, các chiến thuật đánh thắng Một ví dụ khác là bài toán ghép hình (puzzle) Máy không cần các bộ ghép hình có sẵn để làm dữ liệu, mà nó có thể tự cắt các hình một cách ngẫu nhiên ra thành các mảnh, từ đó học xác định những mảnh nào thì ghép sát được vào nhau còn những mảnh nào thì không khớp với nhau.

Các “đặc trưng” trong học máy

Một máy M : Ω → R thường có thể được viết dưới dạng một ánh xạ hợp

M=Σ◦ϕ (1.3) trong đó ϕ:Ω→Φ (1.4) là một ánh xạ từ không gian các dữ liệu Ω lên một không gian Φ. Định nghĩa 1.2 Ánh xạ ϕ được gọi là ánh xạ đặc trưng Không gian Φ được gọi là không gian các đặc trưng (features) của dữ liệu Φ chứa các

“thông tin cô đọng” (distilled information) về dữ liệu, Σ:Φ→R (1.5) là ánh xạ đầu ra, đi từ không gian các đặc trưng vào không gian đầu ra. (Trong Chương 2 và Chương 3, chúng ta sẽ dùng lại biểu diễn này của máy, với R bằng [0, 1], và gọi Σ trong trường hợp đó là “hàm sigmoid mở rộng”).

Trước khi có học sâu, trong các phương pháp học máy thông dụng nhất như phương pháp máy vec-tơ hỗ trợ thì các ánh xạ đặc trưng phải do các nhà nghiên cứu AI viết ra, và đây là một công đoạn vất vả, gọi là features engineering trong học máy Học sâu đã thay đổi điều này: các hệ thần kinh sâu có khả năng học được cách tạo ra các đặc trưng hợp lý chứ không cần các chuyên gia AI tạo sẵn ra chúng nữa Nói cách khác, cả hai ánh xạ Φ và Σ đều có thể cho máy học để tự điều chỉnh, chứ không chỉ mỗi Σ Đây là điểm khác biệt cơ bản giữa học sâu và các phương pháp học máy cổ điển trước đây.

Có một câu chuyện sau đây có thể lấy làm ví dụ về sự khác biệt này. Nhà thờ Eremitani (“Các thầy tu khổ hạnh”) ở thành phố Padova (Italy), xây từ thời trung cổ, từng được trang trí bằng những bức tranh trên tường (fresco) rất lớn do họa sĩ Andrea Mantegna vẽ từ thời Phục hưng, làm cho rất nhiều người ngưỡng mộ, trong đó có đại thi hào Goethe Vào năm 1944, trong một trận ném bom của Mỹ vào phát xít Đức, nhà thờ bị trúng bom, và các bức tranh trên tường bị phá tan tành Người ta tìm lại được 88 ngàn mảnh nhỏ của các bức tranh, phủ được một diện tích 77 mét vuông, chỉ bằng một phần mười so với ban đầu, những chỗ còn lại thì bị mất hoàn toàn.

Việc ghép đặt 88 ngàn mảnh vỡ vụn lại với nhau để phục hồi một phần các bức tranh là một công việc vô cùng phức tạp Trong vòng mấy thập kỷ, các mảnh vụn này được cất giữ trong các kho bảo tàng Đến năm

1992, nhờ có kỹ thuật ảnh số, chúng mới được lau chùi, chụp ảnh, phân loại, rồi được đưa cho các nhà toán học nghiên cứu.

Hình 1.3: Một phần fresco của Mantegna tại nhà thờ Eremitani.

Nguồn: Internet Đến năm 2000 nhóm nghiên cứu của GS Massimo Fornasier phát triển được một phần mềm máy tính, dựa trên một phương pháp toán học gọi là

“phân tách điều hòa vòng quanh” (“circular harmonic decomposition”) để ghép các mảnh vụn của bức tranh Sau đó phải mất 6 năm chạy máy tính, từ năm 2000 đến 2006, nhóm của Fornasier mới hoàn thành công việc.

Bài toán ghép hình của GS Fornasier nếu để người làm thủ công thì có khi mất hàng trăm năm vẫn chưa xong, nên phải để học máy ghép hình. Nhưng tạo ra các “features” để cho máy ghép hình, như kiểu “phân tách điều hòa vòng quanh” của GS Fornasier cũng là một việc rất khó, tốn rất nhiều thời gian, và hiệu quả có lẽ cũng không cao lắm, nên nhóm của GS. Fornasier đã phải mất 6 năm để làm kể từ khi bắt đầu có thuật toán.

Nếu để đến ngày hôm nay mới giải quyết, thì với học sâu và máy tính hiệu suất cao, vấn đề ghép lại bức tranh fresco ở nhà thờ Eremitani có lẽ sẽ không phải mất đến 6 năm, mà chỉ vài hôm là xong Nhóm nghiên cứu của

GS Nguyễn Tiến Dũng đã làm một thí nghiệm xây dựng AI ghép hình vào năm 2018 dựa trên các mạng nơ-ron sâu và việc tự cắt các ảnh thành các mảnh để tạo dữ liệu, chỉ sau 4 tiếng học máy đã tạo ra được một AI tốt, có khả năng tìm được hình ghép khớp nhanh chóng với độ chính xác cao.

Kiểm tra hiệu quả của máy

Để có đánh giá khách quan về hiệu quả của máy, người ta thường phải chia tập dữ liệu cho học máy thành hai phần: phần dùng để học (training set) và phần dùng để kiểm định (validation set).

Trong bản thân mỗi bước học, người ta có thể đo hiệu quả (hay độ chính xác) của máy trên tập huấn luyện được đưa vào cho học máy Độ chính xác mà đo trên tập huấn luyện (theo một thước đo nào đó) thì được gọi là độ chính xác huấn luyện (training accuracy).

Sau mỗi bước học, người ta đo hiệu quả (hay độ chính xác) của máy trên tập kiểm định (gồm toàn những dữ liệu mà máy không được nhìn thấy trong quá trình học) Độ chính xác mà đo trên tập kiểm định thì được gọi là độ chính xác kiểm định (validation accuracy).

Một máy “thực sự thông minh” có khả năng tổng quát hóa, tìm ra các quy luật của vấn đề, cho được kết quả tốt trên các dữ liệu mà nó chưa nhìn thấy bao giờ, chứ không chỉ trên các dữ liệu mà nó đã dùng để học Nếu máy chỉ cho kết quả tốt trên các dữ liệu đã học, và cho kết quả tồi trên các dữ liệu tương tự nhưng mới đối với nó, thì đó là một máy tồi, bị “overfit” (học tủ, học vẹt) Tức là khi độ chính xác kiểm định quá thấp so với độ chính xác huấn luyện thì thuật toán hay quy trình học máy có vấn đề.

Thông thường, khi máy bắt đầu được học ở những bước đầu tiên, độ chính xác kiểm định và độ chính xác huấn luyện tăng lên cùng nhau, cách nhau không xa Nhưng sau một số bước học nào đó thì sẽ rẽ nhánh: độ chính xác kiểm định không tăng lên thêm (khả năng tổng quát hóa của máy chỉ đến thế, với các thuật toán và dữ liệu hiện có), trong khi độ chính xác huấn luyện vẫn tiếp tục tăng (máy chuyển sang học tủ, học vẹt), khi đó thì nên dừng quá trình học lại, thay đổi dữ liệu hay thuật toán trước khi học tiếp.Ngoài tập dùng để học (training set) và tập dùng để kiểm định (validation set), còn có thể có thêm một tập dữ liệu khác nữa dùng để đánh giá hiệu quả của máy, gọi là tập kiểm tra (test set) Tính độc lập của tập kiểm tra (có thể không do những người tạo ra AI đưa ra, mà do những người khác độc lập đưa ra) đảm bảo tính khách quan khi đánh giá kết quả của máy.

Biểu quyết và kiểm định chéo

Phương pháp biểu quyết, mà chúng ta sẽ bàn đến kỹ hơn trong Chương 4, thường được dùng cho các máy đã được học: người ta tạo ra cùng một lúc nhiều máy AI cho một vấn đề, rồi biểu quyết giữa các kết quả do các máy đó tạo ra để tạo kết quả cuối cùng, với kỳ vọng là kết quả sau biểu quyết đó tốt hơn là kết quả của từng máy riêng lẻ Một AI mà chúng ta sử dụng trong thực tế, bên trong nó thực ra có thể có nhiều máy AI được dùng để biểu quyết.

Hình 1.4: Mô tả phương pháp k-fold Cross Validation.

Có một phương pháp để tận dụng được toàn bộ tập dữ liệu cho việc học (dữ liệu nào cũng được đưa vào học), không “phí phạm” dữ liệu nào cho việc kiểm định, mà vẫn đảm bảo khách quan khi đánh giá hiệu quả, gọi là phương pháp kiểm định chéo (cross validation) Trong phương pháp này, người ta tạo ra k máy (ví dụ k = 5) mỗi máy thứ i có một tập dữ liệu H i dùng để học và một tập dữ kiệu K i dùng để kiểm định K i và H i không giao nhau và hợp của chúng là tập tất cả các dữ liệu mà người ta có Các tập kiểm định K 1 , , K k cũng không giao nhau Như vậy, mỗi dữ liệu chỉ có (nhiều nhất) một máy không được học về nó, các máy khác đều được học về nó Qua huấn luyện, dù máy không được học về nó có cho ra kết quả sai trên dữ liệu đó thì các máy còn lại vẫn nhiều khả năng cho ra kết quả đúng Mặt khác, việc đo hiệu quả của máy (cho từng máy riêng lẻ, trên các tập kiểm định tương ứng) vẫn đảm bảo khách quan Tác giả sẽ dùng phương pháp kiểm định chéo này cho các mô hình học máy trong Chương 4 Hình 1.4 minh họa cho phương pháp này. Tóm tắt phương pháp k-fold Cross Validation:

1 Xáo trộn dataset một cách ngẫu nhiên

3.1 Sử dụng nhóm hiện tại để đánh giá hiệu quả mô hình

3.2 Các nhóm còn lại được sử dụng để huấn luyện mô hình

3.4 Đánh giá và sau đó hủy mô hình

4 Tổng hợp hiệu quả của mô hình dựa từ các số liệu đánh giá

Tối ưu dựa trên Gradient

Phần lớn các thuật toán học sâu đều liên quan đến tối ưu Tối ưu tức là cực đại hóa hay cực tiểu hóa hàm f(x) bằng cách thay đổi x Ta thường đưa các bài toán tối ưu về dạng cực tiểu hóa hàm f(x) vì có thể giải quyết bài toán tìm cực đại của f(x) thông qua thuật toán tìm cực tiểu của −f(x). Hàm số cần cực tiểu hóa ở đây chính là hàm mất mát Giá trị của đối số làm cho hàm số đạt cực tiểu được kí hiệu là x ∗ , tức là x ∗ = argminf(x). Giả sử ta có hàm số y = f(x) với x, y đều là các số thực Đạo hàm của hàm này được kí hiệu là f ′ (x) hoặc dxdy

, nó cho biết độ dốc của hàm f(x) tại điểm x, hay mức độ thay đổi của đầu ra tỉ lệ với một sự thay đổi nhỏ ở đầu vào như thế nào Ta có công thức xấp xỉ sau: f(x + ε) ≈ f(x) + εf ′ (x), do đó đạo hàm có ích trong việc cực tiểu hóa một hàm số, vì nó cho ta biết nên thay đổi x như thế nào để cải thiện hàm mất mát f(x) Với ε đủ nhỏ thì f(x − εsign(f ′ (x)) < f(x) nên ta có thể giảm giá trị của hàm f(x) bằng cách tăng hoặc giảm x một lượng nhỏ về hướng ngược với hướng của đạo hàm Kĩ thuật này được gọi là trượt gradient, được minh họa trong Hình 1.5

Hình 1.5: Trượt gradient Minh họa cách thuật toán trượt gradient sử dụng đạo hàm của hàm số để bám theo dốc của hàm và di chuyển xuống điểm cực tiểu.

Khi f ′ (x) = 0, x được gọi là các điểm tới hạn hay điểm dừng, và nếu chỉ dựa vào đạo hàm thì ta không biết nên thay đổi x như thế nào Điểm cực tiểu địa phương là điểm mà giá trị f(x) nhỏ hơn hẳn tất cả các giá trị của hàm tại các điểm lân cận, do đó ta không thể làm giảm giá trị của f(x) bằng cách thay đổi x một lượng nhỏ Điểm cực đại địa phương là điểm mà giá trị f(x) lớn hơn hẳn tất cả các giá trị của hàm tại các điểm lân cận, do đó ta không thể làm tăng giá trị của f(x) bằng cách thay đổi x một lượng nhỏ Có những điểm tới hạn không phải là cực đại hay cực tiểu địa phương, ta gọi chúng là các điểm yên ngựa Các điểm tới hạn được mô tả như trong Hình 1.6

Hình 1.6: Các loại điểm tới hạn. Điểm mà tại đó hàm số đạt giá trị nhỏ nhất được gọi là điểm cực tiểu toàn cục của hàm số đó Một hàm số có thể có một hoặc nhiều điểm cực tiểu toàn cục, có những điểm cực tiểu cục bộ không phải là điểm cực tiểu toàn cục, hoặc có nhiều điểm yên ngựa Những vấn đề này làm cho tối ưu hóa trở thành bài toán khó, đặc biệt trong trường hợp hàm số nhiều biến Do đó chúng ta thường chỉ cần tìm một giá trị mà tại đó hàm mất mát f(x) có giá trị nhỏ nhưng không nhất thiết là cực tiểu theo định nghĩa, điều này được minh họa bởi Hình 1.7.

Hình 1.7: Xấp xỉ giá trị cực tiểu.

Chúng ta thường cực tiểu hóa hàm nhiều biến f : R n → R Với các hàm nhiều biến chúng ta sử dụng khái niệm đạo hàm riêng Đạo hàm riêng ∂x ∂ i là đại lượng đo sự biến thiên của hàm số f khi x i tăng tại điểm x Gradient là khái niệm tổng quát của đạo hàm khi ta tính đạo hàm theo một vec-tơ: gradient của hàm số f là vec-tơ chứa tất cả các đạo hàm riêng của hàm số f, được kí hiệu là ∇ x f(x) Phần tử thứ i là đạo hàm riêng của hàm số f theo biến x i Đạo hàm theo hướng u (một vec-tơ đơn vị) là độ dốc của hàm số f theo hướng u Nói cách khác đạo hàm theo hướng là đạo hàm của hàm số f(x + αu) theo α tại α = 0 Ta thấy khi α = 0 thì ∂α∂f(x + αu) = u T ∇ x f(x). Để tìm được giá trị nhỏ nhất của hàm f ta tìm hướng sao cho hàm f giảm nhanh nhất Ta có: min u T ∇ f(x) = min ||u||.||∇xf(x)|| cos θ, trong đó θ là góc f(x) tạo bởi u và gradient Do ||u|| = 1 nên ta tìm min cos θ Giá trị nhỏ nhất này bằng -1 khi u và gradient ngược hướng Như vậy ta có thể giảm f bằng cách di chuyển ngược hướng gradient Phương pháp này được gọi là trượt gradient theo hướng dốc nhất (steepest gradient) hay gọi ngắn gọn là trượt gradient (xem trong [13]) Trượt gradient đề xuất đi tới một điểm mới: x ′ = x − ε.∇ x f(x) (1.6)

Trong công thức 1.6 ε kí hiệu cho tốc độ học (learning rate), là một đại lượng vô hướng có giá trị dương, xác định độ lớn của bước nhảy.

Phép tích chập và mạng nơ-ron tích chập

Giả sử ta theo dõi vị trí của một con tàu bằng cảm biến laser Cảm biến này cung cấp một đầu ra duy nhất x(t) cho biết vị trí của con tàu tại thời điểm t, trong đó x, t có giá trị thực, và ta có thể nhận được kết quả của cảm biến tại bất kì thời điểm nào Giả sử cảm biến này bị nhiễu Để giảm bớt sai lệch khi dự đoán vị trí con tàu, ta sẽ tính trung bình có trọng số của một vài phép đo.

Ta gán cho các giá trị đo được một trọng số ω(a) trong đó a được gọi là tuổi của một phép đo Áp dụng phép tính trung bình có trọng số như vậy tại mọi thời điểm ta thu được một hàm số mới s là ước lượng của vị trí con tàu: s(t) = +∞ x(a) ã ω(t − a)da (1.7)

Phép toán này được gọi là tích chập, thường kí hiệu bằng dấu ∗. s(t) = (x ∗ ω)(t) (1.8)

Trong ví dụ này x được gọi là đầu vào, ω được gọi là hàm lõi (kernel) và đầu ra gọi là bản đồ đặc trưng (feature map) Khi làm việc với dữ liệu trên máy tính thời gian sẽ bị rời rạc hóa và cảm biến sẽ cung cấp dữ liệu tại các thời điểm cách nhau một khoảng thời gian xác định Do vậy ta giả định rằng cảm biến sẽ đo theo từng giây, chỉ số thời gian t lúc này là số nguyên Nếu x, ω xác định với t nguyên thì ta định nghĩa tích chập rời rạc như sau:

Trong các ứng dụng học máy, đầu vào thường là một mảng dữ liệu nhiều chiều và lõi thường là một mảng tham số nhiều chiều được học bởi thuật toán học tập Ta gọi các mảng nhiều chiều này là các tensor Do mỗi phần tử đầu vào và lõi phải được lưu trữ tường minh và riêng biệt, ta thường giả định rằng các hàm này bằng 0 tại những điểm nằm ngoài tập hữu hạn những điểm mà ta lưu giá trị Điều này có nghĩa là trong thực tế, chúng ta có thể tính tổng vô hạn trong công thức (1.9) bằng cách tính tổng hữu hạn trên một tập hữu hạn các phần tử của mảng.

Nếu dùng một bức ảnh hai chiều I làm đầu vào, ta cần sử dụng một lõi hai chiều K:

Phép tích chập có tính chất giao hoán nên có thể viết:

Nhiều thư viện học máy sử dụng phép tương quan chéo (cross- correlation), tương đương với hàm tích chập nhưng không đảo lõi:

S(i, j) = (K ∗ I)(i, j) = I(i + m, j + n)K(m, n) (1.12) m n mạng nơ-ron tích chập là mạng nơ-ron sử dụng phép tích chập thay vì phép nhân ma trận trong ít nhất một tầng của mạng Mạng tích chập đã và đang được áp dụng rất thành công trong nhiều ứng dụng thực tiễn (xem trong [13]).

Phép tích chập được sử dụng trong mạng nơ-ron tích chập vì nó mở ra cơ hội giúp cải thiện hệ thống học máy dựa trên ba ý tưởng quan trọng: tương tác thưa (sparse interaction), dùng chung tham số (parameter sharing) và biểu diễn đẳng biến (equivarient representation).

Mạng tích chập thường sở hữu các tương tác thưa, hay còn gọi là kết nối thưa (sparse connectivity) hay trọng số thưa (sparse weight) Tính chất này có nguồn gốc từ việc mạng tích chập sử dụng lõi có kích thước nhỏ hơn đầu vào.

Ví dụ khi xử lí một bức ảnh, ảnh đầu vào có thể là hàng ngàn hay hàng triệu điểm ảnh nhưng ta có thể phát hiện một tập đặc trưng nhỏ và có ý nghĩa, chẳng hạn như các cạnh bằng các lõi chỉ chiếm vài chục hay vài trăm điểm ảnh Điều này có nghĩa là ta chỉ cần lưu trữ một lượng tham số nhỏ, giúp giảm nhu cầu về bộ nhớ và tăng hiệu suất về mặt thống kê của mô hình. Đồng thời việc tính toán đầu ra cũng yêu cầu ít phép toán hơn.

Dùng chung tham số tức là sử dụng cùng một bộ tham số cho nhiều hơn một hàm trong mô hình Trong mạng nơ-ron truyền thống, mỗi phần tử của ma trận trọng số được sử dụng một lần duy nhất, khi tính toán đầu ra của một tầng, nó được nhân với một phần tử của đầu vào và không bao giờ được sử dụng lại nữa Trong mạng nơ-ron tích chập mỗi phần tử của lõi được sử dụng ở tất cả các vị trí của đầu vào (có lẽ chỉ trừ một vài điểm ảnh ở biên, tùy vào cách mà mạng được thiết kế để xử lí điểm ảnh ở biên) Dùng chung tham số cho tích chập có nghĩa là thay vì học một bộ tham số riêng cho mọi vị trí, ta chỉ học một bộ tham số duy nhất.

Việc dùng chung tham số khiến cho mạng tích chập sở hữu tính đẳng biến (equivarience) với phép tịnh tiến Một hàm được gọi là có tính đẳng biến nếu đầu vào thay đổi thì đầu ra cũng thay đổi theo cùng một cách như vậy Hàm f(x) được gọi là đẳng biến với hàm g nếu f(g(x)) = g(f(x)).

Kết luận và bình luận cuối chương

Chương 1 trình bày các kiến thức cơ bản sẽ được sử dụng trong các chương tiếp theo như: mô hình chung của quá trình học máy, dữ liệu cho học máy, kiểm tra hiệu quả của máy, tối ưu dựa trên gradient, phép tích chập, mạng nơ-ron và mạng tích chập.

ĐỘ CHÍNH XÁC CỦA MÁY PHÂN LOẠI NHỊ PHÂN 38

Các thước đo độ chính xác của máy phân loại nhị phân

2.1.1 Âm tính, dương tính và ba tỉ lệ cơ bản

Giả sử chúng ta có một máy phân loại nhị phân: ˆ −→{ }

Y :Ω 0;1 trên một tập hợp Ω với một độ đo xác suất P để nhằm dự đoán một vấn đề nhị phân cho trước:

Ví dụ 2.1 Giả sử Ω là dân chúng một vùng, Y (x) = 0 tức là x Ω ∈ không bị ˆ là một loại xét nghiệm Covid. Covid, Y (x) = 1 tức là x ∈ Ω bị Covid, còn Y

Tập Ω được chia thành 4 tập hợp, được minh họa như trong Hình 2.1, cụ thể như sau:

1.Ω T P là các trường hợp dương tính thật (True positive). x

2.Ω T N là các trường hợp âm tính thật (True negative). x

3.Ω F P là các trường hợp dương tính giả (False positive). x

4.Ω F N là các trường hợp âm tính giả. x

Hình 2.1: Cách chia tập dữ liệu Ω

Về ý tưởng chung, càng nhiều thật và ít giả thì tức là máy càng chính xác. Tuy nhiên, ở đây chúng ta có không chỉ một, mà là hai tập “giả” Ω F P và Ω F

N , và không chỉ một mà là hai tập “thật” Ω T P và Ω T N nên chúng ta có không chỉ một mà là nhiều thước đo độ chính xác khác nhau, và việc nên dùng thước đo nào cho vấn đề nào sẽ phụ thuộc vào bản thân vấn đề. Dưới đây tác giả xin nhắc lại một số khái niệm và thước đo phổ biến nhất cho độ chính xác của máy phân loại nhị phân, thông qua ba tỷ lệ cơ bản, gọi là tỷ lệ dương thật (True Positive rate-TP), tỷ lệ âm thật (True Negative rate-TN) và tỷ lệ gọi đúng (Precision Rate-PR).

Tỷ lệ dương thật (TP) hay còn gọi là độ nhạy của máy (sensitivity):

|Ω P | |Ω FN | + |Ω TP | (Ω P = {x ∈ Ω|Y (x) = 1} là tập dương tính), tức là số ca dương tính được phát hiện là dương tính trên tổng số ca dương tính Tỷ lệ sensitivity này còn có một tên gọi khác nữa là recall rate (tỷ lệ “gọi ra được các ca dương tính”).

Tỷ lệ âm giả (FN), là phần bù của dương thật:

Tỷ lệ âm thật (TN) hay còn gọi là specificity (độ đặc trưng) của máy:

|Ω N | |Ω TN | + |Ω FP | (Ω N = {x ∈ Ω|Y (x) = 0} là tập âm tính).

Tỷ lệ dương giả (FP) là phần bù của âm thật:

Tỷ lệ gọi đúng (PR):

|Ω TP | + |Ω FP | tức là số trường hợp dương tính thật trên tổng số trường hợp xét nghiệm ra dương tính.

Dễ thấy rằng nếu chúng ta biết 3 trong 4 số |Ω T P |, |Ω F N |, |Ω T N |, |Ω F P | thì suy ra được số còn lại (vì tổng của chúng bằng ) và suy ra được các tỷ lệ

TP, TN và PR Tuy nhiên nếu chỉ biết 2 trong 4 số đó thì chưa đủ để tính 3 tỷ lệ cơ bản TP, TN và PR Điều ngược lại cũng đúng: nếu chúng ta biết

TP, TN và PR thì tính ra được 4 số |Ω T P |, |Ω F N |, |Ω T N |, |Ω F P |, còn nếu chỉ biết 2 trong số 3 tỉ lệ đó thì chưa đủ.

Như vậy, để mô tả đầy đủ độ chính xác của một máy phân loại nhị phân, chúng ta cần đến 3 số (chẳng hạn như TP, TN, PR) Tuy nhiên, việc sử dụng đến những 3 số để mô tả độ chính xác của máy là quá phức tạp, khiến cho ta khó so sánh giữa các máy với nhau Dưới đây tác giả sẽ trình bày 3 thước đo độ chính xác phổ biến nhất, đó là: Độ chính xác có trọng số (weighted accuracy), độ chính xác cân bằng (balanced accuracy) và điểm số F b Độc giả có thể tham khảo trong ([32]) về nhiều thước đo khác.

2.1.2 Độ chính xác có trọng số (weighted accuracy)

Giả sử với mỗi trường hợp đoán nhầm dương tính thành âm tính thì ta bị thiệt hại x đồng, còn nếu đoán nhầm âm tính thành dương tính thì ta bị thiệt hại y đồng Khi đó tổng thiệt hại mà ta phải chấp nhận do máy đoán thiếu chính xác là x ã |ΩF N | + y ã |ΩF P | (đồng)

Lấy tổng thiệt hại làm thước đo độ chính xác, máy nào gây thiệt hại ít hơn thì ta coi là chính xác hơn.

Giảm thiểu hóa xã|Ω F N |+yã|Ω F P | = |Ω P |ãxã |Ω F N |

(2.1) cũng chính là tối ưu hóa

|Ω P | ã x ã T P + |Ω N | ã y ã T N hay là tối ưu hóa àãTP +(1−à)ãTN với à = |Ω P | ã x

|Ω P | ã x + |Ω N | ã y Trung bình cộng có trọng (weighted average)

WA à =àãTP +(1−à)ãTN của hai tỉ lệ true positive rate (TP) và false positive rate (TN) được gọi là độ chính xác có trọng số (weighted accuracy) của máy nhị phân ˆ với trọng số ,

Y à hay có thể gọi là độ chính xác tính theo giá phải trả (cost-wise accuracy) Ví dụ 2.2 sẽ minh học cụ thể cho định nghĩa này.

Ví dụ 2.2 Có 1000 con bò, trong đó chỉ có 1 con bò điên, còn lại 999 con là khỏe mạnh Nếu 1 con bò không điên mà bị coi nhầm thành điên và đem đi tiêu hủy thì bị mất 1000 đô-la, nhưng ngược lại, nếu một con bò điên, không bị hủy mà đem bán làm thịt cho người ăn sẽ lây dịch bệnh bò điên thì thiệt hại lên đến 10 000 000 đô-la Khi đó x = 10 000 000, y = 1000; |Ω P | = 1; |Ω N | = 999; trọng số à = ≈ 10 11

Một ủy ban y tế quyết định, coi cả 1000 con bò là điên và hủy đi tất cả, thì cú TP=1, TN=0 và độ chớnh xỏc cú trọng bằng à.T P + (1 − à).T N ≈ 91%, tuy rằng việc coi tất cả các con bò là điên đó chỉ đúng trong 10001 các trường hợp. Ngược lại, một người liều lĩnh, coi rằng không có bò điên thì đúng 999 trên

1000 các trường hợp, nhưng độ chính xác có trọng của người đó chỉ là 9%. 2.1.3 Độ chính xác cân bằng (balanced accuracy)

Trờn thực tế, việc xỏc định trọng số à hợp lý cho độ chớnh xỏc cú trọng là việc khú khăn Nếu khụng cú cỏch xỏc định à thỡ ta cú thể tạm coi nú bằng 1

2, khi đó ta có một thước đo độ chính xác, gọi là độ chính xác cân bằng (BA= Balanced Accuracy):

Ví dụ 2.3 Trong Ví dụ 2.2, giả sử ta có một máy xét nghiệm, cho phép phát hiện toàn bộ các con bò điên, (TP = 1) nhưng bắt nhầm khoảng một nửa số bò khỏe mạnh thành bò điên (TN = 0,5) Khi đó độ chính xác cân bằng của nú là 1+0,5 = 0,75 cũn độ chớnh xỏc cú trọng của nú (với à = 10) là 96%.

Trong ví dụ trên, tỉ lệ giữa giá phải trả cho một lần bỏ sót (x = 10.000.000) so với giá phải trả cho một lần bắt nhầm (y = 1000) lớn hơn nhiều so với tỉ lệ

42 giữa số ca âm tính (999) và số ca dương tính (1)

Trong nhiều vấn đề khác khi tỉ lệ giữa âm tính và dương tính cao hơn tỷ lệ giữa phải trả cho một lần bỏ sót (x) và giá phải trả cho một lần bắt nhầm (y):

|ΩP | ≫ y Trong những trường hợp như vậy, nếu một máy nhị phân có lượng bắt nhầm (dương tính giả) lớn hơn x y ã |Ω P | ,

P |, thì máy đó còn tồi hơn so với không bắt gì cả về mặt tổn thất Như vậy, ta có thể giả sử là các máy nhị phân có giá trị (có ý nghĩa) thì phải có:

TN=1−FP >1− ã ≈1 tức là nghiễm nhiên ta coi tỉ lệ TN là gần bằng 1, khi đó con số này không tiện dùng để làm thước đo độ chính xác của máy nữa Thay vào đó, người ta sẽ dùng hai tỉ lệ TP (thường gọi là recall trong trường hợp này) và PR (presision) làm thước đo độ chính xác Nhắc lại rằng,

Đường cong ROC và các thước đo độ chính xác của các máy phân loại nhị phân mềm 45

máy phân loại nhị phân mềm

Trong thực tế học máy, để xây dựng một máy ˆ dự đoán cho một vấn đề Y phân lớp nhị phân

Y :Ω→{0,1} (2.2) người ta thường dùng các “phương pháp xác suất” và tạo ra một hàm số

M:Ω→[0,1] (2.3) để dự đoán giá trị của Y , sau đó đưa ra một mức: σ ∈ (0, 1), rồi với mỗi phần tử x ∈ Ω, đặt ˆ ˆ (2.4)

Y (x) = Yσ(x) = 1 nếu M(x) ≥ σ và Y (x) = Y σ (x) = 0 nếu M(x) < σ Định nghĩa 2.1 Với các ký hiệu như trên, hàm số Y được gọi là sự thật cơ bản, hàm số M được gọi là máy phân loại nhị phân “mềm” (soft binary classification machine), còn hàm số ˆđược gọi là máy phân loại nhị Y =Y σ phân “cứng”, dự đoán của Y Độ chính xác của dự đoán Y σ đối với sự thật cơ bản Y thường được đo lường bằng hai độ chính xác cơ bản, đó là tỷ lệ dương tính thật, kí hiệu là

T P (σ) và tỷ lệ âm tính thật, kí hiệu là T N(σ) T P (σ) và T N(σ) được xác định bởi hai công thức sau:

P Ω (Y (x) = 0) Định nghĩa 2.2 Đường cong ROC của một máy phân lớp nhị phân M là tập hợp các điểm trên mặt phẳng được xác định như sau:

Số F P (σ) = 1 − T N(σ) chính là tỷ lệ dương tính giả tại mức σ Đường congROC “đi xuống” từ điểm ROC(0) = (1, 1) đến điểm ROC(1) = (0, 0) trong hình vuông đơn vị, đường cong càng cao thì máy càng chính xác Đường ROC được sử dụng trong nhiều lĩnh vực khác nhau (xem trong [5, 25, 26, 27, 28, 29]) Định nghĩa 2.3 AUC là diện tích phần nằm phía dưới của đường cong ROC trong hình vuông đơn vị, và nó là một thước đo phổ biến cho độ chính xác của máy (xem Hình 2.2).

Một thước đo phổ biến khác đo độ chính xác của máy là: độ chính xác có trọng tối đa được kí hiệu MWA (xem trong [26]), được định nghĩa như sau: Định nghĩa 2.4 Cho w ∈ (0, 1) là một trọng số, ta đặt:

Khi đó MWA = max W A(σ) được gọi là độ chính xác có trọng tối đa. σ∈[0,1]

Khi w = 0,5 thì MWA trở thành độ chính xác cân bằng tối đa, kí hiệu là MBA. Định nghĩa 2.5.

MBA = max BA(σ), trong đó BA(σ) =TP(σ) + TN(σ) (2.9)

∈ [0,1] σ được gọi là độ chính xác cân bằng tối đa.

Dễ thấy 0 ≤ AU C ≤ 1 do diện tích của hình luôn không âm, và diện tích của phần nằm dưới đường cong ROC luôn không lớn hơn diện tích hình vuông có cạnh bằng 1.

Với mọi σ ∈ [0, 1] thì T P (σ) và T N(σ) ∈ [0, 1] do đó BA(σ) ∈ [0, 1], từ đó ta có

0≤ M BA ≤ 1 Hơn nữa với mọi σ ∈ [0, 1] thỡ 0 ≤ w ãT P (σ) + (1 −w) ãT N(σ) ≤

1 Thật vậy, vế trước của bất đẳng thức là dễ thấy vì w, T P (σ), T N(σ) ∈ [0, 1], còn vế sau thì:

Như vậy, ta có 0 ≤ AU C, M W A, M BA ≤ 1 đối với máy bất kỳ Hơn thế nữa, nếu một trong các đại lượng đó bằng 1 thì có nghĩa là máy hoàn hảo, 100% chính xác.

Xét về mặt tô-pô và giải tích hàm, chúng ta có thể nói rằng AUC, MWA, MBA là ba thước đo độ chính xác khác nhau, nhưng chúng tương đương tô-pô, theo nghĩa là nếu một trong các thước đo này dần đến 1 thì hai thước đo còn lại cũng dần đến 1, cũng có nghĩa là nếu máy có độ chính xác cao với một trong các thước đo này thì cũng có độ chính xác cao đối với hai thước đo còn lại Cụ thể hơn, chúng ta có bất đẳng thức giữa các thước đo như sau: Định lý 2.1 Với các kí hiệu như trên:

(i) Đối với một máy phân loại nhị phân M bất kỳ, ta có:

1 − 2(1 − MBA) 2 ≥ AUC ≥ 2MBA − 1 (2.10) Hơn nữa, nếu đường cong ROC của máy M là lồi thì:

(ii) Với mỗi trọng w ∈ (0, 1) bất kỳ, và với mỗi máy M tùy ý, ta có

2w(1 − w) Hơn nữa, nếu đường cong ROC của máy M là lồi thì

Chứng minh (Xem Hình 2.2) Chúng ta nhớ lại rằng, số σ ∈ [0, 1] là một mức mà máy M đạt được độ chính xác có trọng số cao nhất nếu và chỉ nếu đường thẳng đi qua điểm ROC(σ) và bao gồm các điểm (F P (σ) + wt, T

P (σ) + (1 − w)t), t ∈ R là một đường nằm phía trên của đường cong ROC. Thật vậy, các đường {(F P (σ) + wt, T P (σ) + (1 − w)t), t ∈ R} với véc-tơ chỉ phương là (w, 1 − w) chỉ là các đường của độ chính xác có trọng hằng số.Nếu tại điểm B = (F P (σ), T P (σ)) của đường cong ROC đạt được độ chính xác có trọng lớn nhất, thì không có điểm nào thuộc đường congROC đó có thể nằm phía trên đường dốc tương ứng (w, 1 − w), vì nếu nằm phía trên thì có nghĩa là có độ chính xác có trọng cao hơn.

Hình 2.2: Đường cong ROC và đường tiếp tuyến tại điểm mà trung bình có trọng lớn nhất. Đường ℓ = {(F P (σ) + wt, T P (σ) + (1 − w)t), t ∈ R}, ở đó σ đưa ra độ chính xác có trọng lớn nhất của máy M, cắt biên của hình vuông đơn vị tại hai điểm

, 1) Tam giác △ACF , trong đó tọa w1 − w độ của F = (0, 1), tách biệt với phần nằm phía dưới của đường cong ROC, điều này nghĩa là AU C + diện tớch(△ACF ) ≤ 1 Từ diện tớch (△ACF ) = F A ã F C = 2

2w(1 − w) , ta thu được bất đẳng thức

Mặt khác, phần nằm dưới đường cong ROC chứa toàn bộ một hình chữ nhật có các đỉnh là (F P (σ), 0), (F P (σ), T P (σ), (1, T P (σ)), (1, 0) Diện tớch của hỡnh chữ nhật đú là T P (σ) ã (1 − F P (σ)) = T P (σ) ã T N(σ) = T P (σ) +

T N(σ) − 1 + (1 − T P (σ))(1 − T P (σ)) ≥ T P (σ) + T N(σ) − 1 = 2BA(σ) − 1 (với mọi σ) Dođó, ta có bất đẳng thức sau

Nếu đường cong ROC là lồi thì phần phía dưới của đường cong chứa tứ giác OBDE, ở đó O = (0, 0), B = (F P (σ), T P (σ)), D = (1, 1), E = (1, 0) (với mọi σ).

Diện tích của tứ giác này đúng bằng BA(σ), nghĩa là bằng M BA; do đó, ta thu được bất đẳng thức AU C ≥ BA(σ) với mọi σ, nghĩa là ta có AU C ≥ M BA. Cuối cùng, bất đẳng thức AU C 1 (1 − MWA) đạt được trong trường

≥ − 2 min(w, 1 − w) hợp đường cong ROC là lồi và trọng w bất kỳ, là hệ quả trực tiếp từ dãy các bất đẳng thức sau

AU C ≥ dt(OBDE) ≥ min(dt(OADE), dt(OCDE)) và các đẳng thức dt(OCDE) = 1 − (1 − MWA) , dt(OADE) = 1 − (1 − MWA)

Chú ý 1) Đối với một số bất đẳng thức trong Định lý 2.1, ta giả sử đường cong ROC là lồi Độ gần lồi của đường cong ROC đã từng được quan sát thực nghiệm trong nhiều chuyên khảo và bài báo trong thời gian dài Trong bài báo [5], Định lý 3, các tác giả đã chỉ ra rằng tính lồi của đường cong ROC tương đương với các điều kiện hợp lý tự nhiên (rationality) khác trên máy (cụ thể là “giá trị sigmoid” càng cao thì khả năng sự kiện đúng càng cao).

Trong phần 2.3, tác giả chỉ ra rằng máy xác suất thực là một máy “tự nhiên nhất”, cũng là máy chính xác nhất và đường cong ROC của nó luôn là đường lồi.

Kết quả này giúp giải thích tại sao hầu hết các đường cong ROC gặp trong thực tế gần như lồi (bởi vì máy móc phải gần như tối ưu theo nghĩa nào đó nếu quy trình học máy tạo ra chúng hiệu quả).

2) Nếu tham số hóa một máy M : Ω → [0, 1] bằng một ánh xạ tăng tùy ý f : [0, 1] → [0, 1], thì chúng ta thu được một máy mới M ′ = f ◦ M có đường cong ROC giống với đường cong ROC của M, qua một phép tham số hóa bởi f Nghĩa là, ROC M (σ) = ROC M ′ (f(σ)) với mọi σ ∈ [0, 1]. Đặc biệt, phép tham số hóa làm thay đổi các giá trị “xác suất” của máy nhưng không làm thay đổi các giá trị của các thước đo độ chính xác AU C,

M BA và M W A của hệ thống.

Phép chiếu thông tin, hàm sigmoid và máy tối ưu

Chúng ta có thể mô tả một máy nhị phân mềm M như một hợp thành của hai ánh xạ:

M =Σ◦ϕ, (2.14) trong đó ϕ:Ω→Φ (2.15) được gọi là phép chiếu thông tin (information projection map) từ không gian dữ liệu gốc Ω đến một không gian các thuộc tính chắt lọc (distilled features space) hoặc có thể gọi là không gian thông tin Φ, và Σ:Φ→[0,1] (2.16) là một hàm từ không gian thông tin Φ tới đoạn [0, 1] hay hàm sigmoid suy rộng (generalized sigmoid function), tương tự như hàm sigmoid cổ điển sigmoid(z) = exp(z)/(exp(z) + exp(−z)) thường sử dụng trong lớp cuối cùng của mạng nơ-ron trong học sâu, mặc dù hàm Σ nói chung là một hàm nhiều biến. Ý tưởng là, trong hầu hết các trường hợp, ta không thể biết mọi thứ về một phần tử (dữ liệu) x ∈ Ω mà chỉ có thể biết một vài thông tin về x, và những thông tin đó được cho bởi phép chiếu ϕ Dựa trên các thông tin ϕ(x) có được về x, ta phải đưa ra quyết định, thông qua giá trị M(x) = Σ(ϕ(x)), rằng x là “âm tính” hay “dương tính”.

Ngay cả khi biết mọi thứ về x (ví dụ như khi x là hình ảnh kĩ thuật số), lượng thông tin chứa trong x có thể quá lớn (hàng triệu bit cho một hình ảnh), vì thế trước tiên phải “chắt lọc” thông tin thành một thứ gì đó nhỏ hơn (gọi nó là ϕ(x)) để kiểm soát dễ dàng hơn.

Giả sử rằng không gian thông tin Φ và ánh xạ chiếu ϕ : Ω → Φ đã được cố định và thứ mà chúng ta cần chọn chỉ là hàm sigmoid, Σ : Φ → [0, 1] Độ đo xác suất P Φ trên Φ là push-forwward của độ đo xác suất P Ω trên Ω qua ánh xạ chiếu ϕ Có nghĩa là, A ⊂ Φ là đo được nếu ϕ −1 (A) ⊂ Ω là đo được và khi đó P Φ (A) = P Ω (ϕ −1 (A)).

Trong các tài liệu về trí tuệ nhân tạo, số M(x) = Σ(ϕ(x)) thường được gọi là xác suất (probability) của x với điều kiện (thông tin) ϕ(x), mặc dù điều đó nói chung là không đúng vì Σ có thể được chọn khá tùy ý, và luận án sẽ chỉ ra trong chương sau rằng, thậm chí các máy tối ưu thu được bằng phương pháp học máy thường cho giá trị mà trong luận án gọi là “xác suất bị bóp méo” (distorted probabilities) thay cho “xác suất thực” (real probabilities).

Tuy nhiên, trong số tất cả những máy M có thể có (tất cả những hàm sigmoid có thể có Σ : Φ → [0, 1]), có một máy tự nhiên hơn những máy khác, gọi nó là máy xác suất thực (real probability machine): Định nghĩa 2.6 Với các ký hiệu như trên, hàm xác suất có điều kiện Σ proba : Φ→ [0, 1] cho bởi công thức Σproba(φ) = P (Y (x) = 1|ϕ(x) = φ) (2.17)

(với mỗi φ ∈ Φ) được gọi là hàm sigmoid xác suất thực (probability sigmoid function), và máy

Mproba = Σ proba ◦ ϕ (2.18) được gọi là máy xác suất thực.

Nếu thay đổi hàm sigmoid Σ bằng cách hợp nó với một hàm khác , Σ ′ = θ◦Σ, trong đó θ : [0, 1] → [0, 1] là một hàm tăng ngặt, thì Σ và Σ ′ cho cùng một đường cong ROC với tham số hóa bởi θ Nói theo cách khác, chúng ta có thể thay đổi một giá trị sigmoid thành một giá trị khác bất kì bằng cách hợp nó với một hàm, mà không làm thay đổi độ chính xác của hệ thống Điều này là một lí do nữa giải thích tại sao nói chung các giá trị sigmoid không nên được coi là xác suất. Định lý 2.2 Với các kí hiệu như trên, ta có:

(i) Nếu hàm sigmoid Σ : Φ → [0, 1] là một hàm tùy ý, thì máy xác suất thực M proba = Σ proba ◦ ϕ chính xác hơn (hoặc ít nhất là chính xác bằng) máy

M = Σ ◦ ϕ, theo nghĩa đường cong ROC của M proba nằm phía trên đường cong ROC của M Nói cách khác, đối với bất kỳ mức dương tính giả α ∈ (0, 1) nào, nếu σ và σ proba là các mức tương ứng sao cho

(ii) Đường cong ROC của máy xác suất thực M proba là lồi.

Chứng minh Cố định một mức dương tính giả tùy ý α ∈ (0, 1) và gọi σ proba , σ ∈ (0, 1) là hai giá trị mức tương ứng như trong định lý Khi đó, ta có các công thức sau: α = {φ∈Φ|Σ proba (φ)≥σ proba }(1 − Σproba(φ))dφ =

(2.21) (trong đó Φ (1 − Σ proba (φ))dφ = P Ω (Y = 0) là độ đo xác suất của tập âm tính {x

{φ∈Φ|Σ proba (φ)≥σ proba } {φ∈Φ|Σ(φ)≥σ} Để đơn giản hóa các kí hiệu, ta đặt:

(1 − Σ proba (φ))dφ = (1 − Σ proba (φ))dφ, cũng có nghĩa là

Vì 1 − Σ proba (φ) ≤ 1 − σ proba trên A \ B , trong khi (1 − Σ proba (φ)) > 1 − σ proba trên B \ A, nên chúng ta có P (A \ B) ≥ P (B \ A), nghĩa là Σ proba (φ)dφ ≥ σ proba P (A \B) ≥ σ proba P (B \A) ≥ Σ proba (φ)dφ, (2.25)

Bất đẳng thức (2.26) có nghĩa là mức dương tính thật của Σ proba tại mức dương tính giả α lớn hơn hoặc bằng mức dương tính thật của Σ tại cùng mức dương tính giả đó Nói cách khác, đường ROC của hàm sigmoid xác suất Σ proba nằm phía trên của đường ROC của hàm Σ Hai đường ROC trùng nhau nếu và chỉ nếu trong công thức trên B trùng với A hầu khắp mọi nơi (chỉ có thể khác nhau trên một tập có độ đo bằng 0) với mọi mức dương tính giả α Về cơ bản có nghĩa là Σ thu được từ Σ proba bằng cách hợp nó với một hàm đơn điệu, nghĩa là Σ proba là hàm sigmoid tối ưu Nói cách khác, nếu không tính đến việc tham số hóa lại các giá trị sigmoid thì hàm sigmoid xác suất là hàm sigmoid tối ưu duy nhất.

Tính lồi của đường ROC của hàm sigmoid xác suất Σ = Σ proba suy ra trực tiếp từ tính chất sau:

Hàm xác suất có điều kiện P (σ) = P (Y (x) = 1)|Σ(ϕ(x)) = σ) là hàm không giảm theo σ Điều này là hiển nhiên đối với hàm Σ proba vì theo định nghĩa xác suất có điều kiện này chính bằng σ, (xem Định lý 3 của [5]) Thật vậy, ta kí hiệu φ Φp(φ) σ

(1 − Σ proba (φ))dφ {φ ∈ Φ Σ proba (φ) σ } p(φ)dφ α(σ) = { ∈ | ≥ } và β(σ) = | ≥ Φ (1 − Σ proba (φ))dφ Φ Σ proba (φ)dφ

(2.27) là mức âm tính giả và dương tính giả tại ngưỡng σ cho hàm sigmoid xác suất Σ proba , khi đó ta có dβ = Φ (1 − Σ proba (φ))dφ ã σ (2.28) dα ΦΣ proba(φ)dφ 1 − σ là một hàm tăng đối với σ, nhưng là một hàm giảm đối với α, vì bản thân α là một hàm giảm đối với σ Do đó β là một hàm lõm đối với α, cũng có nghĩa là đường cong ROC là lồi.

Cải thiện độ chính xác bằng biểu quyết

Phương pháp biểu quyết (voting method) là một phương pháp thông dụng trong đời sống cũng như trong học máy, để cải thiện độ chính xác của các đánh giá và quyết định, (xem thêm trong [51]) Chương 4 sẽ trình bày các kết quả về một phương pháp biểu quyết mới cho bài toán phân đoạn hình ảnh. Mục này chỉ thảo luận về tốc độ và khả năng tăng của độ chính xác của máy phân lớp nhị phân thông qua biểu quyết n máy, khi n tăng đến vô cùng.

Giả sử chúng ta có n chuyên gia (n máy) khác nhau Y 1 , Y 2 , , Y n cùng dự đoán cho một vấn đề phân lớp nhị phân Y : Ω → {0, 1} Để đơn giản, giả sử mỗi chuyên gia đều có độ chính xác có trọng, (WA, với trọng số cố định) bằng p > 1

2 thì còn kém cả máy trả lời ngẫu nhiên và không thể gọi là“chuyên gia” nữa), và “độ sai” là q = 1 − p < 1

2. Chúng ta sẽ gọi các chuyên gia là độc lập với nhau và không thiên vị

(no bias), nếu như bộ các biến ngẫu nhiên Y, Y 1 , Y 2 , , Y n : Ω → {0, 1} là một bộ độc lập Điều kiện không thiên vị có nghĩa là tỉ lệ đoán đúng trong các trường hợp dương tính cũng bằng tỉ lệ đoán đúng trong các trường hợp âm tính, hay nói cách khác, TP = TN Đây cũng là một điều kiện quá lí tưởng, nhưng để cho đơn giản, ta tạm coi như vậy.

Với các giả thuyết lí tưởng như trên, phân bố về số lượng các chuyên gia có dự đoán đúng cho một trường hợp x ∈ Ω ngẫu nhiên là một phân bố nhị thức.

Theo định lý giới hạn trung tâm, khi n đủ lớn thì phân phối nhị thức xấp xỉ bằng phân phối chuẩn với trung bình là np và phương sai là npq Do vậy xác suất S n có ít nhất n/2 dự đoán đúng (trong số n chuyên gia) xấp xỉ bằng

S n cũng là độ chính xác dự kiến của quyết định tập thể bằng cách biểu quyết (1 chuyên gia có 1 phiếu bầu), và ta thấy rằng lim n→∞ S n = 1 Điều đó có nghĩa là khi các chuyên gia không thiên vị và độc lập với nhau, thì bằng cách biểu quyết độ chính xác của máy phân lớp nhị phân sẽ tăng đến 1 (hoàn toàn chính xác) khi số chuyên gia tăng đến vô cùng và tốc độ hội tụ về 1 là √ n (độ sai giảm theo √ ) 1 n Tuy nhiên trong thực tế, chúng ta không thể có các chuyên gia hoàn toàn độc lập và không thiên vị Nói chung các chuyên gia sẽ có những điểm mù thông thường (common blind spots). Để đơn giản, ta xem xét một mô hình chỉ có hai loại điểm mù, đó là nửa mù (half-blind), tức là các quyết định ở đó là ngẫu nhiên nửa đúng nửa sai và mù hoàn toàn (completely blind), tức là các quyết định thường luôn bị sai Tập dữ liệu Ω được chia thành 3 phần như sau:

Trên Ω blind mọi chuyên gia đều sai, trên Ω hb các quyết định là ngẫu nhiên, nửa đúng nửa sai, và trên Ω l (tập có thể học được) các chuyên gia là độc lập và có tỷ lệ sai sót q Công thức gần đúng cho độ chính xác của quyết định tập thể bằng biểu quyết khi đó sẽ là:

Ta có công thức giới hạn sau: lim Sn = 1 − Pblind − 1

Việc chứng minh các công thức (2.31) và (2.32) suy ra trực tiếp từ định lí giới hạn trung tâm Công thức (2.32) tuy đơn giản nhưng nó cho thấy dù có biểu quyết đến mấy thì ta cũng không kì vọng đạt độ chính xác tuyệt đối, do có những “điểm mù” thông thường mà chúng ta không thể vượt qua.

Kết luận và bình luận cuối chương

Chương 2 trình bày hai kết quả chính.

Thứ nhất là: Định lý 2.1 trình bày các bất đẳng thức giữa các thước đo độ chính xác: AUC ROC, MBA, MWA, từ đó kết luận các thước đo này tương đương về mặt tô-pô, theo nghĩa nếu một trong các thước đo đó có giá trị dần đến 1 thì các thước đo khác cũng có giá trị dần đến 1 Điều này có ý nghĩa là các thước đo độ chính xác AUC ROC, MWA và MBA có thể dùng thay thế cho nhau trong học máy.

Thứ hai là: Định lý 2.2 kết luận máy xác suất thực đối với một không gian thông tin đã cho là máy tối ưu, tức là nó có độ chính xác cao nhất trong số tất cả các máy có thể Hơn nữa đường cong ROC của máy xác suất thực luôn là đường lồi Kết quả này giúp ta tin tưởng khi sử dụng máy xác suất thực đối với bài toán phân lớp nhị phân vì máy này cho độ chính xác cao nhất trong số tất cả các máy có thể và đường cong ROC của nó đã được chứng minh là lồi Hơn thế nữa, nó cho thấy nếu mô hình học máy có đường ROC lồi (hoặc gần như lồi) thì mô hình đó hiệu quả với bộ dữ liệu đang có Nếu mô hình học máy cho đường ROC không lồi (hoặc không tương tự lồi) thì chương trình học máy còn có thể cải thiện thêm dựa trên bộ dữ liệu đã có Đây cũng là một dấu hiệu để ta dừng quá trình học vào thời điểm hợp lý.

ẢNH HƯỞNG CỦA HÀM MẤT MÁT ĐẾN CÁC BÀI TOÁN PHÂN LOẠI NHỊ PHÂN 57

Tổng quan về các hàm mất mát (loss function)

Nhắc lại rằng, hàm mất mát là hàm dùng để đo xem một máy cho ra kết quả khác với “sự thật cơ bản” hay khác với “máy lí tưởng” chừng nào, để rồi phản hồi lại thông tin đó cho máy (feedback), tìm cách thay đổi các tham số của máy nhằm giảm mất mát đi, khiến cho máy trở nên chính xác hay hiệu quả hơn Khi kết quả mà máy cho ra là Y predict và sự thật cơ bản là Y true , thì hàm mất mát là một hàm có dạng l(Ytrue, Y predict) đo khoảng cách hay độ chênh lệch giữa Y predict và Y true Ngay cả khi kết quả do máy tạo ra có tính chất sáng tạo (ví dụ như một bản nhạc) và không có sự thật cơ bản nào cả, thì vẫn cần có cách phản hồi (feedback) cho máy, dựa trên các hàm mất mát gián tiếp, kiểu như l(ϕ(Y output), ϕ reference) trong đó Y output là kết quả output của máy, ϕ là một hàm tính một số đặc trưng của kết quả đó, còn ϕ reference là các giá trị đặc trưng dùng làm chuẩn. Mỗi một loại bài toán học máy có những hàm mất mát thích ứng của nó.

Có ba loại bài toán học máy có giám sát phổ biến nhất, và một số loại hàm mất mát phổ biến dùng cho ba loại bài toán đó.

• Bài toán hồi quy (ước lượng các giá trị số);

• Bài toán phân loại (phân loại dữ liệu theo các lớp cho trước);

• Bài toán phân đoạn (phân vùng) hình ảnh.

3.1.1 Các hàm mất mát hồi quy

Một bài toán hồi quy là một bài toán tìm hàm số thực:

R sao cho gần đúng nhất với giá trị thực tế:

Y true : Ω −→ R thể hiện một quan hệ nào đó Ví dụ Ω là một tập các căn hộ, y là giá của căn hộ đó và Y predict là hàm dự đoán y dựa trên các thông tin về căn hộ như diện tích, số phòng, năm xây dựng, vị trí địa lí,v.v

Với mỗi x ∈ Ω ta có một giá trị mất mát l(Y predict (x), Y true (x)) nào đó cho đầu vào x Còn trên toàn bộ Ω ta có thể tính hàm mất mát của Y predict bằng cách lấy tích phân:

Trong thực tế, Ω là một tập rời rạc, và tích phân chính là giá trị trung bình.

Kí hiệu Ω = {x 1 , x 2 , , x n }; Y true (x i ) = y i ; Y predict (x i ) = y˜ i , khi đó :

Hàm mất mát phổ biến nhất là hàm mất mát bình phương, với l(y˜i, yi) = (y˜i

Hàm mất mát này còn được gọi là sai số bình phương trung bình (MSE, mean square error), hay là hàm mất mát L 2 (theo chuẩn L 2 trong giải tích hàm).

Nếu thay vì bình phương (y˜ i − y i ) 2 , ta dùng giá trị tuyệt đối |y˜ i − y i | cho độ chênh lệch giữa y˜ i và y i , thì được hàm mất mát gọi là sai số tuyệt đối trung bình (MAE, mean absolute error).

3.1.2 Các hàm mất mát phân loại (phân lớp)

Một hàm phân loại là một ánh xạ từ tập dữ liệu Ω vào một tập thường là hữu hạn các loại, ví dụ như:

Chúng ta có thể đánh số các loại, ví dụ như chó = 0, mèo = 1, gà = 2, v.v, và biến một bài toán phân loại thành một bài toán hồi quy:

Coi Y predict là hàm giá trị thực (thay vì chỉ nhận giá trị rời rạc) và sử dụng các hàm mất mát hồi quy cho bài toán phân loại, đặc biệt là hàm mất mát bình phương.

Một hàm mất mát rất phổ biến khác (và có lẽ là phổ biến nhất) cho bài toán phân loại gọi là hàm cross-entropy Trong trường hợp phân loại nhị phân, nó được gọi là hàm cross-entropy nhị phân, và công thức của nó như sau: l(y, y˜) = −(y ln(˜y) + (1 − y) ln(1 − y˜)) (3.1) trong đó y là sự thật cơ bản (lớp thật sự) của một dữ liệu, chỉ nhận một trong hai giá trị 0 hoặc 1, còn y˜ là dự đoán của y˜ ở dạng “xác suất” (giá trị sigmoid), nhận giá trị trong khoảng từ 0 đến 1.

Thành phần −y ln(˜y) trong công thức trên có thể gọi là phần mất mát ứng với lớp “âm tính”, còn −(1−y) ln(1−y˜) là phần mất mát ứng với lớp “dương tính”.

Nếu số lớp lớn hơn 2, thì ta tính thành phần mất mát cho từng lớp theo công thức tương tự như trên rồi lấy tổng các kết quả để được hàm mất mát: l(x) = − k y c ln(˜y c ) (3.2) c=1 trong đó vec-tơ (y 1 , , y k ) là vec-tơ “one-hot” của sự thật cơ bản: y i = 1 nếu lớp của dữ liệu được xét là lớp i, và y i = 0 nếu lớp của dữ liệu được xét khác lớp i; (˜y 1 , , y˜) là dự đoán cho sự thật cơ bản ở dạng “phân bố xác suất” (các số này đều không âm và có tổng bằng 1).

Có một loại hàm mất mát phổ biến khác cho các bài toán phân loại nhị phân, gọi là Hàm mất mát bản lề (Hinge loss) Nó hay được dùng với các phương pháp học máy kiểu SVM, (xem thêm trong [36]) Ý tưởng chính của hàm mất mát bản lề cho máy SVM như sau:

Ta tạo các đặc trưng sao cho qua phép chiếu từ không gian các dữ liệu lên trên không gian các đặc trưng, các điểm dương tính sẽ nằm hầu hết ở một nửa không gian (gọi là nửa không gian dương tính), các điểm âm tính sẽ nằm hầu hết ở nửa còn lại (nửa không gian âm tính), và hai nửa được phân chia bởi một siêu phẳng (hyperplane) Siêu phẳng đó là “bản lề” Nếu một điểm dương tính mà rơi vào nửa không gian dương tính qua phép chiếu và có khoảng cách tới bản lề ít nhất là 1, thì ta coi mất mát của nó bằng 0 (nó nằm đủ cách xa bản lề để mà “yên tâm”), còn nếu nó nằm gần bản lề hoặc

“nằm nhầm” sang nửa không gian dương tính thì nó có mất mát là dương, càng nằm sâu vào nửa không gian âm tính thì dương càng cao Đối với các điểm âm tính thì cũng tính mất mát tương tự như vậy, chỉ có điều đổi âm thành dương, dương thành âm Tổng mất mát của các điểm cho ta mất mát của toàn bộ máy, và quá trình học máy SVM chính là quá trình xoay và dịch bản lề để giảm thiểu mất mát,(xem thêm trong [34]).

3.1.3 Các hàm mất mát thường dùng trong bài toán phân đoạn hình ảnh

Trong bài toán phân đoạn hình ảnh, tùy theo nhu cầu quan tâm khác nhau,người ta sử dụng các hàm mất mát khác nhau (xem trong [35, 37, 38, 39, 40,

Hình 3.1: Các hàm mất mát thường dùng trong bài toán phân đoạn hình ảnh.

14]) Các hàm mất mát thường dùng trong phân đoạn hình ảnh được tóm tắt bằng sơ đồ như trong Hình 3.1 Trong Chương 4 tác giả sẽ sử dụng một số hàm mất mát trong sơ đồ này để thiết kế mô hình học máy cho bài toán phân đoạn hình ảnh.

• Distribution-based Loss: Mất mát theo phân phối là thước đo sự khác biệt giữa hai phân phối Nó thường được áp dụng khi xử lý các bộ dữ liệu mất cân bằng lớn.

• Region-based Loss: Mất mát theo khu vực, được sử dụng để tối thiểu hóa vùng khác hay tối đa hóa vùng trùng nhau giữa sự thật cơ bản và phân đoạn được dự đoán.

• Boundary-based Loss: Mất mát theo biên, nhằm mục đích cực tiểu hóa khoảng cách giữa biên của sự thật cơ bản và biên của phân đoạn dự báo.

Học máy vi phân và hàm mất mát

Nhắc lại rằng, ý tưởng chính của học máy là chúng ta không chỉ có một máy mà có một họ lớn các máy M θ : Ω → [0, 1] phụ thuộc vào một véc-tơ tham số θ ∈ Θ, trong đó Θ là một không gian nhiều chiều, và quá trình học chính là quá trình thay đổi tham số θ qua từng bước, ví dụ như: θ = θ 0 θ 1 θ 2 θ n (3.3) để cải thiện hiệu suất hay độ chính xác của máy M θ

Trong học máy vi phân, chúng ta xây dựng một hàm mất mát

L:Θ→R (3.4) làm đại diện cho độ chính xác của máy (ý tưởng là độ mất mát L(θ) càng thấp thì độ chính xác của máy M θ càng cao), rồi sử dụng phương pháp giảm theo gradient để tìm điểm cực tiểu (hoặc điểm gần cực tiểu) θ m của hàm mất mát

L Điểm cực tiểu (hoặc gần cực tiểu) θ m này về mặt lo-gic sẽ tương ứng vớimáy tối ưu (hoặc gần tối ưu) M θ m , (xem thêm trong [39, 40, 42, 43])

Thông thường, do không gian các tình huống có thể xảy ra là một không gian lớn và phức tạp, chúng ta không thể tính toán một cách hoàn toàn chính xác trên không gian đó mà chỉ có thể tính toán xấp xỉ qua các phương pháp thống kê ngẫu nhiên như Monte Carlo, nên phương pháp giảm theo gradient trong học máy vi phân thường được gọi là phương pháp giảm theo gradient ngẫu nhiên - stochastic gradient descent.

Về mặt lý thuyết, hàm mất mát L bằng tích phân trên toàn bộ không gian dữ liệu Ω của một hàm mất mát ℓ theo từng điểm (pointwise) :

Nói chung, người ta có thể chọn hàm mất mát ℓ một cách khá là tùy ý, chỉ có một hạn chế tự nhiên duy nhất là giá trị m = M θ (x) càng cách xa sự thật cơ bản y = Y (x), thì giá trị ℓ(m, y) của hàm mất mát càng cao, và nếu m = y thì không có mất mát, tức là ℓ(y, y) = 0 Hai hàm mất mát phổ biến nhất là hàm mất mát bình phương và hàm mất mát cross-entropy nhị phân Hai hàm này được định nghĩa như sau: Định nghĩa 3.1 Hàm mất mát bình phương là hàm có công thức như sau:

ℓ quadratic (m, y) = (m − y) 2 (3.6) Định nghĩa 3.2 Hàm mất mát cross-entropy nhị phân là hàm có công thức như sau:

ℓcrossentropy(m, y) = − ln(1 − |m − y|) (3.7) tương tự như công thức (3.1). Định nghĩa 3.3 Hàm mất mát cross-entropy nhị phân được điều chỉnh là hàm có công thức như sau:

Tuy nhiên, chúng ta có thể chọn nhiều hàm mất mát khác Ví dụ như hàm mất mát bậc bốn sau cũng cho kết quả tốt trong nhiều bài toán. Định nghĩa 3.4 Hàm mất mát bậc bốn là hàm có công thức như sau:

ℓquartic(m, y) = (m − y) 2 + (m − y) 4 (3.9) Hình 3.2 minh họa dáng điệu của một số hàm mất mát lồi.

Hình 3.2: Dáng điệu một số hàm mất mát lồi Hàm mất mát cross-entropy (hàm log) đã được điều chỉnh bằng cách cho thêm một số dương epsilon rất nhỏ vào đó để tránh tình huống ln 0.

Người ta thậm chí có thể sử dụng hàm mất mát không trơn, không lồi, ví dụ như hàm mất mát gãy khúc có công thức như sau:

ℓ broken (m, y) = min(|m − y|; 0,5) 2 + max(|m − y| − 0,25; 0) (3.10) Sau đây tác giả đưa ra giải thích về mặt lý thuyết cho các khẳng định sau:

1 Hàm mất mát bình phương và hàm mất mát cross-entropy là hai hàm mất mát tự nhiên nhất;

2 Các hàm mất mát lồi như ℓ quartic là các hàm mất mát tốt theo nghĩa cực tiểu của chúng là những máy tối ưu về độ chính xác;

3 Các hàm mất mát không lồi như ℓ broken có thể dẫn đến các hiện tượng kỳ quái và kết quả tồi, kiểu như là các bẫy ngẫu nhiên (stochastic traps) trong học máy.

Chúng ta có thể viết lại hàm mất mát

L(M) = ℓ(Σ(ϕ(x)), Y (x))dPΩ x∈Ω của một máy nhị phân M = Σ ◦ ϕ như một tích phân trên không gian thông tin Φ và về sau ta gọi nó là mất mát của hàm sigmoid Σ, như sau:

Thật vậy, với mỗi φ đã cho, giá trị của ℓ(Σ(ϕ(x)), Y (x)) với điều kiện ϕ(x) = φ sẽ bằng ℓ(Σ(φ), 0) với xác suất (1 − Σ proba (φ)) và bằng ℓ(Σ(φ), 1) với xác suất Σ proba (φ)

Biểu thức (1 − Σ proba (φ)) ã ℓ(Σ(φ), 0) + Σ proba (φ) ã ℓ(Σ(φ), 1) trong cụng thức trờn chính là tích phân của ℓ(Σ(ϕ(x)), Y (x)) trên không gian {x ∈ Ω, ϕ(x) = φ}) theo độ đo xác suất có điều kiện trên không gian đó nên ta có công thức (3.11).

Ví dụ 3.1 Trong trường hợp hàm mất mát cross-entropy, ta có công thức tích phân như sau:

Lcrossentropy(Σ) = − (1 − Σ proba (φ)) ã ln(1 − Σ(φ)) + Σ proba (φ) ã ln(Σ(φ)) dφ. Φ (3.12)

Các hàm mất mát đã đề cập là các hàm mất mát đối xứng (symmetric), theo nghĩa là chúng xử lý mất mát trong các trường hợp âm tính tức là y = 0 và mất mát trong các trường hợp dương tính tức là y = 1 là như nhau Tuy nhiên, do sự mất cân bằng dữ liệu quá lớn trong một số bài toán (chẳng hạn như khi số trường hợp dương tính chỉ bằng 1/1000 số các trường hợp âm tính), trong thực tế có những lúc sẽ tốt hơn nếu chúng ta sử dụng các hàm mất mát không đối xứng thay cho các hàm mất mát đối xứng. Định nghĩa 3.5 Cho hàm: f : [0, 1] → R (3.13) là một hàm tăng thỏa mãn điều kiện f(0) = 0 Họ các hàm mất mát không đối xứng ℓ c phụ thuộc vào một hệ số mất đối xứng c > 0, được cho bởi công thức sau:

Do sự thật cơ bản chỉ nhận hai giá trị là y = 0 và y = 1 nên công thức ở trên nghĩa là khoản mất mát bằng f(m) nếu y = 0 và bằng cf(1 − m) nếu y = 1 Vì vậy các trường hợp âm tính và các trường hợp dương tính có tỉ trọng khác nhau trong tổng số mất mát Ví dụ khi c = 100 nó giống như các trường hợp dương tính được tính 100 lần trong khi các trường hợp âm tính chỉ tính 1 lần Như vậy hệ số mất đối xứng có thể được sử dụng để bù đắp sự mất cân bằng dữ liệu.

Hai công thức (3.11) và (3.14) dẫn đến công thức sau đối với một hàm mất mát của một máy M = Σ ◦ ϕ với một hàm sinh (generating function) f đã cho và một hệ số mất đối xứng c:

L(Σ) = (1 − Σ proba (φ)) ã f(Σ(φ)) + cΣ proba (φ) ã f(1 − Σ(φ)) dφ (3.15) Φ Đối với mỗi φ ∈ Φ cho trước, hàm dưới dấu tích phân

(1 − Σ proba (φ)) ã f(Σ(φ)) + cΣ proba (φ) ã f(1 − Σ(φ)) có thể được viết như hàm số một biến σ = Σ(φ) và một tham số p = Σ proba (φ): g(σ) := (1 − p)f(σ) + cpf(1 − σ) (3.16)

Ta không thể thay đổi p, nhưng có thể chọn hàm sigmoid Σ, cũng có nghĩa là chọn σ sao cho hàm mất mát g(σ) đạt cực tiểu Giảm thiểu mất mát L(Σ) có nghĩa là giảm thiểu g(σ) với mỗi φ Nói cách khác, một hàm sigmoid Σ là một cực tiểu của hàm mất mát L(Σ) được cho bởi công thức (3.15) nếu và chỉ nếu (hầu khắp mọi nơi, trừ ra một tập có độ đo bằng 0) với mọi p ∈ [0, 1] và mọi φ∈ Ω thỏa mãn Σproba(φ) = p, ta có Σ(φ) = argmin [(1 − p)f(σ) + cpf(1 − σ)] (3.17) σ

Phương trình (3.17) cho ta kết quả thú vị về tính tự nhiên của hàm mất mát bình phương cổ điển (trường hợp f(σ) = σ 2 và c = 1) và hàm mất mát cross-entropy nhị phân (trường hợp f(σ) = − ln(1 − σ) và c = 1): Định lý 3.1 Với các kí hiệu như trên, ta có:

(i) Máy xác suất thực là điểm cực tiểu duy nhất của hàm mất mát bình phương.

(ii) Máy xác suất thực cũng là điểm cực tiểu duy nhất của hàm mất mát cross-entropy nhị phân.

Chứng minh (i) Trường hợp hàm mất mát bình phương Như đã thảo luận ở trên, một hàm sigmoid Σ : Φ → [0, 1] là một cực tiểu của hàm mất mát bình phương nếu và chỉ nếu Σ(φ) = argmin (1 − p)σ 2 + p(1 − σ) 2 (3.18) σ đối với mỗi p ∈ [0, 1] và mỗi φ ∈ Ω thỏa mãn Σ proba (φ) = p.

Hàm bậc hai g(σ) := (1 −p)σ 2 + p(1 −σ) 2 có đạo hàm bằng g ′ (σ) = 2(1 −p)σ + 2p(σ − 1) = 2(σ − p), và phương trình g ′ (σ) = 0 có duy nhất một nghiệm σ = p. Điểm σ = p = Σ proba (φ) là điểm cực tiểu duy nhất của hàm g(σ) Do đó, mất mát L(Σ) đạt được cực tiểu tại (và chỉ tại) hàm Σ(φ) = Σ proba (φ), nghĩa là khi máy là máy xác suất thực.

Hàm mất mát lồi và xác suất bị bóp méo

Định lý sau đây cho thấy rằng, không chỉ hàm mất mát cross-entropy và hàm mất mát bình phương có thể dẫn đến máy xác suất thực (là máy tự nhiên và chính xác nhất theo Định lý 2.2), mà tất cả những hàm mất mát lồi khác cũng có thể dẫn đến máy tối ưu này qua một phép tham số hóa (sự bóp méo của các xác suất). Định lý 3.2 Cho f : [0, 1] → R + là một hàm số lồi tùy ý, đơn điệu tăng và khả vi sao cho f ′ (0) = 0 hoặc lim σ→1 f ′ (σ) = +∞, c > 0 là một số dương tùy ý (hệ số bất đối xứng), và

L(M) = [(1 − Y (x)) ã f(M(x)) + cY (x) ã f(1 − M(x))] dx (3.20) x∈Ω là mất mát của máy M đối với bài toán phân loại nhị phân cho trước Y , được tạo bởi f và c.

Khi đó, máy cực tiểu M = Σ ◦ ϕ đối với hàm mất mát L(M) chỉ là một phép tham số hóa lại máy xác suất thực Nói cách khác, có một song ánh tăng g :

[0, 1] → [0, 1] sao cho máy ứng với hàm sigmoid: Σ(φ) := g(Σ proba (φ)) (3.21) có mất mát L là tối thiểu.

Chứng minh Từ (3.11) mất mát L(M) của một máy M có thể được viết như một hàm mất mát cho hàm sigmoid Σ của nó như sau:

L(M) = L(Σ) = 1 − Σ proba (φ) f(Σ(φ)) + cΣ proba (φ)f (1 − Σ(φ)) dà ϕ Φ (3.22) Để giảm thiếu mất mát L(Σ) trên tất cả các hàm Σ : Φ → [0, 1], chúng ta phải giảm thiểu (1 − p)f(σ) + cpf(1 − σ) với mỗi p = Σ proba (φ) cho trước, trên tất cả σ và đặt Σ(φ) = argmin [(1 − p)f(σ) + cpf(1 − σ)] (3.23) σ để đạt được hàm sigmoid tối ưu đối với hàm mất mát L.

Theo giả thiết về hàm f, giá trị cực tiểu của hàm (1 − p)f(σ) + cpf(1 − σ) (với mỗi p cho trước) đạt được tại điểm σ, ở đó đạo hàm của nó bị triệt tiêu, nghĩa là (1 − p)f ′ (σ) − cpf ′ (1 − σ) = 0, hay có thể viết f ′ (σ) = cp (3.24) f ′ (1 − σ) 1 − p Chú ý rằng, h(σ) := f ′ (σ) là một hàm liên tục và tăng ngặt với h(0) = 0 f ′ (1 − σ) lim h(σ) = + p p [0, 1] σ thỏa mãn và σ → 1 cp ∞; do vậy với mỗi ( ∈ ), có duy nhất một

, hơn nữa, giá trị của σ tăng khi p tăng Nói cách khác, có một h(σ) =

1 − p song ánh tăng g : [0, 1] → [0, 1] (3.25) sao cho σ = g(p) sẽ thỏa mãn phương trình trên, nghĩa là h(g(p)) = cp

Từ đó suy ra rằng Σ(φ) := g(p) = g(Σ proba (φ)) là một hàm sigmoid mà máy tương ứng của nó M = Σ ◦ ϕ có mất mát L là cực tiểu.

Tất nhiên, máy này chỉ là một biến đổi tham số của máy xác suất thực bằng một hàm tham số g.

Chú ý 1) Nếu hàm mất mát không lồi, tức là hàm f trong công thức của hàm mất mát không phải là hàm lồi, thì phương trình (3.24) có thể không có nghiệm hoặc có nhiều nghiệm thay vì có một nghiệm duy nhất trên đoạn [0, 1] Nếu nó không có nghiệm thì giá trị cực tiểu của (1 − p)f(σ) + cpf(1 − σ) rơi vào σ = 0 hoặc σ = 1, và tối ưu hóa của L sẽ là một kiểu máy cực đoan, các giá trị của nó hầu hết chỉ là 0 hoặc 1 thay vì một số loại xác suất; một kiểu máy như vậy sẽ không hữu ích Khi có nhiều giải pháp thì một điểm cực tiểu Σ cho hàm mất mát sẽ không phải là một phép tham số hóa lại của hàm sigmoid xác suất, cũng có nghĩa là máy cực tiểu của hàm mất mát sẽ không phải là máy tối ưu.

2) Trong thực tế, các hàm mất mát siêu lồi (hyper-convex), chẳng hạn như hàm mất mát bậc bốn, thường tiện lợi hơn cho việc học máy so với hàm mất mát bình phương và cross-entropy, mặc dù chúng dẫn đến các máy cho xác suất bị bóp méo Một trong những lí do là các hàm mất mát siêu lồi làm giảm nhẹ đi đạo hàm ở những chỗ có mất mát thấp và làm tăng lên đạo hàm ở những chỗ có mất mát cao (một cách tương đối) Điều này khiến cho máy tập trung hơn vào việc học các trường hợp khó(trường hợp có mất mát cao) so với các trường hợp dễ Tính chất này được gọi là focality (tính tập trung) của hàm mất mát (xem [7, 11])

3) Mọi xác suất trên thực tế đều là xác suất có điều kiện và có thể bị bóp méo theo cách này hay cách khác Ví dụ như, chúng ta không biết phân phối xác suất thực trên không gian dữ liệu Ω là gì, đặc biệt khi Ω rất lớn, và các mẫu mà chúng ta có chỉ là một tập con nhỏ của Ω Do đó, ngay cả khi chúng ta sử dụng hàm mất mát cross-entropy hay hàm mất mát bình phương và một phương pháp học máy tốt, thì cũng không có gì đảm bảo rằng máy đạt được sẽ có xác suất thực. Tốt hơn ta nên giả định rằng tất cả các giá trị sigmoid thu được chỉ là xác suất bị bóp méo Để chuyển từ xác suất bị bóp méo sang xác suất thực, tức là tìm hàm biến đổi tham số g sao cho Σ(φ) = g(Σ proba (φ)), ta có thể dùng phương pháp thống kê dựa trên một tập dữ liệu lớn (tương tự như làm nghiên cứu lâm sàng cho các sản phẩm y tế) Vấn đề chuyển từ xác suất bị bóp méo thành xác suất thực là một vấn đề về hiệu chỉnh xác suất (calibration) phổ biến trong học máy, (xem trong [44, 45]).

4) Xác suất bị bóp méo không phải luôn là một điều tồi mà có thể là một điều tốt trong thực tế Ví dụ, nếu chúng ta có một máy phát hiện ung thư mà nó đưa ra giá trị sigmoid là 0.1 cho một bệnh nhân, thì con số này nên được giải thích như thế nào? Vì con số này rất nhỏ, người ta có thể muốn coi nó là nguy cơ ung thư thấp (“very low cancer risk”) Tuy nhiên, nếu đó là một con số xác suất thực, tức là khả năng mắc bệnh ung thư là 10% thì con số này đã đủ cao để được xem là nghiêm trọng Sẽ tốt hơn nếu giá trị sigmoid 0.1 tương ứng với xác suất ung thư chỉ là 0.001 chẳng hạn (và xác suất mắc bệnh ung thư giai đoạn cuối còn nhỏ hơn nhiều nữa).

Các hàm mất mát không lồi và các bẫy ngẫu nhiên

Tác giả đã thực hiện nhiều thử nghiệm về học sâu với cả các hàm mất mát

“tốt” (các hàm mất mát siêu lồi, chẳng hạn như hàm mất mát bậc bốn trong công thức (3.4)) và các hàm mất mát “xấu” (các hàm mất mát không lồi, ví dụ như hàm mất mát “broken” trong công thức (3.10) và nhiều hàm khác nữa) Trong các thí nghiệm đó, tác giả sử dụng mạng nơ-ron thông dụng như VGG16, (xem thêm [46]), và các phương pháp làm tăng dữ liệu thông thường, không phải để đạt được các mô hình AI hoạt động tốt nhất, mà với mục đích là nghiên cứu các hiện tượng được tạo ra bởi các hàm mất mát khác nhau.

Một trong những thử nghiệm được mô tả dưới đây thực hiện trên tập dữ liệu công khai nổi tiếng có tên là CIFAR-10, thu thập bởi Alex Krizhevsky, Vinod Nair và Geoffrey Hinton, (xem [47, 48]) Tập dữ liệu này bao gồm 60 nghìn ảnh màu cỡ 32 ×32 pixel, được chia thành 10 lớp có số lượng bằng nhau: mèo, chó, tàu, máy bay, v.v

Những hàm mất mát sau đã được dùng cho loạt thử nghiệm này: fbrokenloss1(y) = min(y; 0,5) 2 + max(y − 0,25; 0), (3.26) fbrokenloss2(y) = min(y; 0,5) 2 + max(y − 0,4; 0), (3.27) fbrokenloss3(y) = min(y; 0,5) 2 + max(y − 0,5; 0), (3.28) fbrokenloss4(y) = min(y; 0,5) 4 + max(y − 0,5; 0), (3.29) fcutof f loss1(y) = max(0; y − 0,2) 2 , (3.30)

Hàm cross entropy chưa điều chỉnh (không có ε trong công thức) như trong Định nghĩa 3.7, và hàm cross entropy đã được điều chỉnh (có ε trong công thức) như trong Định nghĩa 3.8 Trong các hàm trên, có hai hàm f brokenloss1 và f brokenloss2 là không lồi, còn lại là lồi Đồ thị của các hàm mất mát này được minh họa như trong Hình 3.3.

Hình 3.3: Một số hàm mất mát được sử dụng cho thí nghiệm học máy phân loại nhị phân trên tập CIFAR-10.

Trong luận án này các mạng tích chập (CNN) được xây dựng dựa trên cấu trúc VGG16 cho các bài toán phân loại nhị phân kiểu “chó hay là không phải chó”, “mèo hay là không phải mèo” trên tập CIFAR-10 Do các bài toán phân loại nhị phân này không cân bằng dữ liệu (ví dụ như lớp “chó” chỉ chiếm 101 dữ liệu còn lớp “không phải chó” 109 dữ liệu) nên ta sử dụng hai hệ số, gọi là c và r, để bù lại việc mất cân bằng dữ liệu đó: c là hệ số mất đối xứng của hàm mất mát được nhắc đến phần trước, còn r là hệ số tăng cường dữ liệu của phía thiểu số Ví dụ như nếu r = 3 thì mỗi ảnh chó có số lần được cho vào huấn luyện nhiều gấp 3 lần mỗi ảnh không phải chó Ta chọn các giá trị 1, 2, 3, 4, 5 cho c, và các giá trị 1, 3, 5, 7, 9 cho r, tổng cộng có

25 lựa chọn cho bộ (c, r) Với mỗi bộ (c, r), với mỗi hàm mất mát, và với mỗi lớp trong số 10 lớp, mạng nơ-ron được học trên 50 nghìn dữ liệu CIFAR-10 học 30 bước (epoch) với các lựa chọn đó (mỗi bước đều sử dụng toàn bộ 50 nghìn ảnh để học), sau đó kiểm tra kết quả trên 10 nghìn dữ liệu còn lại Kết quả cho lớp máy bay và lớp chó được trình bày trong Bảng 3.1 và Bảng 3.2 dưới đây (kết quả cho các lớp khác cũng tương tự).

Trong mỗi bảng này, mỗi ô mà chứa 3 số thì số đầu là sensitivity (TP), số thứ hai là specificity (TN), và số thứ ba là balanced accuracy (trung bình của hai số đầu), tính theo phần nghìn, của máy được tạo ra theo các hệ số c, r và hàm mất mát tương ứng với ô đó Ví dụ, ở Bảng 3.1, với c = 2, r = 5 và hàm mất mát là brokenloss1, thì ta có ba số 1000, 000, 500 Có nghĩa là máy này có sensitivity bằng 1 và specificity bằng 0, hay nói cách khác, máy đoán tất cả các trường hợp thành dương tính, chứ không hề học được phân biệt giữa dương tính và âm tính “Tất cả là dương tính” ở đây chính là bẫy ngẫu nhiên mà máy rơi vào và không thoát ra được trong quá trình học vì hàm mất mát tồi.

Bảng 3.1: Máy bay với không phải máy bay c r brokenloss1 brokenloss2 brokenloss3 brokenloss4 cutoffloss1

Bảng 3.2: Chó với không phải chó c r brokenloss1 entropyloss brokenloss3 entropylossR cutoffloss1

9 955, 494,725 1000, 000, 500 924, 771, 847 803,902, 852 848,850, 849 Ởhai bảng trên, ta thấy hàm mất mát entropyloss (không được chỉnh) bị rơi vào ngoại lệ ln 0, máy không học được gì, khi thay bằng hàm entropylossR (có được chỉnh bởi ε để tránh ngoại lệ ln 0) thì kết quả nói chung là tốt Hàm cutoffloss cũng luôn cho kết quả tốt Hai hàm mất mát cho nhiều kết quả tồi nhất, dễ rơi vào bẫy đoán mọi thứ thành dương tính (sensitivity =1, specificity

=0) nhất, chính là hai hàm không lồi.

Thí nghiệm trên tập CIFAR-10 đã xác nhận lý luận lý thuyết rằng các hàm mất mát lồi dẫn đến kết quả nói chung là tốt, trong khi các hàm mất mát không lồi thường dẫn đến các bẫy ngẫu nhiên trong không gian tham số: trượt theo gradient ngẫu nhiên của quá trình học máy rơi vào những nơi có độ chính xác thấp, bị mắc kẹt ở đó và không thể thoát ra được Do bản chất ngẫu nhiên của học máy, đôi khi máy có thể thoát ra khỏi bẫy ngẫu nhiên sau khi bị mắc kẹt ở đó trong nhiều bước học (epoch) Đôi khi, cái bẫy quá lớn hoặc quá mạnh khiến cho máy thoát ra khỏi nó chỉ để rơi trở lại sau một vài bước Những hiện tượng về bẫy ngẫu nhiên có được quan sát trong các Hình 3.4, 3.5, 3.6 đã được ghi lại về việc đo độ mất mát và độ chính xác trong quá trình học bài toán phân loại nhị phân “mèo hay không phải mèo” trên tập CIFAR-10.

Hình 3.4: Rơi vào bẫy sau đó thoát ra sau các bước học máy Vấn đề phân loại “Mèo và không phải mèo” trên CIFAR-10, huấn luyện với VGG16 và hàm brokenloss1 Khi ở trong bẫy, máy lấy mọi ảnh mèo (sensitivity = 1, specificity = 0 tại mức threshold σ = 0.5).

Hình 3.5: Rơi vào bẫy và không thoát ra được, brokenloss1, c=1, r=9.

Vấn đề mô tả chính xác các cơ chế của bẫy ngẫu nhiên trong học máy là một vấn đề rất lớn và thú vị, nhưng nó nằm ngoài phạm vi của chương này.

Hình 3.6: Một ví dụ khác về rơi vào bẫy rồi thoát ra, brokenloss3, c=2, r=9.

Kết luận và bình luận cuối chương

Chương 3 trình bày ba kết quả chính về hàm mất mát.

Thứ nhất là: Định lý 3.1 khẳng định rằng hàm mất mát cross-entropy nhị phân và hàm mất mát bình phương là các hàm mất mát tự nhiên nhất, máy xác suất thực chính là cực tiểu của chúng.

Thứ hai là: Định lý 3.2 khẳng định rằng cực tiểu của một hàm mất mát lồi nghiêm ngặt tùy ý là một máy tối ưu có thể đưa về máy xác suất thực (máy đã được chứng minh trong Chương 2 là máy tối ưu) qua một phép biến đổi tham số.

Hai kết quả trên cho thấy: Tuy rằng hai hàm mất mát cổ điển là tối ưu nhất, tức là chúng cho kết quả tốt nhất về mặt lý thuyết toán học nhưng thực tế, chúng ta có thể dùng những hàm mất mát khác có tính chất lồi, đảm bảo vẫn thu được máy tối ưu, nó cho xác suất bị bóp méo (thay vì xác suất thực), mà quá trình học máy diễn ra nhanh hơn do tính tập trung (focality) vào học những chỗ khó Kết quả này giúp chúng ta có thể thay đổi hai hàm mất mát cổ điển (hàm mất mát bình phương và hàm cross- entropy) bởi các hàm mất mát siêu-lồi khác (như hàm mất mát bậc bốn).

Thứ ba là: Các kết quả thử nghiệm trong (3.4) cho chúng ta thấy nếu hàm mất mát không lồi, thì cực tiểu của nó nói chung sẽ không phải là một máy tối ưu.

Chương 4 TỐI ƯU HÓA PHÂN ĐOẠN HÌNH ẢNH BẰNG BIỂU QUYẾT TÔ-PÔ

Phân đoạn hình ảnh là một trong những vấn đề chính trong xử lý ảnh. Để cải thiện độ chính xác của việc phân đoạn, người ta sẽ dùng các máy hay người làm phân đoạn (segmentor) khác nhau để tạo ra một số nhãn dán, hay còn gọi phổ biến là mặt nạ (mask), cho cùng một hình ảnh, (xem thêm trong [49, 50]) Sau đó ta sẽ sử dụng một số phương pháp biểu quyết cho các mặt nạ này để từ đó tạo ra một mặt nạ chính xác hơn.

Vấn đề biểu quyết nhằm tăng cường độ chính xác là một vấn đề được nghiên cứu rộng rãi trong nhiều tài liệu [15, 16, 17, 20, 21, 22, 51] Phương pháp biểu quyết được dùng phổ biến nhất để phân đoạn hình ảnh là biểu quyết số học (mềm hoặc cứng), (xem trong [20, 21, 23]), trong đó mỗi pixel được bỏ phiếu theo quy tắc đa số chỉ dành riêng cho pixel đó và không tính đến các pixel khác. Trong phân đoạn hình ảnh, người ta thường tạo ra nhiều bộ phân đoạn khác nhau Sau đó chọn ra bộ phân đoạn tốt nhất theo nghĩa gần với mặt nạ sự thật nhất từ một trong số bộ phân đoạn thu được hoặc bằng cách kết hợp các bộ phân đoạn đã có theo một cách hợp lý Do bản chất của phương pháp học là quy nạp (induction) và lời giải không duy nhất, việc bỏ phiếu (hay biểu quyết) để chọn kết quả hợp lý hơn cả trong các kết quả thu được là cách làm phổ biến Chương này đưa ra một phương pháp biểu quyết mới liên quan đến vấn đề phân đoạn hình ảnh gọi là phương pháp biểu quyết tô-pô. Phương pháp này biểu quyết không chỉ theo từng pixel đơn lẻ một, mà còn tính đến các đặc tính hình học tô-pô tự nhiên của nhãn dán Bằng lập luận lí thuyết, chứng minh toán học, cùng với ba ví dụ cụ thể đã chỉ ra rằng phương pháp biểu quyết tô-pô là hợp lý và nó cho kết quả chính xác hơn phương pháp biểu quyết số học thông thường trong nhiều trường hợp.

Các kết quả của chương này đã được đăng trong bài báo [T2].

Phương pháp biểu quyết tô-pô

4.1.1 Phân đoạn hình ảnh và khoảng cách Jaccard

Về mặt toán học, chúng ta có thể biểu diễn một thuật toán phân đoạn (segmentor) nhị phân hình ảnh 2D như một ánh xạ nhận giá trị rời rạc:

S : Ω → {0, 1} h×w (4.1) hoặc một ánh xạ liên tục →

S˜:Ω [0, 1] h×w (4.2) từ một không gian Ω của những hình ảnh kĩ thuật số 2D (có kích thước cố định, để cho đơn giản), và N = h×w (chiều cao nhân với chiều rộng) là số điểm (pixel) của mỗi ảnh Đối với mỗi hình ảnh, x ∈ Ω, nếu S(x)(i, j) = 1, trong đó (i, j) là vị trí của một pixel (1 ≤ i ≤ h, 1 ≤ j ≤ w), thì điều đó có nghĩa là, pixel này là nằm trong mặt nạ (mask) của x được tạo bởi thuật toán phân đoạn S; trong trường hợp ngược lại thì pixel thuộc về “nền”.

Mạng nơ-ron tích chập (Convolutional neural network (CNN)) được sử dụng trong các bài toán phân đoạn hình ảnh, thường cho chúng ta bộ phân đoạn có giá trị liên tục S ˜ và có thể thu được S từ S ˜ bằng cách cố định một ngưỡng, chẳng hạn như ˜

Giả định rằng mỗi hình ảnh x ∈ Ω có một mặt nạ thực (sự thật cơ bản) (true mask hay ground truth) được kí hiệu là S true (x) Chúng ta muốn đo lường mức độ chính xác của việc phân đoạn, tức là độ chênh lệch giữa mặt nạ S(x) với mặt nạ thực S true (x).

Một phương thức khá hợp lí và được sử dụng rộng rãi để đo độ chính xác của phân đoạn nhị phân là chỉ số “giao chia cho hợp” (intersection over union (IOU)), hay còn được gọi là tỉ lệ Jaccard Phương thức này được Paul Jaccard đề xuất trong một bài báo vào năm 1901, (xem trong [24]):

|S(x) ∪ Strue(x)| trong đó kí hiệu S(x) ∩ S true (x) là phần giao của hai mặt nạ S(x) và S true (x) (tức là tập hợp các pixel mà cả hai phân đoạn đều có giá trị bằng 1), còn S(x) ∪ S true (x) kí hiệu sự hợp lại của chúng (trong đó ít nhất một trong số chúng có giá trị bằng 1), và giá trị tuyệt đối kí hiệu cho diện tích bề mặt, tức là số lượng các pixel trong tập hợp.

Lưu ý rằng một cách tương tự để tính tỉ lệ Jaccard là MOM (min over max) min(S(x)(i, j), Strue(x)(i, j)) i=1,h,j=1,w

J(S(x), S true (x)) = (4.5) i,j max(S(x)(i, j), S true (x)(i, j)) Một lợi thế của công thức (4.5) so với công thức (4.4) là nó cũng dùng được cho các mặt nạ mềm (soft masks), tức là đối với các phân đoạn có giá trị liên tục: nếu U và V là hai mặt nạ mềm (soft masks) thì chúng ta có định nghĩa tỉ lệ Jaccard tương đối như sau: i,j min(U(i, j), V (i, j))

Khoảng cách Jaccard của một mặt nạ S(x) đến mặt nạ thật (true mask)

S true (x) được xác định bởi công thức sau: d Jaccard (S(x), S true (x)) = 1 − J(S(x), S true (x)), (4.7) và nó đo “độ chênh lệch” giữa S(x) và S true (x) Hai mặt nạ trùng nhau khi và chỉ khi khoảng cách Jaccard giữa chúng bằng 0 Trong trường hợp mặt nạ mềm, công thức trên vẫn đúng và nó sẽ cho chúng ta giá trị gọi là khoảng cách Jaccard mềm (soft Jaccard distance) Trong chương này, chúng ta sẽ chủ yếu sử dụng tỉ lệ Jaccard (và khoảng cách Jaccard) để đo độ chính xác của các máy phân đoạn.

Khi mặt nạ thực chứa ít pixel (bài toán phân đoạn các đối tượng nhỏ), có thể xảy ra trường hợp bộ phân đoạn S đưa ra một mặt nạ hoàn toàn khác so với mặt nạ thực (không có phần giao) và độ chính xác nhị phân(binary accuracy) vẫn gần bằng 1 (tối đa có thể) Do đó độ chính xác nhị phân này không phải là một thước đo độ chính xác tốt, mặc dù đôi khi chúng ta vẫn có thể sử dụng nó để tính toán.

Trong phân đoạn tự động, cũng như phân đoạn thủ công, người ta không chỉ tạo ra một mà tạo ra nhiều bộ phân đoạn (segmentors) S 1 , , S n cho cùng một bài toán Các phân đoạn này được tạo ra bằng cách sử dụng các mạng nơ-ron nhân tạo khác nhau, hoặc các tập dữ liệu huấn luyện khác nhau hay các phương pháp tăng cường dữ liệu khác nhau, v.v Sau đó người ta kết hợp chúng bằng một phương pháp biểu quyết với hy vọng tạo ra một bộ phân đoạn chính xác hơn so với mỗi bộ phân đoạn trong chúng Phương pháp biểu quyết hiển nhiên nhất là biểu quyết đa số: Đối với mỗi pixel và mỗi phân đoạn sẽ có một phiếu bầu, và giá trị có thể là 0 hoặc 1, giá trị nào có nhiều phiếu bầu hơn thì thắng Ví dụ có 10 bộ phân đoạn, trong đó có 6 bộ cho một pixel nào đó có giá trị 1 còn 4 bộ cho pixel đó giá trị 0, thì pixel đó nhận được giá trị bằng 1 (tức là thuộc về mask) sau biểu quyết Phương pháp biểu quyết này được gọi là

“biểu quyết số học cứng” (hard arithmetical voting, hay còn gọi vắn tắt là biểu quyết cứng) Cũng có một kiểu khác của biểu quyết số học, gọi là “biểu quyết số học mềm” (soft voting), (xem trong [20, 23]).

Trong biểu quyết số học mềm (hay còn gọi vắn tắt là biểu quyết mềm), ta sử dụng các bộ phân đoạn có giá trị liên tục ˜˜ thay cho các bộ phân S 1 , ,

S n đoạn có giá trị rời rạc S 1 , , S n , và đặt ˜ 1 n ˜ (4.8)

Khi n có giá trị lớn, theo luật số lớn, biểu quyết mềm và biểu quyết cứng sẽ cho kết quả về cơ bản là giống nhau Khi n có giá trị nhỏ, thì biểu quyết mềm có thể tốt hơn và cho kết quả tốt hơn một chút so với biểu quyết cứng.

Người ta có thể điều chỉnh công thức biểu quyết số học ở trên bằng cách đưa ra các trọng số khác nhau cho các bộ phân đoạn khác nhau (công thức trung bình có trọng).

Các phương pháp biểu quyết tô-pô ở đây rất khác so với phương pháp biểu quyết số học Phần 4.1.3–4.1.5 trình bày ba dạng khác nhau của phương pháp này Trong đó dạng đơn giản nhất của phương pháp được đề xuất có sự tương đồng với phương pháp “Best of K” trong tài liệu [16], mặc dù các nghiên cứu hoàn toàn độc lập Hai dạng còn lại thì khác so với [16].

4.1.3 Biểu quyết tô-pô: Dạng đơn giản nhất

Các dạng đơn giản nhất (biểu quyết tô-pô cứng và mềm) có thể được mô tả như sau. Định nghĩa 4.1 Biểu quyết tô-pô phiên bản cứng bao gồm các bước sau:

(i) Đối với hình ảnh đầu vào x, lấy n mặt nạ S 1 (x), , S n (x) được cho bởi n phân đoạn khác nhau S 1 , , S n ;

Tính hợp lý của biểu quyết tô-pô

Chúng ta hãy nhớ lại rằng, triết lí đằng sau các phương pháp biểu quyết tô-pô và biểu quyết kết hợp như sau: đối với các đối tượng có ý nghĩa, mặt nạ của chúng phải có các đặc tính hoặc hình dạng nhất định về hình học hoặc tô-pô.Giả sử rằng chúng ta có bộ phân đoạn tốt (nhưng chưa xuất sắc) S 1 , , S n, hầu hết các mặt nạ do chúng cung cấp (đối với một đầu vào điển hình) sẽ có hình dạng phản ánh các đặc tính hình học-tôpô của đối tượng được phân đoạn và đủ gần với mặt nạ thực Có thể nói, trong trường hợp tổng quát, một mặt nạ khác xa với các mặt nạ khác cũng sẽ khác xa với mặt nạ thật, trong khi một mặt nạ gần với hầu hết các mặt nạ khác cũng sẽ gần với mặt nạ thật hơn Vì vậy, ngay cả khi chúng ta không biết mặt nạ thực là gì, chúng ta có thể sử dụng hàm tổng khoảng cách làm mốc để ước tính khoảng cách từ S k (x) tới mặt nạ thực.

Xét dạng đơn giản nhất của phương pháp đề xuất được trình bày trong phần 4.1.3, trong tình huống đơn giản hoá với số chiều nhỏ, luận án trình bày các kết quả lý thuyết và thí nghiệm để giải thích tại sao phương pháp biểu quyết tô-pô tốt hơn phương pháp biểu quyết số học cổ điển Chi tiết hơn, khi S i là một đại lượng vô hướng trong R với mọi i, hai phương pháp biểu quyết hoạt động tương tự nhau, luận án sẽ chứng minh rằng cả hai cùng hội tụ đến sự thật cơ bản θ với cùng một tốc độ hội tụ như nhau và tốc độ đó là √ n (n là số lượng tham gia biểu quyết) Có thể thấy sự khác biệt khi S i là một vec-tơ và các thành phần của nó phụ thuộc vào nhau Luận án minh họa cho các trường hợp khi S i là vec-tơ trong R 2 và thành phần thứ hai của nó phụ thuộc vào thành phần đầu tiên để thấy được phương pháp biểu quyết tô- pô tốt hơn phương pháp số học.

Trường hợp này có thể coi là trường hợp biểu quyết cho bài toán quy hoạch.

Ta giả sử {Si} n i=1 là các biến ngẫu nhiên độc lập trong R có giá trị trung bình là θ và phương sai là σ 2 Trong phương pháp biểu quyết số học mềm cổ điển

(biểu quyết trung bình) chọn Σ n = n i =1 S i là kết quả cuối cùng của nó, trong khi đó phương pháp biểu quyết tô-pô chọn n

S i {S 1 ,S 2 , ,S n } j=1 ở đó d là hàm khoảng cách nào đó Ở đây, ta chọn d(x, y) = (x − y) 2 (4.15) để thu được một hàm trơn cho giải tích Các kết quả cổ điển chỉ ra rằng, Σ n hội tụ hầu chắc chắn tới θ (theo luật số lớn) và tốc độ hội tụ của nó là √ n,

Thus the first component of (13) converges to 0 since Σ n converges to 0 a.s; and the second component converges to 0 when e goes to 0 sinc e: hay nói một cách chính xác hơn, phân phối của √ n (S n − θ) hội tụ đến phân phối N (0, σ 2 t=δ n s= t+en − α ) (xem thêm trong [66, 67, 68]) Với phương pháp biểu quyết mới, g n (t) ∏ 1 − Z s = t en − α f ( s ) ds dt

Z t= δ k= 1 tốc độ hội tụ, như minh họa ta thu được bảo đảm cho − tính hội tụ cũng như − t=δ ( ) Định12 Δlý en − 4.1 α n dtTrong Định lý 4.1, ta giả sử trong Hình 4.3 và trình bày trong

{ Si } i là phân phối xác suất dương, liên ≤ 2δA 1 − 2Δen− α tục n và bị chặn trong một lân cận của quá nhiều”, vì hầu hết các hàm phân trung bình θ Điều này “không hạn 1−chếα

∼ e phối (chẳng hạn như phân phối đều, phân phối chuẩn, phân phối mũ, v.v.) đều0 as n +∞ g 2022, 1, 0 −→ −→ 20 of 25 thỏa mãn giả thiết này. which ends the proof.

Hình 4.3: So sánh biểu quyết số học (biểu quyết trung bình) và phương pháp biểu quyết tô-pô trong trường hợp 1 chiều (a) {S i } n i=1 độc lập và tuân theo quy luật N (0, 1); (b) {S i } n i=1 độc lập và tuân theo quy luật (0, 1).

Figure 11 11 Comparisons U of arithmetical ofarithmetical voting voting (average (average voting) voting) andtopological andtopological votingmethodvotingone method in one m (a) S n n follow ( 0, 1 ) ; (b) S n n ( 0, 1 ) n 1 ∑ i n =1 S i as it’s final result, while our voting policy chooses n

330 where d is some distance function Here we choose d ( x, y ) = ( x − y ) 2 to get a smooth function for analysis The classical results show that Σ n converges almost surely to θ (law √

333 limit theorem) With our voting method, we get the same guarantees for the convergence Định lý 4.1 Nếu {S i } i=1 có phân phối xác suất dương, liên tục và bị chặn

334 as well as the rate of convergence, which are illustrated in Fig 11 and showed in

335 trong proposition mộtlân 1 Remark cậncủa thatθ , in thì proposition tacócác 1 khẳng ,werestrict định ourself saucho byY assuming xácđịnh tat bởi {S i công } i

336 have positive, continuous and bounded probability distribution in a neighborhood of thức (4.14) phía trên:

337 the mean θ However, this does “not restrict too much since most of the distributions

338 (such as uniform distribution, normal distribution, exponential distribution, etc) satisfy

Proposition 1 n have positive, continuous and bounded probability distribution in a

340 2 Y hội tụ hầu chắc chắn đến If {S i } i = 1 θ

341 neighborhood of θ, we have the following statements:

√ n (Y θ) hội tụ theo phân phối đến N(θ, σ 2 ).

344 Chứng mi h Ta chứng mi h lần lượt từng ý như √

3 Y n converges in distribution to N ( θ, σ ) with the rate of n.

345 Proof We will prove each statement 2 in turn:

From variations of function h we imply that the one in { S 1 , S 2 , , S n } closest to Σ n either from the left or the right is arg min of h On other ha d, is symmetric at

Từ bảng biến thiên của hàm the ta suy ra rằng một trong những giá trị của Σ n , i.e., for every ε, h(Σ n + ε) = h(Σ n − ε ) Indeed, tập { S 1 , S 2 , , S n } gần với Σ n từ bên trái hoặc từ bên phải là argmin của h define 1 a j = S 1 + S 2 + + S j 1 ( n 1 ) S j + S j+1 + + S n ,

Mặt khỏc, là n ã ã ã n − − − ã ã ãn n − h đối xứng tại Σ , nghĩa là, với mọi ε , h(Σ + ε) = h(Σ ε).

351 then it is obvious that n a j = 0.

1 n n n a = S+S+ +S 2 (n 2 1)S +S h( j Σ n + n e) 1 = ∑ ( 2 a j + ã ã e ã ) 2 = j ∑ −1 a − j + ne − + 2e j ∑ a j j+1 = j=1 j=1 j=1 thì rõ ràng rằng n j=1 a j = 0

∑ + ã a ã 2 j ã + + n S e n2 , , j=1 n n n n h(Σ n + ε) = (a j + ε) 2 = a j 2 + nε 2 + 2ε a j = a j 2 + nε 2 , j=1 j=1 j=1 j=1 do n j =1a j = 0. Tương tự, ta có n n n n h(Σ n − ε) = (a j − ε) 2 = a j 2 + nε 2 − 2ε a j = a j 2 + nε 2 j=1 j=1 j=1 j=1

Vì vậy ta thu được khẳng định thứ nhất.

2 Trước hết ta chứng minh bổ đề về bất đẳng thức của phân phối chuẩn như sau:

Bổ đề (Tham khảo [64] ) Giả sử X là biến ngẫu nhiên tuân theo quy luật phân phối chuẩn X ∼ N(0, 1), khi đó với mọi x > 0 ta có bất đẳng thức sau:

Thật vậy, với mọi t ≥ x > 0 ta có 1 ≤ t , khi đó:

Kí hiệu Z n = Y n − Σ n , ta sẽ chứng minh dưới đây Z n hội tụ hầu chắc chắn đến 0 và vì vậy Y n hội tụ hầu chắc chắn đến θ Thật vậy,

≤ √ 2πnε , trong đó, q = P |S k − θ| ≥ ε/2 < 1 ∀ k = 1, , n với mọi ε > 0 do giả thiết

Sk có phân phối dương tại θ, và Σn hội tụ theo phân phối tới N (θ, σ 2 /n). Dựa trên định lý giới hạn trung tâm và bổ đề trên ta có nếu S ∼ N (0, 1) thì với mọi x > 0 : exp(−x 2 /2)

Từ định lý 7.5 trong [65] ta có Z n hội tụ hầu chắc chắn đến 0 và vì vậy

Y n hội tụ hầu chắc chắn đến θ.

3 Khẳng định thứ ba được suy ra từ việc √ n(Σ n − θ) hội tụ theo phân phối đến N (θ, σ 2 ) (theo định lý giới hạn trung tâm) và Y n (phần tử của tập {S 1 , S 2 , , S n } gần Σ n nhất) hội tụ theo xác suất đến Σ n với tốc độ hội tụ n Để đơn giản cho chứng minh, ta giả sử rằng θ = 0, khi đó với bất kỳ

(4.17) trong đó f là mật độ của S k và g n là mật độ của Σ n

Từ giả thiết ta suy ra rằng, g n cũng có xác suất dương, liên tục và bị chặn bởi vì nó là hàm mật độ của Σ n (là trung bình của tổng {S k } n k=1 ). Giả sử U là một lân cận mở của 0 trong đó g n và f là dương, liên tục và bị chặn Đầu tiên chúng ta cố định δ > 0, sao cho [−δ, δ] nằm trong U thì nếu ε đủ nhỏ, ta có [−δ − ε, δ + ε] cũng sẽ nằm trong U Vì vậy ta có:

Như vậy thành phần đầu tiên của (4.17) hội tụ về 0 vì Σ n cũng hội tụ về 0; và thành phần thứ hai cũng hội tụ về 0 khi ε dần tới 0, do: t=δ n s=t+εn −α g n (t) 1 − f(s)ds dt t=−δ k=1 s=t−εn −α t=δ

Khi {S i } n i=1 là các véc-tơ trong không gian R 2 Các mặt nạ trong mỗi bài toán phân đoạn tự nhiên có một “cấu trúc tự nhiên”, nghĩa là các tọa độ của nó không độc lập Với các hình minh họa dưới đây, ta xem xét trường hợp đơn giản nhất, trong đó thành phần thứ hai của S i hoàn toàn phụ thuộc vào thành phần đầu tiên, tức là, S i = [x i , f(x i )] với mọi i, ở đó {x i } n i=1 là phân phối độc lập giống nhau, giá trị trung bình θ, phương sai σ và f là một hàm số nào đó biểu thị mối liên hệ của thành phần thứ hai theo thành phần thứ nhất.

Trong Hình 4.4, ta thay đổi hàm số f để minh họa các cách xử lý khác nhau của hai phương pháp biểu quyết Có thể thấy rằng, trong biểu quyết trung bình, thành phần đầu tiên hội tụ hoàn toàn đến sự thật nhưng thành phần thứ hai dường như khác rất xa so với sự thật Lí do đơn giản là, hầu hết các hàm f, f của trung bình thì khác so với trung bình của f Trong khi đó, biểu quyết tô-pô có tính đến sự thỏa hiệp giữa hai thành phần này.

Các kết quả thực nghiệm của biểu quyết tô-pô

4.3.1 Phân đoạn muối trong các hình ảnh địa chấn

Phân đoạn tự động của trầm tích muối trong các ảnh địa chấn là một vấn đề quan trọng đối với các công ty địa chất trong việc tìm kiếm dầu mỏ. Liên quan đến vấn đề này, vào năm 2018, Kaggle (một công ty con của Google chuyên tổ chức các cuộc thi về AI trên mạng) đã tổ chức “Thử thách nhận dạng muối TGS”, và cung cấp một tập dữ liệu huấn luyện (training dataset) bao gồm 4000 nhãn hình ảnh đen trắng (grayscale) với kích thước các ảnh là 101 × 101, xem trong [55].

Mục đích ở đây không phải là xây dựng một phân đoạn tự động hiệu quả nhất (“state-of-the-art”) cho thử thách Kaggle (trong thực tế, người ta sẽ không cắt các hình ảnh địa chấn thành những ảnh rất nhỏ và tính các tỉ số chính xác như cách mà Kaggle đã làm), mà để thực hiện các thí nghiệm cho phương pháp biểu quyết tô-pô Vì thế ta xây dựng các mô hình AI dựa trên một kiến trúc mạng tích chập trọng lượng nhẹ, (light-weight convolutional neural network architecture) được gọi là MobileNet [56] Thiếp lập các mô hình bằng các công cụ Tensorflow và Keras [57] Hàm mất mát được sử dụng trong việc huấn luyện mô hình là tổng của cross entropy nhị phân và hàm mất mát Dice [58] Sử dụng các phép dịch chuyển, xoay, lật, cắt và đệm (padding) ngẫu nhiên để tạo hình ảnh vuông có kích thước 128 × 128 từ hình ảnh gốc có kích thước 101 × 101, vì những mô hình MobileNet có kích thước đầu vào là 128 × 128. Chia 4000 nhãn dán hình ảnh thành 2 tập: tập huấn luyện (3000 hình ảnh) và tập thử nghiệm (1000 hình ảnh) Sau đó dùng phương pháp kiểm định chéo k- fold như đã trình bày trong 1.5 Tập huấn luyện được chia thành 5 tập con (gọi là fold), mỗi fold chứa 600 hình ảnh Đối với mỗi fold, huấn luyện một mô hình Al tương ứng, mà nó sử dụng fold đó làm tập kiểm định (validation), bốn fold còn lại để huấn luyện Mỗi mô hình được huấn luyện qua 500 bước học (epoch), mỗi bước học sử dụng 3000 đầu vào, vì vậy tổng cộng mỗi mô hình được huấn luyện với 1.500.000 đầu vào Mỗi đầu vào là một hình ảnh được lấy ngẫu nhiên từ tập huấn luyện và sau đó được biến đổi ngẫu nhiên (tăng cường trong quá trình tiền xử lý dữ liệu) Ta không lấy mô hình Al sau khi trải qua chính xác 500 lần duyệt dữ liệu, mà lấy mô hình Al sau lần duyệt dữ liệu đem lại tỉ số Jaccard cao nhất trên tập kiểm định trong tổng số 500 lần duyệt.

Sau quá trình huấn luyện trên, ta thu được 5 máy phân đoạn AI (segmentor), tương ứng với 5 fold Sau đó, đối với mỗi hình ảnh trong tập thử nghiệm, ta biểu quyết cho 5 mặt nạ được đưa ra bởi 5 bộ phân đoạn này bằng phương pháp biểu quyết số học và phương pháp biểu quyết tô- pô (mềm và cứng) Kết quả được thể hiện trong Bảng 4.1 là đối với bộ thử nghiệm (không được sử dụng trong quá trình huấn luyện) Ở đây, tỉ số Jaccard là trung bình các tỉ số Jaccard trên bộ thử nghiệm.

Bảng 4.1: So sánh các phương pháp biểu quyết trên 5 fold cho tập dữ liệu muối.

AI Model Hard Jaccard Score Khoảng của p (N = 1000, c = 90%)

Biểu quyết số học mềm 0,7813 (0,7590; 0,8020)

Biểu quyết tô-pô cứng 0,7831 ( 0,7608; 0,8038)

Biểu quyết tô-pô mềm 0,7847 ( 0,7625; 0,8053)

Một số ví dụ cụ thể về các mặt nạ được đưa ra bởi năm phân đoạn riêng lẻ,cùng với kết quả của hai phương pháp biểu quyết khác nhau (số học và tô-pô), transformations (augmentations in data pre-processing) We do not take the AI model after exact 500 epochs of training, but rather the AI model after the epoch that offers the highest Jaccard scores on validation among all the 500 epochs.

After the above training process, we obtain 5 AI segmentors, corresponding to our 5 folds Then, for each image in the test set, we vote on the 5 masks given by these 5 segmentors, using arithmetical voting and the (soft and hard) topological voting methods.

The results are shown in Table 1 Here, the Jaccard score is the means Jaccard score over the test set.

Table 1 Comparison of voting methods on 5 folds for the Salt dataset. được biểu diễn trong các Hình 4.7–4.10, cùng với hình ảnh gốc và mặt nạ thực

AI Model Hard Jaccard Score Interval for p (N = 1000, c = 90%)

(sự thật cơ bản được đưa ra trong tập dữ liệu).

Bốn hình này minh Fold4 họa phương 0.7404 pháp biểu quyết (0.7169, 0.7626) tô-pô khác với phương

Fold 5 0.7429 (0.7195, 0.7650) pháp số học như SoftArithmetical thếnào Voting Qua các 0.7813 hình ảnh này, (0 ta 7590, thấy 0.8020) phương pháp số học

Hard Topological Voting Soft Topol ogical Voting 0.7831 0.7847 ( 0.7608, 0.8038) ( 0.7625, 0.8053) chọn giá trị trung bình lấy theo từng pixel của mặt nạ mà không tính đến tính chất hình học của Some các concrete mặt examples nạ, of do the masks vậy given nó gây byour ra five individual kếtquả segmentors, củabiểu and quyết cuối the results of two different voting methods (arithmetical and topological) and shown in cùng không Figures cótính 3–6, together chất with hình the original họccủa images các and the vùng truemasks muối (the ground Trong truth khi given đó, phương in the dataset) These four figures illustrate how the topological voting method works differently from the arithmetical one We can see in these figures that the arithmetical pháp tô-pô chọn một mặt nạ gần nhất với những mặt nạ khác, theo nghĩa là chooses the one that equals to average of all mask pixel-wise regardless the structure of each individual mask, consequently, it causes a final voting result which is unstructured nó có khoảng cách nhỏ nhất tới các mặt nạ khác, và vì vậy nó giống với mặt regarding that the region of salt is often smooth and continuous Meanwhile, the topological chooses the mask which is the most common to the others in the meaning that it has the nạ thực hơn.smallest “distance” to the other masks and it is thus reasonable close to the true mask.

Figure 3 Topological vs Arithmetical voting in salt segmentation—The first example (a) (Masks created by 5 individual segmentors (from 5 folds); (b) Original image; (c) C 1 : Topological voting, C 2 : muối (a) Các

Hình 4.7: Ví dụ thứ nhất: Biểu quyết tô-pô so với biểu quyết số học trong phân đoạn

Arithmetical voting, C 3 : True mask. mặt nạ được tạo bởi 5 bộ phân đoạn riêng lẻ (từ 5 folds); (b) Ảnh gốc; (c) C 1 : Biểu quyết tô-pô,

C 2 : Biểu quyết số học, C 3 : mặt nạ thực 8 of 24

Figure 4 Topological vs Arithmetical voting in salt segmentation -The second Example (a) Masks Hình 4.8: Ví dụ thứ hai: Biểu quyết tô-pô so với biểu quyết số học trong phân đoạn muối (a) Các created by 5 individual segmentors (from 5 folds); ( ) Original image; ( ) C 1 : Topological voting, C 2 :

Arithmetical voting, C : True mask. mặt nạ được tạo bởi 5 bộ phân 3 đoạn riêng lẻ (từ 5 fold); (b) Ảnh gốc; (c) C 1 : Biểu quyết tô-pô,

C 2 : Biểu quyết số học, C 3 : mặt nạ thực.

Figure 4 Topological vs Arithmetical voting in salt segmentation -The second Example (a) Masks created by 5 individual segmentors (from 5 folds); (b) Original image; (c) C 1 : Topological voting, C 2 : Arithmetical voting, C 3 : True mask.

Table 2 Comparison of voting methods on 10 folds for the Salt dataset.

AI Model Hard Jaccard Score Interval for p (N = 1000, c = 90%)

FigureHybrid5.Topolovotingical(thresholdvs.Arithmetical=2) voting0in.8018salt segmentation - The(0third.7802,example0.8218) (a) Masks Hybrid voting (threshold = 3) 0.8027 (0.7811, 0.8226) created by 5 individual segmentors (predictions of the 5 folds); (b) Original image; (c) C1: Topological

Hình 4.9: Ví dụ thứ ba: Biểu quyết tô-pô so với biểu quyết số học trong phân đoạn muối (a) Các Hybrid voting (threshold = 4) 0.7998 (0.7781, 0.8199) voting, C 2 : Arithmetical voting, C 3 : True mask.

Hybrid voting (n selected = 4) mặt nạ được tạo bởi 5 bộ phân đoạn riêng lẻ (từ 5 fold); (b) Ảnh gốc; (c) C 0.8019 1 : Biểu quyết tô-pô,

In order to improve the accuracy, one can increase the number of individual segmen-

C 2 : Biểu quyết số học, C 3 : mặt selected nạ thực tors Hybrid Sowe voting created (n 5 additional = 7) AI models 0.7979 using 5 additional folds, (0.7762, in the 0.8180) same way as before The ensemble results using 10 models, shown in Table 2, are indeed better than the ensemble results using just 5 models.

Table 2 also shows that, for the salt segmentation problem, the topological voting method clearly beats the arithmetical voting method (by more than a full percentage point).

This table also shows the results of the hybrid topological-arithmetical voting method (at different thresholds), which are slightly better than the simple topological voting method.

Figure 6 Topological vs Arithmetical voting in salt segmentation—The fourth example (a) Masks created by 5 individual segmentors (from 5 folds); (b) Original image; (c) C 1 : Topological voting, C 2 :

Hình 4.10: Ví dụ thứ tư: Biểu quyết số học và tô-pô trong phân đoạn muối (a) Các mặt nạ được

Arithmetical voting, C 3 : True mask. tạo bởi 5 bộ phân đoạn riêng lẻ (từ 5 fold); (b) Ảnh gốc; (c) C 1 : Biểu quyết tô-pô, C 2 : Biểu quyết

As a side remark, we note that, if we measure the performance by using the binary số học, C 3 : Mặt nạ thực. accuracy metric instead of the Jaccard score, then the scores will be very high even for completely wrong segmentations, and the topological voting method will give worse results than the arithmetical voting method if we use this binary accuracy metric, see Table 3. Để cải thiện độ chính xác, ta có thể tăng số lượng các phân đoạn riêng lẻ tham gia biểu quyết Vì vậy, ta đã tạo thêm 5 mô hình Al bằng cách sử dụng 5 fold bổ sung, theo cách tương tự như trước Kết quả tổng hợp sử dụng 10 mô hình, được trình bày trong Bảng 4.2 và nó đem lại kết quả tốt hơn so với kết quả tổng hợp chỉ sử dụng 5 mô hình.

Bảng 4.2 cũng chỉ ra rằng, đối với bài toán phân đoạn muối, phương pháp biểu quyết tô-pô tốt hơn phương pháp biểu quyết số học Hơn nữa phương pháp biểu quyết kết hợp số học và tô-pô (ở các ngưỡng khác nhau) tốt hơn so với phương pháp biểu quyết tô-pô đơn giản.

Nếu đo hiệu suất bằng độ chính xác nhị phân (binary accuracy metric) thay vì tỉ lệ Jaccard, thì tỉ số sẽ rất cao ngay cả đối với các phân đoạn hoàn toàn sai Nếu ta sử dụng độ chính xác nhị phân thì sẽ không thấy được sự ưu việt của phương pháp biểu quyết tô-pô so với phương pháp biểu quyết số học, (xem Bảng 4.3).

Bảng 4.2: So sánh các phương pháp biểu quyết trên 10 folds của tập dữ liệu muối.

AI Model Hard Jaccard Score Khoảng của p (N = 1000, c = 90%)

Biểu quyết số học mềm 0,7877 (0,7656; 0,8082)

Biểu quyết tô-pô mềm 0,7996 (0,7779; 0,8197)

Biểu quyết tô-pô cứng 0,8001 (0,7784; 0,8201)

Biểu quyết lai (kết hợp) (threshold = 1,5) 0,8009 (0,7793; 0,8209)

Biểu quyết lai (kết hợp) (threshold = 2) 0,8018 (0.7802; 0,8218)

Biểu quyết lai (kết hợp) (threshold = 3) 0,8027 (0,7811; 0,8226)

Biểu quyết lai (kết hợp) (threshold = 4) 0,7998 (0,7781; 0,8199)

Biểu quyết lai (kết hợp) (n selected = 4) 0,8019 (0,7803; 0,8219)

Biểu quyết lai (kết hợp) (n selected = 5) 0,8000 (0,7783; 0,8200)

Biểu quyết lai (kết hợp) (n selected = 7) 0,7979 (0,7762; 0,8180)

Bảng 4.3: So sánh các phương pháp biểu quyết trên 10 fold của tập dữ liệu muối, sử dụng binary accuracy.

AI Model Binary AccuracyKhoảng của p (N = 1000, c = 90%)

Biểu quyết lai (kết hợp) (threshold = 1,5) 0,9417 (0,9282; 0,9527)

Biểu quyết lai(kết hợp) (threshold = 2) 0,9418 (0,9283; 0,9528)

Biểu quyết lai (kết hợp) (threshold = 3) 0,9421 (0,9287; 0,9531)

4.3.2 Phân đoạn khuôn mặt người

Có một cơ sở dữ liệu nhận dạng khuôn mặt người và da chứa 4000 hình ảnh được tạo bởi S L Phung, T Y Ke, và F H C Tivive được sử dụng trong

[18] để hỗ trợ nghiên cứu về phân đoạn da và khuôn mặt người Bộ dữ liệu này cung cấp nhiều loại sự thật cơ bản (ground-truth) Luận án sử dụng phân đoạn khuôn mặt người của tập dữ liệu này. Để làm cho vấn đề thú vị hơn, ta sẽ ẩn một phần khuôn mặt người trên bức ảnh bằng các hình chữ nhật ngẫu nhiên, để cho máy học phân đoạn đầy đủ khuôn mặt người mặc cho những phần bị ẩn giấu.

Hình 4.11 (e) cho thấy hình ảnh ban đầu mà khuôn mặt bị che đi bởi một hình chữ nhật ngẫu nhiên và Hình 4.11 (f) (hình ngoài cùng bên phải) cho thấy mặt nạ của hình đó.

Bộ dữ liệu 4000 ảnh được chia thành 2 tập con: 1000 ảnh để thử nghiệm (test) và 3000 ảnh để huấn luyện 3000 hình ảnh huấn luyện được chia thành 10 fold, mỗi fold chứa 600 hình ảnh, các fold không trùng nhau: 5 fold đầu tiên là một phân hoạch của tập dữ liệu huấn luyện và 5 fold thứ hai là của một phân hoạch khác.

Các ảnh gốc trong tập dữ liệu có các kích thước khác nhau được tăng cường và thay đổi thành hình ảnh có kích thước 256 × 256 trước khi đưa vào các mô hình mạng tích chập (CNN) Các phép thay đổi được sử dụng để tăng cường hình ảnh là các phép biến đổi thông dụng: xoay ngẫu nhiên, lật, sửa đổi độ sáng, cắt xén, thay đổi kích thước, đệm và thêm nhiễu (random rotation, flipping, brightness modification, cropping, resizing, padding, and noise adding) Ta thêm một hình chữ nhật ngẫu nhiên vào mỗi hình ảnh để che một phần khuôn mặt (mà không thay đổi các mặt nạ).

Kết luận và bình luận cuối chương

Trong Chương 4 các Định nghĩa 4.1 4.2 4.3 trình bày ba phương pháp biểu quyết mới có tính đến cấu trúc của toàn bộ mặt nạ Các kết quả thực nghiệm của ba ví dụ và chứng minh toán học trong Định lý 4.1 đã khẳng định các phương pháp biểu quyết tô-pô mà luận án đưa ra là phù hợp và hiệu quả.

Biểu quyết tô-pô cho kết quả tốt hơn biểu quyết số học chứng tỏ các hình có nghĩa thì có tính chất hình học nhất định, các điểm gắn kết với nhau theo một quy luật nhất định chứ không phải là tập hợp các điểm ngẫu nhiên, rời rạc Trong 3 phiên bản của biểu quyết tô-pô mà luận án đưa ra, NCS chọn biểu quyết tô-pô địa phương là phiên bản thích nhất, vì khi cho s chạy từ 0 đến vô cùng thì ta thu được nhiều biểu quyết từ số học đến tô-pô toàn cục.Khi có nhiều lựa chọn hơn thì nhiều khả năng sẽ chọn được kết quả tốt hơn.

Luận án đã đạt được những kết quả chính như sau:

1 Các bất đẳng thức liên hệ giữa các thước đo độ chính xác AUC ROC, MBA và MWA (Định lý 2.1).

2 Tính tối ưu của máy xác suất thực và tính lồi của đường ROC của máy xác suất thực (Định lý 2.2 ).

3 Hàm mất mát bình phương và hàm cross-entropy là hai hàm mất mát tự nhiên nhất, theo nghĩa các máy làm tối thiểu hóa mất mát theo các hàm mất mát đó chính là các máy xác suất thực (Định lý 3.1).

4 Các hàm mất mát siêu lồi cũng dẫn đến các nghiệm cực tiểu là các máy tối ưu về độ chính xác, các máy đó chính là các biến đổi tham số của các máy xác suất thực (Định lý 3.2).

5 Phương pháp biểu quyết tô-pô và các biến thể của nó (Định nghĩa 4.14.2 4.3) Chứng minh phương pháp biểu quyết tô-pô là hợp lý trong trường hợp một chiều (Định lý 4.1) và cho kết quả tốt hơn phương pháp biểu quyết số học cổ điển bằng minh họa trong (4.2.2).

Tiếp theo các kết quả của Luận án, một số hướng có thể nghiên cứu như sau:

1 Mở rộng kết quả về tính tự nhiên của hàm cross-entropy và hàm mất mát bình phương cho các vấn đề khác như hồi quy (regression) hay phân cụm (clustering).

2 Dựa vào kết quả về tính lồi của hàm mất mát để thiết kế các hàm mất mát mới thích hợp hơn cho các bài toán học máy, cũng như thiết kế những hàm mất mát để nghiên cứu về các bẫy ngẫu nhiên.

3 Sử dụng phương pháp biểu quyết tô-pô trong các bài toán về phân đoạn hình ảnh trong thực tế, nhất là trong y tế và trong trắc địa, để tăng độ chính xác cho các mô hình học máy Tăng cường nghiên cứu phương pháp này về mặt lý thuyết trong trường hợp nhiều chiều.

DANH MỤC CÁC CÔNG TRÌNH CÔNG BỐ CỦA LUẬN ÁN

[T1 ] Le Bich Phuong and Nguyen Tien Zung(2019), On the dynamics of loss functions (Symmetry and Singularity of Geometric Structures and Differ-ential Equations), RIMS Kokyuroku, 2137: pp.102-111.

[T2 ] Nga T T Nguyen and Phuong B Le (2022), Topological Voting Method for Image Segmentation, Journal of Imaging 8, no 2: 16 pp.1-24.

[T3 ] Le Bich Phuong and Nguyen Tien Zung (2022), Accuracy Measures and the Convexity of ROC Curves for Binary Classification Problems, Biomedical and Other Applications of Soft Computing, Springer Nature Switzerland AG 2023 pp.155-163 (Scopus).

[T4 ] Phuong Bich Le and Zung Tien Nguyen (2022), ROC Curves, LossFunc-tions, and Distorted Probabilities in Binary Classification,Mathematics 10, no 9: 1410 pp.1-13 (ISI-Q2).

[1] Sasaki, Y (2007).The truth of the F-measure.

[2] Powers, David M W (2011) Evaluation: From Precision, Recall and F-Measure to ROC, Informedness, Markedness & Correlation Journal of Machine Learning Technologies 2 (1): 37–63.

[3] Chicco D, Jurman G (January 2020) The advantages of the Matthews correlation coefficient (MCC) over F1 score and accuracy in binary classi-fication evaluation BMC Genomics 21 (1): 6-1–6-13. doi:10.1186/s12864-019-6413-7 PMC 6941312 PMID 31898477.

[4] Williams, Christopher K I (2021) The Effect of Class Imbalance on Precision-Recall Curves Neural Computation 33 (4): 853–857.

[5] Gneiting, T.; Vogel, P (2021) Receiver Operating Characteristic

[6] Hang Zhao, Orazio Gallo, Iuri Frosio, Jan Kautz, (2017) Loss Functions for Image Restoration With Neural Networks IEEE Trans. Comput Imag-ing, 3, 47–57.

[7] Abraham, N.; Khan, N.M (2019) A Novel Focal Tversky loss function with improved Attention U-Net for lesion segmentation In Proceedings of the 2019 IEEE 16th International Symposium on Biomedical Imaging (ISBI 2019), Venice, Italy, 8–11 April 2019.

[8] Gosh, A.; Kumar, H.; Sastry, P.S (2017) Robust loss functions under label noise for deep neural networks In Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence (AAAI-17), San Francisco

CA, USA, 4–9 February, 2017 Rev Stat J 5, 19–39

[9] James, G.M (2003) Variance and Bias for General Loss Functions Mach Learn 51, 115–135.

[10] Kervadec, H.; Bouchtiba, J.; Desrosiers, C.; Dolz, E.G.J.; Ayed, I.B.

(2019) Boundary loss for highly unbalanced segmentation arXiv, arXiv:1812.07032.

[11] Lin, T.-Y.; Goyal, P.; Girshick, R.; He, K.; Dollár, P (2017) Focal Loss for Dense Object Detection arXiv, arXiv:1708.02002.

[12] Cucker, F.; Smale, S (2002) On the Mathematical Foundation of Learning Bull Am Math Soc., 39, 1–49.

[13] Ian Goodfellow, Yoshua Bengio, and Aaron Courville (2016) Deep Learn-ing Cambridge, MA: MIT Press, [2017]| Series: Adaptive Computation and machine learning series| Includes bibliographical references and in-dex.

[14] Lee, T.-H (2007) Loss Functions in Time Series Forecasting ;

Publisher: University of California, USA.

[15] Kim, H.;Thiagarajan, J.J; Bremer, P.T (2014) Image segmentation using consensus from hierarchial segmentation ensembles In Proceedings of the 2014 IEEE International Conference on Image Processing (ICIP), Paris, France, 27-30 October 2014; pp.3272-3276.

[16] Franek, L.; Abdala, D.D; Ve-ga Pons, S.; Jiang, X (2010) Image Segmen-tation Fusion Using General Ensemble Clustering Methods.

In Computer Vision -ACCV 2010; Springer: Berlin/ Heidelberg, Germany, 2011; pp.373-384.

[17] Cyganek, B.(2011) One-Class Support Vector Ensembles for Image Seg- mentation and Classification J Math Imaging Vis.2011, 42, 103-117.

[18] Phung, S.L.; Bouzerdoum, A.; Chai, D (2005) Skin segmentation using color pixel classification: analysis and comparison IEEE Trans. Pattern Anal Mach Intell, 27, 148–154.

[19] Udupa, J.K.; Samarasekera, S (1996) Fuzzy Connectedness andObject Definition: Theory, Algorithms, and Applications in ImageSegmentation Graph Model Image Process, 58, 246 - 261.

[20] Beyeler, M (2017) Machine Learning for Open CV: Intelligent Image Processing with Python; Packt Publishing Ltd.: London, UK.

[21] Lam, L.; Suen, S.Y (1997) Application of majority voting to pattern recog-nition: An analysis of its behavior and performance IEEE Trans. Syst Man Cybern Part Syst Humans, 27, 533-568.

[22] Panagiotakis, C (2015) Poit Clusterning via Voting Maximization J Classif, 32, 212 - 240.

[23] Zhou, Z.H (2012) Ensemble Methods: Foundations and Algorithms, 1st ed.; Chapman and Hall/ CRC: Boca Raton, FL, USA.

[24] Jaccard, P (1991) Distribution de la Flore Alpine dans le Bassin des Dranses et dans quelques régions voisines Bull Soc Vaudoise Des Sci Nat, 37 241-272.

[25] Fawcett, T (2006) An Introduction to ROC Analysis Pattern

[26] Hernandez-Orallo, J.; Flach, P.A.; Ferri, C (2012) A unified view of per-formance metrics: Translating threshold choice into expected classification loss J Mach Learn Res 13, 2813–2869.

[27] Lorenzo L Pesce, Charles E Metz, and Kevin S Berbaum, (2010).

On the convexity of ROC curves estimated from radiological test results Acad Radiol., 17, 960–968.e4.

[28] John A Swets, Robyn M Dawes, and John Monahan, (2000). Psychologi-cal science can improve diagnostic decisions Psychol. Sci Public Interest, 1, 1.

[29] Wikipedia page on ROC Available online: https://en.wikipedia.org/ wiki/Receiver_operating_characteristic (Accessed on 16 August 2020).

[30] J¨urgen Braun, (2010) On Kolmogorov’s Superposition Theorem and Its Applications, SVH Verlag, 192 pp.

[31] ISIC 2019 Challenge (Skin cancer classification): https://challenge isic-archive.com/landing/2019/

[32] 24 Evaluation Metrics for Binary Classification Available online: https:// neptune.ai/blog/evaluation-metrics-binary-classification (Ac- cessed on 19 September 2021)

[33] Livieris, I.E.; Kiriakidou, N.; Stavroyiannis, S.; Pintelas, P (2021) An Advanced CNN-LSTM Model for Cryptocurrency Forecasting. Electronics, 10, 287.

[34] Cristianini, N.; Shawe Taylor, J (2000) An Introduction to Support Vector Machines; Cambridge University Press: Cambridge, UK.

[35] Hennig, C.; Kutlukaya, M (2007) Some thoughts on the design of loss functions Revstat - Statistical Journal, 5(1):19-39.

[36]https://en.wikipedia.org/wiki/Hinge_loss

[37] Lapin, M.; Hein, M.; Schiele, B (2016) Analysis and Optimization of Loss Functions for Multiclass, Top-k, and Multilabel Classification. arXiv:1612.03663.

[38] Wu, L.; Tian, F.; Xia, Y.; Fan, Y.; Qin, T.; Lai, J.; Liu, T.-Y (2018). Learning to Teach with Dynamic Loss Functions In Proceedings of the 32nd Conference on Neural Information Processing Systems (NeurIPS

2018), Montréal, QC, Canada, accessed on 12 January 2019.

[39] Sudre, C.H.; Li, W.; Vercauteren, T.; Ourselin, S.; Cardoso, M.J.

(2017) Generalised Dice overlap as a deep learning loss function for highly unbal-anced segmentations Deep Learning in Medical Image Analysis and Mul-timodal Learning for Clinical Decision Support, LNCS 10553; Springer: Berlin/Heidelberg, Germany.

[40] Shen, C.; Roth, H.R.; Oda, H.; Oda, M.; Hayashi, Y.; Misawa, K.; Mori,

K (2018) On the influence of Dice loss function in multi-class organ segmentation of abdominal CT using 3D fully convolutional networks ,arXiv:1801.05912v1.

[41] Rosasco, L.; De Vito, E.; Caponnetto, A.; Piana M.; Verri, A (2004) Are Loss Functions All the Same? Neural Comput, 16, 1063–1076.

[42] Nabila Abraham, Naimul Mefraz Khan, (2018) A Novel Focal Tver-sky loss function with improved Attention U-Net for lesion segmentation, arXiv:1810.07842.

[43] Maksim Lapin, Matthias Hein, and Bernt Schiele, (2016) Analysis and Optimization of Loss Functions for Multiclass, Top-k, and Multilabel Clas-sification, arxiv.

[44] Kuhn, M.; Johnson, K (2013) Applied Predictive Modeling; Springer: Berlin / Heidelberg, Germany.

[45] Niculescu-Mizil, A.; Caruana, R (2005) Predicting good probabilities with supervised learning In Proceedings of the 22nd International Conference on Machine Learning, Bonn, Germany, 7–11 August, 2005; pp 625–632.

[46] Simonyan, K.; Zisserman, A (2014) Very Deep Convolutional

Networks for Large-Scale Image Recognition , arXiv:1409.1556.

[47] Krizhevsky, A CIFAR Dataset (Accessed on 16 August 2020).

[48] Technical Report: Learning Multiple Layers of Features from Tiny Images 2009 (Accessed on 16 August 2012).

[49] Hoel Kervadec, Jihene Bouchtiba, Christian Desrosiers, Eric Granger Jose Dolz, Ismail Ben Ayed, (2019) Boundary loss for highly unbalanced seg-mentation Proceedings of Machine Learning Research,.

[50] Aziz Taha, Abdel (2015) Metrics for evaluating 3D medical image seg-mentation: analysis, selection, and tool BMC Medical Imaging 15 (29): 1–28 doi:10.1186/s12880-015-0068-x.

[51] Bunch, A.G.; Kiforenko, L.; Kraft, D (2017) Rotational SubgroupVoting and Pose Clustering for Robust 3D Object Recognition ; IEEE:Piscataway, NJ, USA; pp 4137-4145

[52] Hu, Y.; Mageras, G.; Grossberg, M (2021) Multi-class medical image segmentation using one-vs-rest graph cuts and majority voting J. Med Imaging, 32, 034003.

[53] Rucklidge, W (1996) Efficient Visual Recognition Using the Hausdorff Distance; Springer: Berlin / Heidelberg, Germany.

[54] Rockafellar, R.; Wets, R (2004) Variational Analysis; Springer:

[55] TGS TGS Salt Identification Challenge (2018) Available online: https: //www.kaggle.com/c/tgssaltidentificationchallenge (Accessed on

[56] Howard, A.G.; Zhu, M.; Chen, B.; Kalenichenko, D.; Wang, W.; Weyand, T.; Andreetto, M.; Adam, H (2017) MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications., arXiv:1704.04861.

[57] Chollet, F Keras (2015) Available online https://github.com/ fchollet/keras (Accessed on 1 January 2022).

[58] Milletari, F.; Navab, N.; Ahmadi, S.A (2016) V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation In Proceed-ings of the 2016 Fourth International Conference on 3D Vision (3DV), Stanford, CA, USA, 25–28 October 2016; pp 565–571.

[59] Tan, M.; Le, Q.V (2019) EfficientNet: Rethinking Model Scaling for Con- volutional Neural Networks., arXiv: 1905.11946.

[60] Rouchdy, Y.; Cohen, L.D (2013) Geodesic voting methods: Overview, ex-tensions and application to blood vessel segmentation . Comput Methods Biomech Biomed Eng Imaging Vis 1, 79–88.

[61] Malladi, R.; Sethian, J.A.; Vemuri, B.C (1995) Shape modeling with front propagation: A level set approach IEEE Trans Pattern Anal. Mach Intell 17, 158 - 175.

[62] Chan, T.F.; Vese, L.A (2001) Active contours without edges EEE Trans Image Process, 10, 266-277.

Ngày đăng: 10/04/2023, 12:48

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w