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

Một phần của tài liệu (Luận văn thạc sĩ file word) Nghiên cứu phương pháp biến đổi cảm xúc người nói trong tiếng nói dùng kỹ thuật phân rã tiếng nói theo thời gian (Trang 34 - 38)

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

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 [14] 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à ak , 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ằng n , là một tổ hợp

tuyến tính của các điểm sự kiện như sau:

yˆ(n) = akφk (n),1 ≤ n ≤ N k =1 (2.1) ak = [a1k a 2k ...aPk ] (2.2) y(n) = [ y1 (n) y2 yˆ(n) =[ yˆ1(n) yˆ2 (n)...yP (n)... P (n)] T (n)] T (2.3) (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à

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.

YT = UDVT (2.6)

Với YT

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.

φk (n) =∑bkiui

(n)

i=1

với ui (n) là phần tử thứ (n,i) của ma trận

U,

bk

i

(2.7) là một tạp các hệ số.

 N

n1(n  n ) 2 2 (n)

c

 Nn1 2(n)

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 )

θ (nc ) = (2.8)

Tối thiểu hóa ln(θ (nc )) tương ứng với các hệ số bi dẫn tới vấn đề xác

định trị riêng của một ma trận R ∈ RKxK

Rb = λb

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

(2.9)

Rir =∑(n - nc )2ui (n)ur (n)

n=1

(2.10)

b là vector của các hệ số bi. 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 hồ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 tốn với chi phí tính tốn rất lớn được xem là lí do phương pháp của Atal có độ phức tạp tính tố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.

v(l) = N n=1(n − l)φ 2 (n) (2.11) N n=1φ2 (n) ∑ ∑

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.

E = ∑( y (n) − ∑a φ (n)2,1 ≤ i ≤ P

Một phần của tài liệu (Luận văn thạc sĩ file word) Nghiên cứu phương pháp biến đổi cảm xúc người nói trong tiếng nói dùng kỹ thuật phân rã tiếng nói theo thời gian (Trang 34 - 38)

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

(70 trang)
w