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

Tiểu luận Công nghệ tri thức và ứng dụng ỨNG DỤNG MÁY HỌC ĐỂ NHẬN DẠNGVIRUS MÁY TÍNH

27 457 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 27
Dung lượng 406,88 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

LỜI MỞ ĐẦUTrong những năm gần đây cùng với sự phát triển mạnh mẽ của công nghệ thông tin thì các hình thức virus cũng trở nên đa dạng và phong phú.Khi một loại virus mới ra đời thì các n

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA KHOA HỌC MÁY TÍNH

Giảngviênhướngdẫn : GS.TSKH HOÀNG VĂN KIẾM

Họcviênthựchiện: NGUYỄN THỊ DIỄM AN

TP HồChí Minh, tháng 10 năm 2014

Trang 2

LỜI MỞ ĐẦU

Trong những năm gần đây cùng với sự phát triển mạnh mẽ của công

nghệ thông tin thì các hình thức virus cũng trở nên đa dạng và phong phú.Khi một loại virus mới ra đời thì các nhà lập trình phải mất một khoảng thời gian khá lâu để nhận diện và tiêu diệt nó, đủ lâu để các virus gây hại trên diện rộng cho các hệ thống máy tính

Thuật toán để cho máy học là một phạm trù rất rộng lớn, trong tiểu luậnnày em chủ yếu tập trung vào mô hình hệ miễn dịch nhân tạo, mạng neuron để phân tích, nhận dạng virus và dự báo virus mới

Việc vận dụng mạng neron mô phỏng hoạt động của mạng neuron con người, có khả năng ghi nhớ và nhận biết, từ đó hỗ trợ chương trình nhận dạng được các loại virus

Trang 3

LỜI CẢM ƠN

Lời đầu tiên em muốn bày tỏ sự cảm ơn của mình tới thầy Hoàng Văn Kiếm chịu trách nhiệm giảng dạy cho chúng em bộ môn Cơ Sở Tri Thức trường Đại học Công NghệThông Tin, ĐHQG – Tp.HCM Thầy đã tận tụy hướng dẫn những kiến thức mới và những kinh nghiệm mà thầy đã trải qua, và cùng những gợi ý để chúng em có những ý tưởng cho bài tiểu luận của mình.

Dù đã có nhiều cố gắng nhưng chắc chắn sẽ không tránh khỏi những thiếu sót.Em rất mong nhận được sự đóng góp ý kiến của các Thầy và các bạn đểbài tiểu luận them hoàn thiên.

em xin chân thành cảm ơn!

Tp Hồ Chí Minh, tháng 10 năm 2014

Học viên Nguyễn Thị Diễm An

Trang 4

MỤC LỤC

CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN ĐỀ TÀI 4

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

1.2 Ý tưởng 4

1.3 Mục tiêu của đề tài 5

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 6

2.1 Nhận dạng virus 6

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

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

2.4 Mạng lan truyền ngươc 11

CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH 17

3.1 Phân tích yêu cầu 17

3.2 Triển khai hệ thống 18

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 25

4.1 Kết luận 25

4.2 Hướng phát triển 25

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

Trang 5

CHƯƠNG1: GIỚI THIỆU TỔNG QUAN ĐỀ TÀI

nó đã kịp lây lan và gây ra những hậu quả nghiêm trọng Bởi vậy, cần mộthướng tiếp cận mới là đưa ra các phán đoán và dự báo kịp thời về các loạivirus mới.Áp dụng thuật toán máy học trong phát triển phần mềm nhằm hỗ trợphát hiện virus trên máy tính và có hướng giải quyết tiêu diệt virus đã pháthiện, điều này đáp ứng được nhu cầu đặt ra

1.2 Ý tưởng

Từ lý do các loại virus luôn luôn được đổi mới và phát triển để qua mặt các hệ thống antivirus, bên cạnh đó đi kèm với virus là rất nhiều những biến thể Bởi vậy, yêu cầu đặt ra là làm thế nào một chương trình có khả năng học hỏi và thích nghi với nhiều loại virus mới được phát triển và đưa ra những dự báo kịp thời trước khi máy tính bị nguy hại

Để đáp ứng được những yêu cầu đó thì emmô phỏng hệ miễn dịch nhântạo sinh học.Tương tự như trường hợp tiêm vacxin vào con người, từ đó conngười tiết ra kháng thể tiêu diệt được virus xâm nhập vào.Đồng thời kết hợpkhả năng mạnh mẽ của mạng nơ-rontrong quá trình học cũng như ghi nhớ lạicác loại virus đã phát hiện.Mạng nơ-ronđược nghiên cứu dựa trên cơ sở bộ nãocon người, mỗi nơ-ronhoạt động như một bộ xử lý đơn giản.Chính sự tươngtác khổng lồ giữa tất cả các nơ-ron này cùng với quá trình xử lý song song củachúng tạo nên khả năng học và ghi nhớ

Trang 6

1.3 Mục tiêu của đề tài

Với định hướng đó thì em có những mục tiêu sau:

- Tìm hiểu về cơ chế phát hiện virus bằng chuỗi nhận dạng

- Tìm hiểu về các thuật toán di truyền (chọn lọc âm tính, ) để xây dựng

hệ miễn dịch nhân tạo, nhằm rút trích các chuỗi virus

- Mục tiêu quan trong nhất là tìm hiểu về mạng no-ron, đặc biệt là mạnglan truyển ngược để xây dựng chương trình nhận dạng virus

Trang 7

CHƯƠNG 2:CƠ SỞ LÝ THUYẾT

2.1 Nhận dạng virus

Hiện nay có các loại nhận dạng virus như sau:

- Nhận dạng virus dựa vào chuỗi nhận dạng

- Nhận dạng virus dựa vào hành vi

- Nhận dạng virus dựa vào ý định

Trong tiểu luận của em sẽ tập trung vào chuỗi nhận dạng virus

Phát hiện virus dựa vào chuỗi nhận dạng

Hoạt động theo nguyên lý nhận dạng mẫu, các antivirus sử dụng một cơ

sở dữ liệu chứa mẫu virus (ID-virus library) Mỗi khi có virus mới, các chuyêngia anti-virus sẽ giải mã, trích chọn và cập nhật chuỗi nhận dạng virus vào thưviện Thông tin về đối tượng chẩn đoán (ghi nhận từ hệ thống đích) cùng vớithông tin của virus (trong thư viện mẫu) sẽ cho kết luận về tình trạng của đốitượng

Nhận dạng mẫu giúp antivirus phát hiện các virus đã biết trên tập dữliệu chuẩn đoán với độ chính xác cao Tuy nhiên phương pháp này có khánhiều nhược điểm như:

 Cồng kềnh: Kích thước thư viện mẫu tỷ lệ thuận với số virus đã cậpnhật và tỷ lệ nghịch với tốc độ tìm kiếm

 Bị động: Antivirus chỉ hiệu quả trên các mẫu virus đã cập nhật, khôngđáp ứng kịp thời dịch bệnh do tốn thời gian cho việc thu thập mẫu virusmới, giải mã, phân tích, lập thuật giải, cập nhật phiên bản mới, pháthành…

 Nhầm lẫn: Các hacker cố gắng tạo vỏ bọc an toàn cho virus Khiantivirus so mẫu chẩn đoán giống với virus, dữ liệu sạch của hệ thống

sẽ bị tẩy nhầm

Trang 8

- 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ácnhau: self (những tế bào của cơ thể tạo ra) và non-self (những tế bào lạ), đồngthời loại bỏ các tế bào thuộc loại non-self

- Thành phần hệ miễn dịch

Các dòng miễn dịch và thành phần của hệ miễn dịch

- Nhận diện và cơ chế kích hoạt

Trang 9

Sự nhận diện và cơ chế kích hoạt đơn giản

o APC (Antigen Presenting Cell): Tế bào trình diện kháng nguyên

o MHC (Major Histocompatibility Complex): Phức hợp các phần

tử có nhiệm vụ trình diện peptide kháng nguyên cho T-cell

o Pathogen: Tác nhân gây bệnh

o Lymphokines: Là một loại bạch cầu

o B-cell: Tế bào lympho B

o Actived B-cell: B-cell được kích hoạt

o T-cell: Tế bào lympho T

o Activated T-cell: T-cell được kích hoạt

o Plasma cell: Tương bào

Hình trên là một ví dụ đơn giản về cơ chế kích hoạt và nhận diện của hệmiễn dịch Phần 1 của sơ đồ cho thấy cách thức hoạt động các tế bào trình diện

Trang 10

kháng nguyên (Antigen Presenting Cells – APC).Đầu tiên những khángnguyên sẽ bị các cơ quan trình diện kháng nguyên như đại thực bào nuốt vàtiêu hoá, phân ra thành các peptide kháng nguyên.Một phần của những peptidenày kết hợp với các phần tử MHC (Major Histocompatibility Complex – phứchợp các phần tử có nhiệm vụ trình diện peptide kháng nguyên cho T-cell) trên

bề mặt của APC tạo thành phức hợp MHC/peptide (II)

T-cell mang những cơ quan thụ cảm bề mặt cho phép chúng nhận dạngcác phức hợp MHC/peptide khác nhau (III) Mỗi khi nhận diện đượcMHC/peptide, T-cell sẽ được kích hoạt, phân chia và tạo ra các lymphokine (làmột loại bạch cầu) hoặc các tín hiệu hoá học (chemical signals) kích thích cácthành phần khác của hệ miễn dịch hoạt động (IV)

Không giống T-cell (lympho bào T), B-cell (lympho bào B) có các cơquan thụ cảm có khả năng nhận diện kháng nguyên một cách tự do không cần

hỗ trợ của những phần tử MHC (V).Mỗi cơ quan thụ cảm trên bề mặt B-cellchỉ có thể nhận diện một kháng nguyên cụ thể Khi cơ quan thụ cảm B-cellnhận được tín hiệu, B-cell được kích hoạt và nhân rộng, biệt hoá (biến đổi)thành các tương bào (Plasma cell), các tương bào sẽ sản sinh ra kháng thể với

số lượng lớn Những kháng thể này sẽ vô hiệu hoá tác nhân gây bệnh.Một sốB-cell và T-cell được kích hoạt này sẽ chuyển thành các tế bào ghi nhớ(memory cell)

Chúng sẽ tiếp tục lưu thông trong cơ thể trong một khoảng thời gian

dài, giúp cơ thể chống lại những kháng nguyên tương tự lây nhiễm sau đó, nhờ

có sự “suy luận” (elicit) của hệ miễn dịch

- Một số thuật toán

Có nhiều thuật toán áp dụng trong hệ miễn dịch nhân tạo như thuật toánchọn lọc tiêu cực, chọn lọc tích cục, thuật toán nhân bản, đột biến …

trong phần này em chỉ đi nghiên cứu về thuật toán chọn lọc tiêu cực

- Thuật toán chọn lọc tiêu cực (Negative Selection Algorithm)

Có các bước tiến hành như sau:

Trang 11

Bước 1 Khởi tạo: Sản sinh một quần thể tiềm năng P những 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 self-peptide) được biểu diễn bằng một chuỗi nhị phân L bit.

T-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ộtT-cell chưa trưởng thành với ít nhất một phần tử self-peptide lớn hơnhoặ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àoquần thể có giá trị A

Thuật toán lựa chọn tiêu cực

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

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

Mạng nơ-ron nhân tạo được thiết kế để mô phỏng một số tính chất củamạng nơ-ron sinh học.Tuy nhiên, ứng dụng của nó phần lớn lại có bản chất kỹthuật Mạng nơ-ron nhân tạo là một máy mô phỏng cách bộ não hoạt động vàthực hiên các nhiệm vụ, nó giống mạng nơ-ron sinh học ở hai điểm:

o Tri thức được nắm bắt bởi nơ-ron thông qua quá trình học

o Độ lớn của trọng số kết nối nơ-ron đóng vai trò khớp nối cất giữ

Trang 12

thông tin.

- Cấu tạo mạng nơ-ron

Cấu tạo một nơ-ron nhân tạo

2.4 M ng lan truy n ng ạ ề ươ c

- Thuật toán lan truyền ngược

Mô hình:

Mạng 3 lớp lan truyền ngược

- Thuật toán

Xem xét một mạng với Q lớp lan truyền ngược, q=1,2, ,Q; với qneti và

qyi lần lượt là đầu vào và đầu ra của khối trong lớp thứ q Mạng có m nơ-ronđầu vào, một nơ-ron ở lớp ẩn, và n nơ-ron đầu ra Với qwij là trọng số nối từ q-

1wj đến qyi

Đầu vào: các cặp huấn luyện {x(k), d(k) | k=1,2, ,p}, ở đó giá trị đầu vào

Trang 13

của phần tử cuối cùng bằng -1, tức là x (k ) m+1=−1.

o Bước 0 (Đặt giá trị ban đầu)

Lựa chọn bước tính (Hằng số học) 0<η<1 và Emax (sai số lớn nhất chophép)

Chọn các trọng số ban đầu nối từ phần tử thứ j của lớp (q – 1) đến phần tửthứ i của lớp q là qwij có giá trị nhỏ và ngẫu nhiên

Cho sai số E = 0 và k = 1

o Bước 1 (Vòng lặp huấn luyện)

Áp dụng mẫu vào thứ k, cho lớp đầu vào q = 1 Khi đó ta có:

qyi= 1yi = xi(k) cho tất cả các i = 1,2,3,…,m (2.29)

o Bước 2 (Lan truyền thẳng)

Lan truyền tín hiệu thẳng xuyên suốt mạng sử dụng công thức (4.30) chomỗi i và q cho tới khi các đầu ra của lớp đầu ra Qyi được thực hiện

q y i =ă q net i )=ạ(

j

q w ij q−1 y j)

(2.30)

o Bước 3 (Đo lường sai số đầu ra)

Tính toán giá trị sai lệch và tín hiệu sai lệch Qδi cho lớp đầu ra như sau:

Trong đó: Qδi là tín hiệu sai lệch của nơ-ron thứ i cho lớp ra Q;

là đạo hàm của hàm truyền ặ) theo tổng trọng số của phần tử i củalớp đầu ra là

Trang 14

a' (Qneti)= da

d(Qneti)

o Bước 4 (lan truyền ngược sai số)

Các sai số lan truyền ngược với mục đích để cập nhật các trọng số và tínhtoán các tín hiệu sai lệch q−1δicho các lớp xử lý:

- là sai lệch tại thời điểm tính của giá trị trọng số liên kết cậpnhật mới và cũ, liên kết từ phần tử thứ j của lớp q-1 đến phần tử icủa lớp q

- là giá trị trọng số liên kết cập nhật mới từ phần tử thứ jcủa lớp (q-1) đến phần tử i của lớp q

- là giá trị trọng số liên kết cũ từ phần tử thứ j của lớp (q-1)đến phần tử i của lớp q

- là tín hiệu ra của phần tử j của lớp (q-1)

o Bước 5 (Sau mỗi vòng lặp)

Kiểm tra xem đã lặp hết các giá trị mẫu huấn luyện chưa, nếu chưa quayvòng hết (tức là k<p) tăng k=k+1, và nhảy tới bước 1, ngược lại (tức k=p) thìchuyển sang bước 6

o Bước 6 (Kiểm tra tổng sai số)

Kiểm tra sự khác nhau giữa tổng sai số và sai số cho phép:

Nếu tổng sai số nhỏ hơn sai số cho phép (tức là E < Emax) thì kết thúc quátrình huấn luyện, và ghi lại các giá trị trọng số cuối cùng

Trang 15

Trái lại, thì lại gán E = 0, k = 1 và bắt đầu một quá trình huấn luyện mớibằng cách nhảy tới bước 1.

Nói cách khác, mạng nơ-ron

tiếp tục quá trình huấn luyện tất cả

các mẫu lặp đi lặp lại cho đến khi

tổng sai số giảm dưới một giá trị

đích đã định trước rồi dừng Khi tính

toán tổng sai số cho điều kiện dừng

của mạng, cần chuyển các sai số về

giá trị dương

Sau khi mạng nơ-ron được

huấn luyện, nó sẽ có khả năng nhận

ra được không chỉ các mẫu ví dụ

hoàn thiện mà còn có thể nhận dạng

các mẫu bị lỗi, nhiễu Thực tế, ta có

thể chủ động thêm vào tập mẫu huấn

luyện các mẫu nhiễu để cải thiện khả

năng kháng lỗi của mạng Quá trình

đạo tạo sẽ hiệu quả hơn nếu các mẫu

áp dụng cho việc huấn luyện được

sắp xếp theo thứ tự ngẫu nhiên

Ngoài phương pháp so sánh tổng sai số với một giá trị định trước, ta cóthể sử dụng một tập mẫu hợp lệ để tránh cho mạng bị huấn luyện quá mức, trởnên quá chính xác và không thể nhận dạng ngay cả các mẫu nhiễu ít Ta tạo ramột tập các mẫu phụ là các mẫu nhiễu và không dùng tập này để huấn luyện.Tập mẫu nhiễu này sẽ được dùng để tính sai số sau mỗi lần huấn luyện Khi sai

số trở nên thấp thì mạng sẽ dừng quá trình huấn luyện lại

Trang 16

Biểu đồ biểu diển sai số của mạng nơ-ronKhi mạng nơ-ron được huấn luyện đầy đủ, sai số tập hợp lệ sẽ đạt cựctiểu Khi mạng bị huấn luyện quá mức, giá trị sai số của tập hợp lệ bắt đầutăng dần, và khi đó, mạng nơ-ron này sẽ mất dần khả năng xử lý các dữ liệunhiễu.

- Kích thước mạng

Khi giải quyết một vấn đề cụ thể, chúng ta sẽ phải tìm ra kích thước củamạng nơ-ron như thế nào để đạt hiệu quả nhất cho việc huấn luyện dữ liệu.Mạng nơ-ron được dùng phổ biến nhất là các mạng gồm 1 lớp nhập, một lớp

ẩn và một lớp xuất Kích thước lớp nhập được xét theo loại mẫu hay đầu vào

mà mạng sẽ xử lý Ví dụ xét mạng nơ-ron nhận dạng mẫu với mẫu là một hìnhvới 4 pixel đen trắngthì mạng sẽ phải có 4 đầu vào

Tương tự, kích thước lớp xuất được xét theo số lượng mẫu ta muốnnhận dạng và cách mã hóa đầu ra Vấn đề còn lại là kích thước lớp ẩn Theo ví

dụ nhận dạng kí tự với mạng nơ-ron dùng để huấn luyện ghi nhớ 26 chữ trongbảng chữ cái và mỗi chữ cái là một hình chữ nhật với chiều rộng là 5 ô vuông

và chiều cao là 7 ô vuông thì ta có 5 x7 ô vuông, sẽ cần 35 đầu vào, để nhậndạng 26 kí tự ta sẽ cần 26 nơ-ron xuất Mạng sẽ được huấn luyện để nhận dạngtất cả 26 kí tự với số nơ-ron lớp ẩn trong khoảng 6 đến 22 Dưới 6 nơ-ron thìmạng không đủ trọng số để chứa tất cả mẫu, trên 22 sẽ khiến tính hiệu quả củamạng giảm sút Cuối cùng, số lượng nơ-ron lớp ẩn cần được thực nghiệm để

Trang 17

o Nhược điểm

Trong nhận dạng mẫu của nó là khả năng xử lý các mẫu trong các quancảnh hỗn loạn như nhận dạng khuôn mặt trong đám đông hay 1 kí tự trong mộttrang in Do đó, chúng ta sẽ phải cần tiền xử lý dữ liệu để có được định dạngchuẩn trước khi áp dụng cho mạng

Trang 18

CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH

3

3.1 Phân tích yêu cầu

- Danh sách các yêu cầu:

Xử lý dữ liệu đầu vào

Xây dựng hệ miễn dịch nhân tao

Xây dựng mạng nơ-ron

Xây dựng tính năng nhận diện virus

- Đặc tả yêu cầu:

Xử lý dữ liệu đầu vào: là quá trình chuẩn bị dữ liệu cho chương trình

Dữ liệu đưa vào sẽ được cắt thành những bộ l*32 bit trong màn hình Input.Sau đó dữ liệu sẽ được chuyển sang cho hệ miễn dịch nhân tạo

Xây dựng mô hình hệ miễn dịch nhân tạo: là quá trình từ dữ liệu đầuvào ta tiến hành chọn lọc tiêu cực, cho dữ liệu tiếp xúc với dữ liệu sạch (môphỏng tế bào miễn dịch được chọn lọc từ những tế bào sinh ra từ tuyến ức) Dữliệu (tế bào) khi trải qua quá trình này sẽ được coi như trưởng thành và sẽđược sử dụng làm đầu vào cho huấn luyện mạng nơ-ron

Xây dựng mô hình mạng nơ-ron nhân tạo: dựa vào các bộ phát hiện đãtìm được trong hệ miễn dịch nhân tạo ta tiến hành huấn luyện mạng nơ-ron vớithuật toán lan truyền ngược Trọng số tìm được sẽ được lưu làm dữ liệu dùng

để nhận dạng virus

Xây dựng tính năng nhận diện virus: là quá trình dựa vào những giá trịtrọng số đã huấn luyện trong mạng nơ-ron để tiến hành so khớp và nhận dạngmẫu

Ngày đăng: 20/05/2015, 10:28

HÌNH ẢNH LIÊN QUAN

Hình trên là một ví dụ đơn giản về cơ chế kích hoạt và nhận diện của hệ miễn dịch. Phần 1 của sơ đồ cho thấy cách thức hoạt động các tế bào trình diện - Tiểu luận Công nghệ tri thức và ứng dụng ỨNG DỤNG MÁY HỌC ĐỂ NHẬN DẠNGVIRUS MÁY TÍNH
Hình tr ên là một ví dụ đơn giản về cơ chế kích hoạt và nhận diện của hệ miễn dịch. Phần 1 của sơ đồ cho thấy cách thức hoạt động các tế bào trình diện (Trang 9)
Sơ đồ mạng lan truyền ngược - Tiểu luận Công nghệ tri thức và ứng dụng ỨNG DỤNG MÁY HỌC ĐỂ NHẬN DẠNGVIRUS MÁY TÍNH
Sơ đồ m ạng lan truyền ngược (Trang 25)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w