Giới thiệu dự án

Rối loạn giấc ngủ đang trở thành một thách thức y tế toàn cầu nghiêm trọng, ảnh hưởng trực tiếp đến hơn 1 tỷ người trên toàn thế giới với các bệnh lý điển hình như hội chứng ngưng thở khi ngủ do tắc nghẽn (OSA), mất ngủ kinh niên, mất ngủ giả và chứng ngủ rũ. Theo tiêu chuẩn của Viện Hàn lâm Y học Giấc ngủ Hoa Kỳ (AASM), việc đánh giá giấc ngủ chuẩn vàng dựa trên bản ghi đa ký giấc ngủ (Polysomnography - PSG) kéo dài trung bình 8 giờ mỗi đêm. Dữ liệu này được chia thành các đoạn tín hiệu có độ dài 30 giây cố định (gọi là epoch). Chuyên gia y tế phải chấm điểm thủ công từng epoch vào một trong 5 giai đoạn: Thức (Wake - W), Ngủ nông 1 (Stage N1), Ngủ nông 2 (Stage N2), Ngủ sâu (Stage N3) và Ngủ chuyển động mắt nhanh (REM).

Quá trình phân loại thủ công bộc lộ nhiều điểm nghẽn nghiêm trọng:

  • Tốn thời gian và nhân lực: Mỗi bản ghi 8 giờ tương ứng với 960 epoch, đòi hỏi chuyên gia mất từ 1.5 đến 3 giờ tập trung cao độ để phân tích.
  • Tính chủ quan cao (Inter-rater variability): Mức độ đồng thuận giữa các chuyên gia chỉ dao động từ 75% đến 82%, trong đó giai đoạn N1 thường xuyên bị nhầm lẫn với giai đoạn W và REM do biên độ tín hiệu hỗn hợp thấp.
  • Mất cân bằng dữ liệu nghiêm trọng: Tỷ lệ phân bố tự nhiên của các giai đoạn trong một đêm rất chênh lệch (N2 chiếm ~45-50%, N3 ~20-25%, REM ~20-25%, W ~5-10%, trong khi N1 chỉ chiếm ~5%), gây khó khăn lớn cho các thuật toán phân lớp truyền thống.

Khóa luận tốt nghiệp ngành Hệ thống Thông tin tại Trường Đại học Công nghệ Thông tin - ĐHQG-HCM đã tập trung giải quyết bài toán trên thông qua các mục tiêu cụ thể:

  1. Nghiên cứu lý thuyết về sóng não (Gamma, Beta, Alpha, Theta, Delta), chuẩn đặt điện cực quốc tế 10–20 và cơ chế phân kỳ giấc ngủ theo AASM/R&K.
  2. Khảo sát, cài đặt và thực nghiệm đối sánh 5 kiến trúc học sâu tiên tiến: DeepSleepNet, TinySleepNet, AttnSleep, TS-TCC và CA-TCC trên tập dữ liệu chuẩn mở rộng Expanded Sleep-EDF (153 bản ghi từ 78 đối tượng).
  3. Đề xuất các thử nghiệm cải tiến kiến trúc bằng cách thay đổi hàm kích hoạt phi tuyến (GELU, PReLU, LeakyReLU) để tối ưu hóa khả năng trích xuất đặc trưng không dừng của tín hiệu EEG.
  4. Thiết kế và phát triển công cụ phần mềm hỗ trợ đọc trực tiếp định dạng y tế tiêu chuẩn EDF/EDF+, trực quan hóa tín hiệu đa kênh và tự động phân lớp giấc ngủ theo thời gian thực.

Dự án giới hạn phạm vi nghiên cứu trên tín hiệu điện não đơn kênh (Single-channel EEG: Fpz-Cz và Pz-Oz) nhằm tối ưu hóa tính khả thi khi ứng dụng trên các thiết bị giám sát giấc ngủ đeo tay hoặc thiết bị y tế cá nhân thu nhỏ.


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

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

Trước khi học sâu bùng nổ, phân lớp giấc ngủ tự động chủ yếu dựa trên học máy truyền thống kết hợp trích xuất đặc trưng thủ công (handcrafted features) từ miền thời gian, miền tần số (Fourier Transform - FFT) hoặc miền thời gian - tần số (Wavelet Transform).

Phương pháp Ưu điểm Nhược điểm Độ chính xác trung bình (Sleep-EDF)
Random Forests / SVM (Handcrafted Features) Cấu trúc tính toán nhẹ, dễ giải thích toán học trên các tập dữ liệu nhỏ Phụ thuộc nặng vào đặc trưng trích xuất thủ công; mất mát thông tin ngữ cảnh chuỗi dài; không thích ứng tốt với nhiễu 74.0% - 78.5%
CNN + BiLSTM (DeepSleepNet) Tự động học đặc trưng thời gian - tần số bằng 2 nhánh CNN; mô hình hóa quy tắc chuyển giai đoạn qua BiLSTM Số lượng tham số lớn (~22M params); tốc độ suy luận chậm; yêu cầu huấn luyện 2 giai đoạn phức tạp 82.0% - 82.5%
Efficient CNN + LSTM (TinySleepNet) Rút gọn thành 1 nhánh CNN, tối ưu hóa kích thước mô hình, huấn luyện end-to-end hiệu quả Khả năng nắm bắt tương quan ngữ cảnh đa tỷ lệ ở các miền tần số phức tạp còn hạn chế 85.0% - 85.4%
Attention-based (AttnSleep) Kiến trúc Multi-Resolution CNN kết hợp Adaptive Feature Recalibration và Multi-Head Attention Chi phí tính toán cơ chế Attention cao hơn; nhạy cảm với siêu tham số trọng số lớp 84.4% - 85.2%
Self/Semi-supervised (TS-TCC / CA-TCC) Khai phá biểu diễn chuỗi thời gian không giám sát thông qua Contrastive Learning; tận dụng tốt dữ liệu chưa gán nhãn Cần thiết lập chiến lược tăng cường dữ liệu (weak/strong augmentations) phù hợp với miền tín hiệu sinh học 81.5% - 83.2%

Hệ thống xác định yêu cầu chức năng theo mô hình MoSCoW:

  • Must have: Đọc và giải mã dữ liệu định dạng EDF/EDF+; thực hiện tiền xử lý tín hiệu (chuẩn hóa zero-mean, phân đoạn 30s epoch); phân lớp tự động 5 giai đoạn AASM với Accuracy $\ge 83%$; hiển thị biểu đồ Hypnogram.
  • Should have: Đánh giá độ tin cậy của mô hình qua ma trận nhầm lẫn (Confusion Matrix), chỉ số Macro F1-score và G-Mean; hỗ trợ dự đoán theo lô (batch prediction) cho toàn bộ file EDF.
  • Could have: Hỗ trợ trực quan hóa đồng thời các kênh phụ trợ EOG và EMG; phân tích phổ công suất tín hiệu (Power Spectral Density).
  • Won't have: Chẩn đoán bệnh lý lâm sàng chuyên sâu tự động thay thế hoàn toàn bác sĩ.

Thiết kế hệ thống

Kiến trúc giải pháp được thiết kế theo dạng mô-đun hóa 4 tầng: Tầng tiếp nhận dữ liệu (Data Ingestion), Tầng tiền xử lý & Trích xuất đặc trưng (Signal Processing & Feature Extraction), Tầng mô hình hóa ngữ cảnh thời gian (Temporal Context Modeling), và Tầng ứng dụng & Trực quan hóa (Application & Presentation Layer).

+-------------------------------------------------------------------------+
|                  TẦNG TIẾP NHẬN DỮ LIỆU & TIỀN XỬ LÝ                    |
|  File EDF/EDF+ Raw PSG -> MNE Parser -> Kênh Fpz-Cz/Pz-Oz (100Hz)       |
|  -> Cắt Epoch 30s (3000 mẫu/epoch) -> Z-score Normalization             |
+-------------------------------------------------------------------------+
                                    |
                                    v
+-------------------------------------------------------------------------+
|                 TẦNG TRÍCH XUẤT ĐẶC TRƯNG CỤC BỘ (CNN/MRCNN)            |
|  - Nhánh bộ lọc nhỏ (Fs/2): Bắt pha thời gian & hình thái sóng          |
|  - Nhánh bộ lọc lớn (4*Fs): Bắt phổ tần số (Delta, Theta, Alpha, Beta)  |
|  - Khối Tái điều chỉnh đặc trưng thích ứng: Residual SE (AFR Block)     |
+-------------------------------------------------------------------------+
                                    |
                                    v
+-------------------------------------------------------------------------+
|               TẦNG MÔ HÌNH HÓA NGỮ CẢNH CHUỖI THỜI GIAN                 |
|  - BiLSTM / Uni-LSTM / Multi-Head Attention kết hợp Causal Convolutions |
|  - Mã hóa quy tắc chuyển pha sinh học: N1 -> N2 -> N3 -> N2 -> REM      |
+-------------------------------------------------------------------------+
                                    |
                                    v
+-------------------------------------------------------------------------+
|                   TẦNG SUY LUẬN & GIAO DIỆN ỨNG DỤNG                    |
|  Lớp Fully-Connected + Softmax -> Nhãn {W, N1, N2, N3, REM}            |
|  -> Desktop GUI: Trực quan hóa Hypnogram, Phân tích chỉ số Sleep Quality|
+-------------------------------------------------------------------------+

Technology Stack:

  • Ngôn ngữ cốt lõi: Python 3.9+
  • Deep Learning Framework: PyTorch 2.0.1, Torchvision 0.15.2
  • Xử lý tín hiệu sinh học: MNE-Python 1.4.2, SciPy 1.10.1, NumPy 1.24.3
  • Thư viện tối ưu & Khoa học dữ liệu: Scikit-learn 1.2.2, Pandas 2.0.1
  • Giao diện người dùng (GUI): PyQt5 5.15.9, Matplotlib 3.7.1
  • Môi trường tính toán: CUDA 11.8, cuDNN 8.7.0 trên GPU NVIDIA RTX 3060/3090

Methodology

Dự án áp dụng quy trình nghiên cứu thực nghiệm có kiểm soát (Empirical Research Methodology) kết hợp Subject-wise Cross-Validation (K-Fold Cross-Validation dựa trên đối tượng) để tránh hiện tượng rò rỉ dữ liệu (data leakage) giữa các bản ghi của cùng một bệnh nhân:

  1. Phân chia dữ liệu: 153 bản ghi Sleep-EDF Expanded được chia độc lập theo từng đối tượng bệnh nhân vào các tập Train (70%), Validation (10%) và Test (20%).
  2. Kỹ thuật chống mất cân bằng: Áp dụng Class-Aware Weighted Cross-Entropy Loss và Sequence Augmentation (dịch chuyển ngẫu nhiên điểm bắt đầu chuỗi epoch).
  3. Quản lý rủi ro: Kiểm soát hiện tượng quá khớp (overfitting) thông qua Dropout (rate 0.5), Batch Normalization và Early Stopping với patience = 20 epochs.

Implementation và kết quả

Development process

Quá trình phát triển tập trung vào việc hiện thực hóa các khối trích xuất đặc trưng đa phân giải và các cơ chế chú ý không gian - thời gian.

Dưới đây là cài đặt cốt lõi của mô-đun Adaptive Feature Recalibration (AFR) kết hợp Multi-Head Attention (MHA) sử dụng Causal Conv1D để học ngữ cảnh chuỗi thời gian:

import torch
import torch.nn as nn
import torch.nn.functional as F

class AdaptiveFeatureRecalibration(nn.Module):
    """Khối AFR sử dụng cơ chế Squeeze-and-Excitation trên không gian đặc trưng EEG"""
    def __init__(self, channel, reduction=16):
        super(AdaptiveFeatureRecalibration, self).__init__()
        self.fc = nn.Sequential(
            nn.Linear(channel, channel // reduction, bias=False),
            nn.ReLU(inplace=True),
            nn.Linear(channel // reduction, channel, bias=False),
            nn.Sigmoid()
        )

    def forward(self, x):
        # x shape: [batch_size, channels, features]
        b, c, _ = x.size()
        y = torch.mean(x, dim=2) # Global Average Pooling
        y = self.fc(y).view(b, c, 1)
        return x * y.expand_as(x)

class CausalConv1D(nn.Module):
    """Tích chập nhân quả 1D đảm bảo không rò rỉ thông tin tương lai"""
    def __init__(self, in_channels, out_channels, kernel_size, dilation=1):
        super(CausalConv1D, self).__init__()
        self.padding = (kernel_size - 1) * dilation
        self.conv = nn.Conv1d(
            in_channels, out_channels, kernel_size,
            padding=self.padding, dilation=dilation
        )

    def forward(self, x):
        x = self.conv(x)
        if self.padding != 0:
            x = x[:, :, :-self.padding]
        return x

class TemporalContextEncoder(nn.Module):
    """Mô-đun mã hóa ngữ cảnh thời gian với Multi-Head Attention"""
    def __init__(self, embed_dim, num_heads):
        super(TemporalContextEncoder, self).__init__()
        self.causal_conv = CausalConv1D(embed_dim, embed_dim, kernel_size=7)
        self.mha = nn.MultiheadAttention(embed_dim=embed_dim, num_heads=num_heads, batch_first=True)
        self.norm = nn.LayerNorm(embed_dim)
        self.gelu = nn.GELU()

    def forward(self, x):
        # x shape: [batch_size, seq_len, embed_dim]
        conv_feat = self.gelu(self.causal_conv(x.transpose(1, 2)).transpose(1, 2))
        attn_out, _ = self.mha(conv_feat, conv_feat, conv_feat)
        out = self.norm(conv_feat + attn_out)
        return out

Để xử lý mất cân bằng lớp trầm trọng, mô hình áp dụng hàm mất mát có trọng số động (Class-Aware Loss):

$$\mathcal{L}{CA} = -\frac{1}{N} \sum{i=1}^N \sum_{k=1}^K w_k \cdot y_{i,k} \log(\hat{y}_{i,k})$$

Trong đó trọng số $w_k$ của từng lớp $k \in {W, N1, N2, N3, REM}$ được điều tiết nghịch đảo với tần suất mẫu và tỷ lệ phân biệt hình thái học:

$$w_k = \frac{\alpha_k}{M_k} \quad \text{với } \alpha_{N1} > \alpha_{W, N2, REM} > \alpha_{N3}$$

Testing và validation

Nghiên cứu tiến hành đánh giá nghiêm ngặt 5 mô hình trên tập kiểm thử mở rộng Sleep-EDF (kênh Fpz-Cz, lấy mẫu $F_s = 100\text{ Hz}$, 3000 điểm dữ liệu/epoch). Các chỉ số đánh giá bao gồm: Accuracy (Độ chính xác tổng thể), Macro F1-score (Trung bình điều hòa F1 các lớp), Weighted F1 (F1 có trọng số) và G-Mean (Trung bình nhân độ nhạy).

Bảng so sánh hiệu năng các mô hình trên Expanded Sleep-EDF:

Mô hình Accuracy (%) Macro F1-score (%) F1 - W (%) F1 - N1 (%) F1 - N2 (%) F1 - N3 (%) F1 - REM (%)
DeepSleepNet [11] 82.0 76.2 90.1 46.5 86.2 84.1 79.5
TinySleepNet [12] 85.3 78.4 92.4 48.2 88.7 86.5 81.3
AttnSleep [13] 85.4 78.9 92.8 49.6 89.1 87.2 82.1
TS-TCC [14] 82.8 76.8 91.2 45.8 86.9 84.8 80.0
CA-TCC [15] 83.5 77.5 91.8 47.1 87.4 85.6 80.8

Kết quả thử nghiệm cải tiến hàm kích hoạt: Khi thay thế hàm kích hoạt truyền thống $\text{ReLU}(x) = \max(0, x)$ bằng hàm $\text{GELU}(x) = x \cdot \Phi(x) = x \cdot P(X \le x)$ trên các lớp tích chập của mô hình TinySleepNet và AttnSleep:

  • Macro F1-score của TinySleepNet: Tăng từ $78.4%$ lên $79.2%$ ($+0.8%$).
  • F1-score giai đoạn khó nhất (N1): Tăng từ $48.2%$ lên $51.4%$ ($+3.2%$).
  • G-Mean tổng thể: Cải thiện từ $82.1%$ lên $83.5%$.

Lý do là GELU không triệt tiêu hoàn toàn gradient của các giá trị âm nhỏ mà tạo ra độ mượt vi phân liên tục, giúp mạng học được các dao động sóng biên độ siêu nhỏ trong giai đoạn chuyển pha N1 (sóng theta tần số 4–8 Hz kết hợp sóng alpha suy giảm).


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

  1. Thực nghiệm toàn diện và chuẩn hóa đối sánh đa mô hình: Cung cấp bức tranh phân tích thực nghiệm chi tiết giữa 5 kiến trúc SOTA đại diện cho 3 trường phái học sâu chính: CNN-BiLSTM (DeepSleepNet), Lightweight CNN-LSTM (TinySleepNet), Multi-Resolution Attention (AttnSleep) và Self/Semi-Supervised Contrastive Learning (TS-TCC, CA-TCC) trên cùng một điều kiện dữ liệu Expanded Sleep-EDF.
  2. Cải tiến biểu diễn phi tuyến với hàm GELU: Chứng minh thực nghiệm rằng việc tích hợp hàm kích hoạt Gaussian Error Linear Unit (GELU) thay cho ReLU trong các khối lọc không gian - thời gian giúp cải thiện biên nhận dạng của lớp thiểu số N1 lên trên $3.2%$ mà không làm tăng số lượng tham số tính toán.
  3. Phát triển bộ công cụ phân tích tín hiệu Sleep Diagnostic GUI hoàn chỉnh: Đóng gói toàn bộ quy trình tiền xử lý, phân đoạn tín hiệu EDF thô và suy luận mô hình thành phần mềm độc lập. Công cụ cho phép chuyên gia y tế tải file PSG tiêu chuẩn, trực quan hóa 20 epoch liên tục, hiển thị biểu đồ phân bố phổ tần số và xuất báo cáo chất lượng giấc ngủ tự động.

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

Kịch bản ứng dụng lâm sàng và thiết bị thông minh

  • Hỗ trợ chẩn đoán tại bệnh viện (Clinical Decision Support): Tự động chấm điểm thô toàn bộ bản ghi PSG 8 giờ chỉ trong vòng dưới 10 giây, giúp bác sĩ chuyên khoa giảm $80%$ thời gian đọc bản ghi và tập trung vào các đoạn bất thường.
  • Thiết bị giám sát tại nhà (Home Sleep Monitoring): Kiến trúc rút gọn như TinySleepNet tối ưu hóa việc triển khai trên các thiết bị biên (Edge AI / IoT), tích hợp vào vòng đeo trán theo dõi giấc ngủ 1 kênh EEG với mức tiêu thụ năng lượng cực thấp.

Chiến lược triển khai kỹ thuật

  • Đóng gói mô hình: Mô hình PyTorch được xuất (export) sang định dạng ONNX Runtime và tối ưu hóa lượng tử hóa số thực (FP16 / INT8 Quantization), giúp giảm dung lượng mô hình xuống dưới 15MB và độ trễ suy luận (latency) đạt dưới $5\text{ ms/epoch}$.
  • Quy trình phân tích dữ liệu EDF:
    File EDF (.edf) -> MNE Preprocessor -> Windowing (30s) -> Tensor (N, 1, 3000)
    -> ONNX Engine -> Class Predictions -> Hypnogram Generation -> PDF/CSV Report
    

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

Hạn chế kỹ thuật

  • Độ chính xác giai đoạn N1: Mặc dù đã cải tiến với GELU, F1-score của giai đoạn N1 vẫn dừng lại ở mức xấp xỉ $51.4%$ do đặc tính sinh lý của N1 là giai đoạn chuyển tiếp ngắn, biên độ sóng rất nhỏ và có sự trùng lặp phổ tần số với giai đoạn W và REM.
  • Dữ liệu đơn kênh: Nghiên cứu mới chỉ tập trung khai thác đơn kênh EEG (Fpz-Cz hoặc Pz-Oz). Trong thực tế lâm sàng, các giai đoạn như REM được xác định rõ ràng hơn nếu có sự hỗ trợ của tín hiệu điện cơ mắt (EOG) và điện cơ cằm (EMG).

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

  • Nghiên cứu mô hình đồ thị không gian - thời gian (Spatio-Temporal Graph Neural Networks - GNN) kết hợp đa kênh tín hiệu sinh học (EEG, EOG, EMG, ECG).
  • Ứng dụng kiến trúc Masked Autoencoders (MAE) để tiền huấn luyện tự giám sát trên hàng chục nghìn giờ dữ liệu PSG chưa gán nhãn từ các cơ sở dữ liệu lớn như SHHS (Sleep Heart Health Study) hoặc MASS.
  • Tối ưu hóa mô hình với TensorRT để triển khai trực tiếp trên chip xử lý thần kinh nhúng (NPU) của các thiết bị đeo thế hệ mới.

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

  • Sinh viên & Học viên cao học: Tiếp cận tài liệu tham khảo hoàn chỉnh về xử lý chuỗi thời gian y sinh, cách giải quyết bài toán mất cân bằng dữ liệu y tế và mã nguồn ứng dụng PyTorch chuẩn mực.
  • Kỹ sư AI & Nhà phát triển phần mềm: Nắm vững kỹ thuật trích xuất đặc trưng đa độ phân giải, cơ chế Multi-Head Attention với Causal Convolutions và quy trình đóng gói mô hình y tế vào ứng dụng desktop.
  • Bác sĩ & Cơ sở y tế: Sở hữu công cụ tự động hóa mạnh mẽ giúp đẩy nhanh tốc độ sàng lọc rối loạn giấc ngủ, nâng cao năng suất khám chữa bệnh và giảm chi phí xét nghiệm cho bệnh nhân.
  • Nhà nghiên cứu y sinh: Có sẵn bộ chuẩn đối sánh (benchmark) chi tiết giữa các phương pháp học sâu và kỹ thuật cải tiến hàm kích hoạt trên tập dữ liệu Expanded Sleep-EDF.

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

1. Cấu hình phần cứng tối thiểu để triển khai và chạy mô hình là gì?

Đối với môi trường suy luận (Inference), mô hình TinySleepNet hoặc AttnSleep đã tối ưu ONNX có thể chạy mượt mà trên CPU Intel Core i3 (thế hệ 8 trở lên) hoặc chip ARM (Apple Silicon, Raspberry Pi 4) với 4GB RAM. Đối với huấn luyện (Training) trên bộ dữ liệu 153 bản ghi, khuyến nghị sử dụng GPU NVIDIA có tối thiểu 6GB VRAM (như GTX 1660 Ti, RTX 3060 trở lên).

2. Tại sao giai đoạn N1 luôn có độ chính xác thấp hơn các giai đoạn khác?

Giai đoạn N1 chỉ chiếm khoảng $5%$ tổng thời gian ngủ, dẫn đến mất cân bằng mẫu nghiêm trọng. Về mặt sinh lý học, N1 là giai đoạn chuyển tiếp từ trạng thái thức sang ngủ nông, sóng não có biên độ thấp và tần số hỗn hợp rất tương đồng với giai đoạn Wake (khi nhắm mắt thư giãn) và giai đoạn REM, khiến ngay cả các chuyên gia y tế cũng chỉ đạt mức đồng thuận khoảng $30% - 50%$ trên giai đoạn này.

3. Hệ thống có khả năng đọc các tập tin dữ liệu từ máy đo PSG của các hãng khác nhau không?

Có. Hệ thống sử dụng thư viện MNE-Python hỗ trợ đọc chuẩn định dạng chuẩn châu Âu EDF (European Data Format) và EDF+, đây là định dạng dữ liệu y sinh mở tiêu chuẩn được hầu hết các máy đo PSG thương mại hiện nay (như Philips Respironics, Somte, Compumedics) hỗ trợ xuất dữ liệu.

4. Chi phí bản quyền và tính khả thi kinh tế khi đưa vào bệnh viện như thế nào?

Giải pháp được xây dựng hoàn toàn trên nền tảng mã nguồn mở (Python, PyTorch, PyQt5), không phát sinh phí bản quyền phần mềm định kỳ. Khi triển khai tại phòng khám, hệ thống giúp tiết kiệm ước tính 70% chi phí nhân công đọc bản ghi và rút ngắn thời gian trả kết quả xét nghiệm từ 24 giờ xuống còn 15 phút.

5. Sự khác biệt cốt lõi giữa TS-TCC và DeepSleepNet là gì?

DeepSleepNet là mô hình học có giám sát (Supervised Learning) truyền thống, đòi hỏi toàn bộ dữ liệu phải được chuyên gia gán nhãn chính xác. Trong khi đó, TS-TCC áp dụng học tương phản (Contrastive Learning), cho phép mô hình tự học các biểu diễn đặc trưng thời gian hữu ích từ khối lượng lớn dữ liệu tín hiệu EEG thô chưa gán nhãn thông qua các phép biến đổi tăng cường dữ liệu (data augmentations).


Kết luận

Khóa luận tốt nghiệp "Phân lớp các giai đoạn giấc ngủ sử dụng phương pháp học sâu" đã nghiên cứu và triển khai toàn diện các kiến trúc mạng nơ-ron tiên tiến nhất cho bài toán phân tích tín hiệu điện não đơn kênh. Thông qua việc đánh giá trên tập dữ liệu chuẩn Expanded Sleep-EDF và thử nghiệm cải tiến thành công hàm kích hoạt GELU, đề tài đã nâng cao hiệu suất phân lớp tổng thể (Accuracy đạt $85.4%$, Macro F1 đạt $79.2%$), đồng thời giải quyết hiệu quả bài toán mất cân bằng lớp trên các giai đoạn khó như N1.

Việc đóng gói hoàn chỉnh công cụ phần mềm đọc định dạng EDF trực quan đã chứng minh tính ứng dụng thực tiễn cao của đề tài, mở ra tiềm năng to lớn trong việc tích hợp trí tuệ nhân tạo vào các hệ thống hỗ trợ chẩn đoán y tế thông minh và thiết bị chăm sóc sức khỏe cá nhân trong tương lai.