Lớp (mạng thần kinh nhân tạo)

Một lớp (tiếng Anh: Layer) trong một mạng thần kinh nhân tạo là một hàm thành phần của một mạng thần kinh truyền thẳng. Nó bao gồm nhiều node không được kết nối với nhau, nhưng cùng nhau tiếp nhận các đầu vào từ lớp phía trước để tính toán ra kết quả truyền ra lớp phía sau.

Trong một mạng học sâu, thường có một lớp đầu vào, các lớp ẩn ở giữa, và một lớp đầu ra.

Định nghĩa toán học 
Về mặt toán học, nếu coi một mạng thần kinh truyền thẳng với  lớp là một tập hợp  hàng được kết nối với nhau thành một chuỗi:

 

Với đầu ra bằng:

Thì hàm vectơ là lớp thứ  của mạng này. Trong đó,  là tham số của nó.

Phân loại

Lớp kết nối đầy đủ 
Lớp kết nối đầy đủ (tiếng Anh: fully-connected, viết tắt là FC, hoặc dense) là loại lớp cơ bản nhất trong mạng neuron. Trong lớp này, mỗi neuron đầu vào được kết nối với mọi neuron đầu ra của lớp trước đó. Về mặt toán học, lớp FC thực hiện một phép biến đổi tuyến tính theo sau bởi một hàm kích hoạt phi tuyến: 

Trong đó,  là vectơ đầu vào, là ma trận trọng số,  là vectơ đo độ lệch, còn  là hàm kích hoạt.  Mỗi kết nối mang một trọng số riêng biệt và mỗi neuron có độ lệch riêng: kết nối giữa neuron  của lớp trước và  của lớp này có giá trị là  với độ lệch .

Lớp FC thường được sử dụng cho các mạng Perceptron nhiều lớp (Multilayer Perceptron) hoặc ở các tầng cuối của mạng để tổng hợp đặc trưng và thực hiện nhiệm vụ phân loại hoặc hồi quy.  Nhược điểm của nó là số lượng tham số cần được học lớn, đặc biệt khi kích cỡ của  lớn. Ngoài ra, nó cũng không mấy hữu hiệu với các đầu vào cần thông tin về không gian như hình ảnh hoặc theo chuỗi như ngôn ngữ.

Lớp làm phẳng 
Lớp làm phẳng (Flatten) thực hiện nhiệm vụ đơn giản nhưng cần thiết: chuyển đổi đầu vào nhiều chiều thành vectơ một chiều để chuẩn bị cho đầu vào của lớp kết nối đầy đủ. Ví dụ, đầu ra từ một lớp tích chập có kích thước  sẽ được làm phẳng thành vectơ với kích thước . Lớp này không chứa tham số toán học, không thực hiện tính toán, và không làm thay đổi giá trị đầu vào.

Lớp tích chập 

Lớp tích chập (Convolutional, viết tắt là Conv) là khối xây dựng cốt lõi của mạng neuron tích chập (CNN), chuyên xử lý dữ liệu dạng lưới như hình ảnh. Khác với lớp FC, lớp tích chập sử dụng kết nối cục bộ và chia sẻ trọng số, cho phép mô hình hóa các quan hệ không gian một cách hiệu quả.

Một bộ lọc (kernel hoặc filter) có kích thước cố định "trượt" trên toàn bộ đầu vào, tại mỗi vị trí thực hiện phép tích vô hướng giữa bộ lọc và vùng cục bộ có kích thước giống với bộ lọc của đầu vào để tạo ra một phần tử trên bản đồ đặc trưng (feature map).  Trong đó,  là đầu vào,  là bộ lọc với kích cỡ .  Trong học sâu, phép toán này thường là tương quan chéo (cross-correlation) chứ không phải tích chập đúng nghĩa vì bộ lọc không bị đảo ngược.

Lớp lấy mẫu 
Lớp lấy mẫu (Pooling) thực hiện giảm chiều không gian của bản đồ đặc trưng đầu ra từ các lớp tích chập nhằm giảm độ phức tạp tính toán. Về cơ bản, nó chính là một lớp tích chập nhưng không chứa tham số học. Một cửa sổ có kích thước cố định (ví dụ 2×2) trượt trên đầu vào, tại mỗi vị trí tính một giá trị đầu ra duy nhất bằng một hàm xác định (deterministic function). Hai loại phổ biến nhất là max pooling lấy giá trị lớn nhất từ cửa sổ trên đầu vào, và average pooling lấy giá trị trung bình của chúng.

Lớp hàm kích hoạt 

Lớp hàm kích hoạt (Activation) áp dụng một hàm phi tuyến lên đầu ra của lớp tuyến tính (FC, Conv, ...) nhằm tạo ra tính phi tuyến cho mô hình. Nếu không có hàm kích hoạt, toàn bộ mạng neuron sẽ chỉ là một chuỗi các phép biến đổi tuyến tính, tương đương với một phép biến đổi tuyến tính duy nhất, không thể mô hình hóa các mối quan hệ phức tạp.

Một số hàm phổ biến bao gồm:

 ReLU (Rectified Linear Unit):  và các biến thể.
 Sigmoid:  cho đầu ra trong khoảng , thường dùng ở lớp đầu ra cho bài toán phân loại nhị phân.
 Tanh: ​ đầu ra trong khoảng .
 Softmax:   chuyển đổi vectơ đầu ra thành phân phối xác suất, thường dùng ở lớp cuối cùng cho bài toán phân loại nhiều nhãn.

Lớp attention 
Lớp attention có thể được định nghĩa như một phép tổng hợp có trọng số của một tập các giá trị, trong đó trọng số được tính dựa trên mức độ tương đồng giữa truy vấn (query) và chìa khóa truy xuất (key) cho một giá trị (value).

Quy trình tính toán attention (Scaled Dot-Product Attention) gồm ba bước:

 Tính điểm tương đồng giữa query và từng key: 
 Chuẩn hóa điểm số bằng softmax để có trọng số: 
 Tính tổng có trọng số: 

Các biến thể quan trọng bao gồm Self‑Attention (, ,  đều đến từ cùng một nguồn) và Multi‑Head Attention (sử dụng nhiều phép chiếu khác nhau để nắm bắt nhiều loại mối quan hệ).

Lớp chuẩn hóa 
Lớp chuẩn hóa (normalized) được sử dụng điều chỉnh phân phối của các giá trị kích hoạt nhằm tăng tốc độ hội tụ, cải thiện tính ổn định, giảm quá khớp, và tăng tính phổ quát với các dữ liệu mới. Tránh nhầm lẫn với chuẩn hóa dữ liệu, lớp chuẩn hóa này được áp dụng cho đầu ra của các lớp ẩn.

Trong đó,  là tham số tỉ lệ (scale parameter) có thể học được, cho phép mô hình khôi phục lại biên độ tín hiệu ban đầu nếu cần thiết;  là tham số dịch chuyển (shift parameter) có thể học được, giúp khôi phục lại giá trị trung bình;  và  lần lượt là giá trị trung bình và phương sai được tính trên một tập hợp các phần tử xác định; và  là một hằng số dương rất nhỏ được thêm vào để tránh phép chia cho 0.

Sự khác biệt cốt lõi giữa các phương pháp chuẩn hóa kích hoạt nằm ở tập hợp các phần tử được chọn để tính toán thống kê  và . Các loại chuẩn hóa kích hoạt phổ biến bao gồm:

 Batch Normalization: Theo toàn bộ các mẫu trong cùng một lô (các mẫu được sử dụng để mô hình học trong vòng này), với  là giá trị trung bình cho tất cả các đặc trưng (feature) trong các mẫu và  là phương sai. Cụ thể, thống kê được tính độc lập cho từng đặc trưng (kênh) trên toàn bộ chiều batch và chiều không gian. Phương pháp này giúp giảm hiện tượng Dịch chuyển đồng biến nội tại (Internal Covariate Shift), cho phép sử dụng tốc độ học lớn hơn và hoạt động như một cơ chế điều chuẩn nhẹ.
 Layer Normalization: Tính toán giá trị trung bình và phương sai trên toàn bộ các đặc trưng (kênh) của cùng một mẫu đơn lẻ, độc lập với các mẫu khác trong batch.  và  được tính trên chiều đặc trưng. Nhờ không phụ thuộc vào kích thước batch, phương pháp này đặc biệt hiệu quả trong các mô hình xử lý chuỗi như RNN hay kiến trúc Transformer, đồng thời hoạt động tốt trong các tác vụ có batch nhỏ.
 Instance Normalization: Thực hiện chuẩn hóa cho từng kênh riêng biệt của từng mẫu đơn lẻ.  và  được tính trên các chiều không gian (ví dụ: chiều cao và chiều rộng của ảnh). Phương pháp này loại bỏ thông tin về độ tương phản và cường độ đặc trưng cho từng trường hợp cụ thể, do đó được ưa chuộng trong các tác vụ chuyển đổi phong cách hình ảnh (Style Transfer) vì nó giúp tách biệt phần nội dung và phần phong cách của bức ảnh.
 Group Normalization: Là biến thể trung gian giữa Layer Normalization và Instance Normalization. Phương pháp này chia các kênh thành các nhóm nhỏ và tính toán thống kê  và  trong phạm vi nhóm đó cho từng mẫu. Cách tiếp cận này khắc phục hạn chế của Batch Normalization khi kích thước batch quá nhỏ (ví dụ trong các tác vụ phân đoạn ảnh hoặc phát hiện đối tượng vốn tiêu tốn nhiều bộ nhớ GPU).
 RMSNorm (Root Mean Square Layer Normalization): Một biến thể đơn giản hóa của Layer Normalization, chỉ sử dụng căn bậc hai của trung bình bình phương (RMS) để chuẩn hóa biên độ của vectơ kích hoạt mà bỏ qua bước trừ đi giá trị trung bình . Công thức được rút gọn thành  (không có tham số ). Việc loại bỏ phép tính trung bình giúp giảm chi phí tính toán đáng kể nhưng vẫn duy trì được sự ổn định của quá trình huấn luyện, do đó được sử dụng rộng rãi trong các Mô hình ngôn ngữ lớn (LLM) hiện đại.

Tham khảo 

Khoa học máy tính
Học máy
Trí tuệ nhân tạo
Học sâu