Phương pháp biến đổi thay đổi tham số trực tiếp

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp biến đổi thông tin người nói trong tiếng nói dùng kỹ thuật phân rã theo thời gian​ (Trang 25)

6. Ý nghĩa khoa học của luận văn:

1.8. Phương pháp biến đổi thay đổi tham số trực tiếp

Trong phương pháp thay đổi tham số trực tiếp (là phương pháp đơn giản và cổ điển nhất), tiếng nói sẽ được phân tách thành các khung và tính vector đặc trưng theo các khung sử dụng mô hình phân tích / tổng hợp nguồn âm / bộ lọc (source/filter). Mô hình nguồn âm / bộ lọc đảm bảo tín hiệu sau khi phân tích thành các tham số có thể tái tạo tín hiệu trở lại từ các tham số đã phân tích. Các tham số liên quan đến yếu tố người nói như biên độ, trường độ, cao độ - tần số cơ bản, hay phổ sẽ được điều chỉnh cho phù hợp.

STRAIGHT [7] là công cụ cho phép phân tích / tái tạo tiếng nói theo mô hình nguồn âm / bộ lọc. Đây cũng là bộ công cụ được sử dụng trong nhiều nghiên cứu về xử lý tiếng nói. Mô hình STRAIGHT được mô tả trong hình 1.20.

Hình 1.20: Phân tích phổ, F0 và tái tạo bằng STRAIGHT

STRAIGHT được xây dựng trên mô hình nguồn âm / bộ lọc cho phép điều chỉnh một cách linh hoạt các tham số tiếng nói. Trong đó các tham số như F0, tốc độ nói, độ dài vocal tract được điều chỉnh mà không có sự suy giảm chất lượng tiếng nói gây ra do quá trình tái tạo tiếng nói từ tham số đã điều chỉnh [7]. STRAIGHT gồm 03 thành phần chính:

Bộ phân tích thông tin nguồn: Tần số cơ bản F0 được ước lượng để làm trơn các hài tuần hoàn trong phổ thời gian ngắn sử dụng một bộ lọc thích nghi.

Bộ phân tích phổ thời gian – tần số được làm trơn: Sử dụng kỹ thuật đồng bộ cao độ Pitch-synchronous để ước lượng đường bao phổ được làm trơn. Đường bao phổ được ước lượng độc lập với tần số cơ bản F0.

Bộ tổng hợp: Bao gồm một bộ kích thích nguồn âm và một bộ lọc số biến đổi theo thời gian, thực hiện tái tạo tín hiệu tiếng nói từ các thành phần F0 và đường bao phổ bằng nhiều bước sử dụng thuật toán biến đổi Fourier nhanh FFT.

Bộ thư viện các hàm STRAIGHT viết trên MATLAB có thể tham khảo từ website cá nhân của tác giả:

http://www.wakayama-u.ac.jp/~kawahara/PSSws/

STRAIGHT được sử dụng để phân tích tiếng nói ra các đặc trưng cao độ (F0), biên độ dạng sóng trên miền thời gian và phổ tiếng nói. Qua đó với việc điều chỉnh trực tiếp các tham số trên bằng các hệ số tuyến tính (Kf0, Kt, Ks), chúng ta có thể điều chỉnh độc lập F0, tốc độ nói trên miền thời gian, chiều dài bộ lọc phát âm trên miền tần số với phương thức giống nhau là nhân với các hệ số tỷ lệ tuyến tính tương ứng Kf0, Kt, Ks.

Hình 1.21: Thuật toán điều chỉnh trực tiếp tham số tiếng nói

1.8. Biến đổi thông tin người nói dựa vào thay thế khung

Một trong những phương pháp biến đổi thông tin người nói thành công nhất là phương pháp biến đổi giọng người nói lai giữa tổng hợp tiếng nói dùng mô hình Markov ẩn (HMM) và thay thế mẫu / ghép nối HTT được tác giả Yao Qian và cộng sự đề xuất năm 2013 [9].

Trong phương pháp HTT, ở bước thứ nhất tiếng nói tổng hợp bằng mô hình HMM với giọng nguồn. Tiếp theo ở bước thứ hai, tiếng nói đã tổng hợp được biến đổi thành tiếng nói giọng đích dựa trên kỹ thuật lựa chọn và thay thế các khung nguồn có độ dài rất ngắn 5ms bằng các khung đích phù hợp như mô tả trong Hình 1.22.

Nếu bỏ qua vấn đề tổng hợp giọng nguồn bằng HMM, bản chất của phương pháp biến đổi giọng người nói HTT là các khung của tiếng nói giọng nguồn

Điều chỉnh tham số

Tính F0 và tần số đường bao phổ bằng

STRAIGHT

Tái tạo tiếng nói

Kt Kf0 n3sgram (đường bao phổ mô tả tuyến âm) F0 Ks Tiếng nói gốc

Tiếng nói đã được điều chỉnh để thay đổi giọng

được thay thế bằng các khung vật lý giống nhất của giọng đích trong cùng âm vị. Mặc dù việc lựa chọn và thay thế mẫu tiếng nói giọng nguồn bằng mẫu tiếng nói giọng đích đã được đề xuất trước đó [9], hiệu quả biến đổi giọng người nói trong HTT là vượt trội so với các phương pháp thay thế mẫu khác do việc sử dụng các khung tiếng nói rất ngắn thay thế các mẫu tiếng nói dài như âm vị [9] sẽ tối ưu việc tìm được khung/mẫu tiếng nói đích phù hợp nhất.

Các kết quả thực nghiệm cho thấy phương pháp thay thế khung HTT cho chất lượng và hiệu quả biến đổi giọng người nói rất cao [9]. HTT đã được thực nghiệm trên tiếng Anh, tiếng Trung và đã đạt thứ hạng cao trong cuộc thi về tổng hợp tiếng nói và chuyển đổi giọng nói quốc tế Blizzard Challenge 2013 [9]. Tuy nhiên các phương pháp lựa chọn / thay thế khung như HTT kế thừa tất cả các nhược điểm của tổng hợp ghép nối như đòi hỏi dữ liệu lớn, tốc độ thực thi khó đảm bảo thời gian thực, dữ liệu cần lưu trữ online lớn.

CHƯƠNG 2

KỸ THUẬT PHÂN RÃ THEO THỜI GIAN TD VÀ ỨNG DỤNG TRONG BIẾN ĐỔI THÔNG TIN NGƯỜI NÓI 2.1. Kỹ thuật phân rã tiếng nói theo thời gian

2.1.1. Phương pháp TD nguyên thủy

Kỹ thuật phân rã tiếng nói theo thời gian được đề xuất bởi Atal [6] và được coi như một phương pháp mã hóa tiếng nói tham số hiệu quả. Giả sử một chuỗi tiếng nói được tạo ra bởi K chuyển động thực hiện bởi K điểm sự kiện. Chúng ta gọi các tham số tiếng nói tương ứng với điểm sự kiện thứ k là

k

a , và sự biến đổi theo thời gian của sự kiện này biểu diễn bằng một hàm k. Khung tiếng nói thứ n đi từ 1 đến N. Khi phân rã tiếng nói theo thời gian, các tham số tiếng nói quan sát được y(n) được xấp xỉ bằngyˆn, là một tổ hợp tuyến tính của các điểm sự kiện như sau:

1 ˆ( ) ( ),1 K k k k y n an n N     (2.1.)  1 2 ... T k k k Pk aa a a (2.2)  1 2  ( ) ( ) ( )... P( ) T y ny n y n y n (2.3)  1 2  ˆ( ) ˆ ( )ˆ ( )...ˆP( ) T y ny n y n y n (2.4)

Chỉ số mũ T của vector hay ma trận là phép chuyển vị. Viết công thức trên dưới dạng ma trận như sau:

ˆ

Y  A (2.5)

với P là số chiều của các tham số phổ. Yˆlà một ma trận cỡ PxN với cột thứ n là yˆn. A là một ma trận PxK với cột thứ k là ak, và phi là một ma trận cỡ KxN với hàng thứ k là k.

Ở công thức 2.1 cả điểm sự kiện và hàm chuyển dịch giữa các sự kiện là chưa biết và kỹ thuật phân rã theo thời gian phải xác định chúng khi một chuỗi tiếng nói đầu vào được đưa ra.

Ở công thức 2.1 và 2.5, chỉ Y là biết trước. Để xác định A và Phi, Y được phân rã bằng phép toán trực giao. Thủ tục phân tích trong phương pháp nguyên thủy của Atal được thực hiện bằng 2 bước:

Các vị trí của các điểm sự kiện được xác định bằng phép phân tích ma trận SVD

Các điểm sự kiện và hàm chuyển dịch sự kiện được xác định bằng phương pháp lặp tối thiểu khoảng cách (hoặc lỗi) giữa tiếng nói được tái tạo và tiếng nói gốc.

Phương pháp của Atal được thực thi như sau:

Đầu tiên, ma trận tham số phổ của một đoạn tiếng nói khoảng 200-300 ms được phân rã thành hai ma trận trực giao và một ma trận chéo của các giá trị riêng, sử dụng phân tích SVD.

T T

YUDV (2.6) Với T

Y là ma trận tham số phổ cỡ NxP, U là một ma trận trực giao NxP, V là một ma trận trực giao PxP, và D là một ma trận chéo của các giá trị riêng. N và P tương ứng là số các khung trong đoạn tiếng nói được phân tích và số chiều của tham số phổ. Do đó các hàm chuyển dịch sự kiện được biểu diễn là một tổ hợp tuyến tính của các hàm trực giao, và do đó cho phép số lượng điểm sự kiện M được cố định trong một đoạn tiếng nói được phân tích bằng cách chỉ lấy các giá trị riêng lớn. Thông thường, một cửa sổ vào khoảng 200-300 ms sẽ cho M = 5. 1 ( ) ( ) M k ki i i n b u n    (2.7)

Tiếp theo, hàm chuyển dịch sự kiện ( )n gần nhất với trung tâm của đoạn tiếng nói được lấy cửa sổ hóa n0 sẽ được ước lượng bằng cách tối thiểu hóa khoảng cách đo được ( ) nc

2 2 1 2 1 ( ) ( ) ( ) ( ) N c n c N n n n n n n          (2.8)

Tối thiểu hóa ln( ( )) nc tương ứng với các hệ số Pi dẫn tới vấn đề xác định trị riêng của một ma trậnRRKxK

Rbb (2.9) Khi phần tử (i, r) của ma trận R được tính như sau

1 ( - )2 ( ) ( ) N ir c i r n R n n u n u n   (2.10)

b là vector của các hệ số Pi. Giải pháp này ứng với giá trị riêng λ nhỏ nhất tối ưu b.

Để phân tích một chuỗi tiếng nói hoàn chỉnh, thủ tục trình bày ở trên cần lặp lại với các cửa sổ tiếng nói. Phương pháp của Atal yêu cầu cửa sổ chuyển dịch một khoảng nhỏ, ví dụ như 1 khung, để đảm bảo không có hàm chuyển dịch nào bị mất. Do đó, nếu tổng số cửa sổ là L, SVD và vector riêng sẽ thực hiện L lần. SVD là một thủ tục tính toán với chi phí tính toán rất lớn được xem là lí do phương pháp của Atal có độ phức tạp tính toán cao.

Vì cửa sổ được dịch mỗi lần một khoảng nhỏ, hàm chuyển dịch giống nhau sẽ được dịch theo thời gian từng khoảng nhỏ. Để tìm vị trí của các hàm chuyển dịch để giảm tổng số hàm chuyển dịch, một thuật toán dựa trên một tiêu chuẩn vượt ngưỡng 0 về hàm thời gian v(l) được sử dụng.

2 1 2 1 ( ) ( ) ( ) ( ) N n N n n l n v l n         (2.11)

Hàm v(l) vượt qua ngưỡng v(l)=0 từ dương sang âm ở vị trí l ứng với vị trí của một trong các hàm k( )n với k nào đó.

Điểm sự kiện phổ ak được xác định bằng tối thiểu hóa sai số bình

phương giữa tham số phổ gốc và tham số phổ tái tạo.

2 1 1 ( ( ) ( ) ,1 N K i i ik k n k E y n an i P       (2.12)

với N và K là tổng số khung và sự kiện bên trong mẫu tiếng nói. Cuối cùng, một thủ tục tinh chỉnh lặp được sử dụng để cải thiện hình ảnh hàm sự kiện để giảm lỗi tái tạo. Tập hợp các hàm sự kiện được cải thiện được đánh giá để tối thiểu hóa lỗi tái tạo, En của vector phổ

2 1 1 ( ( ) ( )) ,1 P K i ik k n k En y n an i P       (2.13) ( ) k n

 được sử dụng để có thể ước lượng sự kiện aktốt hơn. Thủ tục này được lặp lại tới khi cả ( )k nak hội tụ tới một tập các giá trị.

Mặc dù việc thực thi thuật toán phân rã tiếng nói theo thời gian theo phương pháp nguyên thủy của Atal có cơ sở toán học chặt chẽ, chúng có một số yếu điểm:

(i) Chi phí tính toán lớn, khiến khả nặng áp dụng thực tiễn không cao

(ii) Số lượng và vị trí các điểm sự kiện không ổn định. Nói cách khác, chúng nhạy cảm với những thay đổi của các tham số được phân tích.

2.1.2. Phương pháp phân rã tiếng nói theo thời gian giới hạn RTD

Để giải quyết vấn đề chi phí tính toán lớn của phương pháp phân rã tiếng nói theo thời gian của Atal, nhiều phương pháp đã được đề xuất [7-11].

Trong đó, được sử dụng nhiều nhất là phương pháp phân rã giới hạn RTD (Restricted TD) [7].

Giả sử hiện tượng đồng cấu âm (co-articulation) trong quá trình tạo tiếng nói được mô tả bằng các hàm sự kiện chồng lấp được giới hạn trong các sự kiện liền kề, mô hình phân rã bậc hai được sử dụng khi chỉ có hai hàm sự kiện liền kề có thể chồng lấn như mô tả trong hình vẽ 2.1 và công thức 2.14.

Hình 2.1: Ví dụ về hai hàm sự kiện liền kề

1 1 1

ˆ( ) k k( ) k k ( ), k k

y nana   n n  n n  (2.14)

Trong đó nknk1là các vị trí tương ứng của các sự kiện k và k+1.

Phương pháp phân rã giới hạn RTD bổ sung một ràng buộc đối với các hàm sự kiện trong mô hình TD bậc hai là tất cả các hàm sự kiện tại một thời điểm có tổng bằng 1. Khi đó, công thức 2.14 được viết lại như sau:

1 1

ˆ( ) k k( ) k (1 k( )), k k

y nana   n n  n n  (2.15) Quá trình xác định hàm sự kiện:

Giả sử các vị trí nknk1của hai sự kiện liên tiếp đã biết. Khi đó, nửa

bên phải của hàm sự kiện thứ k và nửa bên trái của hàm sự kiện thứ k+1 có thể đánh giá bằng cách sử dụng aky n( k)và ak1  y n( k1). Lỗi tái tạo E(n) với vector phổ thứ n sẽ được tính trong công thức 2.16 khi nk  n nk1.

2 2

1 1

ˆ

( ) ( ) ( ) ( ( ) k ) ( k k ) k( )

E ny ny ny na   aa   n (2.16)

Do đó, ( )k n được xác định và E(n) được tối thiểu. Tối ưu thuật toán phân rã với phổ đường LSF

Tham số phổ được sử dụng trong phương pháp phân rã nguyên thủy TD của Atal là tham số phổ log-area [6]. Một số tham số phổ khác như tỷ lệ log area, phổ cepstrum cũng đã được thử nghiệm phân tích bằng TD [11]. Do các vấn đề về độ ổn định của mô hình phân tích, mã hóa tuyến tính LPC, không phải tất cả các thể hiện tham số có thể sử dụng. Lí do là nó không đảm bảo các tham số phổ được chọn lựa sẽ còn đúng qua phép biến đổi phân rã theo thời gian TD. Do đó, tham số phổ tần số theo đường LSF, tham số được sử dụng nhiều nhất trong mã hóa tiếng nói do rất phù hợp với quá trình nội suy và lượng tự hóa, lại chưa thể được sử dụng trong thuật toán TD nguyên thủy của Atal.

Một tính chất quan trọng của LSFs (i) là nó được sắp thứ tự từ 0 đến π như sau:

1 2

0   ... P  (2.17)

Công thức 2.17 có nghĩa rằng sự khác nhau giữa hai LSF liên tiếp (dLSF) di  ii1với 1

1 1, P P

d  d     là luôn lớn hơn 0. Tính chất thứ tự này cần thiết để đảm bảo điều kiện ổn định của các bộ lọc tổng hợp tuyến tính LPC. Khi sử dụng phương pháp phân rã theo thời gian TD để phân tích các tham số LSF cần đảm bảo tính chất thứ tự của LSFs. Điều kiện này không được đảm bảo trong phương pháp nguyên thủy của Atal, do đó trong phương pháp cải tiến RTD đã ép các ràng buộc dLSF nhỏ nhất vào các vector sự kiện để đảm bảo tính chất thứ tự của tham số LSF.

Ban đầu, RTD được đề xuất cho tiếng nói băng hẹp nhưng sau đó cũng được sử dụng hiệu quả cho tiếng nói băng rộng.

2.1.3. Phương pháp MRTD

Phương pháp RTD cải tiến (MRTD) là phương pháp phân rã tiếng nói theo thời gian tiếp theo được đề xuất nhằm tiếp tục cải thiện các vấn đề tồn tại đối với tham số phổ đường LSF.

Ràng buộc bổ sung với các hàm sự kiện

Dựa trên đặc tính hình học của phân rã theo thời gian, tính chất “hình học chuẩn” của hàm sự kiện được mô tả là hàm sự kiện chỉ có một đỉnh như trong hình 2.2. Hàm có tính chất “hình học chuẩn” là tốt cho phép lượng tử trong mã hóa tiếng nói cũng như trong biểu diễn sự biến đổi theo thời gian của tiếng nói do nó phù hợp với đặc tính tự nhiên của tiếng nói.

Hình 2.2: Hàm sự kiện có tính chất “hình học chuẩn” và “hình học không chuẩn”

Tuy nhiên, việc xác định hàm sự kiện trong RTD không đảm bảo tính chất “hình học chuẩn”, tức hàm sự kiện có thể có nhiều đỉnh, làm giảm hiệu

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp biến đổi thông tin người nói trong tiếng nói dùng kỹ thuật phân rã theo thời gian​ (Trang 25)

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

(64 trang)