Phân loại dữ liệu một lớp và ứng dụng trong bài toán phát hiện bất thường

Tài liệu nghiên cứu Phân loại dữ liệu một lớp và ứng dụng trong bài toán phát hiện bất thường, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên sâu về toán học.

Chuyên ngành

Khoa học Máy tính

Người đăng

Ẩn danh

Thể loại

luận văn thạc sĩ

2023

74
4
0

Phí lưu trữ

30 Point

Tóm tắt

I. Tổng Quan Về Phân Loại Dữ Liệu Một Lớp One Class

Phân loại dữ liệu một lớp (One-Class Classification) là một nhánh của bài toán phân loại, thuộc lớp học có giám sát. Nghiên cứu về lĩnh vực này ngày càng tăng do khả năng ứng dụng thực tiễn cao. Bài toán này tập trung vào việc xây dựng mô hình chỉ dựa trên dữ liệu của một lớp duy nhất, khác với các bài toán phân loại truyền thống yêu cầu dữ liệu từ nhiều lớp. Thách thức lớn nhất là làm sao để mô hình có thể nhận biết và phân biệt được các dữ liệu bất thường (outliers) mà không cần được huấn luyện trực tiếp trên chúng. Các phương pháp học sâu đang được quan tâm và phát triển mạnh mẽ trong lĩnh vực này, hứa hẹn mang lại những kết quả đột phá. Theo nghiên cứu, các phương pháp dựa trên học sâu được quan tâm hơn hẳn từ năm 2017. Học sâu đã cho thấy được kết quả rất ấn tượng và luôn dẫn đầu về độ chính xác cho các bài toán phân loại về xử lý hình ảnh và ngôn ngữ tự nhiên.

1.1. Ứng Dụng Thực Tế Của One Class Classification

Trong thực tế, không phải lúc nào cũng có đủ dữ liệu cho tất cả các lớp. Nhiều lĩnh vực công nghiệp chỉ có dữ liệu về sản phẩm hoàn thiện. Việc xác định bất thường trong sản phẩm trở nên khó khăn. One-Class Classification giải quyết vấn đề này bằng cách chỉ yêu cầu dữ liệu của một lớp để huấn luyện mô hình. Mô hình sau đó có thể phát hiện ra các dữ liệu bất thường so với lớp đã được học. Điều này rất hữu ích trong các ứng dụng như kiểm tra chất lượng sản phẩm, phát hiện gian lận, và giám sát hệ thống.

1.2. Thách Thức Trong Phát Hiện Bất Thường Một Lớp

Thách thức lớn nhất của phát hiện bất thường một lớp là mô hình không được huấn luyện trực tiếp trên dữ liệu bất thường. Mô hình cần học cách nhận biết các đặc trưng của dữ liệu bình thường và xác định bất kỳ điểm nào khác biệt đáng kể so với các đặc trưng này là bất thường. Điều này đòi hỏi các thuật toán phải có khả năng khái quát hóa tốt và không bị overfitting trên dữ liệu bình thường. Ngoài ra, việc giải thích kết quả từ mô hình cũng là một thách thức, đặc biệt đối với các mô hình học sâu.

II. Bài Toán Phát Hiện Bất Thường Tổng Quan Thách Thức

Trong kỷ nguyên số, việc xử lý dữ liệu không chỉ dừng lại ở việc trích xuất thông tin mà còn mở rộng sang các bài toán phức tạp như nhận dạng hình ảnh, âm thanh, phân loại thuộc tính và phát hiện bất thường. Các thuật toán phân loại hiện đại thường đòi hỏi lượng lớn dữ liệu được gán nhãn sẵn để huấn luyện. Tuy nhiên, trong nhiều trường hợp, dữ liệu chỉ thuộc về một lớp duy nhất, tạo ra thách thức lớn cho việc phát hiện bất thường. Bài toán phân loại nhị phân (binary classification) thường được sử dụng rộng rãi, nhưng lại gặp khó khăn khi áp dụng cho phân loại hình ảnh, đặc biệt khi số lượng trường hợp không chứa đối tượng quan tâm là vô cùng lớn.

2.1. Hạn Chế Của Phân Loại Nhị Phân Trong Phát Hiện Bất Thường

Khi áp dụng phân loại nhị phân cho bài toán phát hiện bất thường trong hình ảnh, một vấn đề nảy sinh là số lượng trường hợp không chứa đối tượng quan tâm (ví dụ: xe hơi) là vô cùng lớn. Việc thu thập và gán nhãn cho tất cả các trường hợp này là không khả thi. Do đó, cần có một phương pháp tiếp cận khác, chỉ dựa trên dữ liệu của một lớp (ví dụ: hình ảnh xe hơi) để huấn luyện mô hình và có thể xác định liệu một hình ảnh mới có chứa xe hơi hay không.

2.2. Yêu Cầu Dữ Liệu Trong Bài Toán Phân Loại

Đại đa số các thuật toán nói chung và thuật toán về phân loại nói riêng hiện tại cần một lượng lớn dữ liệu đã được gán nhãn sẵn. Mục đích là để dạy cho các mô hình có thể học được các đặc trưng từ dữ liệu đó, để làm sao mà khi có dữ liệu mới vào thì nó sẽ phân loại đúng phân lớp mà ta cần. Bài toàn phân loại nhị phân (binary classification) được cho là miền nghiên cứu rộng rãi nhất của phân nhóm học mấy có giám sát, ít nhất là với việc ứng dụng của nó đối với các loại dữ liệu không phải là hình ảnh.

III. Các Phương Pháp Tiếp Cận Phát Hiện Bất Thường One Class

Có nhiều phương pháp tiếp cận để giải quyết bài toán phát hiện bất thường với dữ liệu một lớp. Các phương pháp truyền thống thường dựa trên việc xây dựng một mô hình mô tả dữ liệu bình thường và xác định các điểm dữ liệu nằm ngoài mô hình này là bất thường. Các phương pháp hiện đại hơn sử dụng học sâu để tự động học các đặc trưng của dữ liệu bình thường và phát hiện các điểm khác biệt. Một số thuật toán phổ biến bao gồm One-Class Support Vector Machine (OC-SVM), Autoencoder, Isolation Forest, và Gaussian Mixture Model (GMM).

3.1. One Class Support Vector Machine OC SVM

OC-SVM là một thuật toán phổ biến cho phân loại dữ liệu một lớp. Nó tìm cách xây dựng một siêu phẳng (hyperplane) phân tách dữ liệu bình thường khỏi gốc tọa độ trong không gian đặc trưng. Các điểm dữ liệu nằm ngoài siêu phẳng này được coi là bất thường. OC-SVM có thể sử dụng các kernel khác nhau để ánh xạ dữ liệu vào không gian đặc trưng phù hợp.

3.2. Autoencoder và Mạng Nơ ron Tự Mã Hóa

Autoencoder là một loại mạng nơ-ron được sử dụng để học các biểu diễn nén của dữ liệu. Trong bài toán phát hiện bất thường, Autoencoder được huấn luyện trên dữ liệu bình thường. Khi một điểm dữ liệu bất thường được đưa vào, Autoencoder sẽ không thể tái tạo lại nó một cách chính xác, và sai số tái tạo sẽ cao. Sai số tái tạo này có thể được sử dụng để phát hiện bất thường.

3.3. Isolation Forest Phát Hiện Bất Thường Dựa Trên Cây

Isolation Forest là một thuật toán dựa trên cây quyết định để phát hiện bất thường. Nó xây dựng một tập hợp các cây quyết định ngẫu nhiên và phân vùng không gian dữ liệu. Các điểm dữ liệu bất thường thường nằm ở các vùng thưa thớt và dễ bị cô lập hơn so với dữ liệu bình thường. Do đó, chúng sẽ có đường dẫn ngắn hơn trong cây quyết định.

IV. Ứng Dụng Học Sâu Trong Phát Hiện Bất Thường Hình Ảnh

Các phương pháp dựa trên học sâu đang ngày càng được ưa chuộng trong phát hiện bất thường hình ảnh. Các mô hình như Autoencoder, GAN (Generative Adversarial Networks), và các biến thể của chúng đã cho thấy hiệu quả vượt trội trong việc học các đặc trưng phức tạp của dữ liệu bình thường và phát hiện các bất thường tinh vi. Các mô hình này có thể tự động học các đặc trưng phù hợp từ dữ liệu, giảm thiểu sự can thiệp của con người và cải thiện độ chính xác.

4.1. Sử Dụng Mạng GAN Generative Adversarial Networks

GAN bao gồm hai mạng: một mạng sinh (generator) và một mạng phân biệt (discriminator). Mạng sinh tạo ra các mẫu dữ liệu giả, và mạng phân biệt cố gắng phân biệt giữa các mẫu thật và giả. Trong bài toán phát hiện bất thường, GAN được huấn luyện trên dữ liệu bình thường. Khi một điểm dữ liệu bất thường được đưa vào, mạng phân biệt sẽ dễ dàng nhận ra nó là giả, và điểm số phân biệt sẽ thấp.

4.2. Mạng Nơ ron Tích Chập CNN Cho Phát Hiện Bất Thường

Mạng nơ-ron tích chập (CNN) là một kiến trúc mạng nơ-ron đặc biệt hiệu quả trong xử lý hình ảnh. CNN có thể học các đặc trưng không gian của hình ảnh và phát hiện các bất thường dựa trên các đặc trưng này. CNN có thể được sử dụng kết hợp với các phương pháp khác như Autoencoder hoặc GAN để cải thiện hiệu quả phát hiện bất thường.

V. Đánh Giá Hiệu Suất Mô Hình Phát Hiện Bất Thường One Class

Việc đánh giá hiệu suất của mô hình phát hiện bất thường là rất quan trọng. Các độ đo phổ biến bao gồm độ chính xác (accuracy), độ đo F1 (F1-score), tỷ lệ dương tính giả (False Positive Rate - FPR), tỷ lệ âm tính giả (False Negative Rate - FNR), và diện tích dưới đường cong ROC (AUC-ROC). Các độ đo này giúp đánh giá khả năng của mô hình trong việc phân biệt giữa dữ liệu bình thườngdữ liệu bất thường.

5.1. Độ Đo AUROC Area Under the ROC Curve

AUROC là một độ đo phổ biến để đánh giá hiệu suất của mô hình phát hiện bất thường. Nó thể hiện khả năng của mô hình trong việc phân biệt giữa dữ liệu bình thườngdữ liệu bất thường ở các ngưỡng khác nhau. AUROC có giá trị từ 0 đến 1, với giá trị 1 thể hiện mô hình hoàn hảo.

5.2. Tỷ Lệ Dương Tính Giả False Positive Rate FPR

FPR là tỷ lệ các điểm dữ liệu bình thường bị mô hình xác định là bất thường. FPR càng thấp thì mô hình càng tốt. Việc giảm FPR là rất quan trọng trong các ứng dụng thực tế, vì nó giúp giảm thiểu các cảnh báo sai.

VI. Kết Luận Hướng Phát Triển Phân Loại Dữ Liệu One Class

Phân loại dữ liệu một lớpphát hiện bất thường là một lĩnh vực nghiên cứu đầy tiềm năng với nhiều ứng dụng thực tế. Các phương pháp dựa trên học sâu đang ngày càng được phát triển và cải tiến, hứa hẹn mang lại những kết quả đột phá trong tương lai. Các hướng nghiên cứu tiềm năng bao gồm phát triển các mô hình có khả năng giải thích kết quả, cải thiện độ chính xác và giảm thiểu tỷ lệ dương tính giả.

6.1. Ứng Dụng Tiềm Năng Trong Tương Lai

Các ứng dụng tiềm năng của phân loại dữ liệu một lớpphát hiện bất thường trong tương lai rất đa dạng, bao gồm ứng dụng trong y tế (phát hiện bệnh hiếm gặp), ứng dụng trong tài chính (phát hiện gian lận), ứng dụng trong an ninh mạng (phát hiện xâm nhập), và ứng dụng trong công nghiệp (kiểm tra chất lượng sản phẩm).

6.2. Hướng Nghiên Cứu Mới Cho Phát Hiện Bất Thường

Các hướng nghiên cứu mới trong phát hiện bất thường bao gồm phát triển các mô hình có khả năng học từ dữ liệu bán giám sát (semi-supervised learning), kết hợp thông tin từ nhiều nguồn khác nhau, và phát triển các phương pháp phát hiện bất thường trực tuyến (online anomaly detection).

06/06/2025

Trích đoạn nội dung tài liệu

MỞ ĐẦU Phân loại dữ liệu một lớp (one-class classification) là một nhánh thuộc lớp bài toán phân loại (classification), học có giám sát. Ngày càng nhiều nghiên cứu về nhánh bài toán này vì khả năng áp dụng thực tiễn cao. Có nhiều cách tiếp cận và bài toán sinh ra từ lớp bài toán này. Các khảo sát mới đây đã cho một bức tranh tóm tắt các các nghiên cứu nổi bật về nhóm bài toán này như Hình 1.1: Các mốc nghiên cứu về one-class classification qua thời gian [1] Trên thực tế hiện nay, không nhiều bài toán có đủ dữ liệu cho toàn bộ các lớp.

Một số lĩnh vực đặc thù trong công nghiệp còn chỉ có dữ liệu cho sản phẩm hoàn thiện mà họ đã sản xuất ra, làm sao với các ảnh chụp mà cho biết được sự bất thường ở sản phẩm nào là điều rất khó khăn. Hướng nghiên cứu về one-class classification sẽ giải quyết được vấn đề này. One-class classification là bài toán mà dữ liệu yêu cầu ban đầu để huấn luyện mô hình chỉ cần tập trung vào 1 lớp. Ngày càng nhiều nghiên cứu về 2 nhánh bài toán phân loại dữ liệu một lớp thuộc lớp bài toán phân lớp này vì khả năng áp dụng thực tiễn cao.

Có nhiều cách tiếp cận và bài toán sinh ra từ lớp bài toán này. Trong những năm gần đây (từ 2017), các phương pháp dựa trên học sâu được quan tâm hơn hẳn. Học sâu đã cho thấy được kết quả rất ấn tượng và luôn dẫn đầu về độ chính xác cho các bài toán phân loại về xử lý hình ảnh và ngôn ngữ tự nhiên. Tuy nhiên, kết quả cho các bài toán one-class classification vẫn còn hạn chế.

Đã có nhiều nghiên cứu sử dụng học sâu để giải quyết lớp bài toán này và cho được các kết quả tiềm năng nhưng vẫn còn một số hạn chế cần cải thiện thêm. Hạn chế đầu tiên là độ chính xác chưa thực sự cao như các lớp bài toán đầy đủ nhãn và dữ liệu cho mỗi lớp. Hạn chế nữa là cũng như các tất cả mạng học sâu nói chung thì việc giải thích kết quả đưa ra từ học sâu là rất khó khăn. Giải thích được kết quả từ mô hình là rất cần thiết trong thực tế vì đảm bảo được tính an toàn, bảo mật và tối ưu hiệu năng.

Do vậy, phần luận văn sắp tới sẽ được định hướng nghiên cứu về áp dụng học sâu vào bài toán one-class classification thiên về hướng giải thích được kết quả. Bên cạnh đó, luận văn cũng sẽ ứng dụng giải thuật đã nghiên cứu vào một ứng dụng để chứng minh tính thực tiễn của nó. Đóng góp chính của luận văn có thể được liệt kê như sau: • Tổng hợp các phương pháp đã có cho bài toán phát hiện bất thường với dữ liệu một lớp đã và đang được áp dụng. • Đề xuất hướng xử lý có tính khả thi cao, hiệu quả đối với dạng bài toán này trong thực tế • So sánh với các phương pháp trước đây trên các tập dữ liệu chuẩn thực tế thì mô hình được đề xuất đều cho kết quả tốt hơn hẳn.

Hai tập dữ liệu nổi tiếng thực tiễn hiện tại đang được dùng để đánh giá bài toán này là MVTec AD [4] và BeanTech AD [5]. 3 Chương 2 GIỚI THIỆU 2.1 Tổng quan về bài toán Trong thời đại hiện nay, việc xử lý dữ liệu không chỉ đơn thuần là để làm báo cáo, trích lọc thông tin mà còn là các bài toán yêu cầu cao về hiện thực các bài toán về nhận dạng hình ảnh, âm thanh, phân loại thuộc tính, phát hiện bất thường, v. thay thế hoặc thậm chí cần tốt hơn con người. Đại đa số các thuật toán nói chung và thuận toán về phân loại nói riêng hiện tại cần một lượng lớn dữ liệu đã được gán nhãn sẵn.

Mục đích là để dạy cho các mô hình có thể học được các đặc trưng từ dữ liệu đó, để làm sao mà khi có dữ liệu mới vào thì nó sẽ phân loại đúng phân lớp mà ta cần. Bài toàn phân loại nhị phân (binary classification) được cho là miền nghiên cứu rộng rãi nhất của phân nhóm học mấy có giám sát, ít nhất là với việc ứng dụng của nó đối với các loại dữ liệu không phải là hình ảnh. Cho một ví dụ, trong các mô hình phát hiện thư rác hoặc độc hại, dữ liệu cho mỗi lớp được giới hạn ở mức khá, mỗi trường hợp cụ thể đều chắc chắn là một biến thể của thư điện tử. Tùy nhiên, một vấn đề thú vị được mở ra nếu ta cố gắng ứng dụng các kinh nghiệm có được này với phân loại hình ảnh.

Ta có thể có hàng nghìn, hàng triệu tấm hình về xe hơi mà ta muốn mô hình có thể nhận dạng được vị trí của chúng, nhưng nếu trường hợp tấm hình không có xe hơi thì sao? Không quá khó để ta nhân ra rằng là không gióng như dữ liệu về bài toán thư điện tử rác, số lượng trường hợp mà không chứa xe hơi là vô cùng lớn, gần như là vô 4 tận. Do vậy mà ta cần giải quyết bài toán là chỉ với những dữ liệu về xe hơi mà ta có, ta có thể huấn luyện mô hình để nó biết rằng dữ liệu đó đang có chứa xe hơi hay là không. Luôn nhớ điều kiện là ta chỉ có 1 lớp dữ liệu, cụ thể ở trường hợp này thì ta không có dữ liệu về những trường hợp không có xe hơi khác, nó là vô vàng trường hợp, chứa núi, rừng, sông biển, xe đạp, xe máy, máy bay, v. Thách thức này chúng ta sẽ cùng thảo luận cách xử lý trong bài nghiên cứu này.2 Học máy và bài toán phân loại dữ liệu Như chúng ta đã biết, Học Máy (Machine Learning) là một nhánh của lĩnh vực trí tuệ nhân tạo (AI) và khoa học dữ liệu.

Học Máy tập trung sử dụng dữ liệu và các giải thuật để bắt chước cách học của con người, làm sao để mà dần nâng cao độ chính xác của mô hình bằng hoặc thậm chí vượt hơn khả năng của con người. Học máy bao gồm 3 nhánh lớn: • Supervised learning (học có giám sát): ở nhánh này ta sẽ cần có dữ liệu đầu vào được đánh nhãn sẵn thuộc các lớp cụ thể. • Unsupervised learning (học không giám sát): khác với học có giám sát, nhánh này dữ liệu sẽ hoàn toàn không được gán nhãn, mô hình sẽ dùng thuật toán, tiêu chí phù hợp để cho ra kết quả đầu ra. • Semi-supervised learning (học bán giám sát): Cuối cùng, đây là nhánh ’lai’ giữa 2 nhánh bên trên, ta sẽ có bộ dữ liệu gồm cả đã gán nhãn và chưa gán nhãn, mà thông thường số lượng nhãn được gãn sẵn sẽ ít hơn.

Phân loại dữ liệu và hồi quy là hai nhánh con lớn của Supervised learning. Các giải thuật dùng trong phân loại dữ liệu được dùng để xác định lớp (class) mà các mẫu quan sát mới thuộc về trên cơ sở các đặc trưng đã biết từ tập huấn luyện. Trong phân loại dữ liệu, mô hình được học từ tập dữ liệu nhất định sau đó mới phân loại dữ liệu mới vào số lớp hoặc nhóm phù hợp. Chẳng hạn như bài toán đánh giá một email cụ thể có là spam hay không, ta có thể đánh số là 0 và 1 tương ứng cho là có spam và 5 không spam.

Không giống như hồi quy (đầu ra là một số thực), đầu ra của Phân loại dữ liệu là một lớp cụ thể (như 0 hoặc 1 ở ví dụ trước đó). Phân loại dữ liệu một lớp là một trường hợp khác của phân loại dữ liệu, lúc này mặc dù dữ liệu ta có được là toàn bộ đều được gán nhãn nhưng nó chỉ hoàn toàn thuộc về một lớp hoặc nhóm nào đó. Lấy ví dụ như phân loại bài toán có hay không vết dơ trên mặt bàn. Dữ liệu ta có được sẽ là toàn bộ hình ảnh là mặt bàn rất đẹp và được xác định là đều không có vết dơ nào cả.

Nhiệm vụ của chúng ta sẽ là giúp cho máy học biết được đây là hình ảnh của bàn bình thường, còn nếu chứa thêm vết nào lạ trên đó đều là có vết dơ cả. Các phương pháp phân loại dữ liệu truyền thống (như Decision Tree, SVM, KNN, v.) đều yêu cầu có dữ liệu ở cả bên mặt bàn bị dơ. Do đó cách tiếp cận trước đây là cố gắng thu thập, tạo thêm hình ảnh các mặt bàn bị dơ càng nhiều càng tốt. Tuy vậy thì độ chính xác khi kiểm thử trên dữ liệu mặt bàn bình thường mới và bị dơ mới thì cho độ chính xác không cao.

Lý do chính đến từ việc ta không thể thu thập, tạo được hết tất cả các dạng mặt bàn bị dơ, có rất nhiều khía cạnh làm dơ mặt bàn (có thể cả bị thủng, bị lỗi màu, v. Do vậy từ những năm 2017, phương pháp dựa trên học sâu (Deep Learning, Mạng nơ-ron nhân tạo) được nghiên cứu nhiều hơn về sự nỗi trội của các giải thuật này (tham khảo thêm Hình 1.3 Mục tiêu và phạm vi nghiên cứu Mục tiêu nghiên cứu Đề tài tập trung nghiên cứu ba phần chính là lớp bài toán one-class classification (phân loại một lớp), mạng học sâu và ứng dụng vào bài toán phát hiện bất thường. Đề tài này mang tính ứng dụng cao vì: • Dữ liệu thực tế không được gán nhãn đầy đủ các lớp và đa số chỉ có được dữ liệu nhãn bình thường, không có hoặc có rất ít dữ liệu cho nhóm bất thường. • Cho được kết quả đầu ra xác định được vị trí bất thường, đây cũng là điểm mới vì không phải giải thuật nào cũng cho được hình ảnh trực quan như vậy.

6 Giới hạn nghiên cứu Đề tài tập trung nghiên cứu lớp bài toán one-class classification, áp dụng các mạng học sâu có thể giải thích được kết quả vào các bài toán phát hiện bất thường trong lĩnh vực xử lý hình ảnh. Trong giai đoạn luận văn, đề tài sẽ điều chỉnh thử nghiệm với nhiều tham số khác nhau để đạt độ chính xác tốt nhất với bài toán phát hiện bất thường. Các số liệu được thu thập từ năm 2010 và các kĩ thuật được cải tiến từ 2021. Thực nghiệm Triển khai mô hình với sự hỗ trợ từ các thư viện Pytorch, TensorFlow, Pandas, v.

Các nghiên cứu và ứng dụng của đề tài này đều mới xuất hiện và nghiên cứu trong những năm gần đây cho thấy sự quan tâm, ý nghĩa và tính thực tiễn của đề tài rất cao.4 Các nền tảng Mạng nơ-ron nhân tạo Các thuật toán về mạng nơ-ron (neural networks) thường được biết đến là mạng nơ- ron nhân tạo (artificial neural networks - ANNs) hoặc các mạng nơ-ron được mô phỏng (similated neural networks - SNNs).

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ