張禾
摘要:隨著信息技術(shù)的發(fā)展,人們由一個(gè)信息匱乏的時(shí)代進(jìn)入到了信息爆炸的時(shí)代,大量信息通過媒體、互聯(lián)網(wǎng)等各種途徑?jīng)_擊著人們的大腦。面對龐大的數(shù)據(jù),人們很難找到他們想要的信息。為解決這種問題,研究者們開始著手在大量數(shù)據(jù)中挖掘有用的信息、對龐大的信息建立索引、在文檔集中提取話題等方向。本文從專利文檔角度出發(fā),對公司的專利文檔進(jìn)行分析,提取其潛在的熱點(diǎn)話題,并將其集成到專利檢索系統(tǒng)Patent Miner中。在挖掘公司潛在信息,提高用戶的搜索效率方面具有重要意義。
關(guān)鍵詞:話題提取 話題模型 PLSA 專利分類 Google Chart Tools
1 概述
信息超載這個(gè)詞最早出現(xiàn)在1970年AlvinTomer的《未來震撼》一書中并被人們所熟知[1]。進(jìn)入信息時(shí)代,信息技術(shù)以前所未有的速度迅猛發(fā)展著,信息超載的現(xiàn)象越來越清晰地呈現(xiàn)在人們的眼前。隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,人們接受的信息正以各種形式紛至沓來,信息量的日益增多使得用戶很難輕松準(zhǔn)確地找到他們想要的信息。為解決這種問題,研究者們開始著手在大量數(shù)據(jù)中挖掘有用的信息、對龐大的信息建立索引、在文檔集中提取主題等方向。
話題提取旨在挖掘文檔集合中的重要信息,在學(xué)術(shù)信息檢索領(lǐng)域具有重要的作用。研究者們很早就注意到了挖掘文本信息這個(gè)重要領(lǐng)域,并且做了很多研究。1990年Deerwester等人提出LSA模型,認(rèn)為文檔和單詞之間還有一層潛在語義空間[2],1998年P(guān)apadimitriou等人則在明確地指出文檔和單詞之間存在topic層[3],后來的研究者們便開始從topic層面進(jìn)行話題提取并衍生出一系列的模型以及應(yīng)用。
本文從公司的專利文檔入手,從topic層面試圖提取公司的熱點(diǎn)話題并分析其發(fā)展趨勢,如圖1所示。本文所實(shí)現(xiàn)的話題提取有兩種思路,第一種主要基于PLSA算法,另外一種則是根據(jù)專利文檔的特點(diǎn),利用專利所屬的類別名稱來表示公司話題。由于篇幅有限,第二種方法就不進(jìn)行介紹了。在公司話題趨勢分析方面,本文利用Google Chart Tools圖表將每個(gè)公司的話題演化趨勢以折線圖的方式展現(xiàn)給用戶,方便用戶瀏覽查看,提高用戶查找效率。
■
圖1 公司話題提取示例
2 研究目的及方法
隨著計(jì)算機(jī)和互聯(lián)網(wǎng)的迅猛發(fā)展,信息迎來了大爆炸時(shí)代。大量的數(shù)據(jù)的出現(xiàn)給人們的使用和選擇都帶來了困擾。話題的提取則可以有效地緩解這種困擾,用戶不需要閱讀大量的文獻(xiàn)就可以發(fā)掘這些關(guān)鍵的信息,對于提高用戶的搜索效率和工作效率以及提高網(wǎng)站的可用性方面都具有很重要的意義。
本研究課題是科研項(xiàng)目專利檢索系統(tǒng)Patent Miner項(xiàng)目的一個(gè)子課題,在195,263家公司的海量專利數(shù)據(jù)的基礎(chǔ)上對公司話題進(jìn)行提取分析。實(shí)驗(yàn)采用Myeclipse開發(fā)平臺,主要運(yùn)用Java語言進(jìn)行開發(fā),并需要掌握一定的Html,CSS和JavaScript知識。
2.1 形式化的問題定義
給定一個(gè)公司A,讓DA表示這個(gè)公司A所有文檔的集合,即DA={d■■,d■■,…,d■■}。根據(jù)Bag-of-Words模型假設(shè)文檔集合DA可以生成相應(yīng)的字典W={w■■,w■■,…,w■■},那么就可以把數(shù)據(jù)集表示成一個(gè)N×M的共生矩陣,其中N=(N(d■■,w■■))i,j,n(d■■,w■■)表示A公司中字典中的第j個(gè)單詞在第i個(gè)文檔中出現(xiàn)的次數(shù)。
我們可以將公司話題提取的問題描述如下:對于一個(gè)給定的公司A,M個(gè)該公司下文檔的集合DA和對應(yīng)的N×M的共生矩陣,我們的目標(biāo)是:
找到幾個(gè)topic,這些topic可以用字典中的詞表示
根據(jù)PLSA模型,在文檔與字典之間存在一層隱含語義空間topic,文檔服從在topic上的多項(xiàng)分布θ,θ1+θ2+…+θk=1,(k≤N);話題服從單詞上的多項(xiàng)分布φ,φ1+φ2+…+φN=1。只要根據(jù)PLSA模型計(jì)算出topic在word上的分布,再對結(jié)果進(jìn)行排序取概率最大的幾個(gè)word即可。根據(jù)上面的定義,給出問題的最終定義:
問題2.1:基于PLSA模型的公司話題提取對于一個(gè)給定的公司,話題提取的目標(biāo)是對全部文檔集進(jìn)行遍歷,生成字典W和矩陣n(d■■,w■■),利用PLSA模型得出若干話題,并得出每個(gè)話題在word上的分布{P(wi|zj)imN,jmK},并對其排序。
2.2 PLSA算法
Probabilistic Latent Semantic Analysis(PLSA) 是概率統(tǒng)計(jì)模型中經(jīng)典的模型之一,是Latent semantic analysis(LSA)的改進(jìn)版。
LSA是在傳統(tǒng)的單詞與文檔的映射中間加入了潛在語義空間,通過奇異值分解(Singular Value Decomposition)的方式來求解這個(gè)潛在語義空間。由于基于SVD,迭代計(jì)算次數(shù)非常多,在處理海量文本數(shù)據(jù)時(shí),文檔和詞的維度將急劇增加,使SVD的計(jì)算復(fù)雜度呈三次方增長。鑒于此,Hofmann于1999年提出一種基于概率的潛在語義分析PLSA模型。PLSA繼承了“潛在語義”的概念,通過“統(tǒng)一的潛在語義空間”來關(guān)聯(lián)詞與文檔;通過引入概率統(tǒng)計(jì)的思想,避免了SVD的復(fù)雜計(jì)算。由于統(tǒng)計(jì)技術(shù)的引用,PLSA可以解決模型擬合,模型結(jié)合,模型控制等問題,可以更有效的處理多義詞并明確區(qū)分不同的含義和不同類型的詞語用法。
PLSA的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。像其他所有的統(tǒng)計(jì)潛變量模型一樣PLSA模型引入了條件獨(dú)立性假設(shè),即在潛在變量z下文檔d和詞w是相互獨(dú)立的。其中w∈W={w1,…,wN},d∈D={d1,…,dD},z∈Z={z1,…,zK},z≤N。
■
圖2 PLSA結(jié)構(gòu)圖
在條件獨(dú)立性假設(shè)下,整個(gè)數(shù)據(jù)集的生成過程如圖3所示:
■
圖3 PLSA的生成過程
通過上述生成過程,最終可以生成不含zk的可觀察變量對(d,w)。該生成過程可以形式化為d與w聯(lián)合概率:
P(d,w)=P(d)P(w|d),where P(w|d)=■P(w|z)P(z|d)
P(d,w)=P(d)■P(w|z)P(z|d) (2-1)
根據(jù)貝葉斯定理邊緣化潛在話題z,則可觀察變量(d,w)的聯(lián)合概率可以表示為:
P(d,w)=■P(z)P(d|z)P(w|z) (2-2)
公式2-1和公式2-2是等價(jià)的,可以用貝葉斯法則推理得出。
在PLSA中使用最大似然估計(jì)來訓(xùn)練隱含量。最大似然
估計(jì)中比較常用的算法就是期望最大化算法,即Expectation-
Maximization(EM)算法,首先為參數(shù)賦予隨機(jī)初值,之后根據(jù)更新公式迭代的更新參數(shù)值直到算法收斂。其中更新步驟包括Expectation(E)步和Maximization(M)步:
①Expectation Step——隱含參數(shù)的估計(jì),根據(jù)當(dāng)前的參數(shù)值計(jì)算隱含語義話題的后驗(yàn)概率P(d,w);
②Maximization Step——確定實(shí)際參數(shù),通過前面得到的參數(shù)的值最大化對數(shù)似然函數(shù)(公式2-1或者公式2-2),更新參數(shù)。
2.3 PLSA算法實(shí)現(xiàn)
本實(shí)驗(yàn)采用公式(2-2)的求解方法,求解P(z),P(w|z),P(d|z)。代碼設(shè)計(jì)過程如下:
需要聲明的變量:
double[][]p_dz,|D|*|Z|//P(d|z)
double[][]p_wz,|W|*|Z|//P(w|z)
double[]p_z,|Z|//P(z)
程序執(zhí)行步驟如下:
①讀取單詞對應(yīng)文檔的矩陣數(shù)據(jù)
ArrayList
DocWordPair (word_id, word_frequency_in_doc)
②變量初始化
給變量P_dz,p_wz和p_z賦一個(gè)隨機(jī)的double類型的值,滿足∑dp_dz=1,∑dp_wz,∑dp_z=1
③迭代,直到最大似然估計(jì)小于給定的值threshold
計(jì)算P(z|w,d)
根據(jù)P(z|w,d)更新p_dz,d_wz和p_z的值
計(jì)算最大似然估計(jì)的對數(shù)Log-likelihood,看兩次最大似然估計(jì)的差是否小于給定的閾值,差越小,越跟結(jié)果相似。
|Log-likelihood old_Log-likelihood| ④輸出p_dz,p_wz和p_z 3 公司話題趨勢分析及圖形化表達(dá) 3.1 Google Chart Tools 實(shí)驗(yàn)采用Google Chart來進(jìn)行公司話題趨勢的展示。Google Chart是谷歌公司推出的一款免費(fèi)的在線圖表制作工具,相對于其他在線圖表制作工具,Google chart 具有以下優(yōu)點(diǎn): ①在Google Chart Tool中數(shù)據(jù)和表現(xiàn)是分離的, 是MVC的思想。這樣的好處是同一份數(shù)據(jù)可以用來顯示曲線圖,也可以顯示成柱狀圖等等。 ②圖表呈現(xiàn)使用HTML5/SVG技術(shù),提供跨瀏覽器兼容(包括舊版本的IE的VML)和跨平臺的可移植性,可以完美地顯示在iPhone,ipad以及Android上。這也是最主要的優(yōu)勢。 3.2 公司話題趨勢的圖形化表達(dá) ■圖4 Exxon Mobil公司話題趨勢 該部分實(shí)驗(yàn)是以利用專利所屬的類別名稱來表示公司話題的數(shù)據(jù)進(jìn)行的。以Exxon Mobil公司為例,其話題趨勢變化如圖4所示。從圖中的折線圖變化趨勢可以看出,從1976年至今Exxon Mobil公司一直致力于能源領(lǐng)域的工作,近年各個(gè)話題每年都有一定數(shù)量的專利發(fā)表,表明該公司研究方向沒有太大變化。 4 總結(jié) 話題提取旨在提取文檔集合中關(guān)鍵的、具有代表性的單詞,可以提高搜索效率和用戶體驗(yàn),使學(xué)術(shù)信息檢索領(lǐng)域具有重要的意義和價(jià)值。在這篇論文中,我們以專利檢索系統(tǒng)Patent Miner為背景和數(shù)據(jù)來源,研究了公司話題提取的問題,主要基于PLSA話題模型來實(shí)現(xiàn)。通過對話題模型的學(xué)習(xí)、建模,實(shí)現(xiàn)了一個(gè)利用PLSA模型提取公司話題的系統(tǒng)。另外本文還根據(jù)專利自身的特點(diǎn),探討了一下利用USPTO的分類信息代表公司話題的研究,并且利用Google Chart Tools將該方法提取的公司話題數(shù)據(jù)顯示在web頁面上,圖形顯示部分則在Patent Miner上應(yīng)用。 參考文獻(xiàn): [1]維基百科.Information overload[EB/OL].http://en.wikipedia.org/wiki/Information_overload. [2]S.Deerwester,S.T.Dumais,G.W.Furnas,et al.Indexing by latentsemantic analysis[J].Journal of the AmericanSociety for Information Science,1990,41(6):391-407. [3]Christos H.Papadimitriou,Hisao Tamaki,PrabhakarRagha- van,et al.Latent semantic indexing:a probabilistic analysis[A]. Proceedings of the seventeenth ACM SIGACT-SIGMOD-SIG- ART symposium on Principles of database systems,1998, 159-168.