Minh họa kernel OCSVM: Biến đổi không gian đặc trưng X sang F

Một phần của tài liệu Phát hiện dữ liệu ngoại lai bằng mô hình svm một lớp (Trang 55 - 62)

5 ỨNG DỤNG PHÁT HIỆN DỮ LIỆU NGOẠI LAI

2.9 Minh họa kernel OCSVM: Biến đổi không gian đặc trưng X sang F

Hàm dự đoán

Sau khi xác định được những vector hỗ trợ dễ dàng tính tốn được giá trị tối ưu w∗ và ρ∗. Từ [2.29],w∗ được tính như sau:

w∗ =X

i

αiφ(xi) (2.37)

Sử dụng bất kỳ điểm vector hỗ trợ nào đó để thực hiện tính giá trị ρ∗:

ρ∗ =hw

,xiiF =X

j

αjK(xi,xj) (2.38)

Lúc này, hàm phân loại sẽ có dạng như sau:

f(x) =ρ

− hw, φ(x)iF =ρ

−X

i

αiK(x,xi) (2.39)

Nếu f(x)>0 thì mẫu cần được xác định là nằm dưới bên so với siêu phẳng, tức là điểm ngoại lai và ngược lại.

Mở rộng

Ngoài hai cách tiếp cận kinh điển ở trên, Manevitz và Yousef[10] cũng đề xuất một phiên bản khác của SVM một lớp dựa trên việc xác định dữ liệu ngoại lai

2.3. Thảo luận và đánh giá

như là đại diện của lớp thứ hai. Ý tưởng của phương pháp này là hoạt động đầu tiên trong không gian đặc trưng, và giả định rằng không chỉ điểm gốc là lớp thứ hai, mà tất cả các điểm dữ liệu đủ gần với điểm gốc đều được coi là nhiễu hoặc ngoại lệ. Các vectơ nằm trên các không gian con tiêu chuẩn có kích thước nhỏ (tức là trục, mặt,...) được coi là ngoại lệ. Họ đánh giá kết quả của mình trên tập dữ liệu của Reuters và kết quả kém hơn so với thuật toán OCSVM do Scholkopf[10] và cộng sự trình bày.

Các bộ phân loại thường được kết hợp để đưa ra quyết định kết hợp bằng cách lấy trung bình các xác suất ước tính sau. Định lý Bayes được sử dụng cho sự kết hợp của các bộ phân loại khác nhau, theo giả định là độc lập, một quy tắc nhân kết hợp có thể được sử dụng để tạo tập hợp bộ phân loại. Kết quả đầu ra của các bộ phân loại riêng lẻ được nhân lên và sau đó được chuẩn hóa. Trong OCC, vì thơng tin về dữ liệu khơng tích cực khơng có sẵn, nên trong hầu hết các trường hợp, các giá trị ngoại lệ được giả định là phân bố đồng đều và xác suất hậu nghiệm có thể được ước tính. Tax đề cập rằng trong một số phương pháp OCC, khoảng cách được ước tính thay vì xác suất cho một tập hợp bộ phân loại lớp. Tax nhận thấy rằng việc sử dụng các cụm từ tổng hợp trong OCC cải thiện hiệu suất, đặc biệt khi quy tắc sản phẩm được sử dụng để kết hợp các ước tính xác suất.

Yu[10] đề xuất một thuật tốn OCC với SVM sử dụng dữ liệu tích cực và khơng được gắn nhãn, và khơng có dữ liệu phủ định được gắn nhãn, đồng thời thảo luận một số hạn chế của các thuật toán OCC khác. Yu nhận xét rằng trong trường hợp khơng có các ví dụ tiêu cực, OCSVM yêu cầu lượng dữ liệu đào tạo tích cực lớn hơn nhiều để tạo ra ranh giới lớp chính xác.

2.3 Thảo luận và đánh giá 2.3.1 Ưu điểm

Cả hai cách tiếp cận trên đều có một số tính chất khá đặc biệt. Đầu tiên, chúng đều là bài toán tối ưu lồi vì thế mà sẽ có nghiệm tối ưu tồn cục. Việc kết hợp kernel cho phép việc biến đổi phi tuyến và vẫn giữ được tính phi tuyến trong tập dữ liệu. Trong trường hợp sử dụng kernel Gaussian, SVDD và OCSVM gần như tương đồng nhau trong việc ước lượng mật độ dữ liệu.

2.3. Thảo luận và đánh giá

2.3.2 Nhược điểm

Mặc khác, một trong những trở ngại lớn nhất của việc sử dụng phương pháp kernel chính là tính mở rộng của dữ liệu (large scale) và sự đa dạng của dữ liệu (high dimensional). Sẽ là cực kỳ thách thức đối với bài tốn có dạng dữ liệu dạng học liên tục (online learning). Hơn nữa, việc lưu trữ các vector hỗ trợ cho việc dự đoán, gây ra vấn đề về độ phức tạp khơng gian cho bài tốn. Ngồi ra, việc sử dụng kernel cho phép biến đổi dữ liệu cũng mang tính cố định, khơng có q trình học biến đổi diễn ra ở đây. Do đó, sau khi tìm hiểu một số bài báo về hướng xử lý đối với trường hợp này, chúng tôi đa tham khảo và đề xuất một hướng cải tiến để phần nào giải quyết được những trở ngại ở trên. Ý tưởng đơn giản là thay vì sử dụng một kernel cố định, chúng tôi sẽ sử dụng một Autoencoder kết hợp với mơ hình phát hiện ngoại lai. Autoencoder ở đây cụ thể là một mạng nơ-ron. Toàn bộ nội dung và kiến trúc mơ hình sẽ được trình bày ở chương tiếp theo.

3 MƠ HÌNH SVM MỘT LỚP CẢI TIẾN

3.1 Khó khăn trong bài tốn với dữ liệu nhiều chiều

Với sự phát triển vô cùng mạnh mẽ của thời đại, mà dữ liệu của chúng ta cũng ngày càng đa dạng và phức tạp hơn. Số thông tin, trường dữ liệu cũng tăng lên. Từ đấy, mơ hình của chúng ta cũng phải làm việc với những tập dữ liệu có số chiều lớn (high-dimensional). Và đó cũng là thách thức cũng như khó khăn chính của bài tốn phát hiện ngoại lai.

Những năm trước đây đã có nhiều nỗ lực trong việc sử dụng các kỹ thuật học máy cổ điển cho bài toán phát hiện bất thường có giám sát và khơng giám sát như: phân tích thành phần chính (PCA), OCSVM, phân nhóm k-mean và mơ hình hỗn hợp Gaussian (GMM),... Mặc dù vậy, những phương pháp này thường không hiệu quả khi được sử dụng trong các bộ dữ liệu có số chiều cao do độ phức tạp tính tốn lớn. Gần đây ngày càng có nhiều sự quan tâm đến việc giải quyết vấn đề này bằng phương pháp sử dụng các kỹ thuật học sâu. Tuy nhiên, hầu hết các giải pháp trước đây vẫn chủ yếu dựa trên việc huấn luyện hai giai đoạn riêng biệt, trong đó khơng gian chiều thấp lần đầu tiên được học thơng qua một mơ hình học sâu để giảm kích thước của khơng gian đầu vào và sau đó được áp dụng riêng biệt không gian đặc trưng đã học cho một mơ hình phân loại một lớp thơng thường.

3.2. Đề xuất cải tiến

3.2 Đề xuất cải tiến

Như đã đề cập ở Mục [2.2], SVDD và cả OCSVM đều không làm việc tốt trên tập dữ liệu lớn, nhiều chiều (high-dimensional). Vấn đề high-dimensional luôn được xem là một trong những thử thách rất lớn đối với bài toán phát hiện ngoại lai. Từ đấy, để xây dựng một hệ thống phát hiện ngoại lai cho tập dữ liệu đầu vào có số chiều lớn, chúng ta cần phải có những hướng tiếp cận khác. Có khá nhiều cách giúp ta thu giảm số chiều như PCA, LDA, Autoencoder,... Và trong đề tài luận văn lần này, chúng tơi hướng đến một mơ hình cải tiến bằng cách áp dụng kết hợp đồng thời kỹ thuật học sâu cụ thể kết hợp một Autoencoder để giải quyết vấn đề số chiều dữ liệu lớn đã trình bày ở trên. Vậy Autoencoder là gì? Và tại sao chúng tơi chọn Autoencoder? Chúng tơi sẽ trình bày ở phần tiếp theo.

3.2.1 Autoencoder

Trước hết, chúng tôi đề cập sơ qua về bối cảnh sử dụng học sâu trong bài tốn phát hiện ngoại lai. Thơng thường thì những mơ hình học sâu sẽ khơng được chú trọng nhiều trong các dạng bài tốn phát hiện ngoại lai, những kiểu học khơng giám sát hay bài toán phân loại một lớp, mà chúng sẽ thực hiện việc kết hợp và xử lý ở một khía cạnh nào đó. Tức, một bài tốn sẽ được chia thành nhiều thành phần nhỏ, và học sâu sẽ được kết hợp để xử lý những mơ hình nhỏ ấy một cách độc lập, để biến đổi dữ liệu sao cho đầu ra phù hợp với nhiệm vụ phát hiện ngoại lai. Có thể hình dung cách tiếp cận trên như kỹ thuật trích xuất đặc trưng rồi sau đó áp dụng vào những mơ hình phân loại một lớp để học.

Deep Autoencoder

Autoencoder là một mạng nơ-ron gồm có ba phần chính, đó là: bộ mã hóa (encoder), mã (latent space) và bộ giải mã (decoder). Khối mã hóa sẽ nhận đầu vào là vector biểu diễn dữ liệu n chiều, đầu ra là vector trong không gian ẩn m chiều (latent space). Thơng thường thì m < n, do đó Autoencoder giúp làm giảm số chiều của dữ liệu. Bộ giải mã nhận đầu vào là vector m chiều bên trên và cố gắng khơi phục là dữ liệu ban đầu. Có thể hình dung việc này giống như chúng ta nén một tín hiệu và khơi phục lại tín hiệu đó. Để khơi phục lại được tín hiệu gốc, biểu diễn ẩn phải học được cách lưu giữ các thông tin quan trọng của tín hiệu đầu

3.2. Đề xuất cải tiến

vào. Việc tính tốn trên khơng gian dữ liệu ít chiều sẽ giúp việc tính tốn hiệu quả hơn. Kiến trúc của Autoencoder như Hình 3.1.

Hình 3.1: Kiến trúc của Autoencoder[4]

Sử dụng Autoencoder trong phát hiện ngoại lai

Việc huấn luyện Autoencoder trên lớp dữ liệu mục tiêu giúp mạng nơ-ron có khả năng học được khả năng trích xuất đặc trưng của lớp ấy, hàm lỗi của Autoencoder có thể được dùng để đánh giá những điểm kiểm tra một cách trực tiếp, ví dụ như hàm lỗi dưới đây:

s(x) =kxφ(x;W∗)k2

(3.1) với W* là trọng số đã được huấn luyện. Giá trị lỗi càng lớn, thì càng ít số điểm được kiểm tra nằm trong lớp mục tiêu. Ngoài ra, φ(x, W∗) chính là thể hiện của mỗi điểm đầu vào trong không gian X và cũng là đầu vào đối với mơ hình phát hiện ngoại lai khác trong một hệ thống phát hiện ngoại lai.

"Bottleneck"Autoencoder

Hawkins et al. (2002), một trong những người đầu tiên sử dụng mạng nơ-ron cho bài toán phát hiện ngoại lai. Để phát hiện ngoại lai, họ đã sử dụng một

3.2. Đề xuất cải tiến

Autoencoder với ba lớp ẩn cái mà họ gọi là "Replicator Neural Network". Ý tưởng mang tính thắt cổ chai ở đây là họ sử dụng một lớp trung gian có kích thước bé hơn so với chiều dữ liệu đầu vào. Theo như những báo cáo gần đây, cũng với cách tiếp cận trên, Erfani et al. (2016) đã xử lý đầu vào cho mơ hình OCSVM khi làm việc với tập dữ liệu lớn, high-dimensional. Kết quả của hướng đi này cũng đầy tiềm năng và hứa hẹn.

Variational Autoencoder

Tiếp theo, chúng tôi sẽ giới thiệu một biến thể của Autoencoder mà chúng tôi sử dụng trực tiếp trong bài tốn của mình. Đó là Variational Autoencoder (VAE). Vậy thì VAE giải quyết được vấn đề gì? Trước hết, chúng tơi đưa ra một ví dụ đơn giản sau: Giả sử với ảnh chứa số 4 sau khi qua bộ mã hóa giảm xuống chỉ cịn 2 chiều, mình thu được biểu diễn của nó là vector có tọa độ (2, 2). Khi mình đưa vector (2, 2) này vào làm đầu vào cho giải mã, tất nhiên mình sẽ thu lại được bức ảnh mang số 4. Mơ hình biết điều đó do đây là dữ liệu huấn luyện. Nhưng giả sử mình đưa đầu vào của bộ giải mã là vector (2.1, 2.1) khá tương đồng với vector (2, 2), khơng có gì đảm bảo được rằng mình sẽ thu lại được 1 bức ảnh chứa số 4 hay một số gần giống số 4. Điều đó khơng tốt chút nào, vì chúng ta đang cần mơ hình có thể sinh ra được dữ liệu mới mà mơ hình chưa từng nhìn thấy. VAE sinh ra để giải quyết bài tốn này. Tư tưởng chính của VAE là thay vì tìm một điểm biểu diễn trong không gian ẩn cho một điểm dữ liệu trong không gian gốc, chúng ta sẽ đi tìm một phân phối xác suất cho điểm dữ liệu đó.

Một phần của tài liệu Phát hiện dữ liệu ngoại lai bằng mô hình svm một lớp (Trang 55 - 62)

Tải bản đầy đủ (PDF)

(100 trang)