Mô hình phát hiện URL độc hại dựa trên học sâu

Một phần của tài liệu Phát hiện url độc hại dựa trên học sâu (Trang 41 - 45)

CHƯƠNG II: PHÁT HIỆN URL ĐỘC HẠI DỰA TRÊN HỌC SÂU

2.2. Mô hình phát hiện URL độc hại dựa trên học sâu

Mục tiêu của chúng ta là xác định xem từ các URL đã cho, URL nào là độc hại và không độc hại. Cho một tập gồm t URL {(u1, y1), (u2, y2), (u3, y3), …, (ut , yt)}

trong đó ux với x = 1, ….,T biểu thị một URL và yx thuộc tập {0;1} biểu thị nhãn của URL, với y = 1 thể hiện đây là một URL độc hại và y = 0 thể hiện đây là một URL an toàn.

Hình 2-5 Mô hình phát hiện URL độc hại dựa trên học sâu CNN

Mô hình phát hiện URL độc hại dựa trên học sâu CNN, như biểu diễn trên Hình 2-5 nhận bốn đầu vào. Đầu vào đầu tiên đến từ URL đã được thực hiện tokenization và padding. Các đầu vào còn lại là các subdomains, domains và suffix domains được encoded. Đầu vào URL sẽ được đi qua lớp nhúng và lớp tích chập trong khi các đầu vào khác sẽ đi qua lớp nhúng. Sau đó các kết quả từ mỗi đầu vào sẽ được kết hợp lại với nhau. Lớp tích chập đầu tiên gồm 64 bộ lọc với kích thước kernel là 3. Lớp tích chập thứ hai có 64 bộ lọc với kích thước kernel của 5 ReLU kích hoạt theo sau là lớp concatenate. Cuối cùng là lớp kết nối đầy đủ với một nơ ron.

2.2.2 Kiến trúc mô hình a. Đầu vào:

 Đầu vào đầu tiên là URL đã được tokenization và padding để có cùng độ dài. Đây là một chuỗi các từ hoặc ký tự đại diện cho URL.

 Các đầu vào tiếp theo là subdomains, domains và suffix domains, được biểu diễn dưới dạng các số nguyên (encoded) để mô hình có thể hiểu được.

b. Lớp nhúng (Embedding):

 Đầu vào URL được đưa qua một lớp nhúng (Embedding layer) để biểu diễn các từ trong URL dưới dạng vectơ có chiều số cố định.

 Các đầu vào subdomains, domains và suffix domains cũng được đi qua các lớp nhúng tương tự để biểu diễn các số nguyên tương ứng thành các vectơ.

c. Lớp tích chập (Convolutional layer):

 Đầu vào URL được đưa qua một lớp tích chập (Conv1D) đầu tiên với 64 bộ lọc (filters) và kích thước kernel là 3.

 Sau đó, kết quả của lớp tích chập đầu tiên được đưa qua một lớp tích chập thứ hai với 64 bộ lọc và kích thước kernel là 5.

 Mục đích của các lớp tích chập là học các đặc trưng cục bộ trong URL.

d. Lớp Flatten:

 Kết quả từ lớp tích chập cuối cùng và các lớp nhúng của subdomains, domains và suffix domains được làm phẳng thành các vectơ 1 chiều.

e. Kết hợp các đầu vào:

 Kết quả từ lớp tích chập của URL và các lớp Flatten của subdomains, domains và suffix domains được kết hợp lại với nhau bằng lớp concatenate để tạo ra một vectơ đại diện cho toàn bộ URL.

f. Lớp kết nối đầy đủ (Fully Connected layer):

 Kết quả từ quá trình kết hợp được đưa vào một lớp kết nối đầy đủ (Dense layer) với 64 nơ ron.

 Hàm kích hoạt relu được sử dụng để tạo ra các giá trị không âm và đạt được sự phi tuyến tính trong mô hình.

g. Lớp đầu ra:

 Kết quả từ lớp kết nối đầy đủ cuối cùng được đưa vào một lớp kết nối đầy đủ (Dense layer) với 1 nơ ron.

 Hàm kích hoạt sigmoid được sử dụng để tính xác suất của đầu ra là độc hại hoặc không độc hại.

2.2.3 Tiêu chuẩn đánh giá mô hình

Hình 2-6 Confusion matrix của TN, FN, FP, và TP Để đánh giá hiệu suất của mô ta sử dụng các chỉ số sau:

True positive (TP): các URL độc hại mà được phân loại chính xác là các URL độc hại

True negative (TN): các URL an toàn mà được phân loại chính xác là các URL an toàn.

False positive (FP): các URL an toàn mà được phân loại không chính xác là các URL độc hại.

False negative (FN): các URL độc hại mà được phân loại không chính xác là các URL an toàn. Các chỉ số trên được lấy từ một confusion matrix. Confusion matrix (ma trận nhầm lẫn) hay còn được gọi là error matrix (ma trận lỗi). Confusion matrix là thuật ngữ quan trọng được dùng trong machine learning, tương đương với khái niệm contingency table hay cross-table bên thống kê. Nó có bản chất là một bảng phân phối tần số 2 chiều (bảng chéo) cho phép trình bày tỉ lệ tương hợp và bất xứng giữa thực tế và kết quả phân loại của quy luật cần kiểm tra (mô hình). Nó là một công cụ hữu ích để đánh giá và cải thiện hiệu suất của mô hình phân loại trong machine learning. Trong đề án này, chỉ xét trường hợp đơn giản nhất của confusion matrix áp dụng cho bài toán phân loại nhị phân (Binary classification).

Từ 4 giá trị TP, TN, FP, FN, tiêu chuẩn đánh giá mô hình được tính theo những công thức sau:

Recall được xác định bằng số URL đựơc phân loại chính xác là độc hại chia cho tổng của tổng của số URL đựơc phân loại chính xác là độc hại và số URL độc hại được phân loại là các URL an toàn và được tính theo công thức sau:

Recall = 𝑇𝑃

𝑇𝑃+𝐹𝑁∗ 100% (1)

Precision được xác định bằng số URL độc hại đựơc phân loại chính xác là độc hại chia cho tổng của tổng của số URL đựơc phân loại chính xác là độc hại và số URL an toàn được phân loại là các URL độc hại và được tính theo công thức sau:

Precision= 𝑇𝑃

𝑇𝑃+𝐹𝑃∗ 100% (2)

F1 cũng được sử dụng để tính toán độ chính xác của mô hình và được tính bằng công thức :

F1 = 2 ∗ 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛∗𝑟𝑒𝑐𝑎𝑙𝑙

𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛+𝑟𝑒𝑐𝑎𝑙𝑙∗ 100 % (3)

Hàm F1 thực chất là hàm F-score với Fò với ò =1 để đỏnh giỏ tổng thể hiệu suất của mô hình phân loại mà không thiên vị một yếu tố nào trong precision và recall.

Loss được tính toán bằng giá trị hàm BinaryCrossentropy() của tensorflow, sử dụng để tính tổn thất giữa các nhãn chính xác và các nhãn được dự đoán.

Các giá trị val recall, val loss, val precision, val f1 là các giá trị recall, loss, precision, f1 nhưng được thực hiện trên tập dữ liệu dùng để validation.

Một phần của tài liệu Phát hiện url độc hại dựa trên học sâu (Trang 41 - 45)

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

(61 trang)