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

NGHIÊN cứu máy học và hệ MIỄN DỊCH NHÂN tạo TRONG PHÁT HIỆN VIRUS máy TÍNH

108 202 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 108
Dung lượng 11,3 MB

Nội dung

Gần đây, cùng với sự hỗ trợ của máy tính, các mô hình mô phỏng sinh học ngày càng được quan tâm và phát triển, điển hình như giải thuật di truyền, giải thuật tiến hoá, mạng nơ-ron nhân t

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

──────────────

Mai Trọng Khang

NGHIÊN CỨU MÁY HỌC VÀ

HỆ MIỄN DỊCH NHÂN TẠO TRONG PHÁT HIỆN VIRUS MÁY TÍNH

LUẬN VĂN THẠC SĨ NGÀNH KHOA HỌC MÁY TÍNH

Mã số: 60.48.01.01

TP HỒ CHÍ MINH - 2016

Trang 2

ĐẠI HỌC QUỐC GIA TP HCM

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN



Mai Trọng Khang

NGHIÊN CỨU MÁY HỌC VÀ

HỆ MIỄN DỊCH NHÂN TẠO TRONG PHÁT HIỆN VIRUS MÁY TÍNH

LUẬN VĂN THẠC SĨ NGÀNH KHOA HỌC MÁY TÍNH

Mã số: 60.48.01.01

NGƯỜI HƯỚNG DẪN KHOA HỌC:

PGS TS VŨ THANH NGUYÊN

TP HỒ CHÍ MINH - 2016

Trang 3

LỜI CẢM ƠN

Trước tiên em xin gửi lời cảm ơn chân thành đến thầy PGS.TS Vũ Thanh

Nguyên Cảm ơn thầy đã dành nhiều công sức và hướng dẫn em tận tình để em có thể

hoàn tất đề tài này một cách thuận lợi

Cảm ơn quý thầy cô giảng dạy cao học tại trường Đại học công nghệ thông tin đã

cung cấp cho em những tri thức bổ ích, tạo động lực cho em nghiên cứu khoa học và

thực hiện tốt đề tài này Cảm ơn các thầy các cô trong khoa Công nghệ phần mềm,

trường Đại học công nghệ thông tin đã hỗ trợ em trong công tác giảng dạy để em có

thêm nhiều thời gian hoàn thiện đề tài Cảm ơn các thành viên UIT-Cloud giúp đỡ em

tiếp cận được nguồn tài nguyên máy tính lớn để quá trình cài đặt, thực nghiệm được

Trang 4

Tôi xin cam đoan những nội dung trong luận văn là kết quả nghiên cứu thực sự của cá

nhân dưới sự hướng dẫn của PGS.TS Vũ Thanh Nguyên Tôi xin hoàn toàn chịu trách

nhiệm về luận văn của mình

Học viên

Mai Trọng Khang

Trang 5

MỤC LỤC

LỜI CẢM ƠN i

LỜI CAM ĐOAN ii

MỤC LỤC 1

DANH MỤC CÁC KÍ HIỆU VÀ CHỮ VIẾT TẮT 5

DANH MỤC CÁC BẢNG 6

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ 7

MỞ ĐẦU 9

Chương 1 TỔNG QUAN 10

1.1 Lý do chọn đề tài 10

1.2 Mục đích nghiên cứu 11

1.3 Đối tượng và phạm vi nghiên cứu; 12

1.3.1 Virus và hệ thống đích 12

1.3.2 Máy học 12

1.3.3 Hệ miễn dịch nhân tạo 13

1.4 Các nghiên cứu liên quan 13

1.5 Ý nghĩa khoa học và thực tiễn của đề tài 15

1.6 Cấu trúc luận văn 16

Chương 2 CƠ SỞ LÝ THUYẾT 17

2.1 Virus máy tính 17

2.1.1 Định nghĩa 17

2.1.2 Lịch sử virus máy tính 17

2.1.3 Khả năng lây lan của virus máy tính 18

Trang 6

2.2 Hệ miễn dịch nhân tạo 22

2.2.1 Hệ miễn dịch sinh học 22

2.2.2 Cấu trúc cơ bản 23

2.2.3 Một số thuật toán trong hệ miễn dịch nhân tạo 24

2.2.4 Các lĩnh vực ứng dụng AIS 31

2.3 Mạng nơ-ron nhân tạo 32

2.3.1 Cấu trúc cơ bản của mạng nơ-ron nhân tạo 33

2.3.2 Một số loại mạng nơ-ron nhân tạo 35

2.3.3 Ứng dụng 37

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 42

3.1 Các hướng tiếp cận nền tảng 42

3.1.1 Hướng tiếp cận giải thuật di truyền trong phát hiện virus máy tính 42

3.1.2 Hướng tiếp cận mạng nơ-ron nhân tạo trong phát hiện virus máy tính ………44

3.1.3 Hướng tiếp cận kết hợp mạng nơ-ron và giải thuật di truyền trong phát hiện virus máy tính 45

3.1.4 Hướng tiếp cận kết hợp giải thuật chọn lọc nhân bản và mạng nơ-ron nhân tạo trong phát hiện virus máy tính 47

3.2 Hướng tiếp cận kết hợp mạng miễn dịch nhân tạo và mạng nơ-ron nhân tạo trong phát hiện virus máy tính 54

3.2.1 Biểu diễn kháng thể / kháng nguyên 55

3.2.2 Các bộ phát hiện ANNs 56

Trang 7

3.2.3 Giải thuật huấn luyện AiNet 58

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

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

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

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

3.4 Bài toán Xây dựng bộ phân lớp tập tin 66

3.4.1 Cơ chế xác định mức độ nguy hiểm của một tập tin 67

3.4.2 Xây dựng bộ phân lớp xác định nhãn của một tập tin 68

Chương 4 CÀI ĐẶT 71

4.1 Hiện thực hoá ANIN 71

4.1.1 Xây dựng bộ phát hiện ANNs 71

4.1.2 Xây dựng giải thuật huấn luyện AiNet 75

4.1.3 Xây dựng lớp biểu diễn kháng thể 76

4.1.4 Xây dựng giao diện 78

4.2 Hiện thực hoá bộ xây dựng dữ liệu huấn luyện 81

4.2.1 Lớp TrainingData 82

4.2.2 Lớp Cluster 82

4.2.3 Lớp DataGeneration 83

4.2.4 Lớp Matching 84

4.2.5 Cài đặt giao diện 85

4.2.6 Giao diện 87

4.3 Xây dựng bộ phân lớp tập tin 88

4.3.1 Cài đặt các lớp đối tượng 88

Trang 8

Chương 5 THỬ NGHIỆM 92

5.1 Dữ liệu đầu vào 92

5.1.1 Xác định thông số 93

5.2 Phương pháp đánh giá 95

5.3 Kết quả thực nghiệm 96

Chương 6 KẾT LUẬN 99

6.1 Các kết quả đạt được 99

6.2 Hạn chế 99

6.3 Hướng phát triển 100

DANH MỤC CÔNG BỐ KHOA HỌC CỦA TÁC GIẢ 101

DANH MỤC TÀI LIỆU THAM KHẢO 102

PHỤ LỤC 104

Trang 9

DANH MỤC CÁC KÍ HIỆU VÀ CHỮ VIẾT TẮT

CNTT Công nghệ thông tin Công nghệ thông tin

ANN Artificial Neural

Network Mạng nơ-ron nhân tạo

GA Genetic Algorithm Giải thuật di truyền AIS Artificial Immune

System Hệ miễn dịch nhân tạo AiNet Artificial Immune

Network Mạng miễn dịch nhân tạo CLONALG Clonal Selection

Immune Network

Mạng miễn dịch nơ-ron nhân tạo

Clonal Algorithm

Thuật toán nhân bản phát hiện virus

Trang 10

Bảng 2.1 So sánh giải thuật tiến hoá cơ bản và giải thuật chọn lọc nhân bản 28

Bảng 3.1 Các đối tượng trong giải thuật chọn lọc nhân bản 48

Bảng 4.1 Các thủ tục của giải thuật huấn luyện AiNet 75

Bảng 4.2 Danh sách các thông số của mô đun xây dựng các bộ phát hiện 80

Bảng 4.3 Các thuộc tính và phương thức chính của lớp DataGeneration 83

Bảng 4.4 Danh sách thông số quan trong của bộ xây dựng dữ liệu huấn luyện 85

Bảng 4.5 Các lớp đối tượng trong bộ phân lớp tập tin 89

Bảng 5.1 Thử nghiệm sự tương quan giữa giá trị r và quá trinh xây dựng dữ liệu huấn luyện trên Dataset 5, Dataset 6 93

Bảng 5.2 Tỉ lệ phát hiện và tỉ lệ dương tính giả của ANIN và mô hình [7] 96

Trang 11

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ

Hình 2.1 Cấu trúc phân tầng của AIS 23

Hình 2.2 Mô hình thuật toán chọn lọc âm tính 25

Hình 2.3 Sơ đồ giải thuật chọn lọc nhân bản 27

Hình 2.4 Cấu tạo nơ-ron nhân tạo 33

Hình 2.5 Cấu trúc mạng nơ-ron đa lớp 34

Hình 2.6 Mạng dẫn tiến 35

Hình 2.7 Mạng hồi quy 36

Hình 2.8 Mạng nơ-ron hàm radial 37

Hình 2.9 Cấu trúc mạng nơ-ron trong robot di chuyển 38

Hình 2.10 Mạng nơ-ron huấn luyện logic 38

Hình 2.11 Mạng nơ-ron nhận dạng mẫu theo thời gian 40

Hình 3.1 Sơ đồ giải thuật chọn lọc nhân bản 52

Hình 3.2 Cấu trúc tổng quát của một đối tượng ANNs 58

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

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

Hình 3.5 Cơ chế rút trích chuỗi nhị phân 66

Hình 3.6 Sơ đồ quy trình xây dựng dữ liệu huấn luyện 66

Hình 3.7 Giải thuật xác định độ nguy hiểm của một tập tin 68

Hình 4.1 Lớp biểu diễn một đối tượng nơ-ron 72

Hình 4.2 Lớp biểu diễn đối tượng Layer 73

Trang 12

Hình 4.4 Lớp biểu diễn đối tượng NetworkCollection và hàm kich hoạt

BipolarSigmoid 75

Hình 4.5 Lớp biễu diễn đối tượng kháng thể, môi trường, hàm mục tiêu 78

Hình 4.6 Mô hình tổng quát của module 79

Hình 4.7 Giao diện module xây dựng các bộ phát hiện 81

Hình 4.8 Mô hình tổng quát của bộ xây dựng dữ liệu huấn luyện 82

Hình 4.9 Lớp biểu diễn đối tượng DataGeneration 84

Hình 4.10 Các lớp biểu diễn cơ chế so khớp hai chuỗi 85

Hình 4.11 Giao diện bộ xây dựng dữ liệu huấn luyện 88

Hình 4.12 Các lớp đối tượng trong bộ phân lớp tập tin 90

Hình 4.13 Giao diện bộ phân lớp và kiểm tra tập tin 91

Hình 5.1 Sự tương quan giữa giá trị Network Suppression Threshold và hiệu quả của ANIN 97

Hình 5.2 So sánh hiệu quả giữa ANIN và [7] (Series1: ANIN detection rate, Series3: ANIN false positive rate, Series2 : [7] detection rate, Series4: [7] false positive rate ) 98

Trang 13

MỞ ĐẦU

Chúng ta đang trải qua thời kì bùng nổ của nền kinh tế tri thức, nơi mà các thành tựu khoa học công nghệ hiện hữu trong mọi mặt của đời sống vật chất và tinh thần của con người Những kĩ thuật mới, những tri thức mới được phát hiện mỗi ngày, càng góp phần đẩy nhanh sự phát triển của nhân loại

Bên cạnh việc xây dựng nên các lý thuyết khoa học mới, nhiều hướng nghiên cứu hiện nay lại quay về tìm hiểu các lý thuyết khoa học cổ điển nhằm hoàn thiện các

lý thuyết này cũng như tìm ra giải pháp phối hợp nhiều tri thức thuộc các lĩnh vực khoa học khác nhau vào giải quyết các vấn đề trong cuộc sống con người Gần đây, cùng với

sự hỗ trợ của máy tính, các mô hình mô phỏng sinh học ngày càng được quan tâm và phát triển, điển hình như giải thuật di truyền, giải thuật tiến hoá, mạng nơ-ron nhân tạo,

hệ miễn dịch nhân tạo… Sự kết hợp giữa tin học và sinh học tạo nói riêng và các tri thức liên ngành nói chung đang tạo ra một cuộc cách mạng về khoa học kĩ thuật vô cùng quan trọng

Chúng ta có thể thấy rằng, việc bảo vệ máy tính trước các tác nhân độc hại cũng giống như cơ chế hoạt động của hệ miễn dịch đang bảo vệ cơ thể chúng ta từng phút, từng giây Từ đó, đề tài mong muốn vận dụng chính các tri thức được phát triển thông qua việc quan sát tự nhiên để phục vụ cuộc sống con người, bởi bản thân tự nhiên vốn bao gồm những tiến trình, những hệ thống hoàn mỹ nhất

Trong phạm vi đề tài này, các mô hình máy học và hệ miễn dịch nhân tạo được nghiên cứu nhằm xây dựng một hướng tiếp cận mới giải quyết bài toán phát hiện virus máy tính, góp phần giải quyết vấn đề bảo vệ an toàn dữ liệu, nâng cao khả năng bảo mật cho các hệ thống Công nghệ thông tin

Trang 14

Sự phát triển không ngừng của công nghệ thông tin và truyền thông khiến cho mọi hoạt động của con người đều ít nhiều liên quan đến máy tính và internet Điều này tạo ra một môi trường béo bở cho các loại tội phạm công nghệ cao tiến hành các hành

vi phi pháp thu lợi bất chính từ việc sử dụng trực tiếp các nguồn tài nguyên chiếm giữ hoặc bán lại cho kẻ xấu Không những thế, nhiều nhóm tội phạm công nghệ cao còn được sự ủng hộ của chính phủ nước sở tại, biến các cuộc tấn công không chỉ mang thuần mang tính kinh tế, thương mại mà còn liên quan đến chính trị, quân sự

Riêng ở Việt Nam, tốc độ phổ biến của công nghệ thông tin không đi kèm với sự cải thiện về kiến thức an toàn bảo mật khiến cho nhiều hệ thống máy tính dễ trở thành mục tiêu tấn công Việc hay sử dụng crack và sự bất cẩn của con người trong quá trình

sử dụng máy tính cho các hoạt động công việc, vui chơi vô tình tạo điều kiện cho nhiều loại virus dễ dàng xâm nhập và ẩn mình chờ đợi hàng năm trời trước khi gây ra các thiệt hại khổng lồ

Trong việc phòng chống virus hiện nay, các chương trình diệt virus được sử dụng

và được tin tưởng về tính hiệu quả của nó Tuy nhiên, các hướng tiếp cận hiện tại của các AV (Antivirus - AV) ngày càng mất đi tính hiệu quả của mình do sự phát triển,

Trang 15

biến đổi không ngừng của các kĩ thuật lập trình virus Không những vậy, phần lớn các phần mềm diệt virus chỉ phát huy tác dụng trên những mẫu virus xác định, khả năng dự đoán virus mới còn hạn chế nên thường bị động khi có dịch virus bùng phát

Các hướng tiếp cận mới không ngừng được nghiên cứu và thử nghiệm nhằm tìm kiếm các giải pháp mới cho bài toán phòng chống virus máy tính nói chung và bài toán phát hiện virus máy tính nói riêng Theo đà phát triển và xuất hiện của những thuật toán mô phỏng sinh học mới những năm gần đây, nhiều nghiên cứu được tiến hành với mục tiêu khai thác khả năng của các hệ thống sinh học trong giải quyết các vấn đề của con người mà đặc biệt là vấn đề virus máy tính

Trong bối cảnh đó đề tài, “Nghiên cứu một số thuật toán máy học và hệ miễn dịch nhân tạo trong phát hiện virus máy tính” được tiến hành nhằm xây dựng hướng tiếp cận mới mạng miễn dịch nơ-ron nhân tạo (ANIN- Artificial Neural Immune Network) - một mô hình dựa trên kết hợp giữa giải thuật mạng miễn dịch nhân tạo và mạng nơ-ron nhân tạo - để giải quyết bài toán phát hiện virus máy tính

1.2 Mục đích nghiên cứu

Đề tài tập trung nghiên cứu hướng giải quyết bài toán phát hiện virus máy tính

Do đây là một bài toán khá lớn cùng với sự hạn hẹp về tri thức của người thực hiện, sự thiếu hụt các phương tiện cần thiết nên đề tài chỉ hướng đến giải quyết một phần nhỏ của bài toán này

Mục tiêu chính của đề tài là nhằm xây dựng một hướng tiếp cận mới để giải quyết bài toán phát hiện virus máy tính dựa trên sự nghiên cứu các mô hình máy học và hệ miễn dịch nhân tạo Các mục tiêu nhỏ bao gồm:

 Hướng tiếp cận đề ra có thể kết hợp với các hướng tiếp cận truyền thống sẵn có, góp phần nâng cao khả năng phòng chống virus máy tính

 Hướng tiếp cận có khả năng nhận dạng được các mẫu virus mới chứa phần

mã tương đồng ở mức độ nào đó với các mẫu virus đã biết

Trang 16

phép chúng ta quan sát các quá trình xử lý bên trong như xử lý dữ liệu đầu vào, quá trình huấn luyện, quá trình kiểm tra thực nghiệm…

 Đặt nền móng cho các nghiên cứu xa hơn trong tương lai

Từ đó nâng cao tính bảo mật của máy tính và góp phần nâng cao hiệu quả bảo mật của các hệ thống công nghệ thông tin

1.3 Đối tượng và phạm vi nghiên cứu

1.3.1 Virus và hệ thống đích

Do sự hạn chế về phương tiện cũng như năng lực của người thực hiện, đề tài chỉ tập trung nghiên cứu các loại virus máy tính hoạt động trên môi trường hệ điều hành Windows (máy vi tính cá nhân để bàn hoặc xách tay, sử dụng kiến trúc vi xử lý x86/Pentium hoặc tương thích) Trong đó, loại virus lây nhiễm trên tập tin thi hành (EXE, COM, BAT) được tập trung nghiên cứu Đây là loại virus nguy hiểm và phổ biến nhất Bên cạnh việc phát sinh những tiến trình chạy ngầm phá hoại hệ thống, làm tốn hao bộ nhớ, một số virus thuộc loại này còn có thể vô hiệu hoá các AV, mở backdoor cho các hacker … Trong một số trường hợp, loại virus này giả dạng các biểu tượng phần mềm khiến người dùng tự kích hoạt chúng

Mặc dù vậy, đề tài cũng được định hướng nghiên cứu để có thể mở rộng kết quả nghiên cứu để sử dụng trên các HĐH khác Windows và các loại virus khác

1.3.2 Máy học

Máy học là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu và xây dựng các kĩ thuật cho phép các hệ thống "học" tự động từ dữ liệu để giải quyết những vấn đề cụ thể Máy học được ứng dụng rộng rãi trong nhiều lĩnh vực như y học, thương mại, giáo dục …

Đề tài tập trung tìm hiểu một số thuật toán máy học phổ biến, đặt biệt là các mô hình mô phỏng sinh học như mạng nơ-ron nhân tạo (Artificial Neural Networks -

Trang 17

ANN), giải thuật di truyền (Genetic Algorithms – GA), từ đó kết hợp với các mô hình khác để giải quyết bài toán phát hiện virus máy tính

1.3.3 Hệ miễn dịch nhân tạo

Hệ miễn dịch nhân tạo (AIS - Artificial Immune System) [2] là một nhóm các mô hình tính toán mô phỏng chức năng hệ miễn dịch sinh học của người và động vật

Hệ miễn dịch nhân tạo được xây dựng nhằm mô phỏng các đặc trưng chính quan trọng của hệ miễn dịch sinh học bao gồm: khả năng chống chịu nhiễu, học tập, ghi nhớ, phân tán và tự tổ chức Được đánh giá như một phương pháp tính toán mềm mới có hiệu quả, hệ miễn nhân tạo không chỉ đơn thuần được sử dụng ở các bài toán nhận dạng mà còn được nghiên cứu ứng dụng trong các lĩnh vực như bảo mật và an toàn thông tin, học máy, robot học, điều khiển học, tối ưu hoá…

Hệ miễn dịch nhân tạo bao gồm nhiều mô hình nhỏ, mỗi mô hình này mô phỏng một bộ phận, chức năng khác nhau trong hệ miễn dịch sinh học như miễn dịch bẩm sinh, T-bào, B-bào, Trong đó, người nghiên cứu tập trung vào ba mô hình tính toán chính của AIS là giải thuật chọn lọc âm tính (NSA - Negative Selection ALgorithms), giải thuật chọn lọc nhân bản (CLONALG - CLonal Selection Algorithms) và giải thuật mạng miễn dịch nhân tạo (AiNet - Artificial Immune Network)

1.4 Các nghiên cứu liên quan

Trong [3], các tác giả sử dụng phương pháp multiple sequence alignment (MSA) trong lĩnh vực tin sinh học, kết hợp với các kĩ thuật khai phá dữ liệu để nhận biết các chương trình độc hại Kĩ thuật MSA được sử dụng để căn chỉnh các đoạn mã virus có chiều dài khác nhau Các kĩ thuật khai phá dữ liệu như phương pháp trích xuất luật symbolic và ANN có thể học các đặc trưng trọng yếu để xác định phân lớp nào mà các mẫu căn chỉnh này thuộc về

Trong [4], các tác giả giới thiệu một giải pháp phát hiện xâm nhập dựa trên sự kết hợp của các kĩ thuật tập thô (Rough Set -RS) và mạng miễn dịch nhân tạo Kĩ thuật RS

Trang 18

sử dụng Tiếp đó AiNet được sử dụng để gom cụm các tấn công trong tập dữ liệu được tinh giản Kết quả thực nghiệm cho thấy một sự cải thiện tốt trong tỉ lệ phát hiện của

mô hình này

Trong [5], các đặc trưng liên quan nhất được trích xuất từ các cấu trúc thực thi của các tập tin thực thi bởi Fisher Score và sau đó được học bởi mạng nơ-ron nhân tạo Kết quả của quá trình này là một mạng nơ-ron có khả năng nhận biết các mẫu virus mới Mặc dù mô hình này đạt được các kết quả tốt, việc chỉ một mạng nơ-ron được sử dụng để học các dữ liệu sẽ suy giảm tính hiệu quả cả về thời gian huấn luyện và hiệu suất khi dữ liệu huấn luyện lớn

Năm 2013, Suha Afanehand Raed Abu Zita phát triển một giải thuật dựa trên quan điểm của hệ miễn dịch nhân tạo nhằm mục đích phát hiện virus máy tính, được gọi là giải thuật nhân bản phát hiện virus (Virus detection clonal algorithm - VDCA) Giải thuật di truyền được sử dụng để tối ưu hóa VDCA Kết quả thực nghiêm của nghiên cứu cho thấy tỉ lệ phát hiện virus khá cao, 94.4% trong khi tỉ lệ cảnh báo nhầm

Trong [8], các tác giả kết hợp giữa giải thuật chọn lọc âm tính và mạng miễn dịch nhân tạo NSA được sử dụng để tạo ra thế hệ các bộ phát hiện đầu tiên và AiNet được

sử dụng để cải thiện độ bao phủ của các bộ phát hiện này cũng như cải tạo khả năng nhận biết các virus mới Giới hạn của phương pháp này ở việc sử dụng cơ chế nhận

Trang 19

dạng các chuỗi bằng các chuỗi, hiệu quả mô hình giảm khi số lượng chuỗi cần nhận dạng rất lớn

1.5 Ý nghĩa khoa học và thực tiễn của đề tài

Đề tài “Nghiên cứu máy học và Hệ miễn dịch nhân tạo trong phát hiện virus máy tính” hướng đến việc giải quyết bài toán phát hiện virus máy tính bằng một hướng tiếp cận mới, có thể mở rộng cho nhiều hướng nghiên cứu xa hơn

Đề tài được thực hiện phản ánh xu hướng phát triển lĩnh vực công nghệ thông tin, vận dụng các nghiên cứu xuất phát từ chính tự nhiên để giải quyết các vấn đề của con người

Hướng tiếp cận được xây dựng chỉ mang tính chất hỗ trợ những hướng tiếp cận sẵn có, đặc biệt là các kĩ thuật nhận dạng chính xác và nhận dạng tương đối đang được

sử dụng rộng rãi, từ đó góp phần nâng cao tính bảo mật của các hệ thống CNTT

Đề tài được thực hiện vừa nhằm giải quyết bài toán phát hiện virus máy tính, vừa mong muốn xây dựng một hướng tiếp cận tổng quát có thể áp dụng cho nhiều dạng bài toán khác nhau, đặc biệt là các bài toán bảo mật ở quy mô lớn

Gần đây, việc vận dụng các thành tựu của lĩnh vực khoa học tự nhiên vào giải quyết các vấn đề tin học đã và đang đạt được những kết quả khả quan Chúng ta đã có mạng nơ-ron mô phỏng bộ não người [9], giải thuật di truyền mô phỏng thuyết tiến hoá của Charles Darwin [10], mới nhất là các thuật giải mô phỏng cơ chế hoạt động của hệ miễn dịch con người như giải thuật chọn lọc âm tính, giải thuật chọn lọc nhân bản [2]…, các giải thuật dựa trên việc nghiên cứu hoạt động của các mô hình sinh học này

đã được sử dụng để giải quyết thành công nhiều bài toán như sắp lịch, tìm đường đi…

Đề tài được thực hiện nhằm sử dụng sức mạnh của các mô hình mô phỏng sinh học trong việc bảo vệ thực thể máy tính khỏi các virus “nhân tạo”, từ đó đưa ra một hướng tiếp cận mới, có khả năng phát hiện được virus máy tính, có khả năng kết hợp

Trang 20

người sử dụng máy tính

1.6 Cấu trúc luận văn

Nội dung quyển báo cáo này bao gồm 6 chương

Chương 1 trình bày tổng quan về đề tài như lý do chọn, mục đích, đối tượng nghiên cứu, các nghiên cứu liên quan và ý nghĩa khoa học, thực tiễn của đề tài

Chương 2 trình bày cơ sở lý thuyết bao gồm các tri thức mang tính giới thiệu về virus máy tính, máy học, hệ miễn dịch nhân tạo, mạng nơ-ron nhân tạo

Chương 3 trình bày về hướng tiếp cận được xây dựng trong đề tài, đầu tiên là đề cập qua các hướng tiếp cận đã được xây dựng trước đây, hướng tiếp cận hiện tại và các bài toán liên quan được đặt ra trong quá trình thực hiện đề tài

Chương 4 giới thiệu quá trình cài đặt hướng tiếp cận

Chương 5 đề cập đến quá trình thử nghiệm, kiểm tra tính hiệu quả của hướng tiếp cận

Chương 6 trình bày kết luận của đề tài

Trang 21

Chương 2 CƠ SỞ LÝ THUYẾT

2.1 Virus máy tính

2.1.1 Định nghĩa

Malware: Malware hay còn gọi là phần mềm độc hại, là một phần mềm được chèn máy tính hay các hệ thống tin học nhằm gây ra các thiệt hại nào đó (tính bí mật, tính toàn vẹn hoặc tính sẵn sàng)

Virus: Virus máy tính là một chương trình máy tính mà hai đặc trưng chính bao gồm việc tự nhân bản và lây nhiễm chính nó trong hệ thống, từ đó gây ra các thiệt hại theo chủ ý của người lập trình virus

2.1.2 Lịch sử virus máy tính

 1983 - Nguyên lý của trò chơi “Core War” bị tiết lộ

Trong một cuộc so tài giữa hai chương trình máy tính tên là Core War, mỗi chương trình tên là Organism có khả năng tự tái tạo chính nó và tìm cách tiêu diệt Organism của đối phương Chương trình nào với nhiều nhân bản hơn sẽ chiến thắng Sau đó, nguyên lý dựa trên trò chơi Core War này bị tiết lộ và dẫn đến sự ra đời của virus máy tính

 1986 – Sự ra đời của virus Brain

Brain là tên của virus máy tính đầu tiên trên thế giới, xuất phát từ Pakistan và lây lan vào nước Mỹ với mục tiêu đầu tiên là trường Đại học Delaware

 1987 – Virus Lehigh xuất hiện

Virus Lehigh xuất hiện và lây lan đầu tiên trong trường đại học Lehigh Trong cùng thời gian này, Virus dạng DOS Jerusalem xuất hiện đầu tiên tại Jerusalem tháng

Trang 22

10/1987 đã chứng minh cho sự lây lan mạnh mẽ của virus máy tính với 500.000 bản sao trong một giờ

 1989 – AIDS Trojan xuất hiện

Mặc dù không được xem như một virus máy tính nhưng Trojan luôn là khái niệm

đi cùng với khái niệm virus Năm 1989, Trojan đầu tiên xuất hiện mang tên AIDS Các Trojan được tạo ra với mục đích chính đánh cắp thông tin mật hay phá huỷ dữ liệu máy tính

 1991 –Tequila virus – Sự xuất hiện của virus đa hình

Sự xuất hiện của virus Tequila đánh dấu sự xuất hiện của loại virus đa hình Bằng việc thay đổi khối mã lệnh sau mỗi lần lây nhiễm, loại virus này khiến cho kiểu nhận dạng virus dựa trên chuỗi đặc trưng – signature không còn tính hiệu quả

2.1.3 Khả năng lây lan của virus máy tính

Virus máy tính được thiết kế để lây lan trong một hệ thống mạng thông qua nhiều con đường khác nhau, thường do sự sơ xuất của người sử dụng nhưng đôi khi cũng do chính từ các lỗ hổng trong các phần mềm, hệ điều hành khiến cho virus dễ dàng xâm nhập lây nhiễm

Trong thế giới mà sự tương tác giữa người với người phần lớn thông qua internet thì email trở thành một số những phương tiện hỗ trợ sự lây nhiễm virus đắc lực nhất

Từ một máy tính bị nhiễm virus, một loạt email giả mạo được tạo lập và gửi đi, thao tác giả mạo này tiếp tục được thực hiện ở máy người nhận khiến cho quá trình lây lan được gia tăng theo cấp số nhân Người lập trình tìm cách thiết kế ra những virus có khả năng thu thập thông tin về người sử dụng, từ đó tạo ra các email với nội dung “chân thật”, đánh lừa lòng tin của người nhận

Bên cạnh việc lây lan qua email, thì USB chính là một phương thức lây lan virus trực tiếp do chính người sử dụng chủ động tác động USB là một phương tiện trao đổi

Trang 23

dữ liệu của phần lớn người dùng khi mà dung lượng của email có giới hạn Khi một máy tính bị nhiễm, các USB được gán vào máy tính này sẽ có nguy cơ bị lây nhiễm rất cao, với mỗi USB đã chứa đoạn mã virus máy tính, sau khi được sử dụng cho các máy tính mới sẽ khiến những máy này cũng gặp phải khả năng bị nhiễm

Một tỉ lệ không nhỏ các máy tính bị xâm nhập do người sử dụng thiếu các kiến thức bảo mật cần thiết khi thao tác trên môi trường internet Khi truy cập vào các website độc hại được nguỵ trang dưới dạng các trang web giải trí bắt mắt, các đoạn mã độc được tải xuống mà người dung không hề hay biết, từ đó âm thầm lây nhiễm máy tính của họ và bắt đầu quá trình lây nhiễm cho các máy tính trong cùng hệ thống mạng hay thông qua email, USB…

Một lý do khách quan cũng là một con đường lây lan của virus máy tính khi những kẻ xấu tìm cách khai tác chính những lỗi bảo mật trong phần mềm, hệ điều hành Một số lỗi tồn tại hàng năm trời trước khi có những bản vá để sửa chữa, và cho đến lúc đó, mức thiệt hại do virus máy tính gây ra đã rất to lớn Trong trường hợp này, cho dù bản thân người sử dụng có cảnh giác đến mức nào cũng không tránh khỏi việc

bị lây nhiễm

2.1.4 Một số kĩ thuật nhận dạng virus máy tính

Hai nguyên lí cơ bản thường được các chương trình diệt virus máy tính hiện nay

sử dụng đó là nguyên lí kiểm tra chính xác và nguyên lí kiểm tra tương đối

2.1.4.1 Nhận dạng chính xác

Trong nguyên lý nhận dạng chính xác, việc nhận dạng một mẫu virus dựa trên việc kiểm tra các mẫu virus đã có trong cơ sở dữ liệu Khi một virus mới xuất hiện, các chuyên gia an ninh mạng sẽ tiến hành thu thập và phân tích mã độc của virus, từ đó xây dựng một chữ ký đặc trưng của riêng virus đó và lưu trữ vào cơ sở dữ liệu Kế đó, một thao tác cập nhật được tiến hành trên toàn hệ thống các máy trạm nhằm bảo vệ những máy vốn chưa bị lây nhiễm Đây là kĩ thuật nhận dạng virus chính hiện nay

Trang 24

Ưu điễm của kĩ thuật này là độ chính cao và ít nhầm lẫn từ đó cho ra kết quả diệt virus tốt hơn Tuy nhiên, khuyết điểm chính của kĩ thuật này là việc nhận dạng và phát hiện virus được tiến hành sau khi virus đã xuất hiện và gây thiệt hại ở mức độ nào đó, tức là thao tác lúc này chỉ mang tính chất chữa cháy chứ không thể ngăn chặn sự tấn công của các virus hoàn toàn mới Một khuyết điểm khác là khả năng nhận dạng các virus đa hình rất yếu, và khi số lượng virus gia tăng, kéo theo sự gia tăng của cơ sở dữ liệu chữ kí virus, gây ra sự cồng kềnh và tốn kém thời gian trong việc cập nhật và quét virus

Các kĩ thuật nhận dạng chính xác chính được sử dụng bao gồm:

Nhận dạng theo mã hash: Sử dụng các thuật toán MD5, SHA, CRC để tính toán đoạn mã hash của một tập tin hay một phần thông tin quan trọng và dùng đó làm cơ sở

để phát hiện sự vi phạm toàn vẹn của tập tin

Nhận dạng theo kĩ thuật quét chuỗi (scan string): Là kĩ thuật được sử dụng phổ biến trong hầu hết các phần mềm diệt virus Trong kĩ thuật này, một đoạn chương trình virus được chọn làm đặc trưng cho virus đó, tuy nhiên, đoạn chương trình này phải phân biệt hoàn toàn với tất cả các đoạn mã khác đã tồn tại trong cơ sở dữ liệu Hai kĩ thuật con của kiểu nhận dạng này là việc sử dụng các chuỗi có offset tĩnh hoàn toàn hoặc một vị trí tương đối nào đó trong tập tin

2.1.4.2 Các kĩ thuật nhận dạng tương đối

Là tập hợp các kĩ thuật nhận dạng mang tính chất tương đối, thay vì xác định chính xác loại virus và tên virus thì kiểu nhận dạng này tập trung vào việc xác định tính chất virus của một chương trình, tập tin Các kĩ thuật chính của kiểu nhận dạng tương đối bao gồm:

Trang 25

2.1.4.2.1 Kiểu nhận dạng Heuristic

Từ các quy luật được đúc kết thông qua quá trình nghiên cứu quy luật hình thành của các mã lệnh, các chuyên gia tiến hành xây dựng các dấu hiệu thường thấy ở mã độc Kĩ thuật này cho phép nhận dạng ra những loại virus ngay cả khi chưa có mẫu virus đó thâm chí khi virus đó còn chưa xuất hiện Nhược điểm chính của kĩ thuật này

là phụ thuộc quá nhiều vào kinh nghiệm của chuyên gia, việc cập nhật đòi hỏi nhiều thời gian dẫn đến việc nhận dạng nhầm không thể tránh khỏi

2.1.4.2.2 Cơ chế nhận dạng theo hành vi

Cơ chế nhận dạng này được xây dựng theo kiểu thời gian thực, tức là việc theo dõi quá trình hoạt động của các chương trình trong hệ thống để từ đó phát hiện ra những hành vi nghi ngờ và có biện pháp ngăn chặn kịp thời hoặc tham khảo ý kiến của người dử dụng Tuy nhiên, không phải tất cả các chương trình đều bị theo dõi mà tập trung vào các chương trình có sử dụng các chức năng hệ thống Cơ chế nhận dạng này cho phép nhận dạng các mẫu virus mới, tuy nhiên việc xây dựng cơ chế này không hể đơn giản, làm giảm hiệu năng của hệ thống do sự tiêu tốn tài nguyên để duy trì cơ chế thời gian thực cũng như chưa chặn đứng nguy cơ các mã độc tồn tại tĩnh trong hệ thống chưa được khởi chạy

2.1.4.2.3 Cơ chế mô phỏng máy thật

Trong cơ chế này, một khu vực phần mềm được xây dựng mô tả lại các trạng thái của hệ thống để đánh lừa các tập tin virus để chúng hoạt động trên môi trường ảo này

và loại ra các nguy cơ xuất hiện Mặc dù có khả năng nhận dạng nhiều loại virus kể cả dạng đa hình, nén tuy nhiên chi phí quá lớn khiến việc sử dụng trên máy tính cá nhân không mang tính hiệu quả Bên cạnh đó, nhiều kĩ thuật lập trình virus mới có thể phát hiện ra môi trườn ảo là tiến hành bất hoạt các hành vi độc hại, đánh lừa hệ thống bảo mật này

Trang 26

2.2 Hệ miễn dịch nhân tạo

2.2.1 Hệ miễn dịch sinh học

Hệ miễn dịch sinh học là một hệ thống thích nghi có khả năng tự nhận dạng và tự

tổ chức, bao gồm nhiều bộ phận phân tán trong cơ thể nhằm giúp cho cơ thể chống lại những lây nhiễm của các vi sinh vật bên ngoài Nó bao gồm một kiến trúc phân tầng với cơ chế tự điều chỉnh và bảo vệ rộng khắp, với hai tầng bảo vệ chính là: hệ thống miễn dịch bẩm sinh và hệ thống miễn dịch thích nghi

Chức năng của hệ miễn dịch sinh học là nhận dạng tế bào và phân chia chúng thành hai nhóm khác nhau: self (những tế bào của cơ thể tạo ra) và non-self (những tế bào lạ), đồng thời loại bỏ các tế bào thuộc loại non-self Hệ miễn dịch bẩm sinh chủ yếu dựa vào bạch cầu hạt và đại thực bào, còn hệ miễn dịch thích nghi dựa vào tế bào lymphô (lymphocyte) Các tế bào lymphô được chia làm hai loại là Bcell và T-cell, chúng có khả năng ghi nhớ, thích nghi, và mang những phần tử thụ cảm trên bề mặt có khả năng nhận diện kháng nguyên (antigen) Vai trò chính của B-cell là sản sinh ra các kháng thể (antibody) tương ứng với các tác nhân gây bệnh, còn chức năng chính của T-cell là điều chỉnh các tế bào khác và tấn công trực tiếp các tế bào gây ra sự lây nhiễm trong cơ thể Khi có kháng nguyên xâm nhập vào cơ thể, các cơ quan thụ cảm trên bề mặt của lymphô bào được kích hoạt và thực hiện quá trình nhân rộng, đột biến và tạo ra những kháng thể thích hợp có khả năng nhận diện cũng như loại bỏ kháng nguyên Một

số lymphô bào sẽ trở thành tế bào ghi nhớ và lưu thông trong cơ thể, sau đó, nếu có loại kháng nguyên tương tự lây nhiễm thì hệ miễn dịch thích nghi có thể nhanh chóng phát hiện và loại bỏ chúng Khả năng "tự hoàn thiện" này của hệ miễn dịch giúp cơ thể không mắc lại những bệnh cũ Hệ miễn dịch sinh học bao gồm hơn 107 mạng miễn dịch con (immune sub-network) với các nguyên tắc hoạt động rất phức tạp Nó thực sự

là một hệ thống hoạt động tin cậy, thống nhất, có khả năng tính toán song song và phân tán Xét theo quan điểm của khoa học máy tính, thì việc xây dựng hệ thống tính toán

mô phỏng hệ thống miễn dịch sinh học có rất nhiều ý nghĩa thực tiễn

Trang 27

2.2.2 Cấu trúc cơ bản

AIS có cấu trúc phân tầng, điều này đảm bảo các yếu tố cơ bản của một hệ thống mô phỏng sinh học:

- Biểu diễn các thành phần của hệ thống

- Cơ chế đánh giá tương tác của các cá thể với môi trường và các cá thể với nhau Môi trường thường mô phỏng bởi một tập kích thích vào, một hoặc nhiều hàm đo độ thích nghi của cá thể với môi trường

- Các thủ tục thích nghi điều khiển tính động của hệ thống, tức là làm cho hoạt động của hệ thống thay đổi theo thời gian

Hình 2.1 Cấu trúc phân tầng của AIS Tầng đầu tiên là lĩnh vực ứng dụng Tầng này có vai trò quyết định thành phần hệ thống, cách biểu diễn và thao tác trên các thành phần Với lĩnh vực ứng dụng khác nhau thì các thành phần này cũng khác nhau

Tầng thứ hai là biểu diễn tương ứng trong AIS AIS cần phải biểu diễn được hai thành phần quan trọng: kháng thể và kháng nguyên Bên cạnh đó là các thành phần khác nếu có yêu cầu từ các tầng khác trong hệ thống

Trang 28

Tầng thứ ba là các phương pháp đánh giá độ thích hợp Tùy thuộc vào bài toán, cách biểu diễn các thành phần có thể sử dụng nhiều phương pháp khác nhau như khoảng cách Hamming, khoảng cách Euclid, hoặc khoảng cách Mahattan

Tầng thứ tư là các thuật toán miễn dịch Có thể sử dụng một hoặc kết hợp nhiều thuật toán như chọn lọc tích cực, chọn lọc tiêu cực, chọn lọc Clonal, thuật toán aiNet,

để điều chỉnh tính động của hệ AIS

Tầng thứ năm là lời giải cho bài toán Lời giải của bài toán sẽ được cập nhật lại sau khi một quần thể mới được tạo ra và đưa ra kết quả cuối cùng khi đạt đến điều kiện kết thúc nào đó, chẳng hạn như sau một số lần lặp nhất định

2.2.3 Một số thuật toán trong hệ miễn dịch nhân tạo

AIS có nhiều thuật toán phỏng theo cơ chế của hệ miễn dịch sinh học bao gồm: chọn lọc âm tính (Negative Selection), chọn lọc nhân bản (Clonal Selection) và mạng miễn dịch (aiNet)

2.2.3.1 Giải thuật chọn lọc âm tính

Trong hệ miễn dịch sinh học, tế bào lympho T trưởng thành trong tuyến ức, trải qua một quá trình chọn lọc gọi là chọn lọc tiêu cực Trong phép chọn này, các tế bào lympho T mà nhận dạng các tế bào của cơ thể sẽ bị tiêu diệt Sau khi chọn lọc, các lympho T không nhận dạng các tế bào của cơ thể được phóng thích và cung cấp khả năng bảo vệ cơ thể chống lại các kháng nguyên Cơ chế này trong hệ miễn dịch rất mạnh vì sự phân loại tự nhiên và hiệu quả cao của nó

Các bước chính của thuật toán chọn lọc âm tính NSA (Negative Selection Algorithm):

 Bước 1 Khởi tạo: Sản sinh một quần thể tiềm năng P những T-cell chưa trưởng thành Giả thiết tất cả các phần tử (các cơ quan thụ cảm và các

selfpeptide) được biểu diễn bằng một chuỗi nhị phân L bit

Trang 29

 Bước 2 Đánh giá độ thích hợp: Xác định độ thích hợp của tất cả T-cell trong

P với mọi phần tử của tập self-set S

 Bước 3 Tạo một quần thể có giá trị: Nếu độ thích hợp của một T-cell chưa trưởng thành với ít nhất một phần tử self-peptide lớn hơn hoặc bằng một ngưỡng tương tác chéo nào đó, thì T-cell nhận diện được self-peptide này và

bị loại bỏ, trái lại T-cell được bổ sung vào quần thể có giá trị A

Mô hình thuật toán:

Hình 2.2 Mô hình thuật toán chọn lọc âm tính

2.2.3.2 Chọn lọc nhân bản

Thuật toán chọn lọc nhân bản CLONALG (Clonal Selection Algorithm) được sử dụng trong AIS để xác định các đặc điểm cơ bản của một đáp ứng miễn dịch đối với một kháng nguyên Trong thuật toán này, chỉ các kháng thể nhận diện được kháng nguyên mới được chọn để sinh trưởng Các kháng thể được chọn trải qua một quá trình thành thục ái lực để củng cố ái lực của chúng đối với các kháng nguyên

Giải thuâ ̣t cho ̣n lo ̣c nhân bản được phát triên dựa trên lý thuyết cho ̣n lo ̣c nhân bản được đưa ra gần 50 năm trước Các nhân tố miễn di ̣ch chính được sử du ̣ng trong giải thuật này là:

 Sự duy trì tâ ̣p nhớ cu ̣ thể

 Sự cho ̣n lo ̣c và nhân bản phần lớn các kháng thể được kích thích

Trang 30

 Sự đào thải các kháng thể mang tính kích thích yếu hoă ̣c không được kích thích.

 Sự trưởng thành ái lực (siêu đô ̣t biến) của các tế bào miễn di ̣ch đã được kích hoa ̣t

 Phát sinh và duy trì tâ ̣p kháng thể đa dạng

Giải thuâ ̣t cho ̣n lo ̣c nhân bản (De Castro và Von ZUben, 2000) [11], rất giống với

mô ̣t loa ̣i giải thuâ ̣t tiến hóa mang tên chiến lược tiến hóa (Beyer và Schwefel 2002) [10] mặc dù chúng bắt nguồn từ hai quá trình sinh ho ̣c khác nhau Các giải thuâ ̣t cho ̣n

lo ̣c nhân bản cũng là da ̣ng tìm kiếm trên quần thể và các thuâ ̣t toán tối ưu sản sinh ra

mô ̣t vùng nhớ các kháng thể phù hợp để giải quyết một vấn đề cụ thể nào đó

Trong các giải thuâ ̣t cho ̣n lo ̣c nhân bản, mỗi kháng thể và kháng nguyên được biểu diễn bởi 1 tâ ̣p các thuô ̣c tính {x1, x2 xn} Theo đó, các kháng thể và kháng nguyên có thể được biểu diễn như các điểm n chiều trong không gian (không gian Euclidean chẳng ha ̣n) hoă ̣c sử du ̣ng mã hóa nhi ̣ phân các thuô ̣c tính; bên ca ̣nh đó, các

da ̣ng biểu diễn khác cũng được sử du ̣ng

Ái lực kháng nguyên của mỗi kháng thể được đă ̣c trưng bởi giá trị đo, thường là khoảng cách Euclidean Mô ̣t số toán tử được xác đi ̣nh để gây ra sự biến đổi gen trên kháng thể dựa trên ái lực kháng nguyên của chúng Đầu tiên, mô ̣t phép nhân bản được xác đi ̣nh để ta ̣o ra mô ̣t bản sao chính xác của những kháng thể có ái lực kháng nguyên cao; ái lực này càng cao, số lượng bản sao càng lớn Khi đó, mô ̣t vài biến đổi gen được áp du ̣ng lên các kháng thể này (thông qua phép đô ̣t biến) để chúng có khả năng gắn khớp với kháng nguyên tốt hơn

Mă ̣c dù mô ̣t vài biến thể của giải thuâ ̣t cho ̣n lo ̣c nhân bản đã được giới thiê ̣u, song phần lớn chúng đều có chung những đă ̣c điểm như giải thuâ ̣t gốc

Trong suốt quá trình trưởng thành ái lực, khi những kháng thể đã biến đổi gen được thêm vào quần thể hiê ̣n ta ̣i để tái cho ̣n lo ̣c cá thể tốt nhất và giữ những cá thể tốt

Trang 31

nhất này làm vùng nhớ của kháng nguyên thực ta ̣i, ta cần tính các ái lực giữa các kháng thể mới hướng đến kháng nguyên; toàn bô ̣ tâ ̣p kháng thể cần được xếp ha ̣ng, tiếp theo sau đó là một quá trình cho ̣n lo ̣c

Hình 2.3 Sơ đồ giải thuật chọn lọc nhân bản Thuâ ̣t toán cho ̣n lo ̣c nhân bản:

1 Khởi ta ̣o: Ta ̣o mô ̣t quần thể ngẫu nhiên các kháng thể P

2 Trình diện kháng nguyên

For each kha ́ng nguyên do

2.1 Ước lượng ái lực

Trang 32

Trình diê ̣n kháng nguyên hiê ̣n ta ̣i cho kháng thể hiê ̣n ta ̣i quần thể P

Tính ái lực giữa kháng thể hướng đến kháng nguyên hiê ̣n ta ̣i

2.2 Chọn lo ̣c và mở rô ̣ng nhân bản

Cho ̣n ra 1 nhóm các kháng thể trong P có ái lực cao nhất

Phát sinh các bản sao chính xác của các kháng thể này dựa theo ái lực của chúng, ái lực càng cao, càng nhiều bản sao

2.3 Trưở ng thành ái lực: Biến đổi tất cả các bản sao với tỉ lê ̣ nghi ̣ch với ái lực của chúng Thêm các kháng thể biến đổi này vào P, tái cho ̣n

lo ̣c cá thể tốt nhất và giữ chúng thành vùng nhớ của kháng nguyên này 2.4 Siêu động lực: Thay kháng thể có ái lực nhỏ nhất bởi kháng thể được phát sinh ngẫu nhiên

Bảng 2.1 So sánh giải thuật tiến hoá cơ bản và giải thuật chọn lọc nhân bản Đặc trưng Giải thật di truyền Giải thuật CLONALG

Đột biến Giao chéo

Siêu đột biến Chọn lọc

Trang 33

Ở bảng trên, giải thuâ ̣t cho ̣n lo ̣c nhân bản được so sánh với giải thuâ ̣t tiến hóa cơ bản Cần chú ý rằng, những điểm khác biê ̣t nằm chủ yếu ở kĩ thuâ ̣t được sử du ̣ng Trong các thuâ ̣t toán cho ̣n lo ̣c nhân bản, cơ chế để cho ̣n kháng thể phù hợp dựa trên ái lực với kháng nguyên Theo đó, các cơ chế cho ̣n lo ̣c truyền thống được sử du ̣ng trong tính toán tiến hóa, ví như cho ̣n lo ̣c cân bằng hoă ̣c cho ̣n lo ̣c ca ̣nh tranh sẽ dễ dàng áp

du ̣ng trong các giải thuâ ̣t cho ̣n lo ̣c nhân bản Trong thuâ ̣t toán tiến hóa, xác suất để mô ̣t cá thể được cho ̣n được xác đi ̣nh dựa trên đô ̣ phù hợp của nó, và tương ứng với ái lực giữa kháng thể, kháng nguyên trong chọn lọc nhân bản

Mô ̣t vài phiên bản của các giải thuâ ̣t cho ̣n lo ̣c nhân bản được đề ra bởi Castro và Von Zuben (2000) và de Castro (2003) và được sử du ̣ng để nhâ ̣n da ̣ng mẫu và viê ̣c tối

ưu hàm đa mô hình, được mô tả như sau:

5. Cj trải qua quá trình trưởng thành ái lực, biến đổi các kháng thể tỉ lê ̣ nghi ̣ch với ái lực kháng nguyên của chúng để ta ̣o ra quần thể các bản sao trưởng thành theo nguyên tắc ái lực càng cao, biến đổi càng ít

Trang 34

6. Xác đi ̣nh ái lực fj* của các bản sao trưởng thành Cj* ứng với kháng nguyên Agj

7. Tái cho ̣n lo ̣c cá thể có ái lực cao nhất (trong tâ ̣p Cj*) ứng với kháng nguyên Agj để trở thành phần tử của tâ ̣p kháng thể ghi nhớ (Ab{m}) Nếu ái lực hướng kháng nguyên Agj của kháng thể này lớn hơn kháng thể ghi nhớ tương ứng Ab, Abj* sẽ thay thế Ab

8. Cuối cùng, thay những kháng nguyên có ái lực nhỏ nhất trong tâ ̣p Abj{r} bởi những cá thể mới

Có các phiên bản khác của giải thuâ ̣t cho ̣n lo ̣c nhân bản, phiên bản áp du ̣ng để nhâ ̣n da ̣ng mẫu đòi hỏi mô ̣t tâ ̣p các mẫu cần nhâ ̣n da ̣ng như đầu vào, trong khi các phiên bản cho viê ̣c tối ưu cần mô ̣t hàm đối tượng để tối ưu

2.2.3.3 Mạng miễn dịch nhân tạo

Mạng miễn dịch nhân tạo (Artificial Immune System -AiNet) là một trong các mô hình tính toán của AIS đang được quan tâm trong những năm gần đây Mô hình Ainet được lấy cảm hứng từ lý thuyết mạng miễn dịch lần đầu được đề ra bởi Jerne năm 1974 [12] Mô hình này được phát triển dựa trên các ý tưởng và khái niệm của 3 lý thuyết:

Lý thuyết mạng miễn dịch, chọn lọc nhân bản và trưởng thành ái lực Trong đó, vai trò của mạng miễn dịch nhân tạo nhằm thực hiện việc nén dữ liệu sau khi đã trải qua các quá trình chọn lọc nhân bản và trưởng thành ái lực Mô hình aiNet cấu thành từ một nhóm các tế bào, còn được gọi là kháng thể, lien kết với nhau bởi các kết nối có cường

độ phù hợp Các kháng thể đại diễn cho hình ảnh nội mạng của các mẫu đầu vào mà chúng tiếp xúc Các kết nối giữa các kháng thể xác định sự tương quan với một mức

độ tương tự lẫn nhau giữa chúng Các kháng thể càng gần nhau càng tương tự, điều này dẫn đến một mạng lưới các kháng thể có thể nhận dạng các kháng nguyên với tính tổng quát linh động điều chỉnh

Trang 35

AiNet có thể được xem như một mô hình mạng miễn dịch nhân tạo tiến hoá, bởi

vì các chiến lược tiến hoá dựa trên các biển đổi và chọn lọc di truyền bên trong một quần thể các kháng thể được sử dụng để điều khiển tính linh động và mềm dẻo của mạng Nhiều nghiên cứu cho thấy aiNet có khả năng phát hiện các giải pháp tối ưu Ainet cũng là một hệ thống kết nối, ma trận các cường độ kết nối được xác định để xác định ái lực giữa các tế bào trong mạng Giải thuật huấn luyện mạng hướng đến việc xây dựng một tập nhớ có thể nhận biết tổ chức cấu trúc của dữ liệu huấn luyện

Mặt khác, ta có thể xem AiNet như là một phiên bản nâng cao hơn của mô hình chọn lọc nhân bản Ở đây, không chỉ sự tương tác giữa kháng thể và kháng nguyên được xem xét mà them bào đó, sự tương tác giữa các kháng thể với nhau cũng được quan tâm, để xây dựng nên một mạng các khảng thể, loại bỏ các kháng thể dư thừa nhằm nâng cao tính tổng quát của cả hệ thống

2.2.4 Các lĩnh vực ứng dụng AIS

2.2.4.1 Điều khiển

Hiện nay, trong các hệ thống điều khiển, đặc biệt là các hệ thống tự động hoá hỗ trợ cho con người như việc tự động lái xe, điều khiển máy bay tự động, dây chuyền sản xuất tự động, AIS được sử dụng rộng rãi, kết hợp với các mô hình tin-sinh học khác như giải thuật di truyền, mạng nơ-ron nhân tạo để xây dựng nên các hệ thống có khả năng học được những thao tác phức tạp trong quá trình điều khiển

Trang 36

các bộ phát hiện có khả năng nhận dạng ra các yếu độ xâm nhập độc hại chính là các kháng nguyên

2.2.4.3 Tối ưu hóa

Nhiều mô hình của hệ miễn dịch nhân tạo được vận dụng vào giải quyết bài toán tìm lời giải toán ưu cho các vấn đề không thể giải được theo các thông thường Việc vận dụng cơ chế tiến hoá quần thể của giải thuật di truyền vào trong các mô hình hễ miễn dịch nhân tạo cũng như việc kết hợp mạng nơ-ron nhân tạo giúp xây dựng nên các mô hình học có khả năng tăng cương tính hội tụ của thuật toán, sự đa dạng của quần thể các giải pháp,…

2.2.4.4 Khai phá dữ liệu

Trong lĩnh vực khai phá dữ liệu, nhờ khả năng phân nhỏ dữ liệu để học và phát sinh nên tập các kháng thể cũng như tính tổng quát cáo của các lời giải được phát sinh, AIS được áp dụng rộng rãi, cụ thể như phân lớp DNA sinh học, phân tích dữ liệu y học, thương mại, chuẩn đoán cấu trúc protein

2.3 Mạng nơ-ron nhân tạo

Trong các mô hình máy học mô phỏng sinh học, mạng nơ-ron nhân tạo là mô hình được sử dụng rộng rãi nhất Về bản chất, mạng nơ-ron nhân tạo là một mạng lưới

xử lý thông tin được phát triển dựa trên cơ chế hoạt động của hệ thần kinh con người

và động vật Những đặc tính quan trọng nhất của mạng thần kinh sinh học được mô phỏng trong mạng nơ-ron sinh học bao gồm khả năng học kinh nghiệm thông qua huấn luyện, khả năng lưu trữ thông tin và sử dụng thông tin này để dự đoán các dữ liệu chưa biết

Trang 37

2.3.1 Cấu trúc cơ bản của mạng nơ-ron nhân tạo

2.3.1.1 Cấu trúc của một nơ-ron nhân tạo

Mạng nơ-ron nhân tạo là một mạng lưới các đơn vị xử lý cơ bản được kết nối lẫn nhau Mỗi đơn vị xử lý này có khả năng thực hiện một chức năng tính toán độc lập

và được gọi là một nơ-ron

Hình 2.4 Cấu tạo nơ-ron nhân tạo Một nơ-ron bao gồm 3 thành phần chính, đầu tiên là một tập các đầu vào, mỗi liên kết vào này có một giá trị trọng số quy định tầm quan trọng của chúng Mộ hàm tổng hợp được dung để tính toán giá trị đầu vào, thương được dùng ở dạng tuyến tính

Và một hàm kích hoạt có chức năng biến đổi kết quả đầu vào thành một dạng đầu ra

Trang 38

2.3.1.2 Cấu trúc của mạng nơ-ron

Hình 2.5 Cấu trúc mạng nơ-ron đa lớp Một ANN thường có cấu trúc phân lớp, với 3 thành phần chính là lớp input, lớp output và tập các lớp ẩn

Lớp Input có nhiệm vụ chính là nhận các dữ liệu đầu vào và truyền dữ liệu vào các phân lớp nơ-ron phía trong Lớp Output bao gồm các nơ-ron đảm nhiệm chức năng

xử lý đầu ra cuối cùng của cả mạng Lớp ẩn có thể bao gồm từ một hai nhiều lớp khác nhau, mỗi lớp nhận dữ liệu từ các lớp trước đó, xử lý, và truyền tải lại kết quả đầu ra cho các nơ-ron phía sau

Trang 39

2.3.2 Một số loại mạng nơ-ron nhân tạo

2.3.2.1 Mạng dẫn tiến

Trong mạng dẫn tiến liên kết giữa các nơ-ron không tồn tại một chu trình Tín hiệu đi một chiều từ các nơ-ron lớp vào lần lượt qua các lớp ẩn và cuối cùng đi ra ở nơ-ron lớp ra Kiến trúc này đáp ứng nhanh và ổn định đối với một tín hiệu đưa vào mạng Liên kết giữa các lớp có thể là loại liên kết đầy đủ (fully connected) hoặc liên kết một phần (partly connected)

Giải thuật học của mạng dẫn tiến là giải thuật lan truyền ngược

Hình 2.6 Mạng dẫn tiến Trong các kiểu mạng đã tìm hiểu, kiểu mạng dẫn tiến rất phù hợp với mục tiêu nghiên cứu của học viên Đây là kiểu mạng được trình bày và sử dụng xuyên suốt báo cáo

2.3.2.2 Mạng hồi quy Hopfield

Trong mạng hồi quy Hopfield, bên cạnh các kết nối tương tự như trong kiểu mạng dẫn tiến, các kết nối ngược được xây dựng để định hướng dòng dữ liệu đầu ra trở lại đầu vào, để xây dựng khả năng ghi nhớ của mạng nơ-ron

Trang 40

Hình 2.7 Mạng hồi quy

2.3.2.3 Mạng cạnh tranh

Mô hình mạng cạnh tranh thuộc kiểu học không giám sát, xây dựng nên các nút mạng có khả năng cạnh tranh với nhau để giành quyền phản hồi Kiểu mạng này có thuộc tính khác với dạng lan truyền ngược, ở đây, sự kiểm soát của người dùng được hạn chế mà thay vào đó, mạng no-rơn sẽ tiến hành cạnh tranh trong mạng và tự quyết định mẫu đầu vào nào sẽ được học Kết quả của quá trình này là khả năng nhận dạng các một mẫu nào đó tồn tại trong dữ liệu thích hợp cho việc xác định các mẫu trong thị trường tiền tệ và giao dịch chứng khoán

2.3.2.4 Mạng nơ-ron hàm radial

Trong môi hình này, các hàm kích hoạt được sử dụng là loại hàm dạn radial, tức

là kết quả xuất ra phụ thuộc vào khoảng cách đến một điểm nào đó Dữ liệu nhập qua các hàm radial, tính toán các thông số, các giá trị này được tổ hợp tuyến tính và trả về đầu ra của mạng

Ngày đăng: 23/12/2018, 06:18

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] Dipankar Dasgupta and Luis Fernando Niủo (2009), Immunological Computation - Theory and Applications.: CRC Press Sách, tạp chí
Tiêu đề: Immunological Computation - Theory and Applications
Tác giả: Dipankar Dasgupta and Luis Fernando Niủo
Năm: 2009
[3] Yi Chen, A. Narayanan, Shaoning Pang, and Ban Tao (May 2012), "Multiple sequence alignment and artificial neural networks for malicious software detection," in 2012 Eighth International Conference on Natural Computation, Chongqing , pp. 261-265 Sách, tạp chí
Tiêu đề: Multiple sequence alignment and artificial neural networks for malicious software detection
[4] Murad Abdo Rassam and Mohd. Aizaini Maarof ( 2012), "Artificial Immune Network Clustering approach for Anomaly Intrusion Detection,"Journal of Advances in Information Technology, vol. 3, pp. 147-154 Sách, tạp chí
Tiêu đề: Artificial Immune Network Clustering approach for Anomaly Intrusion Detection
[5] Shivani Shah, Himali Jani, and Sathvik Shetty (December 2013), "Virus Detection using Artificial Neural Networks," International Journal of Computer Applications , vol. 84, no. 5, pp. 17-23 Sách, tạp chí
Tiêu đề: Virus Detection using Artificial Neural Networks
[6] Suha Afaneh and Raed Abu Zita (2013), "Virus detection using clonal selection algorithm with Genetic Algorithm," Applied Soft Computing, vol.13, no. 1, pp. 239-246 Sách, tạp chí
Tiêu đề: Virus detection using clonal selection algorithm with Genetic Algorithm
Tác giả: Suha Afaneh and Raed Abu Zita
Năm: 2013
[7] Vu Thanh Nguyen et al. (2014), "A combination of Clonal Selection Algorithm and Artificial Neural Networks for Virus Detection," Advances in Sách, tạp chí
Tiêu đề: A combination of Clonal Selection Algorithm and Artificial Neural Networks for Virus Detection
Tác giả: Vu Thanh Nguyen et al
Năm: 2014
[8] Vu Thanh Nguyen, Tan Toan Nguyen, Khang Trong Mai, and Tuan Dinh Le (2014), "Negative Selection Algorithm and Artificial Immune Network for Virus Detection," in First International Conference on Future Data and Security Engineering 2014, Ho Chi Minh City Sách, tạp chí
Tiêu đề: Negative Selection Algorithm and Artificial Immune Network for Virus Detection
Tác giả: Vu Thanh Nguyen, Tan Toan Nguyen, Khang Trong Mai, and Tuan Dinh Le
Năm: 2014
[9] Warren S. McCulloch and Walter Pitts (December 1943), "A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics," The bulletin of mathematical biophysics, vol. 5, no. 4, pp. 115- 133 Sách, tạp chí
Tiêu đề: A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics
[10] Agoston Eiben and James Smith (2003), Introduction to evolutionary computing.: Springer Sách, tạp chí
Tiêu đề: Introduction to evolutionary computing
Tác giả: Agoston Eiben and James Smith
Năm: 2003
[11] Leandro Nunes de Castro and Fernado José Von Zuben (2002), "Learning and optimization using the clonal selection principle," in Evolutionary Computation.: IEEE, pp. 239-251 Sách, tạp chí
Tiêu đề: Learning and optimization using the clonal selection principle
Tác giả: Leandro Nunes de Castro and Fernado José Von Zuben
Năm: 2002
[12] Niels Kaj Jerne (1974), "Towards a network theory of the immune system," Ann Immunol (Paris), pp. 373-389 Sách, tạp chí
Tiêu đề: Towards a network theory of the immune system
Tác giả: Niels Kaj Jerne
Năm: 1974
[13] VirusSign- Malware Research & Data Center (Aug. 2016), http://www.virussign.com/ Link

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w