本發(fā)明涉及計(jì)算機(jī)程序基于組件對(duì)象的軟件工程
技術(shù)領(lǐng)域:
:,特別涉及一種Biterm主題模型的采樣加速方法。
背景技術(shù):
::隨著社交網(wǎng)絡(luò)的流行,如微博和Twitter等,短文本的主題挖掘越來越重要。Bitermtopicmodel(BTM)是一種主題模型,如圖1(a)所示,它不同于傳統(tǒng)的主題模型,如LDA(LatentDirichletAllocation,文檔主題生成模型)等,如圖1(b)所示。BTM既適合短文本,也適合長(zhǎng)文本,而傳統(tǒng)的主題模型會(huì)受到短文本特征項(xiàng)稀疏的嚴(yán)重影響,所以一般只適合長(zhǎng)文本,但也有許多研究者將這些傳統(tǒng)的主題模型用于短文本,主要通過的方法有利用外部知識(shí)來豐富短文本,或者是將短文本聚合成長(zhǎng)的偽文本。在BTM中,語料庫中所有的詞對(duì)共享一個(gè)主題概率分布,主題是互異詞項(xiàng)的概率分布,BTM直接對(duì)語料庫中所有詞對(duì)中詞的生成過程進(jìn)行建模,而沒有對(duì)文檔直接進(jìn)行建模,所以BTM無法直接獲得文檔主題分布,但是這個(gè)概率分布可以用過推理得到。由于短文本不像長(zhǎng)文本那樣,它缺乏豐富的上下文,傳統(tǒng)的主題模型在短文本上遭受了嚴(yán)重的數(shù)據(jù)稀疏的影響,所以特征稀疏也就成為短文本研究中極具挑戰(zhàn)的問題。BTM是針對(duì)短文本而提出的,它可以用來處理短文本這種稀疏問題。因?yàn)橹黝}是通過相關(guān)的詞組合而成的,而詞間的這種相關(guān)性也是通過詞共現(xiàn)來體現(xiàn)的,所以直接通過對(duì)共現(xiàn)的詞對(duì)進(jìn)行建模來學(xué)習(xí)主題,另外,建模時(shí)使用的是整個(gè)語料庫中的詞對(duì),這樣能更好的挖掘主題。也就是說,BTM在短文本主題挖掘方面優(yōu)于傳統(tǒng)的主題模型LDA、PLSA(ProbabilityLatentSemanticAnalysis)主題模型等。然而,BTM采用Gibbs采樣挖掘短文的主題。每次采樣需要O(K)的時(shí)間,其中K表示設(shè)定的主題數(shù)目。由此,可以看出Gibbs采樣非常耗時(shí),尤其當(dāng)K和數(shù)據(jù)集非常大時(shí),Gibb采用無法滿足用戶的需求。技術(shù)實(shí)現(xiàn)要素:本發(fā)明旨在至少解決上述技術(shù)問題之一。為此,本發(fā)明的目的在于提出一種Biterm主題模型的采樣加速方法,該方法能夠優(yōu)化BTM的采樣時(shí)間復(fù)雜度,大幅度提高BTM的收斂速度,并且不影響最終的主題聚類質(zhì)量,不僅可以優(yōu)化短文主題挖掘的時(shí)間,同時(shí)也可以優(yōu)化長(zhǎng)文本主題挖掘的時(shí)間。為了實(shí)現(xiàn)上述目的,本發(fā)明的實(shí)施例提出了一種Biterm主題模型的采樣加速方法,包括以下步驟:S1:基于Aliasmethod方法,為每個(gè)詞語創(chuàng)建aliastable,并選取一個(gè)Biterm主題模型;S2:從corpusproposal中,為所述Biterm主題模型采樣一個(gè)新的主題,并計(jì)算該主題的接受概率;S3:判斷該接受概率是否大于隨機(jī)獲取的隨機(jī)數(shù)r,其中,r大于0且小于1;S4:如果是,則更新所述Biterm主題模型,否則,不更新所述Biterm主題模型;S5:從wordproposal中,為所述Biterm主題模型采樣另一個(gè)新的主題,并計(jì)算該主題的接受概率;S6:判斷該接受概率是否大于所述隨機(jī)數(shù)r;S7:如果是,則更新所述Biterm主題模型,否則,不更新所述Biterm主題模型。另外,根據(jù)本發(fā)明上述實(shí)施例的Biterm主題模型的采樣加速方法還可以具有如下附加的技術(shù)特征:在一些示例中,還包括:在連續(xù)使用K次aliastable后,更新所述aliastable。在一些示例中,根據(jù)主題的采樣推斷的條件概率得到所述corpusproposal和wordproposal。在一些示例中,所述條件概率為:其中,所述(nz+α)為所述corpusproposal,所述和為所述wordproposal。在一些示例中,構(gòu)造所述aliastable的時(shí)間復(fù)雜度為O(K),其中,K為設(shè)定的主題數(shù)目。在一些示例中,在O(1)時(shí)間內(nèi)為所述Biterm主題模型采樣新的主題。在一些示例中,從所述corpusproposal中采樣的一個(gè)新的主題的接受概率為:在一些示例中,從所述wordproposal中采樣的另一個(gè)新的主題的接受概率為:根據(jù)本發(fā)明實(shí)施例的Biterm主題模型的采樣加速方法,基于aliasmethod和MH方法,將采樣時(shí)間從O(K)降低到常數(shù)時(shí)間O(1),從而可以優(yōu)化BTM的采樣時(shí)間復(fù)雜度,大幅度提高BTM的收斂速度及聚類時(shí)間,并且不影響最終的主題聚類質(zhì)量,該方法不僅可以優(yōu)化短文主題挖掘的時(shí)間,同時(shí)也可以優(yōu)化長(zhǎng)文本主題挖掘的時(shí)間,進(jìn)而使BTM可以滿足大規(guī)模數(shù)據(jù),以及在線模型的需求。本發(fā)明的附加方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實(shí)踐了解到。附圖說明本發(fā)明的上述和/或附加的方面和優(yōu)點(diǎn)從結(jié)合下面附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:圖1(a)和圖1(b)分別是BTM和LDA的結(jié)構(gòu)示意圖;圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的Biterm主題模型的采樣加速方法的流程圖;圖3是根據(jù)本發(fā)明另一個(gè)實(shí)施例的Biterm主題模型的采樣加速方法的整體流程圖;圖4是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的根據(jù)AliasMethod構(gòu)造aliastable的流程示意圖。具體實(shí)施方式下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。在本發(fā)明的描述中,需要理解的是,術(shù)語“中心”、“縱向”、“橫向”、“上”、“下”、“前”、“后”、“左”、“右”、“豎直”、“水平”、“頂”、“底”、“內(nèi)”、“外”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡(jiǎn)化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對(duì)本發(fā)明的限制。此外,術(shù)語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性。在本發(fā)明的描述中,需要說明的是,除非另有明確的規(guī)定和限定,術(shù)語“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機(jī)械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個(gè)元件內(nèi)部的連通。對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語在本發(fā)明中的具體含義。以下結(jié)合附圖描述根據(jù)本發(fā)明實(shí)施例的Biterm主題模型的采樣加速方法。圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的Biterm主題模型的采樣加速方法的流程圖。圖3是根據(jù)本發(fā)明另一個(gè)實(shí)施例的Biterm主題模型的采樣加速方法的整體流程圖。如圖2所示,并結(jié)合圖3,該方法包括以下步驟:步驟S1:基于Aliasmethod方法,為每個(gè)詞語創(chuàng)建aliastable,并選取一個(gè)Biterm主題模型。具體地說,將整個(gè)語料庫轉(zhuǎn)化為bitermset,每次從中選擇一個(gè)Biterm主題模型。其中,構(gòu)造aliastable的時(shí)間復(fù)雜度為O(K),其中,K為設(shè)定的主題數(shù)目。步驟S2:以corpusproposal作為建議分布采樣。從corpusproposal中,為Biterm主題模型采樣一個(gè)新的主題(newtopic),并計(jì)算該主題的接受概率。具體地,在本發(fā)明的一個(gè)實(shí)施例中,在O(1)時(shí)間內(nèi)為Biterm主題模型采樣新的主題。進(jìn)一步地,基于Metropolis-Hastings方法,計(jì)算從corpusproposal中采樣的新的主題的接受概率為:步驟S3:判斷該接受概率是否大于隨機(jī)獲取的隨機(jī)數(shù)r,其中,r大于0且小于1。步驟S4:如果是,則更新Biterm主題模型,否則,不更新Biterm主題模型。步驟S5:以wordproposal作為建議分布采樣。從wordproposal中,為Biterm主題模型采樣另一個(gè)新的主題,并計(jì)算該主題的接受概率。具體地,在本發(fā)明的一個(gè)實(shí)施例中,在O(1)時(shí)間內(nèi)為Biterm主題模型采樣新的主題。進(jìn)一步地,基于Metropolis-Hastings方法,計(jì)算從wordproposal中采樣的新的主題的接受概率為:步驟S6:判斷該接受概率是否大于隨機(jī)數(shù)r。步驟S7:如果是,則更新Biterm主題模型,否則,不更新Biterm主題模型。具體地,在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)主題的采樣推斷的條件概率得到corpusproposal和wordproposal。其中,BTM采用Gibbs采樣推斷主題,條件概率為:其中,(nz+α)為corpusproposal,和為wordproposal。進(jìn)一步地,在本發(fā)明的一個(gè)實(shí)施例中,還包括:在連續(xù)使用K次aliastable后,更新aliastable。具體地說,為了將采樣的時(shí)間復(fù)雜度從O(K)降低為O(1),在本發(fā)明的實(shí)施例中,在構(gòu)建完aliastable之后,可以連續(xù)使用K次,(因此,整個(gè)語料庫的主題變化非常慢),從而可以將構(gòu)造aliastable的時(shí)間復(fù)雜度平攤為O(1)。這是因?yàn)椋喝绻看螛?gòu)造完aliastable以后,直接進(jìn)行采樣,然后更新aliastable并不會(huì)降低時(shí)間復(fù)雜度。為了將采樣的時(shí)間復(fù)雜度降低為O(1),故而采用了與AliasLDA和LightLDA相同的策略,即在構(gòu)造完aliastable之后,連續(xù)進(jìn)行K次采樣,這樣可以將構(gòu)造aliastable的時(shí)間復(fù)雜度平攤掉,從而實(shí)現(xiàn)常數(shù)時(shí)間內(nèi)采樣。換言之,本發(fā)明實(shí)施例的方法的主要原理可概述為:利用aliasmethod,利用corpusproposal作為建議分布,計(jì)算每個(gè)詞語的aliastable。其中,構(gòu)造aliastable的時(shí)間復(fù)雜度為O(K),其中K為設(shè)定的主題數(shù)目。構(gòu)造完aliastable之后,在O(1)時(shí)間內(nèi)為該biterm分配一個(gè)新的主題并計(jì)算接受概率。然后,隨機(jī)產(chǎn)生一個(gè)0~1之間的數(shù)r。如果r小于接受概率則判定轉(zhuǎn)移成功,更新biterm的主題,否則判定轉(zhuǎn)移失敗,不更新主題。進(jìn)一步地,由圖2和圖3可以看出,為了提高接受概率,本發(fā)明的實(shí)施例采用了輪流采樣的方法,即分別以corpusproposal和wordproposal作為建議分布,從中采樣新主題。首先以corpusproposal作為建議分布,從中采樣主題,以判斷采樣是否成功,之后再使用wordproposal作為建議分布,從中采樣主題,以判斷采樣是否成功,且根據(jù)corpusproposal和wordproposal進(jìn)行采樣的過程類似。需要說明的是,該方法利用corpusproposal作為建議分布,從中采樣新的主題。由于該建議分布并不是真正的條件概率公式。因此,從建議分布和真實(shí)分布中采樣存在偏差?;诖?,本發(fā)明基于MH方法,引入了接受概率,即從建議分布采樣之后跳轉(zhuǎn)到真實(shí)分布的概率。為了便于更好地理解本發(fā)明實(shí)施例的Biterm主題模型的采樣加速方法,以下對(duì)該方法涉及到的Aliasmethod方法和MH(Metropolis-Hastings)方法進(jìn)行具體描述。具體地說,Aliasmethod是一個(gè)針對(duì)離散數(shù)據(jù)的高效采樣算法。給定n個(gè)離散概率p1,p2…pn,如果使用普通的采樣算法,需要花費(fèi)O(n)次操作模擬生成一個(gè)樣本。Aliasmethod方法首先需要花費(fèi)O(n)次操做,構(gòu)造aliastable。如果,在構(gòu)造好aliastable之后連續(xù)進(jìn)行n次采樣,那么每次采樣的時(shí)間復(fù)雜度平攤下來為常數(shù)時(shí)間即O(1)。例如圖4所示,示意了如何利用離散概率構(gòu)造aliastable。在具體示例中,例如可通過如下算法1描述aliastable的構(gòu)造過程,通過算法2描述在構(gòu)造完aliastable之后采樣的過程。具體如下:Algorithm2SamplingProcess1:r=randint(n)2:f=random(0,1)3:iff<ProbTable[r]then4:returnr5:else6:returnAliasTable[r]7:endif關(guān)于MH方法的描述:對(duì)于給定的概率分布p(x),希望能有便捷的方式生成它對(duì)應(yīng)的樣本。由于馬爾科夫鏈能收斂到平穩(wěn)分布,因此構(gòu)造一個(gè)轉(zhuǎn)移矩陣為P的馬爾科夫鏈,使得該馬爾科夫鏈的平穩(wěn)分布恰好是p(x),那么從任何一個(gè)初始狀態(tài)x0出發(fā)沿著馬爾科夫鏈轉(zhuǎn)移,得到一個(gè)轉(zhuǎn)移序列x0,x1,x2,…,xn,xn+1,…如果馬爾科夫在第n步已經(jīng)收斂了,于是就得到了p(x),的樣本。Metropolis算法是首個(gè)普適的采樣方法,并啟發(fā)了一系列MCMC方法。作為具體的示例,MCMC采樣算法的具體過程如下:1.初始化馬爾科夫鏈初始狀態(tài)X0=x0;2.對(duì)t=0,1,2,…t=0,1,2,…,循環(huán)以下步驟進(jìn)行采樣;2.1第t時(shí)刻馬爾科夫鏈狀態(tài)為Xt=xt,采樣y∽q(x|xt);2.2從均勻分布采樣u∽Uniform[0,1];2.3如果u<a(xt,y)=p(y)q(xt|y),則接受轉(zhuǎn)移xt∽y,即Xt+1=y(tǒng);2.4否則不接受轉(zhuǎn)移,即Xt+1=xt。本發(fā)明實(shí)施例的方法正是基于aliasmethod以及Metropolis-Hastings將采樣時(shí)間復(fù)雜度降低為常數(shù)時(shí)間O(1)。在具體實(shí)施例過程中,本發(fā)明實(shí)施例的方法例如基于LinuxUbuntu64位操作系統(tǒng),采用eclipse平臺(tái)開發(fā)實(shí)現(xiàn)。為了測(cè)試本發(fā)明實(shí)施例的方法的有效性,在具體實(shí)施例中,在兩個(gè)數(shù)據(jù)集twitter2011dataset與yahooanswerdataset對(duì)目前的BTM與本發(fā)明實(shí)施例的方法的效率進(jìn)行了對(duì)比。實(shí)驗(yàn)結(jié)果表明本發(fā)明實(shí)施例提出的Biterm主題模型的采樣加速方法可以大幅度提升BTM的聚類時(shí)間。使BTM可以滿足大規(guī)模數(shù)據(jù),以及在線模型的需求。作為一個(gè)具體的示例,該方法的執(zhí)行代碼如下:綜上,根據(jù)本發(fā)明實(shí)施例的Biterm主題模型的采樣加速方法,基于aliasmethod和MH方法,將采樣時(shí)間從O(K)降低到常數(shù)時(shí)間O(1),從而可以優(yōu)化BTM的采樣時(shí)間復(fù)雜度,大幅度提高BTM的收斂速度及聚類時(shí)間,并且不影響最終的主題聚類質(zhì)量,該方法不僅可以優(yōu)化短文主題挖掘的時(shí)間,同時(shí)也可以優(yōu)化長(zhǎng)文本主題挖掘的時(shí)間,進(jìn)而使BTM可以滿足大規(guī)模數(shù)據(jù),以及在線模型的需求。在本說明書的描述中,參考術(shù)語“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說明書中,對(duì)上述術(shù)語的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。盡管已經(jīng)示出和描述了本發(fā)明的實(shí)施例,本領(lǐng)域的普通技術(shù)人員可以理解:在不脫離本發(fā)明的原理和宗旨的情況下可以對(duì)這些實(shí)施例進(jìn)行多種變化、修改、替換和變型,本發(fā)明的范圍由權(quán)利要求及其等同限定。當(dāng)前第1頁1 2 3 當(dāng)前第1頁1 2 3