一種基于非負矩陣分解的事件分析方法與系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供一種基于非負矩陣分解的事件分析方法與系統(tǒng),該方法包括:獲取包括至少一個數(shù)據(jù)文本的待處理數(shù)據(jù);分別對每個數(shù)據(jù)文本進行分詞處理,得到與待處理數(shù)據(jù)對應(yīng)的文本空間矩陣;對文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定待處理數(shù)據(jù)中包含的各個事件以及分別用于描述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與各個事件對應(yīng)的數(shù)據(jù)文本。通過構(gòu)造待處理數(shù)據(jù)的文本空間矩陣,并對該文本空間矩陣進行非負矩陣分解,從而將一個規(guī)模龐大的矩陣分解成為兩個規(guī)模較小的矩陣,并且保證分解前后矩陣元素的非負性,在保證事件挖掘結(jié)果的準確性的同時,通過降維找到待處理數(shù)據(jù)中包含的事件,計算簡便,可擴展性較好。
【專利說明】—種基于非負矩陣分解的事件分析方法與系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)據(jù)挖掘【技術(shù)領(lǐng)域】,尤其是涉及一種基于非負矩陣分解的事件分析方法與系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展,越來越多的用戶通過比如論壇、微博等社交網(wǎng)絡(luò)平臺來發(fā)布各種新聞或者發(fā)表個人對一些社會現(xiàn)象的意見,從而導(dǎo)致互聯(lián)網(wǎng)上的各種數(shù)據(jù)信息也呈現(xiàn)出爆炸式增長,如何對海量的數(shù)據(jù)信息進行有效的事件挖掘是各搜索引擎一個主要研究的問題。
[0003]現(xiàn)有的一種數(shù)據(jù)挖掘的方式是采用層次式的聚類方式,對給定數(shù)據(jù)對象集合進行層次的分解,直到某種截止條件滿足為止。具體又可分為:凝聚的層次聚類:一種自底向上的策略,首先將每個數(shù)據(jù)對象作為一個原子簇,然后以數(shù)據(jù)對象間的相似性為依據(jù)合并這些原子簇為越來越大的簇,直到某個截止條件被滿足。分裂的層次聚類:采用自頂向下的策略,它首先將所有數(shù)據(jù)對象置于一個簇中,然后逐漸細分為越來越小的簇,直到達到了某個截止條件。
[0004]但是,由于層次聚類的方式本身的特性決定了其具有較高的計算復(fù)雜度,使得可擴展性受限,不適于應(yīng)用在海量數(shù)據(jù)的事件挖掘中。
【發(fā)明內(nèi)容】
[0005]針對上述存在的問題,本發(fā)明提供一種基于非負矩陣分解的事件分析方法與系統(tǒng),用以克服現(xiàn)有技術(shù)中的層次聚類方式導(dǎo)致較高的計算復(fù)雜度和較差的可擴展性的缺陷。
[0006]本發(fā)明提供了一種基于非負矩陣分解的事件分析方法,包括:
[0007]獲取待處理數(shù)據(jù),所述待處理數(shù)據(jù)中包括至少一個數(shù)據(jù)文本;
[0008]分別對所述至少一個數(shù)據(jù)文本中的每個數(shù)據(jù)文本進行分詞處理,得到與所述待處理數(shù)據(jù)對應(yīng)的文本空間矩陣,所述文本空間矩陣描述了所述至少一個數(shù)據(jù)文本中所包含的詞語信息;
[0009]對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本。
[0010]本發(fā)明提供了一種基于非負矩陣分解的事件分析系統(tǒng),包括:
[0011]獲取模塊,用于獲取待處理數(shù)據(jù),所述待處理數(shù)據(jù)中包括至少一個數(shù)據(jù)文本;
[0012]處理模塊,用于分別對所述至少一個數(shù)據(jù)文本中的每個數(shù)據(jù)文本進行分詞處理,得到與所述待處理數(shù)據(jù)對應(yīng)的文本空間矩陣,所述文本空間矩陣描述了所述至少一個數(shù)據(jù)文本中所包含的詞語信息;
[0013]計算模塊,用于對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本。
[0014]本發(fā)明提供的基于非負矩陣分解的事件分析方法與系統(tǒng),在獲取到包含多個數(shù)據(jù)文本的待處理數(shù)據(jù)后,以詞語為單位,對該多個數(shù)據(jù)文本分別進行分詞處理,從而得到用于描述該待處理數(shù)據(jù)中包含的多個數(shù)據(jù)文件信息以及該多個數(shù)據(jù)文件信息中包含的所有詞語的文本空間矩陣。進而,在該文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣得到待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與每個事件對應(yīng)的數(shù)據(jù)文本,即包含該事件的數(shù)據(jù)文本。通過構(gòu)造待處理數(shù)據(jù)的文本空間矩陣,并對該文本空間矩陣進行非負矩陣分解,從而將一個規(guī)模龐大的矩陣分解成為兩個規(guī)模較小的矩陣,并且保證分解前后矩陣元素的非負性,即在分解前后同一位置上的元素為正數(shù),在保證事件挖掘結(jié)果的準確性的同時,通過降維找到待處理數(shù)據(jù)中包含的事件,計算簡便,可擴展性較好。
【專利附圖】
【附圖說明】
[0015]圖1為本發(fā)明基于非負矩陣分解的事件分析方法實施例一的流程圖;
[0016]圖2為本發(fā)明基于非負矩陣分解的事件分析方法實施例二的流程圖;
[0017]圖3為本發(fā)明基于非負矩陣分解的事件分析系統(tǒng)實施例一的結(jié)構(gòu)示意圖;
[0018]圖4為本發(fā)明基于非負矩陣分解的事件分析系統(tǒng)實施例二的結(jié)構(gòu)示意圖。
【具體實施方式】
[0019]圖1為本發(fā)明基于非負矩陣分解的事件分析方法實施例一的流程圖,如圖1所示,該方法包括:
[0020]步驟101、獲取待處理數(shù)據(jù),所述待處理數(shù)據(jù)中包括至少一個數(shù)據(jù)文本;
[0021]步驟102、分別對所述至少一個數(shù)據(jù)文本中的每個數(shù)據(jù)文本進行分詞處理,得到與所述待處理數(shù)據(jù)對應(yīng)的文本空間矩陣,所述文本空間矩陣描述了所述至少一個數(shù)據(jù)文本中所包含的詞語信息;
[0022]步驟103、對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本。
[0023]本實施例提供的所述方法可以適用于對互聯(lián)網(wǎng)上的各種應(yīng)用所產(chǎn)生的海量數(shù)據(jù)進行事件挖掘處理,尤其適用于諸如微博、論壇等社交網(wǎng)絡(luò),該方法可以由一處理設(shè)備來執(zhí)行,該處理設(shè)備例如可以為某中應(yīng)用的管理平臺。
[0024]以微博為例,每天都會有大量的各種各樣的數(shù)據(jù)信息在微博上進行傳播,為了便于廣大普遍用戶能夠在海量的微博數(shù)據(jù)中快速有效地搜索到自身需要的信息,或者為了使普通用戶、政府機構(gòu)等用戶能夠及時獲知社會熱點,都需要對海量的微博數(shù)據(jù)進行事件挖掘。值得說明的是,本實施例中主要是針對文本類型的數(shù)據(jù)信息進行處理,稱之為數(shù)據(jù)文本。而且,本實施例中所述的事件,并非一般意義上的某件完整的事情或新聞,而是指用一些關(guān)鍵詞表征的詞語集合,一個事件中包含的關(guān)鍵詞往往具有一定的關(guān)聯(lián),比如這些關(guān)鍵詞同時在很多條數(shù)據(jù)文本中都同時出現(xiàn)過,因此,這些關(guān)鍵詞也一定程度上反映了當前微博中的關(guān)注熱點。
[0025]具體來說,當處理設(shè)備獲得了比如某一天的微博數(shù)據(jù)即待處理數(shù)據(jù)后,對該待處理數(shù)據(jù)中包含的每個數(shù)據(jù)文本進行分詞處理,比如采用現(xiàn)有的NLPIR漢語分詞系統(tǒng)對每個數(shù)據(jù)文件進行分詞處理,從而將每個數(shù)據(jù)文本按照詞語為單位進行劃分,得到每個數(shù)據(jù)文本中包含的各個詞語。通過對待處理數(shù)據(jù)中的每個數(shù)據(jù)文本都進行分詞處理,從而能夠得到待處理數(shù)據(jù)中包含的所有詞語,從而構(gòu)造由待處理數(shù)據(jù)中的所有數(shù)據(jù)文本和所有詞語組成的文本空間矩陣,該矩陣中的每個列向量表示的是該列向量對應(yīng)的數(shù)據(jù)文本中所包含的各個詞語。
[0026]進而,對該文本空間矩陣進行非負矩陣分解,其中,非負矩陣分解是現(xiàn)有技術(shù)中的現(xiàn)有矩陣分解方法,不做贅述。非負矩陣分解的結(jié)果是得到兩個矩陣,分別為基矩陣和系數(shù)矩陣。值得說明的是,由于文本空間矩陣是一個規(guī)模龐大的矩陣,直接對該矩陣進行處理將會導(dǎo)致非常大的運算量,而將其分解為兩個較小的矩陣,使得基于該兩個較小的矩陣進行的處理的運算量大大降低。而且,非負矩陣分解得到的基矩陣和系數(shù)矩陣的乘積是該文本空間矩陣的近似表達,分解的結(jié)果保證了在同一位置上的元素,在分解前后的誤差值為正數(shù),從而使分解后的元素具有與分解前該元素基本等同的表達。從而,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本。也就是說,分解得到的基矩陣中列向量的個數(shù)為該待處理數(shù)據(jù)中包含的事件的個數(shù),而每個列向量中包含的各個詞語即構(gòu)成該事件的關(guān)鍵詞;系數(shù)矩陣中的每個行向量表征了一個事件,該行向量中的各個數(shù)據(jù)文本表示了包含對應(yīng)的該事件即該事件中各關(guān)鍵詞的數(shù)據(jù)文本集合。因此,通過基矩陣和系數(shù)矩陣可以獲知待處理數(shù)據(jù)中包含了多少事件,每個事件中包含的關(guān)鍵詞是什么,以及分別包含每個事件的關(guān)鍵詞的數(shù)據(jù)文本有哪些。
[0027]本實施例中,在獲取到包含多個數(shù)據(jù)文本的待處理數(shù)據(jù)后,以詞語為單位,對該多個數(shù)據(jù)文本分別進行分詞處理,從而得到用于描述該待處理數(shù)據(jù)中包含的多個數(shù)據(jù)文件信息以及該多個數(shù)據(jù)文件信息中包含的所有詞語的文本空間矩陣。進而,在該文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣得到待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與每個事件對應(yīng)的數(shù)據(jù)文本,即包含該事件的數(shù)據(jù)文本。通過構(gòu)造待處理數(shù)據(jù)的文本空間矩陣,并對該文本空間矩陣進行非負矩陣分解,從而將一個規(guī)模龐大的矩陣分解成為兩個規(guī)模較小的矩陣,并且保證分解前后矩陣元素的非負性,即分解得到的兩個矩陣中每一個元素都是非負值,在保證事件挖掘結(jié)果的準確性的同時,將大矩陣轉(zhuǎn)變?yōu)閮蓚€小矩陣,通過降維找到待處理數(shù)據(jù)中包含的事件,計算簡便,可擴展性較好。
[0028]圖2為本發(fā)明基于非負矩陣分解的事件分析方法實施例二的流程圖,如圖2所示,本實施例提供的所述方法包括如下步驟:
[0029]步驟201、獲取待處理數(shù)據(jù),所述待處理數(shù)據(jù)中包括至少一個數(shù)據(jù)文本;
[0030]步驟202、對所述每個數(shù)據(jù)文本進行語義解析,確定所述每個數(shù)據(jù)文本中包含的名詞和動詞;
[0031]步驟203、對確定出的所述名詞和動詞進行標注,并根據(jù)如下公式確定每個所述名詞和動詞的權(quán)重值,得到與所述待處理數(shù)據(jù)對應(yīng)的文本空間矩陣Amxn:
[0032]R(w) = (w在所述M個詞語中的出現(xiàn)次數(shù))Xlog(數(shù)據(jù)文本總數(shù)N/包含w的數(shù)據(jù)文本數(shù)量)。
[0033]其中,w為任一個所述名詞或動詞,R(W)為w的權(quán)重值
[0034]本實施例中,對待處理數(shù)據(jù)中的每個數(shù)據(jù)文件進行語義解析,以確定每個數(shù)據(jù)文本中包含了哪些詞語,由于每個數(shù)據(jù)文本中包含的詞語種類眾多,其中比如會有些諸如“了”、“的”等沒有實際意義的詞語,統(tǒng)稱為虛詞,也會存在比如“城管”、“襲擊”等具有實際意義的名詞或者動詞,因此,為了區(qū)別不同詞語在每個數(shù)據(jù)文本中的重要性,在對每個數(shù)據(jù)文本進行語義解析之后,選擇出該數(shù)據(jù)文本中包含的名詞和動詞,并為這些名詞和動詞賦值較高的權(quán)重值,而為虛詞賦值較低的權(quán)重值。其中,可以根據(jù)每個名詞和動詞的在待處理數(shù)據(jù)中的出現(xiàn)次數(shù)分別確定每個名詞和動詞的權(quán)重值
[0035]步驟204、對所述文本空間矩陣Amxn進行非負矩陣分解,得到基矩陣WMXK,和系數(shù)矩陣Hkxn,所述K為所述待處理數(shù)據(jù)中包含的事件總數(shù);
[0036]步驟205、確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的目標詞語為描述對應(yīng)的第一事件的關(guān)鍵詞,所述目標詞語為所述列向量包含的詞語中權(quán)重值由大到小排列排在前面的第一預(yù)設(shè)數(shù)量的名詞和動詞;
[0037]步驟206、確定所述系數(shù)矩陣Hkxn中的每個行向量表征一個第二事件,每個行向量中所包含的數(shù)據(jù)文本為與所述行向量表征的第二事件對應(yīng)的數(shù)據(jù)文本。
[0038]在對每個數(shù)據(jù)文本中包含的名詞和動詞賦值較高權(quán)重值的情況下,在對文本空間矩陣進行非負矩陣分解后,基矩陣中每個列向量中包含的詞語便是具有不同權(quán)重值的詞語,這些詞語中既有較高權(quán)重值的名詞和動詞,也有較低權(quán)重值的虛詞,可選的,可以確定這些較高權(quán)重值即權(quán)重值大于一定閾值的名詞和動詞作為該列向量對應(yīng)的事件的關(guān)鍵詞。但是,很有可能這些名詞和動詞的數(shù)量仍舊比較大,如果需要將事件挖掘的結(jié)果進行呈現(xiàn),將如此數(shù)量的關(guān)鍵詞進行呈現(xiàn)將導(dǎo)致較低的用戶體驗。因此,本實施例中,對基矩陣中每個列向量中包含的詞語按照權(quán)重值由大到小的順序進行排列,選取排在前面的預(yù)設(shè)數(shù)量的詞語作為其對應(yīng)的事件的關(guān)鍵詞。值得說明的是,從大到小的排列順序僅是一種舉例,還可以從小到大排序,相應(yīng)的,選擇排在后面的預(yù)設(shè)數(shù)據(jù)的詞語。
[0039]步驟207、分別以所述各個事件中的每個事件作為待處理事件,從所述待處理事件對應(yīng)的關(guān)鍵詞中選取第二預(yù)設(shè)數(shù)量的關(guān)鍵詞作為所述待處理事件的標識,確定所述待處理事件對應(yīng)的數(shù)據(jù)文本的數(shù)量占所述待處理數(shù)據(jù)的數(shù)據(jù)文本總數(shù)的比例;
[0040]步驟208、根據(jù)所述標識和所述比例,采用如下呈現(xiàn)方式中的任一種方式呈現(xiàn)所述待處理事件:表格、餅狀圖、柱狀圖、折線圖、詞云。
[0041]本實施例中,為了方便不同用戶能夠直觀地了解事件挖掘的結(jié)果,S卩比較直觀地了解到當前微博中的關(guān)注熱點,可以將事件挖掘的結(jié)果進行可視化呈現(xiàn)。為此,需要對事件挖掘結(jié)果進行簡單的分析或處理,比如:為了保證可視化效果,可以針對每個事件,從該事件包含的關(guān)鍵詞中進一步再選取一定數(shù)量的關(guān)鍵詞作為該事件的標識。作為事件標識的關(guān)鍵詞既可以在該事件的關(guān)鍵詞中隨機選取,也可以按照各關(guān)鍵詞的權(quán)重值來選取權(quán)重值較大的。再比如:為了更直觀地了解每個事件在待處理數(shù)據(jù)中的重要程度或者關(guān)注熱度,可以統(tǒng)計確定每個事件對應(yīng)的數(shù)據(jù)文本占待處理數(shù)據(jù)的數(shù)據(jù)文本總數(shù)的比例。
[0042]進而,根據(jù)上述標識和所述比例,采用如下呈現(xiàn)方式中的任一種方式呈現(xiàn)所述待處理事件:表格、餅狀圖、柱狀圖、折線圖、詞云。比如:表格中可以顯示每個事件的標識,對應(yīng)的數(shù)據(jù)文本數(shù)量,以及對應(yīng)的數(shù)據(jù)文本所占比例;詞云中可以根據(jù)不同事件的數(shù)據(jù)文本所占比例的大小來確定每個事件的標識將被顯示的字體大小,等等。
[0043]圖3為本發(fā)明基于非負矩陣分解的事件分析系統(tǒng)實施例一的結(jié)構(gòu)示意圖,如圖3所示,該系統(tǒng)包括:
[0044]獲取模塊11,用于獲取待處理數(shù)據(jù),所述待處理數(shù)據(jù)中包括至少一個數(shù)據(jù)文本;
[0045]處理模塊12,用于分別對所述至少一個數(shù)據(jù)文本中的每個數(shù)據(jù)文本進行分詞處理,得到與所述待處理數(shù)據(jù)對應(yīng)的文本空間矩陣,所述文本空間矩陣描述了所述至少一個數(shù)據(jù)文本中所包含的詞語信息;
[0046]計算模塊13,用于對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本。
[0047]本實施例的系統(tǒng)可以用于執(zhí)行圖1所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0048]圖4為本發(fā)明基于非負矩陣分解的事件分析系統(tǒng)實施例二的結(jié)構(gòu)示意圖,如圖4所示,本實施例提供的所述系統(tǒng)在圖3所示實施例的基礎(chǔ)上,所述待處理數(shù)據(jù)中包括N個數(shù)據(jù)文本,所述N個數(shù)據(jù)文本中包含的詞語總數(shù)為M,所述文本空間矩陣Amxn為MXN維矩陣,所述N的取值為大于或等于I的整數(shù);
[0049]所述計算模塊13,包括:
[0050]計算單元131,用于對所述文本空間矩陣Amxn進行非負矩陣分解,得到基矩陣Wmxk,和系數(shù)矩陣Hkxn,所述K為所述待處理數(shù)據(jù)中包含的事件總數(shù);
[0051]確定單元132,用于確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的詞語為描述對應(yīng)的第一事件的關(guān)鍵詞;
[0052]所述確定單元132,還用于確定所述系數(shù)矩陣Hkxn中的每個行向量表征一個第二事件,每個行向量中所包含的數(shù)據(jù)文本為與所述行向量表征的第二事件對應(yīng)的數(shù)據(jù)文本。
[0053]進一步地,所述處理模塊12,包括:
[0054]解析單元121,用于對所述每個數(shù)據(jù)文本進行語義解析,確定所述每個數(shù)據(jù)文本中包含的名詞和動詞;
[0055]標記單元122,用于對確定出的所述名詞和動詞進行標注,并根據(jù)如下公式確定每個所述名詞和動詞的權(quán)重值:
[0056]R(w) = (w在所述M個詞語中的出現(xiàn)次數(shù))Xlog(數(shù)據(jù)文本總數(shù)N/包含w的數(shù)據(jù)文本數(shù)量);
[0057]其中,w為任一個所述名詞或動詞,R(W)為w的權(quán)重值。
[0058]具體地,所述確定單元132,具體用于:
[0059]確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的目標詞語為描述對應(yīng)的第一事件的關(guān)鍵詞,所述目標詞語為所述列向量包含的詞語中權(quán)重值由大到小排列排在前面的第一預(yù)設(shè)數(shù)量的名詞和動詞。
[0060]進一步地,所述系統(tǒng)還包括:
[0061]分析模塊21,用于分別以所述各個事件中的每個事件作為待處理事件,從所述待處理事件對應(yīng)的關(guān)鍵詞中選取第二預(yù)設(shè)數(shù)量的關(guān)鍵詞作為所述待處理事件的標識;
[0062]所述分析模塊21,還用于確定所述待處理事件對應(yīng)的數(shù)據(jù)文本的數(shù)量占所述待處理數(shù)據(jù)的數(shù)據(jù)文本總數(shù)的比例;
[0063]呈現(xiàn)模塊22,用于根據(jù)所述標識和所述比例,采用如下呈現(xiàn)方式中的任一種方式呈現(xiàn)所述待處理事件:
[0064]表格、餅狀圖、柱狀圖、折線圖、詞云。
[0065]本實施例的系統(tǒng)可以用于執(zhí)行圖2所不方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0066]本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括:R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0067]最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。
【權(quán)利要求】
1.一種基于非負矩陣分解的事件分析方法,其特征在于,包括: 獲取待處理數(shù)據(jù),所述待處理數(shù)據(jù)中包括至少一個數(shù)據(jù)文本; 分別對所述至少一個數(shù)據(jù)文本中的每個數(shù)據(jù)文本進行分詞處理,得到與所述待處理數(shù)據(jù)對應(yīng)的文本空間矩陣,所述文本空間矩陣描述了所述至少一個數(shù)據(jù)文本中所包含的詞語信息; 對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述待處理數(shù)據(jù)中包括N個數(shù)據(jù)文本,所述N個數(shù)據(jù)文本中包含的詞語總數(shù)為M,所述文本空間矩陣Amxn為MXN維矩陣,所述N的取值為大于或等于I的整數(shù); 所述對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本,包括: 對所述文本空間矩陣Amxn進行非負矩陣分解,得到基矩陣WMXK,和系數(shù)矩陣Hkxn,所述K為所述待處理數(shù)據(jù)中包含的事件總數(shù); 確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的詞語為描述對應(yīng)的第一事件的關(guān)鍵詞; 確定所述系數(shù)矩陣Hkxn中的每個行向量表征一個第二事件,每個行向量中所包含的數(shù)據(jù)文本為與所述行向量表征的第二事件對應(yīng)的數(shù)據(jù)文本。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述分別對所述至少一個數(shù)據(jù)文本中的每個數(shù)據(jù)文本進行分詞處理,包括: 對所述每個數(shù)據(jù)文本進行語義解析,確定所述每個數(shù)據(jù)文本中包含的名詞和動詞; 對確定出的所述名詞和動詞進行標注,并根據(jù)如下公式確定每個所述名詞和動詞的權(quán)重值: R(w) = (w在所述M個詞語中的出現(xiàn)次數(shù))Xlog(數(shù)據(jù)文本總數(shù)N/包含w的數(shù)據(jù)文本數(shù)量); 其中,w為任一個所述名詞或動詞,R(W)為w的權(quán)重值。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的詞語為描述對應(yīng)的第一事件的關(guān)鍵詞,包括: 確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的目標詞語為描述對應(yīng)的第一事件的關(guān)鍵詞,所述目標詞語為所述列向量包含的詞語中權(quán)重值由大到小排列排在前面的第一預(yù)設(shè)數(shù)量的名詞和動詞。
5.根據(jù)權(quán)利要求1至4中任一項所述的方法,其特征在于,所述對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本之后,還包括: 分別以所述各個事件中的每個事件作為待處理事件,從所述待處理事件對應(yīng)的關(guān)鍵詞中選取第二預(yù)設(shè)數(shù)量的關(guān)鍵詞作為所述待處理事件的標識; 確定所述待處理事件對應(yīng)的數(shù)據(jù)文本的數(shù)量占所述待處理數(shù)據(jù)的數(shù)據(jù)文本總數(shù)的比例; 根據(jù)所述標識和所述比例,采用如下呈現(xiàn)方式中的任一種方式呈現(xiàn)所述待處理事件: 表格、餅狀圖、柱狀圖、折線圖、詞云。
6.一種基于非負矩陣分解的事件分析系統(tǒng),其特征在于,包括: 獲取模塊,用于獲取待處理數(shù)據(jù),所述待處理數(shù)據(jù)中包括至少一個數(shù)據(jù)文本; 處理模塊,用于分別對所述至少一個數(shù)據(jù)文本中的每個數(shù)據(jù)文本進行分詞處理,得到與所述待處理數(shù)據(jù)對應(yīng)的文本空間矩陣,所述文本空間矩陣描述了所述至少一個數(shù)據(jù)文本中所包含的詞語信息; 計算模塊,用于對所述文本空間矩陣進行非負矩陣分解,根據(jù)分解得到的基矩陣確定所述待處理數(shù)據(jù)中包含的各個事件以及分別用于描述所述各個事件的關(guān)鍵詞,并根據(jù)分解得到的系數(shù)矩陣確定分別與所述各個事件對應(yīng)的數(shù)據(jù)文本。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述待處理數(shù)據(jù)中包括N個數(shù)據(jù)文本,所述N個數(shù)據(jù)文本中包含的詞語總數(shù)為M,所述文本空間矩陣Amxn為MXN維矩陣,所述N的取值為大于或等于I的整數(shù); 所述計算模塊,包括: 計算單元,用于對所述文本空間矩陣Amxn進行非負矩陣分解,得到基矩陣WMXK,和系數(shù)矩陣Hkxn,所述K為所述待處理數(shù)據(jù)中包含的事件總數(shù); 確定單元,用于確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的詞語為描述對應(yīng)的第一事件的關(guān)鍵詞; 所述確定單元,還用于確定所述系數(shù)矩陣Hkxn中的每個行向量表征一個第二事件,每個行向量中所包含的數(shù)據(jù)文本為與所述行向量表征的第二事件對應(yīng)的數(shù)據(jù)文本。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述處理模塊,包括: 解析單元,用于對所述每個數(shù)據(jù)文本進行語義解析,確定所述每個數(shù)據(jù)文本中包含的名詞和動詞; 標記單元,用于對確定出的所述名詞和動詞進行標注,并根據(jù)如下公式確定每個所述名詞和動詞的權(quán)重值: R(w) = (w在所述M個詞語中的出現(xiàn)次數(shù))Xlog(數(shù)據(jù)文本總數(shù)N/包含w的數(shù)據(jù)文本數(shù)量); 其中,w為任一個所述名詞或動詞,R(W)為w的權(quán)重值。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述確定單元,具體用于: 確定所述基矩陣Wmxk中的每個列向量表征一個第一事件,每個列向量中包含的目標詞語為描述對應(yīng)的第一事件的關(guān)鍵詞,所述目標詞語為所述列向量包含的詞語中權(quán)重值由大到小排列排在前面的第一預(yù)設(shè)數(shù)量的名詞和動詞。
10.根據(jù)權(quán)利要求6至9中任一項所述的系統(tǒng),其特征在于,還包括: 分析模塊,用于分別以所述各個事件中的每個事件作為待處理事件,從所述待處理事件對應(yīng)的關(guān)鍵詞中選取第二預(yù)設(shè)數(shù)量的關(guān)鍵詞作為所述待處理事件的標識; 所述分析模塊,還用于確定所述待處理事件對應(yīng)的數(shù)據(jù)文本的數(shù)量占所述待處理數(shù)據(jù)的數(shù)據(jù)文本總數(shù)的比例; 呈現(xiàn)模塊,用于根據(jù)所述標識和所述比例,采用如下呈現(xiàn)方式中的任一種方式呈現(xiàn)所述待處理事件: 表格、餅狀圖、柱狀圖、折線圖、詞云。
【文檔編號】G06F17/30GK104281663SQ201410495959
【公開日】2015年1月14日 申請日期:2014年9月24日 優(yōu)先權(quán)日:2014年9月24日
【發(fā)明者】張日崇, 邰振贏, 于偉仁, 劉俊偉, 李建欣 申請人:北京航空航天大學(xué)