Giới thiệu dự án

Sự bùng nổ của Internet of Things (IoT) và Industrial IoT (IIoT) đang định hình lại toàn bộ hạ tầng công nghệ toàn cầu. Theo thống kê từ Statista, số lượng thiết bị kết nối IoT dự kiến sẽ vượt mốc 30 tỷ thiết bị vào năm 2030. Tại Việt Nam, sự tham gia mạnh mẽ của các tập đoàn công nghệ lớn như Viettel, VNPT, FPT đã thúc đẩy hạ tầng kết nối thông minh trong đô thị, y tế và sản xuất công nghiệp. Tuy nhiên, theo báo cáo từ CyberRisk Alliance, có tới 41% đơn vị quản lý thừa nhận chưa kiểm soát toàn diện các thiết bị kết nối trong mạng nội bộ, biến IoT thành mục tiêu hàng đầu của các cuộc tấn công mạng quy mô lớn.

Hạn chế cố hữu của thiết bị IoT nằm ở tài nguyên phần cứng eo hẹp (dung lượng RAM hạn chế, vi xử lý công suất thấp), trong khi các phương thức tấn công ngày càng phức tạp như DDoS đa biến thể (HTTP Flood, SYN Flood, UDP/ICMP Flood), tấn công trung gian (ARP Spoofing, DNS Poisoning), quét lỗ hổng (Port Scanning, Vulnerability Scanning) và mã độc (Ransomware, Backdoor).

                                  KIẾN TRÚC TỔNG THỂ DỰ ÁN
+--------------------+      +-----------------------+      +-------------------------+
|   Edge-IIoTset     | ---> | Serialization Pipeline| ---> | Byte-Level BPE          |
|   (61 Features)    |      | (Tabular -> Textual)  |      | Custom Tokenizer        |
+--------------------+      +-----------------------+      +-------------------------+
                                                                        |
                                                                        v
+--------------------+      +-----------------------+      +-------------------------+
| 15-Class Threat    | <--- | Classification Head   | <--- | Lightweight BERT        |
| Classification     |      | (Linear + Softmax)    |      | (14MB / 52.44MB RAM)    |
+--------------------+      +-----------------------+      +-------------------------+

Các giải pháp phát hiện xâm nhập (Intrusion Detection System - IDS) truyền thống dựa trên Machine Learning cổ điển (như Decision Tree, KNN, SVM, Random Forest) thường yêu cầu loại bỏ các trường dữ liệu phi số (chuỗi ký tự, bản ghi HTTP POST/GET, mã truy vấn SQL) hoặc xử lý thiếu nhất quán khi xuất hiện giá trị vô hạn (INF) hay khuyết thiếu (NaN), dẫn đến việc mất đi dấu hiệu tấn công quan trọng. Ngược lại, các mô hình xử lý ngôn ngữ tự nhiên (NLP) hiện đại như BERT-base lại có kích thước quá cồng kềnh (~440MB, yêu cầu hàng trăm MB RAM khi suy luận), không thể nhúng trực tiếp vào các cổng IoT Edge Gateway.

Đồ án tốt nghiệp "Nghiên cứu mô hình ngôn ngữ tự nhiên và phát triển mô hình BERT nhẹ để phân loại mối đe dọa mạng cho thiết bị IoT" do sinh viên Phạm Hoàng Vũ thực hiện dưới sự hướng dẫn của PGS. TS Võ Minh Huân (Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh) đã giải quyết triệt để bài toán này.

Mục tiêu cụ thể của dự án:

  1. Phân tích toàn diện tập dữ liệu Edge-IIoTset và các giao thức mạng lõi (TCP, UDP, HTTP, DNS, MQTT, Modbus/TCP, ARP, ICMP).
  2. Xây dựng thuật toán chuyển đổi dữ liệu lưu lượng mạng dạng bảng hỗn hợp (Tabular Network Traffic) thành chuỗi văn bản có cấu trúc (Textual Serialization) mà không làm mất thông tin phi số.
  3. Huấn luyện một bộ tách từ chuyên biệt (Custom Byte-Level BPE Tokenizer) tối ưu cho cú pháp dữ liệu an ninh mạng.
  4. Thiết kế và huấn luyện từ đầu (From Scratch) mô hình Transformer/BERT siêu nhẹ (Lightweight BERT) tối ưu hóa cho bài toán phân loại đa lớp.
  5. Kiểm chứng hiệu năng mô hình trên bài toán phân loại 15 nhãn mối đe dọa với ràng buộc kích thước bộ nhớ nhỏ gọn, sẵn sàng cho thiết bị biên IoT.

Phạm vi và giới hạn: Dự án tập trung vào kiến trúc Transformer Encoder, tối ưu hóa kích thước mô hình để đạt dung lượng dưới 15MB và dung lượng RAM suy luận dưới 60MB, xử lý bài toán phân loại 15 lớp trên tập dữ liệu chuẩn hóa Edge-IIoTset.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Các nghiên cứu ứng dụng BERT trong an ninh mạng như MalBERT (phân tích mã độc tĩnh), BERTlog (phân tích nhật ký hệ thống), hay SecureBERT (xử lý Cyber Threat Intelligence - CTI) đều tập trung vào dữ liệu văn bản tự nhiên có sẵn ngữ cảnh ngữ nghĩa. Khi đối mặt với lưu lượng mạng (PCAP/Flow Traffic), các giải pháp hiện hành bộc lộ nhiều nhược điểm:

Tiêu chí so sánh Hệ thống IDS dựa trên Luật (Rule-based) Học máy truyền thống (KNN, DT, RF) Mô hình BERT gốc (BERT-base) Giải pháp Lightweight BERT đề xuất
Xử lý chuỗi phi số (HTTP, SQL, URI) Cần viết luật thủ công, dễ bị vượt qua Bắt buộc loại bỏ hoặc mã hóa one-hot gây bùng nổ chiều Tốt nhưng quá nặng Tốt, bảo toàn toàn bộ chuỗi thông qua Serialization
Kích thước mô hình Rất nhỏ (<5MB) Nhỏ (10MB - 50MB tùy số cây) Rất lớn (~440MB) Siêu nhẹ (~14MB)
Mức tiêu thụ RAM khi suy luận Rất thấp (<20MB) Thấp (30MB - 70MB) Rất cao (>500MB) Tối ưu hóa (52.44MB)
Khả năng học ngữ cảnh đa giao thức Không có Kém, chỉ xét tương quan tĩnh Rất cao Rất cao nhờ cơ chế Multi-Head Self-Attention
Độ chính xác phân loại 15 lớp <75% 80% - 88% 93% - 95% 92.0%

Phân tích yêu cầu hệ thống theo mô hình MoSCoW:

  • Must-have (Bắt buộc): Khả năng phân loại chính xác 15 nhãn (1 nhãn Normal + 14 loại tấn công); mô hình có dung lượng dưới 20MB; hoạt động trên RAM dưới 100MB.
  • Should-have (Cần có): Cơ chế tiền xử lý bảo toàn các trường giao thức dạng chuỗi; thuật toán Byte-level BPE bám sát tập từ vựng an ninh mạng.
  • Could-have (Có thể có): Khả năng mở rộng phát hiện các tấn công zero-day thông qua phân tích phân phối xác suất Softmax.
  • Won't-have (Chưa thực hiện): Tích hợp fine-tuning mô hình ngôn ngữ lớn tổng quát của Google (để tránh kích thước cồng kềnh).

Thiết kế hệ thống

Kiến trúc hệ thống sử dụng quy trình chuyển đổi luồng dữ liệu mạng thành văn bản ngữ cảnh, đưa qua mạng Transformer Encoder thu gọn:

[Network Traffic Packet] ---> [Raw Features Extraction (45 attributes)]
                                             |
                                             v
                      [Textual Serializer: s(i,j) = f_j || $ || M[i+1,j]]
                                             |
                                             v
                      [Byte-Level BPE Tokenizer (Vocab Size ~ 5,000)]
                                             |
                                             v
                      [Input Embeddings + Positional Embeddings]
                                             |
                                             v
                      [Lightweight BERT Encoder (Multi-Head Attention)]
                                             |
                                             v
                      [Linear Classification Head + Softmax]
                                             |
                                             v
                      [Predicted Class: 0 -> 14 (Normal / Attack Types)]

Chi tiết Technology Stack:

  • Ngôn ngữ lập trình: Python 3.10+
  • Deep Learning Framework: PyTorch 2.1+, Hugging Face Transformers 4.36+
  • Tokenizer Engine: Hugging Face Tokenizers (Byte-level Byte Pair Encoding)
  • Data Engineering: Pandas 2.1+, NumPy 1.26+, Scikit-Learn 1.3+
  • Trực quan hóa & Đánh giá: Matplotlib 3.8+, Seaborn 0.13+
  • Nền tảng huấn luyện phần cứng: CUDA-enabled GPU với PyTorch Dynamic Computation Graph và Autograd engine.

Thiết kế cơ chế Serialization dữ liệu mạng: Xét ma trận dữ liệu mạng $M[i, j]$ trong đó hàng $M[1, j] = f_j$ là tên của các thuộc tính giao thức mạng. Với mỗi mẫu dữ liệu tại hàng thứ $i+1$, từng trường dữ liệu được chuyển đổi thành chuỗi theo công thức ghép nối có định danh phân cách:

$$s(i, j) = f_j \mathbin{\Vert} $ \mathbin{\Vert} M[i + 1, j]$$

Toàn bộ hàng dữ liệu được nối thành một chuỗi văn bản hợp nhất đại diện cho trạng thái của gói tin:

$$L_i = \bigcup_{n=1}^{j} s(i, n) = s(i, 1) \ \text{␣} \ s(i, 2) \ \text{␣} \ \dots \ \text{␣} \ s(i, j)$$

Nhờ cấu trúc này, các thông tin giá trị chuỗi (như phương thức http.method = POST, truy vấn http.query, tên miền dns.name) được giữ nguyên vẹn cùng với tên thuộc tính, tạo thành ngữ cảnh để cơ chế Self-Attention tính toán mối tương quan.

Methodology

Quy trình nghiên cứu và phát triển được triển khai theo mô hình thực nghiệm lặp (Iterative Experimental Methodology):

  1. Giai đoạn 1 (Tuần 1-4): Khảo sát tập dữ liệu Edge-IIoTset, làm sạch dữ liệu, loại bỏ các thuộc tính định danh tĩnh (frame.time, ip.src_host, ip.dst_host, arp.proto_ipv4) và thông tin tải trọng nhạy cảm để giảm thiểu overfitting và bảo vệ quyền riêng tư.
  2. Giai đoạn 2 (Tuần 5-8): Xây dựng thuật toán chuyển đổi chuỗi văn bản, xây dựng và huấn luyện bộ tách từ Byte-Level BPE Tokenizer.
  3. Giai đoạn 3 (Tuần 9-12): Thiết kế kiến trúc Lightweight BERT, thiết lập giải thuật huấn luyện sử dụng hàm mất mát Cross-Entropy và bộ tối ưu hóa AdamW.
  4. Giai đoạn 4 (Tuần 13-16): Đánh giá chéo mô hình, đo lường bộ nhớ RAM, kích thước file nhị phân, so sánh với các mô hình Machine Learning cổ điển (KNN, Decision Tree, Random Forest).

Implementation và kết quả

Development process

Quá trình hiện thực hóa giải pháp bao gồm 3 module trọng tâm: Module chuyển đổi dữ liệu, Module Tokenizer chuyên biệt, và Module Lightweight BERT Classifier.

1. Thuật toán tiền xử lý và chuyển đổi dữ liệu dạng bảng sang văn bản:

import pandas as pd
from typing import List

def serialize_network_traffic(df: pd.DataFrame, drop_cols: List[str]) -> List[str]:
    """
    Chuyen doi cac ban ghi luu luong mang dang bang (Tabular Data)
    thanh chuoi van ban co dinh danh phan cach theo cong thuc s(i, j).
    """
    # Loai bo cac cot dinh danh tinh va payload gay nhieu
    cleaned_df = df.drop(columns=drop_cols, errors='ignore')
    
    # Lay danh sach ten dac trung (f_j)
    feature_names = cleaned_df.columns.tolist()
    serialized_sentences = []
    
    # Duyet tung dong de thuc hien noi chuoi f_j || $ || M[i+1, j]
    for _, row in cleaned_df.iterrows():
        token_pairs = [f"{col}${str(row[col])}" for col in feature_names]
        serialized_sentence = " ".join(token_pairs)
        serialized_sentences.append(serialized_sentence)
        
    return serialized_sentences

2. Xây dựng và khởi tạo Custom Byte-Level BPE Tokenizer:

Bộ tách từ Byte-Level BPE được lựa chọn vì khả năng mã hóa mọi chuỗi byte mà không gặp lỗi từ ngoài từ vựng (Out-Of-Vocabulary - OOV), đồng thời nén kích thước từ điển xuống mức xấp xỉ 5,000 tokens, giúp giảm đáng kể kích thước lớp Embedding.

from tokenizers import Tokenizer
from tokenizers.models import BPE
from tokenizers.trainers import BpeTrainer
from tokenizers.pre_tokenizers import ByteLevel

def build_custom_bpe_tokenizer(corpus_file: str, vocab_size: int = 5000) -> Tokenizer:
    """
    Huan luyen Byte-Level BPE Tokenizer rieng cho cu phap luu luong mang IoT.
    """
    tokenizer = Tokenizer(BPE(unk_token="<unk>"))
    tokenizer.pre_tokenizer = ByteLevel()
    
    trainer = BpeTrainer(
        vocab_size=vocab_size,
        special_tokens=["<s>", "<pad>", "</s>", "<unk>", "<mask>"],
        initial_alphabet=ByteLevel.alphabet()
    )
    
    tokenizer.train(files=[corpus_file], trainer=trainer)
    return tokenizer

3. Cấu hình kiến trúc mô hình Lightweight BERT:

import torch
import torch.nn as nn
from transformers import BertConfig, BertForSequenceClassification

def create_lightweight_bert(vocab_size: int = 5000, num_labels: int = 15) -> BertForSequenceClassification:
    """
    Khoi tao mo hinh BERT sieu nhe duoc thiet ke tu dau cho thiet bi IoT:
    - hidden_size = 128 (so voi 768 cua BERT-base)
    - num_hidden_layers = 4 (so voi 12 cua BERT-base)
    - num_attention_heads = 4 (so voi 12 cua BERT-base)
    - intermediate_size = 512 (so voi 3072 cua BERT-base)
    """
    config = BertConfig(
        vocab_size=vocab_size,
        hidden_size=128,
        num_hidden_layers=4,
        num_attention_heads=4,
        intermediate_size=512,
        max_position_embeddings=256,
        num_labels=num_labels,
        hidden_dropout_prob=0.1,
        attention_probs_dropout_prob=0.1
    )
    
    model = BertForSequenceClassification(config)
    return model

Testing và validation

Tập dữ liệu Edge-IIoTset sau khi lọc bỏ 16 cột định danh và thông tin tải trọng nhạy cảm, giữ lại 45 thuộc tính mạng cốt lõi và 2 cột nhãn phân loại. Tập dữ liệu được phân chia thành 15 lớp phân loại cụ thể:

Bảng phân bổ nhãn 15 lớp bài toán:

  • 0: MITM (Man-In-The-Middle)
  • 1: Fingerprinting
  • 2: Ransomware
  • 3: Uploading
  • 4: SQL_injection
  • 5: DDoS_HTTP
  • 6: DDoS_TCP
  • 7: Password (Brute-force)
  • 8: Port_Scanning
  • 9: Vulnerability_scanner
  • 10: Backdoor
  • 11: XSS (Cross-Site Scripting)
  • 12: Normal (Lưu lượng thông thường)
  • 13: DDoS_UDP
  • 14: DDoS_ICMP

Cơ chế Self-Attention trong mỗi tầng Encoder tính toán điểm tương quan giữa các đặc trưng gói tin theo công thức:

$$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{Q K^T}{\sqrt{d_k}}\right)V$$

Trong đó $Q, K, V$ là các ma trận Query, Key, Value được ánh xạ từ vector nhúng đầu vào qua các trọng số $W_q, W_k, W_v$, với kích thước rút gọn $d_k = 32$.

Kết quả đạt được

Mô hình Lightweight BERT đạt độ chính xác tổng thể 92.0% trên toàn bộ 15 lớp phân loại.

Báo cáo chi tiết hiệu năng mô hình:

  • Accuracy (Độ chính xác tổng thể): $92.0%$
  • Macro Average F1-Score: $0.88$
  • Weighted Average F1-Score: $0.92$
  • Kích thước file trọng số (Model Size on Disk): 14.0 MB (Giảm hơn 30 lần so với kích thước ~440MB của BERT-base gốc)
  • Mức tiêu thụ RAM khi thực thi tính toán suy luận: 52.44 MB

Bảng so sánh hiệu năng với các thuật toán Machine Learning khác:

Mô hình kiểm nghiệm Accuracy (%) Macro Avg F1 Kích thước mô hình (Disk) RAM khi suy luận (MB)
K-Nearest Neighbors (KNN) 84.12% 0.79 ~35.0 MB 88.20 MB
Decision Tree (DT) 86.45% 0.82 ~8.5 MB 42.10 MB
Random Forest (RF) 89.30% 0.85 ~48.0 MB 95.60 MB
Google BERT-base (Fine-tuned) 93.80% 0.90 ~440.0 MB 512.00 MB
Lightweight BERT (Đồ án đề xuất) 92.00% 0.88 14.0 MB 52.44 MB

Mặc dù Decision Tree có dung lượng nhẹ hơn, nhưng lại kém chính xác hơn rõ rệt và hoàn toàn mất đi khả năng phát hiện các mẫu tấn công dạng chuỗi phân tán như SQL Injection hay XSS do phải loại bỏ các trường phi số. Lightweight BERT đạt sự cân bằng tối ưu giữa độ chính xác và tài nguyên bộ nhớ.


Đổi mới và đóng góp

  1. Thuật toán Textual Serialization bảo toàn ngữ cảnh mạng: Đề xuất và chứng minh tính khả thi của giải thuật nối chuỗi $s(i, j) = f_j \mathbin{\Vert} $ \mathbin{\Vert} M[i+1, j]$. Phương pháp này cho phép giữ nguyên vẹn các thông tin định tính quan trọng như phương thức HTTP (POST, GET), thông điệp MQTT, cờ TCP mà không làm suy hao dữ liệu do quá trình ép kiểu số thô bạo.
  2. Kiến trúc Transformer siêu nén cho Edge IoT: Tinh chỉnh các siêu tham số của BERT (giảm số tầng xuống 4, kích thước vector ẩn $d_{\text{model}} = 128$, số đầu Attention xuống 4, giới hạn độ dài chuỗi 256), giúp cắt giảm 96.8% kích thước lưu trữ so với BERT-base trong khi vẫn duy trì 92.0% độ chính xác.
  3. Mã hóa Byte-level BPE chuyên biệt cho an ninh mạng: Xây dựng tập từ vựng 5,000 tokens loại bỏ triệt để hiện tượng Out-Of-Vocabulary đối với các ký tự đặc biệt thường xuất hiện trong mã độc và chuỗi tấn công mạng.
  4. Tối ưu hóa RAM cho phần cứng hạn chế: Mô hình hoạt động mượt mà với chỉ 52.44 MB RAM, giải quyết triệt để rào cản tài nguyên trên các dòng vi máy tính nhúng phổ biến như Raspberry Pi 4, Jetson Nano hay các thiết bị Industrial Gateway.

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế (Real-world Use Cases)

  • Hệ thống Nhà thông minh (Smart Home IDS): Cài đặt mô hình trực tiếp lên Router/Home Gateway trung tâm để giám sát luồng lưu lượng từ camera an ninh, khóa cửa thông minh, ngăn chặn các cuộc tấn công DDoS điều khiển botnet (Mirai) hoặc Brute-force Password.
  • Hạ tầng Công nghiệp (IIoT & Smart Factory): Bảo vệ các thiết bị PLC, cảm biến đo đạc giao tiếp qua giao thức Modbus/TCP và MQTT, ngăn chặn tấn công giả mạo dữ liệu cảm biến hoặc tiêm lệnh điều khiển độc hại.
  • Hệ thống Y tế thông minh (Healthcare IoT): Bảo mật cho các thiết bị theo dõi bệnh nhân cầm tay truyền dữ liệu về máy chủ bệnh viện, ngăn ngừa tấn công nghe lén (MITM) và mã độc tống tiền (Ransomware).
                            SƠ ĐỒ TRIỂN KHAI TẠI BIÊN (EDGE IDS)
+-----------------------------------------------------------------------------------+
|                            IoT Edge Gateway / Router                              |
|                                                                                   |
|  +---------------------+      +---------------------+      +-------------------+  |
|  | Packet Capture      | ---> | Stream Serializer   | ---> | Lightweight BERT  |  |
|  | (Libpcap / Scapy)   |      | & BPE Tokenizer     |      | Inference Engine  |  |
|  +---------------------+      +---------------------+      +-------------------+  |
|                                                                      |            |
+----------------------------------------------------------------------|------------+
                                                                       v
                                                       +-------------------------------+
                                                       | Decision & Mitigation Engine  |
                                                       | - Alert Admin (MQTT/Telegram) |
                                                       | - Block IP (iptables rule)    |
                                                       +-------------------------------+

Chiến lược triển khai và Phần cứng yêu cầu

  • Yêu cầu phần cứng tối thiểu: CPU ARM Cortex-A53 (hoặc x86-64), RAM tối thiểu 256 MB (mô hình chiếm dụng 52.44 MB), Bộ nhớ lưu trữ trống tối thiểu 50 MB.
  • Phần mềm: Linux OS (Ubuntu Core / Alpine Linux / Raspberry Pi OS), Python runtime hoặc ONNX Runtime C++ engine để tối ưu hóa tốc độ suy luận dưới 15ms/packet.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Mất cân bằng dữ liệu (Class Imbalance): Tập dữ liệu Edge-IIoTset có sự chênh lệch lớn giữa các nhãn; nhãn Normal chiếm đa số, trong khi các nhãn như MITM và Fingerprinting có số lượng mẫu rất hạn chế, dẫn đến chỉ số Recall ở các lớp này chưa đạt mức tối đa.
  • Huấn luyện từ đầu (From Scratch): Do không sử dụng kỹ thuật truyền tri thức (Knowledge Distillation) từ các mô hình ngôn ngữ lớn đã tiền huấn luyện, mô hình đòi hỏi dữ liệu huấn luyện an ninh mạng phải bao quát toàn diện các biến thể tấn công.

Hướng phát triển tương lai

  1. Lượng tử hóa mô hình (Quantization INT8/FP16): Chuyển đổi trọng số sang định dạng số nguyên 8-bit (INT8) thông qua TensorRT hoặc ONNX Runtime để giảm kích thước xuống dưới 5MB và tăng tốc độ suy luận gấp 3-4 lần.
  2. Triển khai Knowledge Distillation: Ứng dụng TinyBERT/DistilBERT chưng cất tri thức từ các mô hình an ninh mạng lớn hơn (như SecureBERT) sang kiến trúc nhẹ.
  3. Cơ chế phòng thủ chủ động: Kết hợp mô hình với module tự động cập nhật luật tường lửa (iptables/eBPF) để tự động ngắt kết nối các luồng IP độc hại theo thời gian thực.

Đối tượng hưởng lợi

  • Sinh viên & Học viên ngành Điện tử - Viễn thông, An toàn thông tin: Tài liệu tham khảo thực nghiệm chất lượng cao về việc áp dụng kỹ thuật NLP hiện đại vào bài toán bảo mật mạng IoT; hiểu rõ phương pháp tiền xử lý dữ liệu hỗn hợp.
  • Kỹ sư phát triển phần mềm nhúng (Embedded Developers): Mẫu kiến trúc Transformer siêu nhẹ có thể tích hợp trực tiếp vào firmware của thiết bị biên mà không gây tràn bộ nhớ.
  • Doanh nghiệp cung cấp giải pháp IoT: Mô hình tối ưu hóa chi phí hạ tầng, nâng cao giá trị thương mại cho sản phẩm phần cứng nhờ tích hợp tính năng bảo mật thông minh AI-native.
  • Nhà nghiên cứu học máy: Bằng chứng thực nghiệm khẳng định tiềm năng của cơ chế Self-Attention trong việc mô hình hóa tương quan giữa các trường giao thức mạng.

Câu hỏi thường gặp

1. Yêu cầu cấu hình tối thiểu để triển khai mô hình trên thiết bị thực tế là gì?

Mô hình yêu cầu bộ nhớ RAM trống từ 64MB trở lên (mô hình sử dụng 52.44MB khi tính toán), bộ nhớ Flash/eMMC trống 20MB và vi xử lý xung nhịp tối thiểu 1.0 GHz (hỗ trợ kiến trúc ARMv7, ARMv8 hoặc x86).

2. Tại sao mô hình lại sử dụng BPE Tokenizer thay vì Word-level Tokenizer thông thường?

Trong dữ liệu mạng có nhiều chuỗi ngẫu nhiên (hash, payload URL, địa chỉ hex). Word-level Tokenizer sẽ làm bùng nổ kích thước từ điển và gặp lỗi từ ngoài từ điển (OOV). Byte-level BPE giúp tách các chuỗi lạ thành các ký tự/byte phụ có nghĩa, giữ từ điển ở mức cố định 5,000 tokens và đảm bảo không bao giờ bị lỗi OOV.

3. Mô hình xử lý các cuộc tấn công chưa từng gặp (Zero-day) như thế nào?

Cơ chế Self-Attention phân tích mối tương quan bất thường giữa các trường giao thức. Khi gặp lưu lượng có cấu trúc sai lệch lớn so với phân phối của nhãn Normal, xác suất phân loại lớp bình thường sẽ giảm mạnh, cho phép hệ thống gắn cờ cảnh báo bất thường (Anomaly Detection).

4. Chi phí vận hành và bảo trì mô hình trong thực tế ra sao?

Do mô hình có kích thước cực nhỏ (14MB), chi phí cập nhật firmware OTA (Over-The-Air) qua mạng 4G/NB-IoT rất thấp. Quá trình tái huấn luyện định kỳ có thể thực hiện nhanh chóng trên các máy trạm GPU tầm trung chỉ trong vài giờ.

5. Tại sao không sử dụng langsung mô hình BERT của Google rồi Fine-tune?

Mô hình BERT gốc của Google có kích thước hơn 440MB và tiêu tốn hơn 500MB RAM khi chạy, hoàn toàn bất khả thi đối với các vi điều khiển và thiết bị IoT biên. Việc xây dựng kiến trúc Lightweight BERT từ đầu giúp tối ưu hóa từng tham số cho bài toán chuyên biệt.


Kết luận

Đồ án tốt nghiệp "Nghiên cứu và phát triển mô hình BERT nhẹ để phân loại mối đe dọa mạng cho thiết bị IoT" của tác giả Phạm Hoàng Vũ đã giải quyết thành công bài toán bảo mật IoT bằng cách kết hợp đột phá giữa xử lý ngôn ngữ tự nhiên và phân tích lưu lượng mạng. Với độ chính xác 92.0% trên 15 lớp phân loại, kích thước siêu nhỏ gọn 14 MB và mức sử dụng RAM tối ưu 52.44 MB, nghiên cứu mở ra hướng đi thực tiễn cho các giải pháp an ninh mạng thông minh, tự trị và bảo vệ toàn diện hệ sinh thái thiết bị IoT trong tương lai.