1.4. Ứng dụng của kỹ thuật thị giác máy cho bài toán nhận dạng nhạc số
1.4.2. Tớnh toỏn ủặc trưng bởi thuật toỏn Boosting theo cặp (pairware boosting)
Khi xõy dựng ủặc trưng cho mỗi bài hỏt cần ủảm bảo rằng cỏc bản nhạc từ cựng một bài hỏt sẽ tạo ra những ủặc trưng tương tự, trong khi ủú cỏc bản nhạc từ cỏc bài hỏt khỏc nhau sẽ cho ủặc trưng khỏc nhau. Núi cỏch khỏc, hệ thống cần phải học ủược một phõn lớp ' ( ) *, với và là hai ảnh phổ bất kỳ và nhón chỉ ra rằng hai ảnh phổ ủú là thuộc về cựng một bài hỏt gốc hay hai bài hỏt khỏc nhau + . Một phương phỏp phổ biến dựng ủể
xõy dựng ủặc trưng trong bài toỏn nhận dạng ủối tượng – Adaboost ủược Y. Ke sử dụng và thay ủổi ủể xõy dựng tập cỏc bộ lọc của mỡnh. Mỗi bộ phõn lớp (classifier) bao gồm , phân lớp yếu (weak classifier), -. và một hệ số /.. Một weak classifier lại bao gồm một bộ lọc . và ngưỡng ., với -. %01. .. .2. Nói theo cách khác, nếu hai mẫu tạo ra cỏc giỏ trị tương ứng ủược tớnh toỏn bởi bộ lọc ở cựng phớa với ngưỡng, nú ủược gỏn nhón là nằm tại cựng vị trớ trong cựng một bản nhạc, ngược lại, nú ủược cho là hai audio snippet khỏc nhau. Cụng thức gỏn nhón mà Y. Ke sử dụng khỏc với thuật toỏn Adaboost truyền thống ở chỗ nhón ủược gỏn theo cặp của cỏc giỏ trị lọc. Khi mà cỏc mẫu lọc này ủược học bởi hệ thống, một ảnh phổ sẽ ủược chuyển thành một vec tơ , bit, ủiều này cho phộp việc ủỏnh chỉ mục hiệu quả dựa trên thuật toán băm.
Cỏch ủỏnh trọng số của thuật toỏn Adaboost nguyờn bản cho kết quả khụng tốt khi áp dụng cho hệ thống trích chọn của Y. Ke, bởi vì thông thường không bộ phân lớp nào thực hiện việc gán nhãn cho kết quả tốt hơn trường hợp gán nhãn ngẫu nhiờn với những cặp hai mẫu ủược chọn khỏc nhau. Thật vậy, giả sử chỳng ta cú mẫu ủược chọn ngẫu nhiờn từ tập phõn phối 3 , bộ lọc . và ngưỡng . mà 4. . 5, với 6 5 6 . Nếu ta chọn ủộc lập và ngẫu nhiờn hai mẫu khỏc nhau và từ 3, khả năng và nằm ở hai phớa khỏc nhau của . ủược chỉ ra bởi:
4-. &5 5 6 78
Như vậy, khả năng cỏc bộ hai mẫu khỏc nhau ủược gỏn nhón sai là giống nhau chiếm ớt nhất một nửa cỏc mẫu ủược xột trong trường hợp kớch thức mẫu ủủ lớn, mõu thuẫn ủiều kiện bộ phõn lớp yếu của Adaboost. Y. Ke khắc phục vấn ủề này bằng cỏch ỏp dụng thuật toỏn phõn lớp theo cặp bất ủối xứng – chỉ những bộ mẫu giống nhau ủược ủỏnh lại trọng số và trọng số của cỏc bộ giống nhau cũng
như khỏc nhau ủược tiờu chuẩn húa sao cho tổng trọng số của chỳng bằng một phần hai. Thuật toỏn boosting theo cặp ủược mụ tả như sau.
ðầu vào: một chuỗi gồm mẫu
<(, )> .. <(9, 9)>, tương ứng với nhãn : ; ) * Khởi tạo: <: 9 8 8
For 8 8 ,
1. Tính toán tỉ lệ lỗi:
=>>. <: 8 ?-.: : @ :
9
:A
2. Gán hệ số cho -.: /. BCDEFGGFGGHH
3. Cập nhật trọng số cho những cặp phù hợp nhau:
Nếu : và -.: : @ :, thì <: I <: 8 JKL 1/.2 48 Thực hiện normalize các trọng số như sau:
<: <:
&
9
:N$O A 9
:N $O A E
Hàm phân lớp cuối cùng:
' %0P /.-.
.A
ðể kiểm tra thuật toỏn tớnh ủặc trưng của mỡnh, Y. Ke tạo ra một tập dữ liệu khoảng một trăm nghìn mẫu dương (positive examples) và một triệu các mẫu âm (negative examples). Mẫu dương là cỏc bộ ủặc trưng giống nhau (ủược tớnh toỏn từ bản nhạc gốc và bản thu âm có nhiễu của nó) từ các bản nhạc 15 giây trong tập dữ liệu gồm 71 bài hỏt và mẫu õm là cỏc bộ ủặc trưng khỏc nhau từ tập dữ liệu bài hỏt này. Trờn cơ sở ủú, Y. Ke tiến hành kiểm tra ba kiểu ủặc trưng: ủặc trưng của Haitsma và Kaller [11], kớ hiệu là “H-K”, ủặc trưng ủược cải tiến từ “H-K” và ủặc trưng ủược tớnh bởi thuật toỏn boosting theo cặp ở trờn. Bởi vỡ tất cả cỏc ủặc trưng
cú ủộ dài giống nhau (32-bits), Y-Ke thay ủổi khoảng cỏch Hamming từ 0 ủến 32 ủể tạo ra một ủường cong ROC cho mỗi kiểu ủặc trưng, ủược chỉ ra trong hỡnh 1.6. Một cỏch rừ ràng, Boosted thực hiện việc tớnh ủặc trưng tốt hơn hẳn H-K trờn toàn bộ ủường cong ROC này. H-K Wide ủược Y-Ke cải tiến từ H-K bằng cỏch mở rộng ủộ rộng của bộ lọc từ 2 frame lờn 54 frame cho kết quả tốt hơn hẳn H-K, tuy nhiờn, Boosted vẫn là thuật toỏn tớnh ủặc trưng hiệu quả nhất.
Hỡnh 1. 6So sỏnh phương phỏp tớnh toỏn ủặc trưng của Yanke (thuật toán Pairwise Boosting) với thuật toán của Haitsma và Haitsma cải tiến.
1.4.3. Học mô hình tiếng ồn (“Ocllusion Model”) với thuật toán EM (Expectation Maximization)
Việc tỡm kiếm bản nhạc gốc từ cỏc bản thu õm, ủược hệ thống thực hiện dựa trên sự so sánh giữa các signature. Sự giống nhau giữa bản nhạc gốc và bản nhạc thu õm ủược giả ủịnh là số bit khỏc nhau giữa cỏc ủặc trưng tương ứng thuộc hai signature của hai bản nhạc này.
ðể xỏc ủịnh xem liệu rằng một ủặc trưng cú ủược tạo ra bởi bài hỏt nào ủú trong cơ sở dữ liệu hay là một dạng nhiễu (occlusion), hệ thống của Y. Ke sử dụng một mụ hỡnh phụ thuộc tương ủối ủơn giản (hỡnh 1.7). Theo như mụ hỡnh này, khả năng một ủặc trưng nào ủú ủược tạo ra bởi cỏc occlusion phụ thuộc vào ủặc trưng trước nú (về mặt thời gian) cú ủược tạo ra bởi một occlusion khụng. Cụ thể, với mỗi signature G G GQ 9G bao gồm ủặc trưng thỡ khả năng G ủược tạo ra bởi snippet gốc với signature R là:
4GSR 4GER T 4 9:A :GER S :4:S:E (1)
:GER biểu diễn số bớt khỏc nhau giữa ủặc trưng của bản nhạc thu õm (:G) và bản nhạc gốc (:R), : khi ủặc trưng KUV ủược tạo ra bởi tớn hiệu gốc, +U
trong trường hợp ngược lại. Sự khỏc nhau giữa hai ủặc trưng :GER ; ) *. là một vộc tơ , bit xỏc ủịnh ủộ chờnh lệch về giỏ trị giữa ủặc trưng của bản nhạc gốc và ủặc trưng của bản nhạc ủược thu õm. Nếu chỳng ta mụ hỡnh húa sự phõn bố của GER như một biến ngẫu nhiờn Beroulli ủộc lập, vỡ , W& nờn chỳng ta cú XX tham số cần ước lượng: W& tham số cho mỗi 4:GERS: và 4:GERS: ; một tham số chuyển cho mỗi 4:S:E và 4:S:E . Bởi vì trong dữ liệu huấn luyện, ta khụng biết ủược một ủặc trưng nào ủú cú thuộc về bài hỏt trong cơ sở dữ liệu hay khụng, chỳng ta cần một mụ hỡnh ủể ước lượng ủồng thời nhón của : và các tham số khác nên thuật toán EM là lựa chọn thích hợp.
Thuật toỏn học bỏn giỏm sỏt kỳ vọng cực ủại (EM) thuộc loại thuật toỏn trong mụ hỡnh sinh. Mụ hỡnh hoạt ủộng dựa trờn giả thiết Bayes 5 5 Y 5S. Với số lượng nhiều dữ liệu chưa nhón cho 4S mụ hỡnh ủồng nhất, tài liệu ủược phõn thành cỏc thành phần mà trong trường hợp lý tưởng, trong mụ hỡnh ủồng nhất, mọi ủối tượng trong một thành phần cựng chung một nhón, vỡ vậy chỉ cần biết nhón của một ủối tượng nào ủú trong thành phần là kết luận ủược nhón toàn bộ cỏc ủối tượng trong thành phần ủú.
Áp dụng với hệ thống nhận dạng nhạc số, với mỗi signature truy vấn G, hệ thống sẽ tỡm kiếm một signature R cực ủại húa 4GSR như cụng thức 1. Sau ủú, hệ thống quyết ủịnh xem hai signature ủú cú tương tự khụng theo cụng thức sau: 4GSR Z (2) với ngưỡng Z ủó ủược chọn trước.
Hỡnh 1. 7 Mụ hỡnh phụ thuộc ủơn giản ủược giả lập bởi hệ thống 1.4.4. Quá trình nhận dạng nhạc số
Sử dụng cỏch biểu diễn ủặc trưng như trong 1.4.2, hệ thống xõy dựng cỏc signature cho toàn bộ các bài hát trong cơ sở dữ liệu. Trong quá trình nhận dạng, hệ thống thực hiện việc tỡm kiếm tương tự giữa cỏc ủặc trưng của bản nhạc truy vấn với trong cơ sở dữ liệu các signature này. Trong thực tế, kích thước cơ sở dữ liệu thường rất lớn, ủũi hỏi phải cú một chiến lược tỡm kiếm tương tự hiệu quả trong khụng gian ủa chiều của cỏc ủặc trưng (32-bit). Một sự lựa chọn tự nhiờn là sử dụng thuật toán băm LSH (Locality-Sensitive Hashing) [19], kỹ thuật cho phép cỏc tỡm kiếm tương tự xấp xỉ trong thời gian tuyến tớnh, ủặc biệt kỹ thuật này phự hợp với cỏc tiờu chuẩn của khoảng cỏch Hamming. Những thử nghiệm ban ủầu với LSH chỉ ra rằng cỏc ủặc trưng ủược tớnh toỏn bởi hệ thống rất bền vững nờn việc ủỏnh chỉ mục trực tiếp sử dụng cỏc bảng băm truyền thống giỳp giảm ủỏng kể thời gian tỡm kiếm mà khụng ảnh hưởng ủến ủộ chớnh xỏc tỡm kiếm. Cỏch tiếp cận ủỏnh chỉ mục cho cỏc ủặc trưng ủược mụ tả như dưới ủõy.
Tất cả cỏc signature sẽ ủược băm thành một bảng băm chuẩn (khúa là ủặc trưng M-bit với M ủược chọn là 32). Những ủặc trưng trong khoảng cỏch