TWI490711B - Clustering methods and systems - Google Patents

Clustering methods and systems Download PDF

Info

Publication number
TWI490711B
TWI490711B TW099104470A TW99104470A TWI490711B TW I490711 B TWI490711 B TW I490711B TW 099104470 A TW099104470 A TW 099104470A TW 99104470 A TW99104470 A TW 99104470A TW I490711 B TWI490711 B TW I490711B
Authority
TW
Taiwan
Prior art keywords
vector
file
similarity
webpage
clustering
Prior art date
Application number
TW099104470A
Other languages
English (en)
Other versions
TW201128418A (en
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to TW099104470A priority Critical patent/TWI490711B/zh
Publication of TW201128418A publication Critical patent/TW201128418A/zh
Application granted granted Critical
Publication of TWI490711B publication Critical patent/TWI490711B/zh

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

聚類方法和系統
本申請涉及資料處理領域,特別涉及一種聚類方法和系統。
在資料處理過程中,將物理或抽象物件的集合分成由類似的物件組成的多個類的過程被稱為聚類。由聚類所生成的簇是一組資料物件的集合,這些物件與同一個簇中的物件彼此相似,與其他簇中的物件相異。在對大資料量的可讀取文件進行識別時,往往需要對其進行聚類計算,即是根據不同的閥值將不同的可讀取文件分成不同的類,以便獲取哪些可讀取文件屬於同一個類別,並最終實現相似文檔的聚類。
現有技術中,在對向量可讀取文件進行聚類的過程一般是這樣的:首先將可讀取文件基於不同的方法進行向量化,通過利用不同的向量相似度進行比較的結果作為聚類的依據。所述向量化就是將一個可讀取文件(例如,word文檔)轉化成為由一系列數位組成的向量,其中每個數位代表不同的特徵所對應的特徵值。不同的可讀取文件所對應的向量是不同的。在根據向量相似度進行聚類時,一般採用逐一比較的方法,例如,當有一百個可讀取文件需要進行聚類時,其中每一個可讀取文件都需要和其他99個可讀取文件計算向量相似度,這樣才可以根據向量相似度的值進行聚類。
從上述過程中可以看出,現有技術值的聚類方法需要計算每個可讀取文件的向量相似度,基於這個向量相似度才可以進行聚類分析,當可讀取文件的資料量很大時,這種重複計算往往會增加計算過程的時間,嚴重降低性能,即是在進行聚類分析之前的計算所佔用的系統資源幾乎超過了聚類分析過程。
總之,目前需要本領域技術人員迫切解決的一個技術問題就是:如何能夠創新的提出一種聚類方法,以解決現有技術中每一個可讀取文件都需要和其他文件計算向量相似度才能進行聚類導致的計算時間增加,聚類運算的性能降低的問題。
本申請所要解決的技術問題是提供一種聚類方法,用以解決現有技術中每一個可讀取文件都需要和其他文件計算向量相似度才能進行聚類導致的計算時間增加,聚類運算的性能降低的問題。
本申請還提供了一種聚類系統,用以保證上述方法在實際中的實現及應用。
為了解決上述問題,本申請公開了一種聚類方法,包括:對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量;根據所述多個文件向量提取所述多個可讀取文件的總特徵向量;根據所述總特徵向量和各個文件向量之間相似度的排序結果,對所述多個可讀取文件進行聚類。
本申請還提供了一種聚類系統,該系統包括:向量化單元,用於對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量;提取單元,根據所述多個文件向量提取所述多個可讀取文件的總特徵向量;聚類單元,根據所述總特徵向量和各個文件向量之間相似度的排序結果,對所述多個可讀取文件進行聚類。
本申請還公開了一種對網際網路網頁進行聚類的方法,該方法包括:從網際網路上獲取多個待聚類網頁;對所述多個待聚類網頁進行向量化,得到多個待聚類網頁對應的多個網頁向量;根據所述多個網頁向量提取所述多個待聚類網頁的總網頁特徵向量;根據所述總網頁特徵向量和各個網頁向量之間相似度的排序結果,對所述多個待聚類網頁進行聚類。
本申請還公開了一種對網際網路網頁進行聚類的系統,該系統包括:獲取單元,從網際網路上獲取多個待聚類網頁;網頁聚類裝置,用於對所述多個待聚類網頁進行向量化,得到多個待聚類網頁對應的多個網頁向量;根據所述多個網頁向量提取所述多個待聚類網頁的總網頁特徵向量;根據所述總網頁特徵向量和各個網頁向量之間相似度的排序結果,對所述多個待聚類網頁進行聚類。
與現有技術相比,本申請包括以下優點:在本申請中,首先對當前的多個可讀取文件進行向量化,可以得到多個可讀取文件對應的多個文件向量;根據所述多個文件向量提取所述多個可讀取文件共同的總特徵向量,然後再根據所述總特徵向量和各個文件向量之間的相似度對所述多個可讀取文件進行聚類。在本申請的實施例中,採用每一個文件向量與總特徵向量的相似度作為聚類的依據,無需像現有技術一樣對需要聚類的可讀取文件兩兩之間都計算相似度,從而減少了文件向量之間的相似度的比較次數,進一步可以減少系統資源的負擔,例如CPU和記憶體的使用量,降低了聚類的運行時間,提高了聚類方法的運算性能。當然,實施本申請的任一產品並不一定需要同時達到以上所述的所有優點。
下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。
本申請可用於衆多通用或專用的計算系統環境或配置中。例如:個人電腦、伺服器電腦、手持設備或攜帶型設備、平板型設備、多處理器系統、包括以上任何系統或設備的分散式計算環境等等。
本申請可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、資料結構等等。也可以在分散式計算環境中實踐本申請,在這些分散式計算環境中,由通過通信網路而被連接的遠端處理設備來執行任務。在分散式計算環境中,程式模組可以位於包括儲存設備在內的本地和遠端電腦儲存媒體中。
本申請的主要思想之一可以包括,對於當前需要進行聚類的可讀取文件來說,首先將其向量化,得到對應的多個文件向量,然後再針對這多個文件向量提取共同的特徵,組成一個特徵向量,並根據所述特徵向量與每個文件向量之間的相似度來進行可讀取文件的聚類。就能夠避免了現有技術中每兩個文件向量之間都需要進行相似度的計算的操作,就根據構造出的特徵向量實現可讀取文件的聚類,從而在減少相似度比較次數的基礎上,能夠提升聚類的性能。
參考圖1,示出了本申請一種聚類方法實施例1的流程圖,可以包括以下步驟:步驟101:對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量。
在本實施例中,所述可讀取文件可以是轉化為向量的各種格式的文件,例如,Word文檔、Excel表格等等;首先對當前需要進行聚類的多個可讀取文件進行向量化,將該多個可讀取文件轉換為對應的多個文件向量。所述向量化就是將一個可讀取文件轉化成為由一系列數位組成的向量,其中每個數位代表不同的特徵所對應的值,可讀取文件的特徵選取有很多種方法,最典型的方法就是採用TF_IDF的方法對文檔進行特徵值提取,當然還可以採用其他方式,例如:資訊增益(IG)、互資訊(MI)以及熵的方法等。最後組合提取到的特徵值生成一組數位組成的向量。不同的可讀取文件所對應的向量是不同的。本申請中的文件向量即是向量的意思,稱為文件向量是為了和後續出現的特徵向量進行區分。
步驟102:根據所述多個文件向量提取所述多個可讀取文件的總特徵向量。
本申請中在獲取多個可讀取文件的多個文件向量之後,需要根據這多個文件向量提取這多個可讀取文件的總特徵向量,總特徵向量即是包括了所有可讀取文件的特徵的特徵向量。在實際應用中,構造特徵向量時可將所有可讀取文件的向量的特徵都進行提取,然後再生成一個含有所有可讀取文件的特徵的向量作為特徵向量,可以通過將所有可讀取文件的特徵值都進行求和,將求得的和作為特徵向量的特徵值的方法來實現。所述可讀取文件的特徵可以理解為可讀取文件中的可接受的最小單位,例如一個詞或是一組數位等,具體的特徵根據特徵選取演算法的不同會有所不同。在本步驟中構造出的特徵向量可以保證每個文件向量與特徵向量進行計算時相似度的值都不會為零,後續保證可以將相似的文件向量能夠順序排列。
步驟103:根據所述總特徵向量和各個文件向量之間相似度的排序結果,對所述多個可讀取文件進行聚類。
計算所述總特徵向量和各個文件向量之間的相似度,對所述多個可讀取文件進行聚類,具體的,可以按照計算出的多個相似度對可讀取文件進行排序,然後將相鄰的若干個可讀取文件根據實際情況或需求進行聚類。在本實施例中,可以採用逐次比較的方式,即是每一個文件向量都只要與自己相鄰的上一個位置的向量進行相似度比較就可以了,在預設閥值的時候,可以將閥值設置為0.99,即是兩個文件相鄰之間的相似度大於或等於0.99時,則將該兩個文件向量聚為一類,否則,則生成一個新的類,最終對所有的可讀取文件對應的多個向量都舉行了聚類。其中,所述向量相似度比較可以基於數學上不同的向量相似度計算公式,不同的公式可以得出不同的相似度的計算方法。
需要說明的是,對於本實施例中的聚類方法的實現,可以採用類中心疊代計算的方法,例如K-均值聚類演算法等,或是高維向低維映射的演算法,例如投影尋蹤,自組織特徵映射演算法等。對於本發明給出的實例的聚類問題,採用以上兩種方法都可以滿足要求。
在本實施例中,在進行聚類之前,首先是結合所有可讀取文件的多個文件向量共同構造一個特徵向量,該總特徵向量為能夠包括所有的特徵的向量,因此,這樣在計算出每一個文件向量與該總特徵向量的相似度之後,按照相似度對多個可讀取文件進行排序,再按照逐次比較的原則,根據相鄰的兩個文件向量計算出的向量相似度來進行聚類,可以看出,採用每個文件向量只與臨近的文件向量進行比較,從而減少了文件向量之間的相似度的比較次數,從而可以減少系統資源的負擔,例如CPU和記憶體的使用量,降低了運行時間,提高了運算性能。
參考圖2,示出了本申請一種聚類方法實施例2的流程圖,本實施例可以理解為將本申請的聚類方法應用於實際中的一個具體例子,可以包括以下步驟:步驟201:對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量。
在本實施例中,以實際中的一個具體例子來進行詳細介紹。假設有10個可讀取文本,每個可讀取文件含有特徵的總數為4個,則每個可讀取文本被向量化後的結果如下:第一個可讀取文本的文件向量1為:(0.2,0,1,1),第二個可讀取文本的文件向量2為:(0.3,0.2,0,1),第三個可讀取文本的文件向量3為:(0.1,0.1,0.1,0.2),第四個可讀取文本的文件向量4為:(0,0,0.6,0.7),第五個可讀取文本的文件向量5為:(1,2,3,4),第六個可讀取文本的文件向量6為:(0.3,0,0.9,0.9),第七個可讀取文本的文件向量7為:(0.4,0.1,0,0.9),第八個可讀取文本的文件向量8為:(0.2,0.1,0.2,0.1),第九個可讀取文本的文件向量9為:(0,0,0.5,0.6),第十個可讀取文本的文件向量10為:(0.3,0,0.9,1)。
步驟202:將所述多個文件向量共同的特徵的特徵值依次相加求和,得到所述總特徵向量相應的特徵值。
對於該10個可讀取文件的10個文件向量的每個特徵,分別對10個可讀取文件對應的10個文件向量求和,即是將10個文件向量的第一個特徵對應的特徵值的總和作為特徵向量的第一個特徵值,依次類推,在本例子中得到的特徵向量為:(2.8,2.5,7.2,10.4)。
步驟203:分別計算所述多個文件向量與總特徵向量的第一相似度。
在實際應用中,可以採用向量餘弦夾角公式計算所述向量的第一相似度。分別計算每個向量與特徵向量的相似度值,採用的是向量餘弦夾角的方法來判斷相似度,計算所得的相似度如下:第一個可讀取文本的文件向量1與總特徵向量的第一相似度1為:0.963638,第二個可讀取文本的文件向量2與總特徵向量的第一相似度2為:0.837032,第三個可讀取文本的文件向量3與總特徵向量的第一相似度3為:0.953912,第四個可讀取文本的文件向量4與總特徵向量的第一相似度4為:0.95359,第五個可讀取文本的文件向量5與總特徵向量的第一相似度5為:0.982451,第六個可讀取文本的文件向量6與總特徵向量的第一相似度6為:0.966743,第七個可讀取文本的文件向量7與總特徵向量的第一相似度7為:0.821485,第八個可讀取文本的文件向量8與總特徵向量的第一相似度8為:0.788513,第九個可讀取文本的文件向量9與總特徵向量的第一相似度9為:0.954868,第十個可讀取文本的文件向量10與總特徵向量的第一相似度10為:0.974316。
步驟204:按照所述第一相似度對所述多個文件向量進行第一次排序。
將本例子中10個文件向量按照第一相似度的值從大到小排序,結果如下:文件向量5,10,6,1,9,3,4,2,7,8。對應的具體文件向量的內容如下:(1,2,3,4),(0.3,0,0.9,1),(0.3,0,0.9,0.9),(0.2,0,1,1),(0,0,0.5,0.6),(0.1,0.1,0.1,0.2),(0,0,0.6,0.7),(0.3,0.2,0,1),(0.4,0.1,0,0.9),(0.2,0.1,0.2,0.1)。
可以看出,除了文件向量(0,0,0.5,0.6),(0.1,0.1,0.1,0.2)和(0,0,0.6,0.7)沒有成片連接以外,其他的文件向量都已經實現了相似的成片連接,例如:(0.3,0,0.9,1)和(0.3,0,0.9,0.9)的向量相似度為0.998614,文件向量(0.3,0,0.9,0.9)和(0.2,0,1,1)的向量相似度為0.995863,但文件向量(0,0,0.5,0.6)和(0,0,0.6,0.7)的向量相似度為0.999904,卻沒有排列在一起。因此,在本例子中,還需要著增加後續的排序步驟,以便獲取精確的計算結果。
步驟205:分別計算所述多個文件向量與第一次排序後的最後一個文件向量的第二相似度。
在實際應用中,可以在計算第二相似度之前首先對第一相似度的值做精度處理,只保留小數點後兩位,則得到結果如下:第一個可讀取文本的文件向量1與總特徵向量的第一相似度1約為:0.96,文件向量2的第一相似度2約為:0.83,文件向量3的第一相似度3約為:0.95,文件向量4的第一相似度4約為:0.95,文件向量5的第一相似度5約為:0.98,文件向量6的第一相似度6約為:0.96,文件向量7的第一相似度7約為:0.82,文件向量7的第一相似度7約為:0.78,文件向量7的第一相似度7約為:0.95,文件向量7的第一相似度7約為:0.97。
此處,獲取第一次排序最末位置的文件向量8,每個文件向量都與其計算第二相似度。文件向量9、3和4的第一相似度相同都為0.95,這三個文件向量分別是(0,0,0.5,0.6),(0.1,0.1,0.1,0.2)和(0,0,0.6,0.7),計算得到的以上三個向量的第二相似度值分別為:0.647821,0.83666,0.651695。
步驟206:在第一次排序的基礎上,再按照第二相似度對所述第一次排序後的文件向量進行第二次排序。
在第一相似度進行精度處理之後的值相等的前提下,按照第二相似度對相應的文件向量從大到小排序。例如,文件向量9,3和4的第一相似度相同,按照第二相似度從大到小排序後,得到的順序如下:3,9,4。即:(0.1,0.1,0.1,0.2)、(0,0,0.5,0.6)和(0,0,0.6,0.7)。這樣就實現了,9和4這兩個向量能夠成片連接,按照第二相似度排序後的總結果如下:5,10,6,1,3,9,4,2,7,8。
步驟207:從第二次排序之後的第二個文件向量開始,逐次與當前文件向量的上一個文件向量進行比較。
在實際應用中,根據閥值的不同,比較的結果可以有所不同,在實際應用中,閥值的取值範圍一般在0~1之間,取值越接近1,則聚類的結果越精確。例如,本例子中將閥值設置為0.98。
步驟208:當比較結果滿足聚類條件時,則將所述當前文件向量和其上一個文件向量聚為一類。
在本例子中,例如(0.3,0,0.9,1),(0.3,0,0.9,0.9),(0.2,0,1,1)聚為一類。
步驟209:當比較結果不滿足聚類條件時,則生成新的類。
當比較到文件向量(0,0,0.5,0.6)時,因為比較結果不滿足聚類條件,即是不大於或等於預先設置的閥值,則生成一個新的類,即是文件向量(0,0,0.5,0.6)屬於另外一個類。根據本實施例中設置的閥值0.99,聚類結果共為6類,分別為:
(1,2,3,4)
(0.3,0,0.9,1),(0.3,0,0.9,0.9),(0.2,0,1,1)
(0,0,0.5,0.6),(0,0,0.6,0.7)
(0.1,0.1,0.1,0.2)
(0.3,0.2,0,1),(0.4,0.1,0,0.9)
(0.2,0.1,0.2,0.1)
在本實施例中,採用構造總特徵向量的方式,完成了向量相似度相近的文件向量能夠相鄰的成片連接,這樣在對可讀取文件進行聚類時,文件向量之間的比較次數會大幅度減少,就在保證聚類結果的質量的同時提高了聚類的性能。
參考圖3,示出了本申請一種聚類方法實施例3的流程圖,可以包括以下步驟:
步驟301:對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量。
步驟302:將所述多個文件向量共同的特徵的特徵值依次相加求和,得到總特徵向量相應的特徵值。
步驟303:根據所述總特徵向量和各個文件向量之間的相似度對所述多個可讀取文件進行聚類。
其中,所述步驟303具體可以採用以下步驟來實現:步驟A1:分別計算所述多個文件向量與總特徵向量的第一相似度。
其中,步驟A1中計算相似度的方式可以採用向量餘弦夾角公式進行計算。
步驟A2:按照所述第一相似度對所述多個文件向量進行第一次排序。
步驟A3:分別計算所述多個文件向量與第一次排序後的最後一個文件向量的第二相似度。
步驟A4:在第一次排序的基礎上,再按照第二相似度對所述第一次排序後的文件向量進行第二次排序。
步驟A5:按照第二次排序之後的文件向量對所述多個可讀取文件進行聚類。
其中,步驟A5在實際中可以採用如下方式實現:子步驟a1:從第二次排序之後的第二個文件向量開始,逐次向當前文件向量的上一個文件向量進行比較。
子步驟a2:當比較結果滿足聚類條件時,則將所述當前文件向量和其上一個文件向量聚為一類。
子步驟a3:當比較結果不滿足聚類條件時,則生成新的類。
步驟304:根據所述可讀取文件的聚類結果,獲取每一類的代表向量。
在實際應用中,在實施例2中獲得的結果,有時不能適應於要求精度更高的場景,則在按照本申請實施例2中的方式獲取到聚類結果,再對每一個類獲取到該類的代表向量,所述代表向量可以是每一類中所有的文件向量的中心向量,代表向量的個數與步驟304中的類的個數相同。
步驟305:構造滿足預設條件的新特徵向量。
所述新特徵向量與總特徵向量不能相同,在本實施例中所述新特徵向量的構造方法可以根據不同的應用場景有所不同。但是,所述新特徵向量,需要滿足以下標準:計算每一個代表向量與新特徵向量的相似度的值,最終能夠使按照該相似度從大到小排序後的文件向量,能夠保證相似或相近的文件向量成片相連。
步驟306:分別計算所述代表向量與新特徵向量的第三相似度。
在本實施例中,則是計算每個類的代表向量與所述新特徵向量的第三相似度的值。
步驟307:按照所述第三相似度對所述可讀取文件的各個類進行第一次排序。
在本實施例之後是按照所述第三相似度對步驟304中聚類之後的每一類進行排序。
步驟308:分別計算所述每一類的代表向量與第一次排序後的最後一個類的代表向量的第四相似度。
與實施例2類似,在本實施例之後,再繼續計算每一類的代表向量與排序之後的最後一個類的代表向量的第四相似度。
步驟309:在第一次排序的基礎上,再按照第四相似度對所述第一次排序後的代表向量進行第二次排序。
重新排序的操作,例如,對於第三相似度相同的代表向量,本應成片連接的代表向量在第一次排序之後並沒有相鄰,則重新按照第四相似度對第三相似度相等的代表向量進行第二次排序。
步驟310:按照第二次排序之後的代表向量對所述多個可讀取文件的類重新進行聚類。
在本實施例中,所述方法還可以包括:
步驟311:判斷是否滿足疊代結束條件,如果是,則結束流程,如果否,則重新執行所述根據所述可讀取文件的聚類結果,獲取每一類的代表向量的步驟。
其中,所述疊代結束條件一般可以設為,達到一定疊代步數或聚類結果數目達到要求的數目等。當滿足疊代條件時,則結束當前流程,如果不滿足疊代條件,則重新執行所述步驟304。
需要說明的是,對於按照方法實施例中進行聚類時,每一個實施例中可以構造出的特徵向量在不同的實施過程中可以是不相同的,只要滿足構造特徵向量的標準,可以按照不同的需求構造不同場境下不相同的特徵向量。在本實施例中,第二次疊代聚類中特徵向量的選取個數根據不同的需求也可以不一樣,但需滿足構造特徵向量的標準。在本申請實施例2和3中,所述總特徵向量和新特徵向量給出了不同的構造標準,本實施例採用疊代的方法,可以提高聚類的質量。
對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請並不受所描述的動作順序的限制,因為依據本申請,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模組並不一定是本申請所必須的。
與上述本申請一種聚類方法實施例1所提供的方法相對應,參見圖4,本申請還提供了一種聚類系統實施例1,在本實施例中,該系統可以包括:向量化單元401,用於對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量。
在本實施例中,所述可讀取文件可以是轉化為向量的各種格式的文件,例如,Word文檔、Excel表格等等;首先對當前需要進行聚類的多個可讀取文件進行向量化,將該多個可讀取文件轉換為對應的多個文件向量。所述向量化就是將一個可讀取文件轉化成為由一系列數位組成的向量,其中每個數位代表不同的特徵所對應的值。不同的可讀取文件所對應的向量是不同的。本申請中的文件向量即是向量的意思,稱為文件向量是為了和後續出現的特徵向量進行區分。
提取單元402,根據所述多個文件向量提取所述多個可讀取文件共同的總特徵向量。
本申請中在獲取多個可讀取文件的多個文件向量之後,需要根據這多個文件向量提取這多個可讀取文件共同的總特徵向量。在實際應用中,構造特徵向量時可將所有可讀取文件的向量的特徵都進行提取,然後再生成一個含有所有可讀取文件的特徵的向量做為特徵向量,可以通過將所有可讀取文件的特徵值都進行求和,將求得的和作為特徵向量的特徵值的方法來實現。所述可讀取文件的特徵可以理解為可讀取文件中的可接受文件的最小單位,例如一個詞或是一組數位等,具體的特徵根據特徵選取演算法的不同會有所不同。在本步驟中構造出的特徵向量可以保證每個文件向量與特徵向量進行計算時相似度的值都不會為零,後續保證可以將相似的文件向量能夠順序排列。
聚類單元403,根據所述總特徵向量和各個文件向量之間的相似度對所述多個可讀取文件進行聚類。
計算所述總特徵向量和各個文件向量之間的相似度,對所述多個可讀取文件進行聚類。在本實施例中,可以採用逐次比較的方式,即是每一個文件向量都只要與自己相鄰的上一個位置的向量進行相似度比較就可以了,在預設閥值的時候,可以將閥值設置為0.99,即是兩個文件相鄰之間的相似度大於或等於0.99時,則將該兩個文件向量聚為一類,否則,則生成一個新的類,最終對所有的可讀取文件對應的多個向量都舉行了聚類。其中,所述向量相似度比較可以基於數學上不同的向量相似度計算公式,不同的公式可以得出不同的相似度計算方法。
在本實施例中,在進行聚類之前,首先是提取單元402可以結合所有可讀取文件的多個文件向量共同構造一個特徵向量,能夠包括所有的向量的特徵,因此,這樣在計算出相似度之後,再按照逐次比較的原則,根據相鄰的兩個文件向量計算出的向量相似度來進行聚類,可以看出,採用每個文件向量只與臨近的文件向量進行比較,從而減少了文件向量之間的相似度的比較次數,從而可以減少系統資源的負擔,例如CPU和記憶體的使用量,降低了運行時間,提高了運算性能。
與上述本申請一種聚類方法實施例2所提供的方法相對應,參見圖5,本申請還提供了一種聚類系統的優選實施例2,在本實施例中,該系統具體可以包括:向量化單元401,用於對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量。
提取單元402,具體用於將所述多個文件向量共同的特徵的特徵值依次相加求和,得到所述總特徵向量相應的特徵值。
第一計算單元501,用於分別計算所述多個文件向量與總特徵向量的第一相似度。
第一排序單元502,用於按照所述第一相似度對所述多個文件向量進行第一次排序。
第二計算單元503,用於分別計算所述多個文件向量與第一次排序後的最後一個文件向量的第二相似度。
第二排序單元504,用於在第一次排序的基礎上,再按照第二相似度對所述第一次排序後的文件向量進行第二次排序。
在本實施例中,第二聚類單元,可以用於按照第二次排序之後的文件向量對所述多個可讀取文件進行聚類。所述第二聚類單元可以包括:比較子單元505、聚類子單元506和生成子單元507。
比較子單元505,用於從第二次排序之後的第二個文件向量開始,逐次向當前文件向量的上一個文件向量進行比較。
聚類子單元506,用於當比較結果滿足聚類條件時,則將所述當前文件向量和其上一個文件向量聚為一類。
生成子單元507,用於當比較結果不滿足聚類條件時,則生成新的類。
本實施例中,採用構造總特徵向量的方式,完成了向量相似度相近的文件向量能夠相鄰的成片連接,這樣在對可讀取文件進行聚類時,文件向量之間的比較次數會大幅度減少,就在保證聚類結果的質量的同時提高了聚類的性能。
與上述本申請一種聚類方法實施例3所提供的方法相對應,參見圖6,本申請還提供了一種聚類系統的優選實施例3,在本實施例中,該系統具體可以包括:向量化單元401,用於對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量;提取單元402,具體用於將所述多個文件向量共同的特徵的特徵值依次相加求和,得到所述總特徵向量相應的特徵值。
第一計算單元501,用於分別計算所述多個文件向量與總特徵向量的第一相似度。
第一排序單元502,用於按照所述第一相似度對所述多個文件向量進行第一次排序。
第二計算單元503,用於分別計算所述多個文件向量與第一次排序後的最後一個文件向量的第二相似度。
第二排序單元504,用於在第一次排序的基礎上,再按照第二相似度對所述第一次排序後的文件向量進行第二次排序。
第二聚類單元601,用於按照第二次排序之後的文件向量對所述多個可讀取文件進行聚類。
獲取單元602,用於根據所述可讀取文件的聚類結果,獲取每一類的代表向量。
構造單元603,用於構造滿足預設條件的新特徵向量。
第三計算單元604,用於分別計算所述代表向量與新特徵向量的第三相似度。
第三排序單元605,用於按照所述第三相似度對所述可讀取文件的各個類進行第一次排序。
第四計算單元606,用於分別計算所述每一類的代表向量與第一次排序後的最後一個類的代表向量的第四相似度。
第四排序單元607,用於在第一次排序的基礎上,再按照第四相似度對所述第一次排序後的代表向量進行第二次排序。
第三聚類單元608,用於按照第二次排序之後的代表向量對所述多個可讀取文件的類重新進行聚類。
判斷單元609,用於判斷是否滿足疊代結束條件,如果是,則結束流程,如果否,則重新執行所述根據所述可讀取文件的聚類結果,獲取每一類的代表向量的步驟。
參考圖7所示,在本發明方法實施例中,提供了一種對網際網路網頁進行聚類的方法實施例,可以包括如下步驟:步驟701:從網際網路上獲取多個待聚類網頁。
在網際網路領域,也可以應用本申請中前述實施例的聚類方法。例如:門戶類網站的類目編輯,或者搜尋引擎伺服器對網路蜘蛛爬取的網頁結果進行聚類等。以搜尋引擎伺服器系統的網路蜘蛛為例來進行介紹,首先網路蜘蛛可以從網際網路路上爬取得到一定數目的網頁,該一定數目的網頁可以根據實際情況在數量和內容上有所不同,該一定數目的網頁即是待聚類網頁。
步驟702:對所述多個待聚類網頁進行向量化,得到多個待聚類網頁對應的多個網頁向量。
其中,所述待聚類網頁相當於可讀取文件,此時,對所述待聚類網頁透過文本解析將各個網頁轉化成向量模式,優選的,可以通過TF-IDF的方法進行轉化。
步驟703:根據所述多個網頁向量提取所述多個待聚類網頁的總網頁特徵向量。步驟704:根據所述總網頁特徵向量和各個網頁向量之間的相似度對所述多個待聚類網頁進行聚類。
其中,步驟703和704即是前述實施例中對可讀取文件進行聚類的實現過程,在本實施例中,操作物件具體為待聚類網頁。在本實施例中,對待聚類網頁進行聚類的粗細程度取決於閥值的選取,同時,在不同的應用場景下可以通過實驗設置或計算相適應的聚類閥值。
步驟705:依據所述對多個待聚類網頁的聚類結果,建立類目索引,所述類目索引用於標識一類網頁。
在步驟704對待聚類網頁進行聚類之後,根據前述實施例的描述可以得知,每一類待聚類網頁對應的網頁向量中都有一個中心向量,則該中心向量對應的網頁為該類網頁中的中心網頁,通過對中心網頁進行分析可以確定該中心網頁的特性,從而得知該中心網頁所屬類的特性,進而可以根據特性定義該類網頁所屬的具體類目,並分類目建立類目索引,所述類目索引可以唯一標識一類網頁。
步驟706:當接收到當前用戶輸入的檢索詞時,依據類目索引在某一類網頁中進行檢索。
搜尋引擎接收到用戶輸入的檢索詞時,可以根據該檢索詞所屬的類目和類目索引匹配到相關類目,然後就可以只在該類目下進行檢索,或只與相關類目的內容進行檢索,這樣就在搜尋引擎伺服器端減少了搜尋引擎的計算量,同時也提高了檢索速度,能夠優化搜尋引擎伺服器的性能,進一步的,還能提升用戶的搜尋引擎使用體驗。
在本發明的另一個實施例中,參考圖8所示,在所述步驟704之後,還可以包括以下步驟:
步驟801:分別從各類網頁中選取一個中心網頁,並建立各類中其他網頁分別與各個中心網頁的關聯。
在本實施例中,則是將已經進行了聚類的網頁,按照聚類結果,從每一類網頁中都選取出一個中心網頁。因為每一類待聚類網頁對應的網頁向量中都有一個中心向量,則該中心向量對應的網頁為該類網頁中的中心網頁,因此,選取出中心網頁之後,可以在每一類網頁中,將除了該中心網頁之外的其他網頁,都分別建立起與當前類的中心網頁的關聯。其中,該關聯可以理解為,當點擊所述中心網頁的時候,在打開中心網頁的同時,也會顯示所述中心網頁所屬類的其他網頁資訊的預設關係。當然,其中,關聯方式和顯示本類中其他網頁資訊的實現,本領域技術人員可以根據用戶需求和應用場景自主設置,本申請對此不做限定。在展現的時候並不將相似的網頁去除,而是將相似的網頁進行合倂,通過代表網頁進行鏈結,當需要看具體網頁資訊時,可以通過鏈結口進入相似網頁介面,查看結果。步驟802:當接收到用戶輸入的檢索詞時,向用戶返回各類的代表網頁。在搜尋引擎伺服器端,當接收到用戶輸入的檢索詞時,則根據檢索詞所述類目只將對應的中心網頁返回給用戶,還可以進一步的,在每個中心網頁掛上到該類中其他網頁的鏈結。在本實施例中,對於步驟704中進行聚類時的閥值的選取可以由實際應用決定,對於不同的應用可以採取不同的閥值。但是對網頁進行聚類以及相似度判斷時,一般可以採取高閥值,因為網頁的格式變化偏多,所以在判斷網頁是否相似時往往會選取某些重點屬性,但重點屬性有時不能代表網頁的全部特性,所以選取閥值時應偏向於0.9或0.9以上的閥值。
參考圖9所示,為本申請中一種對網際網路網頁進行聚類的系統實施例的結構示意圖,該系統可以包括:獲取單元901,從網際網路上獲取多個待聚類網頁。
網頁聚類裝置902,用於對所述多個待聚類網頁進行向量化,得到多個待聚類網頁對應的多個網頁向量;根據所述多個網頁向量提取所述多個待聚類網頁的總網頁特徵向量;根據所述總網頁特徵向量和各個網頁向量之間相似度的排序結果,對所述多個待聚類網頁進行聚類。
建立索引單元903,用於依據所述對多個待聚類網頁的聚類結果,建立類目索引,所述類目索引用於標識一類網頁。檢索單元904,用於當接收到當前用戶輸入的檢索詞時,依據類目索引在某一類網頁中進行檢索。
同時,參考圖10所示,為本申請的對網際網路網頁進行聚類的系統實施例的結構示意圖,該系統可以包括:獲取單元901,從網際網路上獲取多個待聚類網頁。
網頁聚類裝置902,用於對所述多個待聚類網頁進行向量化,得到多個待聚類網頁對應的多個網頁向量;根據所述多個網頁向量提取所述多個待聚類網頁的總網頁特徵向量;根據所述總網頁特徵向量和各個網頁向量之間相似度的排序結果,對所述多個待聚類網頁進行聚類。
選取單元1001,用於分別從各類網頁中選取一個代表網頁,並建立各類中其他網頁分別與各個代表網頁的關聯。
返回單元1002,用於當接收到用戶輸入的檢索詞時,向用戶返回各類的代表網頁。
需要說明的是,本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對於系統類實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
最後,還需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
以上對本申請所提供的一種聚類方法和系統進行了詳細介紹,本文中應用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本申請的方法及其核心思想;同時,對於本領域的一般技術人員,依據本申請的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本申請的限制。
401...向量化單元
402...提取單元
403...聚類單元
501...第一計算單元
502...第一排序單元
503...第二計算單元
504...第二排序單元
505...比較子單元
506...聚類子單元
507...生成子單元
601...第二聚類單元
602...獲取單元
603...構造單元
604...第三計算單元
605...第三排序單元
606...第四計算單元
607...第四排序單元
608...第三聚類單元
609...判斷單元
901...獲取單元
902...網頁聚類裝置
903...建立索引單元
904...檢索單元
1001...選取單元
1002...返回單元
為了更清楚地說明本申請實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是本申請的一種聚類方法實施例1的流程圖;
圖2是本申請中一種聚類方法實施例2的流程圖;
圖3是本申請的一種聚類方法實施例3的流程圖;
圖4是本申請的一種聚類系統實施例1的結構框圖;
圖5是本申請的一種聚類系統實施例2的結構框圖;
圖6是本申請的一種聚類系統實施例3的結構框圖;
圖7是本申請的對網際網路網頁進行聚類的方法一種實施例的流程圖;
圖8是本申請的對網際網路網頁進行聚類的方法另一種實施例中的步驟流程圖;
圖9是本申請的對網際網路網頁進行聚類的一種系統實施例的結構示意圖;
圖10是本申請的對網際網路網頁進行聚類的另一種系統實施例的結構示意圖。

Claims (15)

  1. 一種聚類方法,其特徵在於,該方法包括:對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量;根據該多個文件向量提取該多個可讀取文件的總特徵向量;分別計算該多個文件向量與該總特徵向量的第一相似度;按照該第一相似度對該多個文件向量進行第一次排序;分別計算該多個文件向量與第一次排序後的最後一個文件向量的第二相似度;在第一相似度進行精度處理之後的值相等的前提下,再按照第二相似度對該第一次排序後的文件向量進行第二次排序;及按照第二次排序之後的文件向量對該多個可讀取文件進行聚類。
  2. 根據申請專利範圍第1項所述的方法,其中,根據該多個文件向量提取該多個可讀取文件的總特徵向量,具體包括:將該多個文件向量對應特徵的特徵值分別相加求和,得到該總特徵向量相應的特徵值。
  3. 根據申請專利範圍第1項所述的方法,其中,按照第二次排序之後的文件向量對該多個可讀取文件進行聚 類,具體包括:從第二次排序之後的第二個文件向量開始,逐次與當前文件向量的上一個文件向量進行比較;當比較結果滿足聚類條件時,則將該當前文件向量和其上一個文件向量聚為一類;當比較結果不滿足聚類條件時,則生成新的類。
  4. 根據申請專利範圍第1項所述的方法,其中,該計算相似度的方式採用向量餘弦夾角公式進行計算。
  5. 根據申請專利範圍第1項所述的方法,還包括:根據該可讀取文件的聚類結果,獲取每一類的代表向量;構造滿足預設條件的新特徵向量;分別計算該代表向量與新特徵向量的第三相似度;按照該第三相似度對該可讀取文件的各個類進行第三次排序;分別計算該每一類的代表向量與該第三次排序後的最後一個類的代表向量的第四相似度;在該第三次排序的基礎上,再按照第四相似度對該第三次排序後的代表向量進行第四次排序;及按照該第四次排序之後的代表向量對該多個可讀取文件的類重新進行聚類。
  6. 根據申請專利範圍第5項所述的方法,其中,按照該第四次排序之後的代表向量對該多個可讀取文件的類重新進行聚類之後,還包括: 判斷是否滿足疊代結束條件,如果是,則結束流程,如果否,則重新執行該根據該可讀取文件的聚類結果,獲取每一類的代表向量的步驟。
  7. 一種聚類系統,其特徵在於,該系統包括:向量化單元,用於對多個可讀取文件進行向量化,得到多個可讀取文件對應的多個文件向量;提取單元,根據該多個文件向量提取該多個可讀取文件的總特徵向量;第一計算單元,用於分別計算該多個文件向量與該總特徵向量的第一相似度;第一排序單元,用於按照該第一相似度對該多個文件向量進行第一次排序;第二計算單元,用於分別計算該多個文件向量與第一次排序後的最後一個文件向量的第二相似度;第二排序單元,用於在第一相似度進行精度處理之後的值相等的前提下,再按照第二相似度對該第一次排序後的文件向量進行第二次排序;及第二聚類單元,用於按照第二次排序之後的文件向量對該多個可讀取文件進行聚類。
  8. 根據申請專利範圍第7項所述的系統,其中,該提取單元具體用於將該多個文件向量共同的特徵的特徵值依次相加求和,得到該總特徵向量相應的特徵值。
  9. 根據申請專利範圍第7項所述的系統,其中,該第二聚類單元具體包括: 比較子單元,用於從第二次排序之後的第二個文件向量開始,逐次與當前文件向量的上一個文件向量進行比較;聚類子單元,用於當比較結果滿足聚類條件時,則將該當前文件向量和其上一個文件向量聚為一類;及生成子單元,用於當比較結果不滿足聚類條件時,則生成新的類。
  10. 根據申請專利範圍第7項所述的系統,還包括:獲取單元,用於根據該可讀取文件的聚類結果,獲取每一類的代表向量;構造單元,用於構造滿足預設條件的新特徵向量;第三計算單元,用於分別計算該代表向量與新特徵向量的第三相似度;第三排序單元,用於按照該第三相似度對該可讀取文件的各個類進行第三次排序;第四計算單元,用於分別計算該每一類的代表向量與該第三次排序後的最後一個類的代表向量的第四相似度;第四排序單元,用於在該第三次排序的基礎上,再按照第四相似度對該第三次排序後的代表向量進行第四次排序;及第三聚類單元,用於按照該第四次排序之後的代表向量對該多個可讀取文件的類重新進行聚類。
  11. 根據申請專利範圍第10項所述的系統,還包括:判斷單元,用於判斷是否滿足疊代結束條件,如果 是,則結束流程,如果否,則重新執行該根據該可讀取文件的聚類結果,獲取每一類的代表向量的步驟。
  12. 一種對網際網路網頁進行聚類的方法,其特徵在於,該方法包括:從網際網路上獲取多個待聚類網頁;對該多個待聚類網頁進行向量化,得到多個待聚類網頁對應的多個網頁向量;根據該多個網頁向量提取該多個待聚類網頁的總網頁特徵向量;分別計算該多個網頁向量與該總網頁特徵向量的第一相似度;按照該第一相似度對該多個網頁向量進行第一次排序;分別計算該多個網頁向量與第一次排序後的最後一個網頁向量的第二相似度;在第一相似度進行精度處理之後的值相等的前提下,再按照第二相似度對該第一次排序後的網頁向量進行第二次排序;及按照第二次排序之後的網頁向量對該多個待聚類網頁進行聚類。
  13. 根據申請專利範圍第12項所述的方法,還包括:分別從各類網頁中選取一個代表網頁,並建立各類中其他網頁分別與各個代表網頁的關聯。
  14. 一種對網際網路網頁進行聚類的系統,其特徵在 於,該系統包括:獲取單元,從網際網路上獲取多個待聚類網頁;網頁聚類裝置,用於對該多個待聚類網頁進行向量化,得到多個待聚類網頁對應的多個網頁向量;根據該多個網頁向量提取該多個待聚類網頁的總網頁特徵向量;分別計算該多個網頁向量與該總網頁特徵向量的第一相似度;按照該第一相似度對該多個網頁向量進行第一次排序;分別計算該多個網頁向量與第一次排序後的最後一個網頁向量的第二相似度;在第一相似度進行精度處理之後的值相等的前提下,再按照第二相似度對該第一次排序後的網頁向量進行第二次排序;及按照第二次排序之後的網頁向量對該多個待聚類網頁進行聚類。
  15. 根據申請專利範圍第14項所述的系統,還包括:選取單元,用於分別從各類網頁中選取一個代表網頁,並建立各類中其他網頁分別與各個代表網頁的關聯。
TW099104470A 2010-02-11 2010-02-11 Clustering methods and systems TWI490711B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW099104470A TWI490711B (zh) 2010-02-11 2010-02-11 Clustering methods and systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW099104470A TWI490711B (zh) 2010-02-11 2010-02-11 Clustering methods and systems

Publications (2)

Publication Number Publication Date
TW201128418A TW201128418A (en) 2011-08-16
TWI490711B true TWI490711B (zh) 2015-07-01

Family

ID=45025195

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099104470A TWI490711B (zh) 2010-02-11 2010-02-11 Clustering methods and systems

Country Status (1)

Country Link
TW (1) TWI490711B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5187751A (en) * 1990-07-24 1993-02-16 Sharp Kabushiki Kaisha Clustering system for optical character reader
US20030172063A1 (en) * 2002-03-07 2003-09-11 Koninklijke Philips Electronics N.V. Method and apparatus for providing search results in response to an information search request
US20050203918A1 (en) * 2000-11-15 2005-09-15 Holbrook David M. Apparatus and methods for organizing and/or presenting data
US20080082531A1 (en) * 2006-09-28 2008-04-03 Veritas Operating Corporation Clustering system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5187751A (en) * 1990-07-24 1993-02-16 Sharp Kabushiki Kaisha Clustering system for optical character reader
US20050203918A1 (en) * 2000-11-15 2005-09-15 Holbrook David M. Apparatus and methods for organizing and/or presenting data
US20030172063A1 (en) * 2002-03-07 2003-09-11 Koninklijke Philips Electronics N.V. Method and apparatus for providing search results in response to an information search request
US20080082531A1 (en) * 2006-09-28 2008-04-03 Veritas Operating Corporation Clustering system and method

Also Published As

Publication number Publication date
TW201128418A (en) 2011-08-16

Similar Documents

Publication Publication Date Title
EP2499569B1 (en) Clustering method and system
CN110162695B (zh) 一种信息推送的方法及设备
RU2439686C2 (ru) Аннотация посредством поиска
CN103294778B (zh) 一种推送资讯信息的方法及系统
WO2020215667A1 (zh) 文本内容快速去重方法、装置、计算机设备及存储介质
CN108647322B (zh) 基于词网识别大量Web文本信息相似度的方法
WO2021047373A1 (zh) 基于大数据的列数据处理方法、设备及介质
CN105426529A (zh) 基于用户搜索意图定位的图像检索方法及系统
CN104317838A (zh) 一种基于耦合鉴别性字典的跨媒体哈希索引方法
CN112579783B (zh) 基于拉普拉斯图谱的短文本聚类方法
Aliguliyev A novel partitioning-based clustering method and generic document summarization
Wang et al. Improving short text classification through better feature space selection
CN108509449B (zh) 一种信息处理的方法及服务器
Bu et al. Unsupervised face-name association via commute distance
WO2023030184A1 (zh) 一种数据检索方法及相关设备
TWI490711B (zh) Clustering methods and systems
He et al. The task 2 of cips-sighan 2012 named entity recognition and disambiguation in chinese bakeoff
US9026540B1 (en) Systems and methods for information match scoring
WO2015159702A1 (ja) 部分情報抽出システム
Bessine et al. XCLSC: Structure and content-based clustering of XML documents
Yan et al. A multimodal retrieval and ranking method for scientific documents based on HFS and XLNet
Zhao et al. MapReduce-based clustering for near-duplicate image identification
TWI483129B (zh) Retrieval method and device
Chen et al. Chinese keyword extraction using semantically weighted network
Zhang et al. Research and implementation of keyword extraction algorithm based on professional background knowledge

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees