2.1 Thành phần cấu tạo của WaveNet 2.1.1 Xử lý dữ liệu đầu vào Dữ liệu âm thanh đặc biệt phù hợp với mô hình tự hồi quy do bản chất là một chuỗi tín hiệu có thứ tự và phụ thuộc thời gian
Trang 1Projects in Mathematics and Applications
Mô hình tự hồi quy
Ngày 31 tháng 8 năm 2025
Nguyễn Thùy Dung ∗
†Nguyễn Đăng Sỹ Hoàng
Trương Quang Thái ‡
∗THPT Chuyên Bắc Giang
†Phổ thông Năng khiếu ĐHQG-HCM
‡THPT Chuyên Lào Cai
Trang 2Lời cảm ơn
Đầu tiên, chúng em xin gửi lời cảm ơn sâu sắc đến Ban tổ chức Trại hè Toán học và Ứng dụng PiMA 2025 cũng như các nhà tài trợ, các đơn vị đồng hành đã tạo điều kiện cho chúng em được tham gia trại hè năm nay Tám ngày ở trại hè là tám ngày hết sức đáng nhớ khi chúng
em được học tập những kiến thức mới, gặp gỡ các bạn, các anh chị và tìm hiểu về các mô hình, tham gia làm dự án nhóm
Chúng em xin cảm ơn anh chị mentor đã chuẩn bị các bài giảng Đại số tuyến tính, Giải tích, Xác suất thống kê, cũng như chuỗi bài giảng liên quan đến Tạo sinh và các mô hình Học sâu Những bài giảng đã cho chúng em góc nhìn mới, khơi gợi cảm hứng và cho chúng em những kiến thức nền tảng để có thể tìm hiểu về dự án nhóm của mình
Đặc biệt, chúng em xin cảm ơn anh Lê Tiến Hợp, anh Trần Phan Anh Danh và anh Vòng Vĩnh Toàn đã tận tình giúp đỡ chúng em trong quá trình nhóm thực hiện dự án Chúng em sẽ không thể hoàn thiện báo cáo này cũng như tự tin thuyết trình trước trại hè về dự án nếu thiếu sự giúp đỡ của các anh
Chúng em cũng xin gửi lời cảm ơn sâu sắc tới Viện nghiên cứu cao cấp về Toán vì đã hỗ trợ phòng học và các trang thiết bị để trại hè được diễn ra thuận lợi nhất có thể Chúng em xin cảm ơn ban tổ chức, đặc biệt là ban hậu cần đã hỗ trợ chỗ ở và các bữa ăn cho chúng em trong suốt tám ngày vừa qua
Cuối cùng, xin cảm ơn các bạn trại sinh PiMA 2025 tại Hà Nội đã tham gia hết mình, cùng nhau tạo nên một trại hè đáng nhớ
Chúng em mong rằng PiMA sẽ ngày càng phát triển, các trại hè được tổ chức rộng rãi hơn nữa
để có thể đưa những kiến thức toán học lí thú đến các bạn học sinh, góp phần lan tỏa phong trào học Toán trong cộng đồng
Dù đã có nhiều cố gắng nhưng báo cáo không thể tránh khỏi những sai sót, chúng em rất mong nhận được sự góp ý của bạn đọc để báo cáo có thể hoàn thiện hơn
Tóm tắt nội dung
Báo cáo tập trung nghiên cứu hai kiến trúc quan trọng trong học sâu: mô hình tự hồi quy (Autoregressive model) và WaveNet Phần đầu báo cáo giới thiệu về mô hình tự hồi quy và mô hình học sâu tự hồi quy Phần tiếp theo tập trung phân tích kiến trúc của một mô hình học sâu tự hồi quy tiêu biểu là WaveNet, mô hình có khả năng sinh chuỗi âm thanh thô theo cách tuần tự Bên cạnh đó, báo cáo cũng trình bày các ứng dụng thực tiễn của WaveNet trong đời sống
Trang 3Mục lục
1.1 Giới thiệu về mô hình 1
1.2 Thiết kế của mô hình 1
1.3 Deep Autoregressive model 1
2 WaveNet 2 2.1 Thành phần cấu tạo của WaveNet 2
2.2 Cách hoạt động của mô hình 8
2.3 Conditional WaveNet 9
2.4 Ứng dụng của Wavenet 10
Trang 41 Autoregressive model
1.1 Giới thiệu về mô hình
Mô hình tự hồi quy (Autoregressive model) là mô hình dùng để dự đoán các giá trị tiếp theo trong chuỗi bằng cách sử dụng các giá trị đã có trong chuỗi đó Mô hình giả định rằng giá trị của một biến sẽ phụ thuộc vào giá trị của chính nó trong quá khứ (ví dụ như nhiệt độ ngày mai phụ thuộc nhiệt độ hôm nay, hôm qua, ) Sau khi xác định mối tương quan giữa các phần tử trong chuỗi từ những dữ liệu có sẵn, mô hình sử dụng kiến thức thu được để dự đoán các phần
tử tiếp theo
Mô hình tự hồi quy phù hợp với dữ liệu mang tính chuỗi có tính tuần tự, với các giá trị tương lai thường phụ thuộc vào giá trị quá khứ
1.2 Thiết kế của mô hình
Ý tưởng chính của mô hình tự hồi quy là mỗi giá trị trong chuỗi sẽ phụ thuộc tuyến tính vào các giá trị trước đó Ta có thể biểu diễn mô hình tự hồi quy dưới dạng xác suất có điều kiện như sau:
Công thức xác suất có điều kiện
Phân phối của toàn bộ chuỗi x được viết thành tích của các xác suất có điều kiện theo thời gian:
pθ(x) = pθ(x1, x2, , xn)
= pθ(x1)pθ(x2|x1)· · · pθ(xn|x1, x2, , xn−1)
=
n
Y
t=1
pθ(xt|x<t)
trong đó: x<t = (x1, x2, , xt−1)
Hình 1: Sơ đồ biểu diễn chuỗi xác suất trong Autoregressive model
1.3 Deep Autoregressive model
Autoregressive model là một mô hình đơn giản và khá hiệu quả khi dự đoán các giá trị trong thực tế Tuy nhiên, mô hình có một hạn chế là không xử lý được các mối quan hệ phi tuyến trong dữ liệu Để giải quyết vấn đề này, người ta sử dụng mô hình học sâu tự hồi quy (Deep Autoregressive model), là mô hình tự hồi quy dựa trên hoạt động của mạng nơ-ron sâu Mô hình này đã thể hiện tính ứng dụng cao trong các mô hình khác nhau, khi xử lý các dữ liệu khác nhau:
• Với dữ liệu là ngôn ngữ, ta có Transformer, RNN RNN cho phép ta dự đoán xác suất của một từ mới nhờ vào các từ đã biết liền trước nó, chính là nền tảng của mô hình AR
• Với dữ liệu là hình ảnh, ta có PixelRNN, PixelCNN
• Với dữ liệu là âm thanh, WaveNet là mô hình thể hiện rõ tính tự hồi quy trong đó
Trang 52 WaveNet
WaveNet là mô hình học sâu tự hồi quy tạo ra sóng âm thanh thô, được các nhà nghiên cứu tại DeepMind phát triển và công bố vào năm 2016 Mô hình sinh âm thanh một cách tuần tự dựa trên những dữ liệu đầu vào trước đó WaveNet tạo ra âm thanh tự nhiên và mượt mà hơn so với các mô hình tạo âm thanh trước đây Ngoài ra, WaveNet cũng có nhiều ứng dụng trong việc chuyển văn bản thành giọng nói (Text-to-speech), tạo âm thanh đa người nói (Multi-speaker Speech Generation) hay nhại giọng (Voice cloning)
2.1 Thành phần cấu tạo của WaveNet
2.1.1 Xử lý dữ liệu đầu vào
Dữ liệu âm thanh đặc biệt phù hợp với mô hình tự hồi quy do bản chất là một chuỗi tín hiệu
có thứ tự và phụ thuộc thời gian Âm thanh là sóng cơ lan truyền trong môi trường và liên tục theo thời gian Vì vậy, khi xử lý dữ liệu âm thanh, để có thể tái hiện chân thực, tần suất lấy mẫu phải rất lớn, với mô hình này là khoảng 10000 mẫu mỗi giây Như vậy, chỉ một đoạn ghi
âm ngắn, máy tính đã phải xử lý chuỗi gồm hàng trăm nghìn điểm dữ liệu đầu vào!
Mặt khác, dữ liệu âm thanh trong các thiết bị được lượng tử hóa và lưu trữ dưới dạng 16 bit, nghĩa là mỗi điểm biên độ được mã hóa dưới dạng một dãy nhị phân có 16 kí tự Khi sử dụng
mô hình để dự đoán, mỗi điểm biên độ tiếp theo sẽ có 216 = 65536 lớp giá trị, gây khó khăn trong việc tính toán Do đó, ta sẽ sử dụng hàm µ-law để nén các dữ liệu về dạng 8 bit (tức chỉ còn 256 đầu ra) giúp mô hình dễ học phân phối xác suất hơn
Hàm µ-law
Công thức hàm µ-law khi nén âm thanh về 8 bit:
F (x ) = sgn(x )·ln 1 + µ|x |
ln(1 + µ) ,−1 < x < 1, µ = 255
Sau khi chạy mô hình, ta sử dụng hàm ngược của hàm µ-law để giải nén âm thanh về dạng 16 bit
Hàm giải nén
F−1(y ) = sgn(y )· 1
µ(1 + µ)|y |− 1 , µ = 255
2.1.2 Tích chập nhân quả
Trong mô hình WaveNet, tích chập nhân quả là một thành phần hết sức quan trọng, đảm bảo tính tự hồi quy của mô hình Với tích chập nhân quả, mô hình chỉ đưa ra dự đoán dựa trên những mẫu trước đó, tránh trường hợp “nhìn trộm” tương lai để dự đoán chính kết quả này Tích chập nhân quả (Causal Convolution) là tích chập hoạt động dựa trên nguyên tắc đảm bảo đầu ra tại thời điểm t chỉ phụ thuộc vào dữ liệu từ thời điểm 1 đến t− 1, không sử dụng thông tin từ tương lai
Với dữ liệu âm thanh, tích chập nhân quả là kết quả khi dịch một tích chập thông thường về phía trước để tránh sử dụng các dữ liệu ở thời điểm t + 1, t + 2,
2
Trang 6Hình 2: Một chồng các lớp tích chập nhân quả.
2.1.3 Tích chập giãn nở
Để có thể sinh dữ liệu âm thanh phù hợp, mỗi nơ-ron trong mạng cần tiếp nhận thông tin từ rất nhiều nơ-ron ở các thời điểm trước đó Tuy nhiên, nếu chỉ sử dụng tích chập nhân quả thì
dữ liệu phải qua nhiều lớp, dễ gây mất mát thông tin hoặc phải thực hiện tích chập với các kernel có kích thước rất lớn Để giải quyết vấn đề này, mô hình đã sử dụng tích chập nhân quả giãn cách
Tích chập giãn nở (Dilated Convolution) là phép tích chập trong đó các phần tử của kernel không áp sát liên tiếp nhau, mà được chèn thêm khoảng trống (dilation rate) để bao phủ một vùng rộng hơn của đầu vào
Trong mô hình WaveNet, hệ số giãn cách được nhân đôi theo mỗi lớp cho đến giới hạn, rồi lặp lại theo chu kì:
1, 2, 4, , 512, 1, 2, 4, , 512, 1, 2, 4, , 512,
Hình 3: Một chồng các lớp tích chập nhân quả giãn cách
Ta có thể thấy, khi dilation rate tăng lên 4, một nơ-ron ở thời điểm t tại layer thứ ba sẽ “nhìn thấy” thông tin của các nơ-ron ở thời điểm t và t − 4 trong layer thứ hai, thay vì thông tin ở thời điểm t và t− 1 như khi sử dụng tích chập nhân quả thông thường Mỗi nơ-ron ở layer thứ hai lại “nhìn thấy” hai nơ-ron ở các thời điểm cách nhau 2 đơn vị trong layer thứ nhất Như vậy, một nơ-ron tại thời điểm t ở layer thứ ba có thể nhận thông tin từ 8 nơ-ron đầu vào từ thời điểm t trở về t− 7, nhiều hơn hẳn so với việc chỉ áp dụng tích chập nhân quả với kernel cùng kích thước!
2.1.4 Trường tiếp nhận
Khi tạo sinh dữ liệu âm thanh, ta quan tâm đến một lượng lớn thông tin trong khoảng thời gian trước đó Việc sử dụng Tích chập giãn nở giúp tăng nhanh tầm nhìn của mỗi nơ-ron ở các
Trang 7lớp sau, nghĩa là nơ-ron này có được thông tin từ nhiều điểm dữ liệu đầu vào hơn mà không cần qua quá nhiều lớp Để xác định tầm nhìn của một điểm, ta sử dụng định nghĩa trường tiếp nhận
Trường tiếp nhận (Receptive Field) của một nơ-ron trong mạng là số lượng điểm dữ liệu đầu vào có ảnh hưởng lên giá trị mà nơ-ron đó ghi nhận
Nhóm đã xây dựng công thức về trường tiếp nhận của một nơ-ron ở layer thứ k , kí hiệu Rk
trong mô hình WaveNet như sau:
Rk = 2k Tổng quát hơn, với mô hình sử dụng tích chập có kernel size bằng n, dilation rate trong mỗi lớp (kí hiệu d i lk) bắt đầu từ 1 (khi k = 1) và tăng theo cấp số nhân với công bội d , công thức tính trường tiếp nhận của một nơ-ron ở lớp thứ k được xác định như sau:
Rk =
nk khi n < d (n− 1) ·d
k − 1
d − 1 + 1 khi n ≥ d
(1)
Ta sẽ chứng minh công thức này bằng cách quy nạp như sau:
Xét trường hợp n < d :
Với k = 1, d i lk = d0= 1 Theo định nghĩa, mỗi nơ-ron ở lớp này sẽ nhận thông tin từ n điểm
dữ liệu đầu vào liên tiếp kể từ thời điểm đó trở về trước Ta được R1 = n, hay (1) đúng với
k = 1
Giả sử (1) đúng với k = m (m ≥ 1), ta sẽ chứng minh (1) đúng với k = m + 1
Thật vậy, xét k = m + 1, ta có d i lm+1 = dm, nghĩa là 2 nơ-ron liên tiếp ở lớp m có nhiệm vụ truyền thông tin cho nơ-ron ở lớp m + 1 sẽ cách nhau dm − 1 nơ-ron khác Lại có Rm = nm, tức là mỗi nơ-ron ở lớp m nhận thông tin từ nm − 1 điểm dữ liệu đầu vào trước đó Những điểm dữ liệu này được chia thành các cụm rời nhau, mỗi cụm chứa n điểm liên tiếp, trừ cụm chứa các điểm dữ liệu gần nhất với nơ-ron đang xét chỉ chứa n− 1 điểm Mà dm− 1 > nm− 1 với d > n nên 2 nơ-ron liên tiếp ở lớp m sẽ nhận thông tin đầu vào từ 2 nhóm điểm dữ liệu rời nhau Khi đó, mỗi nơ-ron ở lớp m + 1 sẽ nhận thông tin từ n· Rm = n· nm = nm+1 điểm dữ liệu đầu vào hay Rm+1 = nm+1
Như vậy, (1) đúng với k = m + 1 Theo nguyên lý quy nạp, ta được (1) đúng với mọi k ∈ N∗, hay khi n < d thì Rk = nk,∀k ∈ N∗
Xét trường hợp n≥ d :
Ta chứng minh Rk = (n − 1) · d
k − 1
d − 1 ,∀k ∈ N∗ (theo công thức (1)), và nơ-ron thứ t
ở lớp k sẽ nhận thông tin từ Rk điểm dữ liệu đầu vào liên tiếp từ thời điểm t về trước:
t, t − 1, · · · , t − Rk + 1 (2)
Với k = 1, d i lk = d0= 1 Theo định nghĩa, mỗi nơ-ron ở lớp này sẽ nhận thông tin từ n điểm
dữ liệu đầu vào liên tiếp kể từ thời điểm đó trở về trước Ta được R1 = n Theo công thức (1),
R1 = (n− 1) ·d
1− 1
d − 1 + 1 = n Vậy (2) đúng với k = 1.
Giả sử (2) đúng đến k = m (m≥ 1), ta sẽ chứng minh (2) đúng đến k = m + 1
Thật vậy, xét k = m + 1, tương tự trường hợp trên, ta có d i lm+1 = dm Theo giả thiết quy nạp, mỗi nơ-ron ở lớp m nhận thông tin từ Rm − 1 = (n − 1) · d
m− 1
d − 1 điểm dữ liệu đầu vào liên tiếp trước đó Với d ≤ n, ta có dm− 1 = (d − 1) ·d
m− 1
d − 1 ≤ (n − 1) ·
dm− 1
d − 1 Điều này có nghĩa là 2 nơ-ron liên tiếp ở lớp m truyền thông tin cho cùng một nơ-ron ở lớp m + 1 sẽ nhận thông tin đầu vào từ 2 nhóm Rm điểm dữ liệu liên tiếp nhau hoặc trùng nhau một phần Khi đó, một nơ-ron tại thời điểm t trong lớp m + 1 sẽ nhận thông tin của (n− 1) · dm nơ-ron đầu vào từ thời điểm t−(n −1)·dm+ 1 đến t và Rm nơ-ron đầu vào từ thời điểm t−(n −1)·dm
4
Trang 8đến t− (n − 1) · d − Rm+ 1 Rm điểm dữ liệu đầu vào này có nhiệm vụ truyền thông tin cho nơ-ron ở thời điểm t − (n − 1) · dm trong lớp m, là thời điểm xa nhất mà nơ-ron ở lớp m + 1 tại thời điểm t có thể bao phủ Ta được:
Rm+1 = Rm+ (n− 1) · dm
⇔ Rm+1− n− 1
d − 1 · d
m+1
= Rm− n− 1
d − 1 · d
m
Do (2) đúng đến k = m nên Rk +1− n− 1
d − 1 · d
k +1 = Rk − n− 1
d − 1 · d
k đúng với mọi k < m Khi đó, ta được:
Rm+1− n− 1
d − 1 · d
m+1= Rm − n− 1
d − 1 · d
m
= Rm−1− n− 1
d − 1 · d
m−1
=
= R1− n− 1
d − 1 · d
1
= n− n− 1
d − 1 · d Như vậy:
Rm+1 = n− 1
d − 1 · d
m+1+ n− n− 1
d − 1 · d
= n− 1
d − 1 · d
m+1
+ 1− n− 1
d − 1.
= (n− 1) ·d
d − 1 + 1, đúng theo công thức (1).
Vậy (2) đúng với k = m + 1 nên cũng đúng đến k = m + 1 Theo nguyên lý quy nạp, ta được (2) đúng với mọi k ∈ N∗, hay khi n ≥ d thì Rk = (n− 1) · d
k − 1
d − 1 ,∀k ∈ N∗, và nơ-ron thứ t ở lớp k sẽ nhận thông tin từ Rk điểm dữ liệu đầu vào liên tiếp từ thời điểm t về trước:
t, t − 1, · · · , t − Rk + 1
Từ hai trường hợp trên, công thức (1) về trường tiếp nhận của mỗi nơ-ron mà nhóm đưa ra đã được chứng minh
Ngoài ra, có nhiều cách để mở rộng receptive field của WaveNet, chẳng hạn như tăng số giai đoạn giãn nở (dilation stages), sử dụng nhiều lớp hơn, lựa chọn bộ lọc lớn hơn, hoặc kết hợp đồng thời các kỹ thuật này Một phương án bổ sung là áp dụng một context stack nhỏ, tách biệt, nhằm xử lý một đoạn tín hiệu âm thanh dài hơn và dùng kết quả này để điều kiện hóa cục
bộ cho một WaveNet lớn hơn, vốn chỉ tập trung vào một đoạn ngắn hơn của tín hiệu (được cắt ở phần cuối)
2.1.5 Hàm Softmax
Trong các mô hình phân loại nhiều lớp, đầu ra của mạng nơ-ron thường là một vector giá trị thực (các logits) mà bản thân nó chưa mang ý nghĩa xác suất Để áp dụng các tiêu chuẩn tối
ưu dựa trên log-likelihood hoặc negative log-likelihood, ta cần biến đổi các giá trị này thành một phân phối xác suất hợp lệ trên tập các lớp Hàm softmax chính là phép biến đổi chuẩn, bảo đảm mỗi giá trị nằm trong [0,1] và tổng các xác suất bằng 1
Softmax
Cho vector đầu vào với giá trị là (x1, x2, , xn) thì hàm softmax cho phần tử thứ i là:
Trang 9Softmax(xi) = e
i n
P
j =1
exj
Nhờ đặc tính này, hàm Softmax đảm bảo xác suất đầu ra là một phân phối xác suất cho biến rời rạc Đồng thời, ta không cần phải giả định về hình dạng của phân phối
2.1.6 Gated Activation Units
Trong các mạng nơ-ron sâu, việc chỉ sử dụng các hàm kích hoạt truyền thống như ReLU hoặc tanh chưa đủ để kiểm soát hiệu quả luồng thông tin qua từng tầng Do đó, WaveNet sử dụng Gated Activation Unit (Các đơn vị cổng kích hoạt) để lọc thông tin từng tầng Gated Activation Units kết hợp hai nhánh song song: một nhánh filter sử dụng hàm kích hoạt tanh để sinh đặc trưng, và một nhánh gate sử dụng hàm sigmoid σ để điều tiết lượng thông tin được truyền đi
Cơ chế này như một cánh cổng của mô hình, nhánh gate quyết định phần thông tin nào được giữ lại, trong khi nhánh filter học các quan hệ phi tuyến Nhờ đó, GAU giúp mô hình duy trì khả năng biểu diễn mạnh mẽ và lọai bỏ nhiễu khi tín hiệu đi qua nhiều tầng tích chập giãn nở
Hình 4: Gated Activation Units
Gated Activation Unit
Công thức của Gated Activation Unit:
y = tanh Wk ,f ∗ x ⊙ σ Wk ,g∗ x
Trong đó:
• ⊙ là phép nhân element-wise (Nhân từng phần tử của ma trận với nhau)
• ∗ là phép tích chập
• Wk ,f: ma trận trọng số của nhánh filter (đầu vào hàm tanh) ở layer thứ k
• Wk ,g: ma trận trọng số của nhánh gate (đầu vào hàm σ) ở layer thứ k
• tanh = e2x − 1
e2x + 1: hàm kích hoạt tanh có giá trị trong khoảng (-1, 1), dùng để mã hóa tín hiệu chính
• σ = 1
1 + e−x: hàm kích hoạt sigmoid có giá trị trong khoảng (0, 1), dùng như một cổng điều khiển
6
Trang 102.1.7 Residual Connections
Trong các mô hình học sâu, cả trong giai đoạn huấn luyện lẫn quá trình lan truyền ngược, thường xuất hiện hiện tượng vanishing gradient — khi gradient trở nên rất nhỏ sau khi lan truyền qua nhiều lớp Điều này khiến tốc độ học bị chậm lại và việc cập nhật tham số trở nên kém hiệu quả, đặc biệt đối với các mạng có độ sâu lớn
Trong mô hình WaveNet, để khắc phục hiện tượng này, ta dùng Residual Connections (Kết nối dư) nhằm tạo ra một đường truyền trực tiếp từ đầu vào đến ra ở trong mỗi tầng Residual giúp truyền gradient dễ dàng hơn làm tăng tốc độ học, đồng thời giúp mô hình không bị mất thông tin khi đi qua nhiều lớp biến đổi
Hình 5: Residual Connection
Residual Connection
Xafter ← F (Xbegin) + Xbegin trong đóF là các biến đổi trong tầng
2.1.8 Skip connections
Skip connections là một cơ chế giúp tổng hợp thông tin từ nhiều tầng trong mạng nơ-ron sâu Khác với residual connections, skip connections cho phép đưa tín hiệu từ nhiều tầng khác nhau đến đầu ra cuối cùng
Trong WaveNet, skip connections đóng vai trò tổng hợp dữ liệu đầu ra của tất cả các lớp sau khi đã xử lý xong thông tin Nhờ vào skip connection các thông tin được truyền từ các tầng khác nhau đến đầu ra cuối cùng, nhờ đó mô hình có thể thu thập thông tin đa dạng hơn, đảm bảo không bị mất thông tin quan trọng
Skip connections
Công thức : OutputSC =
k
X
i
Outputi trong đó Outputi là đầu ra tại layer thứ i
2.1.9 Hàm mất mát trong mô hình
Log-likelihood: Đây là hàm đánh giá mức độ phù hợp giữa dữ liệu quan sát và mô hình xác suất