Huấn luyện mô hình học sâu

Một phần của tài liệu Khóa luận tốt nghiệp An toàn thông tin: Nghiên cứu phương pháp phát hiện lỗ hổng bảo mật phần mềm bằng phương pháp học sâu (Trang 56 - 60)

BAO MAT PHAN MEM BANG HOC

3.4. Huấn luyện mô hình học sâu

Ở phần cuối cùng, chúng tôi sử dụng mô hình học sâu để huấn luyện và phân

loại bộ dit liệu. Đầu vào của chúng tôi là các vector đã được nhúng ở phần 3.3.

Mô hình được chúng tôi đề xuất sử dụng đó là GNN.

Với mô hình GNN, chúng tôi sử dụng mô hình GCN để huấn luyện. Mô hình

GCN của chúng tôi xây dựng sẽ nhận đầu vào của dit liệu dưới dạng đồ thị. Các vector nhúng ở phần 3.3 cần được xử lý đồ thị hóa dữ liệu trước khi đưa vào

mô hình của chúng tôi để huấn luyện. Để thực hiện bước này, chúng tôi cần tạo

các ma trận kề cho các vector nhúng, đồng thời các vector nhúng này cần được

chuyển hóa thành dạng các nút của đồ thị. Hình 3.7 mô tả kiến trúc sử dụng

mô hình đề xuất GCN để huấn luyện và dự đoán kết quả trên tập dữ liệu.

Cụ thể, chúng tôi xây dựng một đồ thị không đồng nhất bao gồm cả các word

nodes và slice nodes, dựa trên ý tưởng được đề xuất trong nghiên cứu của Yao

[1]. Trong ma trận đơn vị này, mỗi word hoặc slice được biểu diễn dưới dạng

vector one-hot và được sử dụng làm đầu vào cho mô hình GCN. Chúng tôi xây dựng các cạnh giữa các nút dựa trên sự xuất hiện của word trong slice (cạnh slice-word) và sự xuất hiện chung của các word trong toàn bộ ngữ liệu (cạnh word-word). Trọng số của một cạnh giữa hai nút i và 7 được định nghĩa là:

PPMI(i,7), i,j are words and i zZ j TF-IDF(i,j), 71s slice, 7 is word

0, otherwise

Giá tri term frequency-inverse document frequency (TF-IDF) của word trong

slice sẽ xác định trong số của cạnh giữa một nút slice và một nút word. Chỉ số

này dùng để đánh giá tầm quan trong của một từ trong một slice, gid trị cao

48

z Source Code H Related code slices H Slice SeVCs |

| |

Adjacency Matrix im đị) G12 ô++ Ain

đại 422 ..- Gan

CodeBERT

'Word-Slice Graph

Training and Prediction

Graph Conv. Graph Conv. FC Layer

Non Vulnerable

Vulnerable

Hành 3.7: Các bước sử dụng mô hành dé xuất GCN để huấn luyện va du đoán kết quả

49

thể hiện độ quan trọng cao của từ đối với slice. Trong đó:

e TF (Tần suất xuất hiện của từ) là số lần từ xuất hiện trong slice.

e IDF (Nghịch dao tần suất của slice) được tinh bằng công thức:

IDF = log a (3.1)

Thị

Với N là tổng số slice trong ngữ liệu và n; là số lượng slice chứa từ đó. Chỉ

số này giúp đánh giá tầm quan trọng của một từ đối với slice, các từ thường xuất hiện càng thường xuyên sẽ được gán chỉ số IDF thấp.

e Trọng số TF-IDF được tính bằng cách nhân term frequency (TF) và inverse

document frequency (IDF).

Chỉ số PPMI được dùng để xác định trong số của hai cặp từ với nhau, chỉ số

này càng cao thì mối quan hệ và số lần xuất hiện cùng nhau của hai từ càng

lớn. Giá tri PPMI của i và 7 sẽ được tính theo công thức:

PPMI(, 7) = max(log Tàn .0) (3.2)

Trong đó:

e p(i) là xác suất xuất hiện i trong một slice.

e p(7)là xác suất xuất hiện 7 trong một slice.

e p(¡,7) là xác suất xuất hiện đồng thời cả i và 7 trong một slice.

Đối với các nút của ma trận kề, chúng tôi sử dụng các vector nhúng đầu ra của mô hình CodeBERT và sử dụng chúng làm đầu vào đại diện cho các slice

node

Sau khi xây dựng được dit liệu bao gồm ma trận kề và các nút của ma trận, chúng tôi sẽ sử dụng hai dữ liệu này làm đầu vào cho mô hình GCN. Mô hình

GCN chúng tôi xây dựng cũng bao gồm hai lớp mô hình an, kèm theo các lớp fully connected để hội tụ đầu ra theo mục tiêu của bài toán phân loại văn bản.

50

Các mô hình chúng tôi sẽ sử dụng để huấn luyện bao gồm RNN, LSTM, GRU,

BiLSTM, BiGRU va GCN.

Ngoài ra, chúng tôi còn sử dung mô hình RNN va các biến thé của chúng bao gồm LSTM, GRU, BiLSTM và BiGRU để huấn luyện và dự đoán trên tập

dữ liệu, chúng tôi triển khai các mô hình này nhận đầu vào là các vector đã được nhúng. Mô hình sẽ bao gồm hai lớp mô hình an và kèm theo các lớp fully connected để hội tụ đầu ra theo mục tiêu của bài toán phân loại văn ban.

51

Một phần của tài liệu Khóa luận tốt nghiệp An toàn thông tin: Nghiên cứu phương pháp phát hiện lỗ hổng bảo mật phần mềm bằng phương pháp học sâu (Trang 56 - 60)

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

(85 trang)