Tải bản đầy đủ - 0 (trang)
Hình 3.3 Giaỉ thuật mạng miễn dịch nhân tạo

Hình 3.3 Giaỉ thuật mạng miễn dịch nhân tạo

Tải bản đầy đủ - 0trang

Chương 3. Hướng tiếp cận mạng miễn dịch nơ-ron nhân tạo trong phát hiện virus máy tính



Trong phần thứ hai của giải thuật, sự tương tác giữa các kháng thể trong tập nhớ

Smemory được tính tốn và các kháng thể chứa nội dung giống nhau ở mức độ nào đó

(so với một giá trị định trước) sẽ được loại ra. Đồng thời, các kháng thể mới được khởi

tạo ngẫu nhiên cũng sẽ được bổ sung vào để làm phong phú nguồn vật chất trong quần

thể.

3.2.4 Phép đo độ thích nghi : Tương tác kháng thể - kháng nguyên

Sau khi đã biểu diễn được hai thành phần quan trọng trong AIS là kháng thể và

kháng nguyên, bước tiếp theo ta sẽ phải xác định phép độ độ thích nghi giữa các kháng

thể và kháng nguyên này.

Bởi vì mỗi kháng thể là dạng mã hóa của một mạng nơ-ron nên độ thích nghi

được xác định dựa trên phép đo sai số đầu ra giữa mạng nơ ron và các giá trị nhãn của

các chuỗi nhị phân trong kháng nguyên, ta gọi sai số này là error.

Đặt f là giá trị thích nghi của một kháng thể, ta có

𝑓=



1

𝑒𝑟𝑟𝑜𝑟



( 3.5)



Đơi khi f còn được gọi là ái lực kháng nguyên.

Trong việc phát hiện virus máy tính, bên cạnh việc xác định đúng một tập tin là

virus hay khơng thì việc hạn chế báo động nhầm cũng cần được quan tâm. Bởi vì

những hậu quả gây ra cho hệ thống do AV khằng định một tập tin hệ thống thành virus

có thể còn lớn hơn nhiều so với việc bỏ sót 1 vài virus nào đó. Vì lý do này, học viên

nghiên cứu đưa thêm vào một thông số gọi là fpr (False Positive Rate - Tỉ lệ dương

tính giả), thơng số này chỉ ra tỉ lệ nhận dạng nhầm của một kháng thể được tính tốn

dựa trên tập chuỗi sạch trong dữ liệu huấn luyện.

Như vậy, giá trị f được tính bằng:

𝑓=



2

𝑒𝑟𝑟𝑜𝑟+𝑓𝑝𝑟



61



( 3.6)



Chương 3. Hướng tiếp cận mạng miễn dịch nơ-ron nhân tạo trong phát hiện virus máy tính



Cần lưu ý ở đây, error là giá trị lỗi trung bình trên tồn bộ chuỗi nhị phân của

kháng nguyên đang được trình diện. Cả hai giá trị error và fpr đều được chuẩn hóa về

(0, 1).

3.2.5 Tương tác kháng thể - kháng thể

Trong mô hình ANIN, mỗi bộ phát hiện khơng chỉ có khả năng tương tác với các

kháng nguyên, mà bên cạnh đó chúng còn có khả năng tương tác lẫn nhau để tạo thành

một hệ thống mạng lưới kết nối.

Việc tương tác giữa các kháng thể với nhau nhằm mục đích loại ra các kháng thể

chứa thông tin bị trùng lắp. Khi số lượng kháng thể trong mơ hình được cố định, tình

trạng các kháng thể trùng lắp xuất hiện càng nhiều cảnh ảnh hưởng xấu đến tính hiệu

quả chung của cả mơ hình.

Việc loại bỏ các kháng thể trùng lắp trong hệ thống mạng ANIN sẽ khiến cho mỗi

kháng thể trong mạng hoạt động tốt hơn do chúng buộc phải mở rộng vùng hoạt động

của bản thân sang các khu vực chưa bị kiểm soát bởi các kháng thể khác. Từ đó, khả

năng bao phủ khơng gian dữ liệu huấn luyện của tồn bộ các kháng thể trong mơ hình

được nâng cao.

Tuy nhiên, tương tác kháng thể - kháng thể cũng phát sinh những vấn đề. Thứ

nhất là thời gian tiêu hao của quá trình huấn luyện gia tăng đáng kể. Thời gian gia tăng

này bao gồm chi phí để chạy thủ tục tính tốn tương tác giữa các kháng thể trong mạng

và chi phí phát sinh khi số kháng thể trùng lắp bị loại ra, đòi hỏi những kháng thể mới

phải liên tục được đưa vào, từ đó q trình huấn luyện khó hội tụ đến những giải pháp

tốt trong thời gian ngắn.

Vấn đề thứ hai phát sinh là việc xây dựng cơ chế tương tác kháng thể - kháng thể

này sao cho hợp lý. Như chúng ta đã đề cập trước đó, mỗi kháng thể ở dạng chuỗi

chính là dạng mã hoá của một thực thể mạng nơ-ron nhân tạo. Việc xác định tính tương

tự giữa hai mạng nơ-ron nhân tạo không hề đơn giản do bản thân ANNs giống như các

62



Chương 3. Hướng tiếp cận mạng miễn dịch nơ-ron nhân tạo trong phát hiện virus máy tính



hộp đen, chúng ta khơng thể nhìn vào và trả lời tại sao với dữ liệu huấn luyện này thì

trọng số của mạng lại được thay đổi như vậy. Có một số giải pháp được nghiên cứu để

giải quyết vấn đề này. Đầu tiên là việc bỏ qua hình thái giải mã của kháng thể thành

mạng nơ-ron, tức là chúng ta tiến hành tính tốn giá trị tương tự giữa hai kháng thể dựa

trên chính các chuỗi mã hố của chúng. Giải pháp này có thuật lợi là việc ứng dụng các

phương pháp so khớp như Hamming, R-contiguous…nhưng chỉ hiệu quả khi ta mong

muốn loại ra các kháng thể hoàn toàn giống nhau. Còn trong trường hợp hai kháng thể

chỉ giống nhau 99%, ta cũng không thể khẳng định rằng hai mạng nơ-ron tương ứng

cũng sẽ cho ra kết quả giống nhau 99 %. Bởi lẽ, chỉ cần một thông số mạng thay đổi

cũng khiến cho kết quả đầu ra của mạng nơ-ron bị biến đổi không lường trước được. Ở

giải pháp thứ hai, với một tập các dữ liệu đầu vào, ta tính tốn giá trị tương tự của hai

mạng nơ-ron dựa trên các kết quả đầu ra của chúng. Mặc dù ta khơng thể khẳng định

rằng hai mạng nơ-ron có các kết quả đầu ra giống nhau cho tập dữ liệu đầu vào A, cũng

sẽ cho kết quả đầu ra giống nhau cho tập dữ liệu đầu vào B, nhưng với bộ dữ liệu đầu

vào để so sánh hai mạng này có độ phủ đủ lớn so với dữ liệu được dùng trong quá trình

huấn luyện, ta hy vọng rằng phương pháp này có thể được dùng để tính tương tác

kháng thể- kháng thể trong mơ hình ANIN

Giải pháp thứ hai có thể được minh hoạt bằng thuật tốn sau:

NETWORKSIMILARITY Algorithm

Input: population: tập các dữ liệu huấn luyện

threshold1: ngưỡng giá trị 1

threshold2: ngưỡng giá trị 2

networkA: bộ phát hiện A

networkB: bộ phát hiện B

Output: True: Nếu A và B được xét là tương tự



63



Chương 3. Hướng tiếp cận mạng miễn dịch nơ-ron nhân tạo trong phát hiện virus máy tính



False: Nếu A và B không tương tự nhau

1. threshold1  0.01;

2. threshold2  0.9;

3. count1  0;

4. for each input a do

5. if |networkA.output –networkB.output| ≤ threshold1 then

count1:= count1+1;

6. end for

7. if (count1/N ≥ threshold2)then return true;

8. else return false;

Hình 3.4 Giải thuật xác định tương tác mạng nơ-ron nhân tạo



3.3 Các bài toán liên quan

Bên cạnh việc giải quyết bài tốn chính của đề tài nhằm phát sinh các bộ phát

hiện tốt có khả năng phân biệt được giữa các chuỗi mã sạch và mã độc, chúng ta còn

quan tâm đến việc giải quyết các bài toán con, ảnh hưởng trực tiếp đến kết quả của quá

trình huấn luyện như bài toán xây dựng dữ liệu huấn luyện, hay việc giải quyết bài toán

xây dựng cơ chế vận dụng các bộ huấn luyện để phối hợp nhận dạng chuỗi mã hướng

đến nhận dạng một tập tin nào đó là sạch hay virus. Các bài toán nhỏ này sẽ được trình

bày ở phần này.

3.3.1 Bài tốn Rút trích đặc trưng virus

Bài tốn rút trích đặc trưng virus hay có thể gọi là bài toán xây dựng dự liệu huấn

luyện được đặt ra nhằm mục đích xây dựng các dữ liệu mới, từ các tập tin virus ban

đầu.

Có nhiều dạng đặc trưng có thể xây dựng từ các tập tin virus ban đầu như dạng

chuỗi hex, dạng nhị phân, mã assemply, chuỗi kí tự…, cao học viên chọn kiểu nhị phân

do một mã nhân phân vừa có đặc tính đơn giản, vừa là tầng nghĩa cơ bản nhất, thích

hợp để nhận dạng các chủng virus đa hình khi xét ở mức độ nhị phân, các hình thái

64



Chương 3. Hướng tiếp cận mạng miễn dịch nơ-ron nhân tạo trong phát hiện virus máy tính



khác nhau của một một virus đa hình cũng chỉ bao gồm các mã nhị phân giống nhau.

Mặc khác, một chỉ dẫn lệnh trong máy tính thường có kích thước từ 1- 7 bytes, do đó,

với việc lựa chọn một kích thước chiều dài mã nhị phân thích hợp ta hồn tồn có thể

thu thập được các đặc trưng ở mức độ từng chỉ dẫn lệnh trong các tập tin virus.

Ý tưởng giải quyết đơn thuần sẽ xây dựng mỗi tập con bao gồm các chuỗi nhị

phân trích xuất từ nhóm tập tin tương ứng. Mặc dù nghe có vẻ rất hợp lý nhưng bộ dữ

liệu huấn luyện sẽ chứa rất nhiều lỗi, do khơng có tồn tại sự phân biệt rạch ròi giữa hai

tập con. Lý do đầu tiên là bởi vì bản chất của virus cũng chính là một chương trình,

mặc khác, virus thường lậy nhiễm thơng qua các vật chủ trung gian, nên tập tin virus

cũng sẽ chứa phần lớn các chỉ thị máy tính như một chương trình bình thường.

Mặc dù bản chất virus cũng là một chương trình máy tính nhưng do kích thước

tập tin virus thường phải rất nhỏ nên chúng thường chứa các chỉ dẫn thực thi ngắn mà

ít xuất hiện trong các chương trình sạch. Mục tiêu của ta là hướng đến nhận dạng các

đoạn mã này. Chúng ta khai thác ý tưởng được nêu ra ở trên kết hợp sử dụng một giải

thuật nổi tiếng trong AIS là NSA để loại ra các chuỗi nhị phân thường gặp trong các

tập tin sạch trong tập chuỗi virus.

Ở đây, NSA được sử dụng để loại trừ ra khỏi tập chuỗi virus các đoạn mã tồn tại

trong cả các tập tin virus và tập tin chương trình sạch. Đầu tiên, ta trích xuất các chuỗi

nhị phân từ các tập tin virus và tập tin sạch tạo thành hai tập chuỗi tương ứng. Mỗi

đoạn chuỗi nhị phân sẽ có chiều dài L và hai chuỗi liên tiếp nhau sẽ trùng lên nhau một

đoạn L/2. Ở đây, ta chọn L có chiều dài bằng 32 bits.



65



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Hình 3.3 Giaỉ thuật mạng miễn dịch nhân tạo

Tải bản đầy đủ ngay(0 tr)

×