• 沒有找到結果。

最近鄰居搜尋樹尋找候選音訊指紋

在文檔中 中 華 大 學 (頁 30-33)

3. 音訊指紋系統

3.4. MP3 音訊指紋之索引與搜尋

3.4.1. 最近鄰居搜尋樹尋找候選音訊指紋

主要成份分析 PCA

以主要成份來建立 最近鄰居搜尋樹

(QUC-Tree索引) MFCC/MPEG-7/

MDCT/音澤向量 音訊簽名

MP3音樂 資料庫 索引樹

圖 7. 最近鄰居搜尋樹建立流程圖

我們的最近鄰居搜尋樹是根據主要成份分析轉換的結果為基礎,根據具有最大分 別作用的維度放在靠近根節點的原則來建立樹狀搜尋結構。主要成份分析會將原始的

特徵空間做轉換,產生互相獨立的維度較低的主成份,以此作為新特徵空間的基底。

這些主成份會依照保有原變異度(variance)的大小來做排序。保有變異度愈大的主成份 則對資料區分能力愈強。

接著,我們根據主成份來對音訊指紋建立最近鄰居搜尋樹。最近鄰居搜尋樹的每 個節點都是由數個群集所組成,群集會記錄群集中心、半徑、資料個數以及下一個層 級節點的位置。此外,節點內還會紀錄目前節點所使用的主成份維度個數。最近鄰居 搜尋樹有一個特點,那就是愈上層節點使用的主成份維度個數愈少,但其區分能力愈 高(保有變異度愈大)。建立最近鄰居搜尋樹是一個不斷加入音訊指紋的過程,其方法 如下:首先找出一個距離最近的音訊指紋群集,並更新群集資訊。若是待加入群集的 節點容量已滿,則將此節點做分割,否則將群集加入此節點。如此不斷的遞迴直到全 部的音訊指紋群集都加入完畢。分割的過程中,會先以一個音訊指紋群集為中心,將 原來的節點分割為兩個節點。若原來的節點不是葉節點的話,則會重新計算要採用的 主成份維度數,並產生一個新節點來取代原來的節點,再將分割出來的兩節點,歸類 到此新節點之下。而若是原來的節點是葉節點,則會將新分割出來的節點放到父節點 上。若是父節點已滿,再將父節點做分割。

將最近鄰居搜尋樹與主要成份分析兩項技術結合的目的,在於把音訊指紋所攜帶 的識別資訊精簡化與獨立化。MDCT、MFCC、音澤向量、以及 MPEG-7 音訊描述,

這些音訊指紋基本上都是描述音訊在頻率域上的一些特徵,因此攜帶的資訊難免會有 重複。最近鄰居搜尋樹的建立過程就像是不斷的做分割,把音訊指紋群集放到距離相 近的分割裡。若是直接使用這些音訊指紋來做分割,那就像是一直使用同樣的特徵來 區分資料,搜尋樹會變得很沒有效率。若是先做過主要成份分析,則會將這些音訊指 紋各個維度獨立化,各主成份維度彼此之間的資訊不會重複。以主成份為基底來做音 訊指紋群集分割可提高搜尋樹的比對效率。

圖 8. 音訊指紋主成份陡坡圖

最近鄰居搜尋樹對於主要成份分析維度的使用,是先將主要成份分析轉換後的維 度,依照其重要性,也就是區分資料的能力,由大到小做排序,愈重要的放在愈前面。

如同圖 8 所示,維度排序愈後,區分力愈低(條狀)。但是累積貣來的區分力會愈接近 百分之百(線狀)。最近鄰居搜尋樹在不同深度,會使用不同個數的前 D 維度來使用。

而愈上層,使用的維度會愈少。這表示,在上層的部分,分類是最具有代表性的。而 愈往下,分的也就會愈細。你可以把上層的部分,想像成一群資料的大綱或是輪廓,

下層的部分想像成細節。當想要瀏覽某個資料集的時候,會由大綱先選取有興趣的部 分,再針對該部份做細部的瀏覽。D 的數字愈小,則愈具有代表性,比較可以用來作 為資料集的大綱。數字愈大,則可以將資料分的愈細,但同時效率也就愈不好。

圖 9 以及圖 10 簡單的說明了最近鄰居搜尋樹使用主要成份分析來建立樹狀搜 尋結構的概念。在圖 9 中,首先使用主要成份分析轉換,得到第一主成份 D1 和第二 主成份 D2,兩個維度,其中 D1 的區分能力比 D2 好。因此,建立最近鄰居搜尋樹時,

會先採用 D1 維度來對資料做區分,對應到顏色較淺的音訊指紋特徵空間部分,也對 應到圖 10 的第一層。接下來再加上 D2 維度來做特徵空間細分,對應到顏色較深的 音訊指紋特徵空間和圖 10 的第二層。

圖 9. 音訊指紋主成份分析

root

2.1 2.2

1 3

4.1 4.2 5.1 5.2

2 4 5

圖 10. 最近鄰居搜尋樹示意圖

而我們使用最近鄰居搜尋樹的最主要目的,是為了縮小查詢的比對範圍。查詢時,

會先將其音訊指紋做主成份分析,轉換成最有效率的維度。並以此來對最近鄰居搜尋 樹做查詢,找出一個對應的葉節點。此節點內的所有資料都是有可能的候選音訊指紋。

如此一來,我們就不用比對所有的音訊指紋,只需要比對此葉節點內的音訊指紋即可,

這樣就可以大大減少查詢所需要的時間。

在文檔中 中 華 大 學 (頁 30-33)

相關文件