孫士新
(1.亳州職業(yè)技術(shù)學(xué)院信息工程系,安徽亳州236800;2.北京師范大學(xué)職業(yè)與成人教育研究所,北京100875)
中藥材信息網(wǎng)站主要是圍繞安徽亳州中藥材交易市場(chǎng)所進(jìn)行的,有中藥材信息收集、市場(chǎng)行情分析、用戶供求信息收集、中藥材經(jīng)營(yíng)技術(shù)在線學(xué)習(xí)等功能,收錄了中藥材交易價(jià)格、中藥材供求信息、中藥材交易記錄、中藥材解析、中藥材產(chǎn)地介紹等信息,網(wǎng)站信息瀏覽者主要是藥商、藥農(nóng)、中藥材相關(guān)客戶.根據(jù)對(duì)網(wǎng)站注冊(cè)信息統(tǒng)計(jì)數(shù)據(jù)顯示,以藥商身份注冊(cè)的網(wǎng)站用戶占總用戶的67%,以藥商身份注冊(cè)的用戶個(gè)體日均訪問(wèn)量為3.57人次.藥商作為網(wǎng)站的VIP用戶主要群體,以藥商為單位挖掘藥商的藥材興趣領(lǐng)域,把中藥材信息配對(duì)推送給相應(yīng)的藥商對(duì)網(wǎng)站運(yùn)營(yíng)至關(guān)重要.本文所涉及藥商興趣提取,是基于網(wǎng)站注冊(cè)信息、網(wǎng)站日志、市場(chǎng)交易數(shù)據(jù)庫(kù)等存在的文本信息的挖掘而進(jìn)行的.
1.1.1 藥商興趣
藥商,即中藥材經(jīng)營(yíng)者,是從事中藥材買賣的人,包括中藥材供應(yīng)者、中藥材采購(gòu)者和與中藥材供求工作相關(guān)的從業(yè)者.藥商興趣,是藥商對(duì)中藥材感興趣的種類、感興趣的中藥材屬性.藥商對(duì)中藥材感興趣的種類包括野生類、家種類、家野兼有類、礦石及其他加工類、動(dòng)物及其制品類、草類、花類、葉類等;感興趣的中藥材屬性包括今日價(jià)格、熱點(diǎn)追蹤、產(chǎn)地信息、歷史價(jià)格、漲落排行、產(chǎn)地供應(yīng)、產(chǎn)地分布、市場(chǎng)動(dòng)態(tài)、品種分析、市場(chǎng)分析等.
圖1 藥商興趣提取模型Fig.1 The druggist's interests extraction model
1.1.2 藥商信息提取
藥商信息提取是通過(guò)Web數(shù)據(jù)挖掘技術(shù)對(duì)網(wǎng)站中藥商信息進(jìn)行抽取、分析、建模、表示的過(guò)程,如圖1所示,藥商興趣提取模型包括用戶興趣提取、用戶興趣更新、用戶興趣表示三個(gè)部分.用戶興趣提取是根據(jù)用戶注冊(cè)信息中用戶興趣選取、用戶介紹;網(wǎng)站日志中用戶瀏覽網(wǎng)頁(yè)記錄、市場(chǎng)交易記錄數(shù)據(jù)庫(kù)中用戶在買賣數(shù)據(jù)中出現(xiàn)的情況等信息而進(jìn)行的.用戶興趣更新,是把用戶提取環(huán)節(jié)所形成的臨時(shí)用戶興趣與原用戶興趣進(jìn)行匹配整理,重新形成當(dāng)前用戶興趣.用戶興趣表示是把當(dāng)前用戶興趣表示成系統(tǒng)容易識(shí)別和量化的過(guò)程,如{{草類,3},{家種類,5},{市場(chǎng)動(dòng)態(tài),7},…,…}.
1.2.1 Web 文本挖掘
Web文本是網(wǎng)站信息中以文本形式存放部分,具有非結(jié)構(gòu)性、半結(jié)構(gòu)性、自述性、動(dòng)態(tài)可變性、異構(gòu)數(shù)據(jù)庫(kù)環(huán)境等特點(diǎn)[1].文本挖掘又稱為文本數(shù)據(jù)挖掘,文本知識(shí)發(fā)現(xiàn),是指以發(fā)現(xiàn)知識(shí)為目的,從大規(guī)模文本庫(kù)中抽取隱含的、未知的、潛在有價(jià)值的模式的過(guò)程[2].按照 Oren Etzioni的定義:Web文本挖掘是使用數(shù)據(jù)挖掘技術(shù),自動(dòng)地從Web文檔、服務(wù)中發(fā)現(xiàn)并提取信息和知識(shí)的技術(shù)[3].文本挖掘的主要處理過(guò)程是對(duì)大量文檔集合的內(nèi)容進(jìn)行預(yù)處理、特征提取、結(jié)構(gòu)分析、文本摘要、文本分類、文本聚類、管理分析等[4].
1.2.2 Web 文本挖掘流程
如圖2所示基于Web文本挖掘的藥商興趣提取流程分為網(wǎng)站文本采集、文本處理、文本特征分析、文本特征提取、文本分類、文本聚類、挖掘結(jié)果處理等七個(gè)階段[5].文本采集是從海量文本源中根據(jù)需要采集相關(guān)文本信息的過(guò)程,文本采集的信息一般為一些非結(jié)構(gòu)化、不完整性信息.文本預(yù)處理是把文本采集中所得到的非結(jié)構(gòu)、不完整信息進(jìn)行信息完整性、可用性處理,把非結(jié)構(gòu)化、半結(jié)構(gòu)化信息處理成可用的、計(jì)算機(jī)方便處理的結(jié)構(gòu)化信息的過(guò)程.預(yù)處理包括數(shù)據(jù)過(guò)濾、用戶身份識(shí)別、用戶會(huì)話識(shí)別三個(gè)主要過(guò)程:數(shù)據(jù)過(guò)濾階段需要移除和過(guò)濾掉冗余及不相關(guān)的數(shù)據(jù),預(yù)測(cè)填充數(shù)據(jù)中丟失的值;用戶身份識(shí)別通過(guò)Cookies、擴(kuò)展日志、合并站點(diǎn)拓樸結(jié)構(gòu)進(jìn)行日志推斷等方法進(jìn)行;用戶會(huì)話識(shí)別方法分為基于時(shí)間和上下文啟發(fā)式方法[6].文本特征表示是在預(yù)處理階段,將文本表示成計(jì)算機(jī)容易存儲(chǔ)的格式,文本的表示方法大多數(shù)是從信息檢索領(lǐng)域借鑒過(guò)來(lái)的[7].文本特征提取,是在文本表示的基礎(chǔ)上從文本庫(kù)中提取權(quán)值較高的詞條作為文檔的特征項(xiàng),以達(dá)到對(duì)特征項(xiàng)進(jìn)行降維的目的[1].文本分類按照一定的標(biāo)準(zhǔn)建立若干文本類別,在目標(biāo)文檔集里為所有文檔確立所屬相應(yīng)類別,并按照文檔類別對(duì)文檔進(jìn)行文檔歸類的過(guò)程.文本聚類是把一組個(gè)體按照相似性歸成若干類別,即“物以類聚”,它的目的是使得屬于同一類別的個(gè)體之間的聚類盡可能地小,而不同類別上的個(gè)體間的距離盡可能地大[8].挖掘結(jié)果處理是對(duì)以上各步驟對(duì)文檔集進(jìn)行的挖掘結(jié)果進(jìn)行合理性、可用性分析,并對(duì)不同方案所挖掘的結(jié)果進(jìn)行比較、評(píng)價(jià)、選擇.
圖2 Web文本挖掘流程圖Fig.2 Web text mining process chart
1.2.3 文本特征提取中幾個(gè)構(gòu)造函數(shù)
(1)信息增益.信息增益是依照文本的特征項(xiàng)在文本中出現(xiàn)頻次而推斷該特征項(xiàng)所包含的信息量,是用來(lái)衡量文本信息的一個(gè)屬性值標(biāo)準(zhǔn).把文本特征用t表示,類別用c表示,目標(biāo)文本類集用Ci表示,第i類出現(xiàn)的概率用表示為P(Ci),t出現(xiàn)與否的條件Ci下出現(xiàn)概率表示為則表示為P(Ci|t)和 P(Ci|).信息增益表示為:
(2)互信息.表示變量之間的相互關(guān)聯(lián)度,即表示兩個(gè)變量的相關(guān)性,一個(gè)文本特征t相對(duì)于類別c的互信息表示為:
(3)表示兩個(gè)變量之間的相關(guān)性,還可以用χ2統(tǒng)計(jì),依然表示的是某個(gè)詞與某個(gè)類之間的關(guān)系,用P(t|C)表示文本中包含詞語(yǔ)t和屬于類c的概率,用P(t|ˉC)表示文本包含t和不屬于C的概率,對(duì)于C,t的χ2估計(jì)表示為:
1.2.4 相似度[9]
向量?jī)?nèi)積公式為:
三種相似度比較公式中,向量?jī)?nèi)積是按照兩文本之間詞的相同個(gè)數(shù)量來(lái)判斷相似度,忽略文本中詞語(yǔ)之間的關(guān)聯(lián)關(guān)系,判斷效果不明顯;向量夾角余弦與量相似度與Jaccard相似度判斷效果基本一致,可以講結(jié)果歸入[0,1]范圍內(nèi),判斷效果明顯.
如圖3所示,基于Web文本挖掘的藥商興趣提取流程分為網(wǎng)站文本采集、文本處理、文本特征分析、文本特征提取、文本分類、文本聚類、挖掘結(jié)果處理等七個(gè)階段.
圖3 基于Web文本挖掘的藥商興趣提取流程Fig.3 The druggist's interest extraction process based on the Web text mining
圖4 網(wǎng)站訪問(wèn)日志Fig.4 Network access log
用戶興趣主要從網(wǎng)站日志文件、市場(chǎng)交易記錄數(shù)據(jù)庫(kù)、用戶注冊(cè)信息中提取,如圖2-2所示.
①網(wǎng)站日志文件是網(wǎng)站在運(yùn)營(yíng)過(guò)程中所產(chǎn)生的記錄性文件,其內(nèi)容包括訪問(wèn)者IP地址、訪問(wèn)者ID、訪問(wèn)時(shí)間、離開(kāi)時(shí)間、訪問(wèn)次數(shù)、被訪問(wèn)頁(yè)面地址等.對(duì)日志文件的采集主要是讀取訪問(wèn)者IP地址、訪問(wèn)者ID、停留時(shí)間、被訪問(wèn)頁(yè)面主題、被訪問(wèn)頁(yè)面內(nèi)容等,其中文本采集的主要內(nèi)容為訪問(wèn)頁(yè)面主題、搜索關(guān)鍵詞、訪問(wèn)頁(yè)面內(nèi)容文本.對(duì)注冊(cè)用戶主要以用戶ID來(lái)確定訪問(wèn)者身份,對(duì)非注冊(cè)用戶主要通過(guò)訪問(wèn)者IP地址來(lái)認(rèn)定用戶身份.
②交易記錄數(shù)據(jù)庫(kù)記錄著買方ID、買方ID、藥材名稱、藥材產(chǎn)地、交易價(jià)格、交易數(shù)量、交易時(shí)間等信息.對(duì)交易記錄數(shù)據(jù)庫(kù)詞條的采集主要包括買方ID、買方ID、藥材名稱、藥材產(chǎn)地等,其中文本采集的主要對(duì)象為藥材名稱和藥材產(chǎn)地.
③用戶注冊(cè)信息包括用戶ID、用戶名、性別、所在地、電話、E-mail、感興趣中藥材品種、感興趣藥材信息、個(gè)人說(shuō)明等.對(duì)注冊(cè)信息的數(shù)據(jù)采集包括用戶ID、用戶所在地、用戶興趣藥材種類、用戶興趣藥材信息、個(gè)人說(shuō)明等,其中文本采集主要內(nèi)容為用戶所在地、用戶興趣藥材種類名稱、用戶興趣藥材信息文本、個(gè)人說(shuō)明文本.
文本處理面對(duì)想對(duì)象是網(wǎng)頁(yè)主題、網(wǎng)頁(yè)內(nèi)容、中藥材名稱、中藥材介紹、中藥材分析等非結(jié)構(gòu)化信息,在對(duì)文本進(jìn)行標(biāo)示和提取前應(yīng)進(jìn)行詞匯分析,把對(duì)象中的文本轉(zhuǎn)換為詞,中文文本的分詞可以采用基于統(tǒng)計(jì)的分詞方法和基于詞庫(kù)的分詞方法,也可以兩者結(jié)合.
(1)基于統(tǒng)計(jì)的分詞方法.是對(duì)詞的判斷,在一個(gè)預(yù)處理文本中,統(tǒng)計(jì)相鄰的兩個(gè)或兩個(gè)以上的字,在同一文本處理單元中出現(xiàn)的次數(shù),出現(xiàn)次數(shù)達(dá)到一定閥值,系統(tǒng)則認(rèn)定為該字串為詞,則進(jìn)行該詞的提取.一次進(jìn)行,對(duì)文本單元中各達(dá)到閥值的字串進(jìn)行提取,形成該文本單元的量化詞條.如,在產(chǎn)地信息白芍頁(yè)面中提取詞條為:{{上貨量,1},{增多,3},{理想,1}{價(jià)格,4},{保持,3},{交易價(jià),5},{黑白芍,6}},若設(shè)置閥值為3,則該頁(yè)面的詞條為{增多,價(jià)格,保持,交易價(jià),黑白芍}.
(2)基于詞庫(kù)的分詞方法.首先應(yīng)建立詞庫(kù),對(duì)給定的文本單元,從第一個(gè)字開(kāi)始把文本單元中的每一個(gè)字與詞庫(kù)中詞的字進(jìn)行比較,當(dāng)連續(xù)的兩個(gè)或兩個(gè)以上的字與詞庫(kù)中的某詞所有字相同時(shí),則認(rèn)為該連續(xù)字串與某次匹配,進(jìn)行該詞的提取,依次重復(fù)進(jìn)行.本系統(tǒng)的詞庫(kù)以中藥材名稱、中藥材價(jià)格屬性、中藥材介紹屬性、中藥材分析屬性等進(jìn)行分類,如中藥材價(jià)格屬性詞庫(kù)為{元,斤,上漲,下調(diào),…,持平}.
文本特征表示可以用布爾邏輯模型、概率模型、向量空間模型等,本系統(tǒng)采用向量空間模型(VSM)法,具體步驟為:
(1)將文本看做一組詞條的集合,表示為(T1,T2,T3,…,Tn);
(2)依據(jù)詞條在文檔中的出現(xiàn)頻次為集合中的每一詞條Ti賦予一個(gè)權(quán)值Wi,集合T的權(quán)值集合W可以表示為(W1,W2,W3,…,Wn);
(3)該文本集合則映射為一個(gè)由詞條和權(quán)值組成的向量空間組合,每一個(gè)待挖掘文檔都可以表示為(T1,W1,T2,W2,T3,W3,…,Tn,Wn)的詞條特征矢量形式.
文本的特征提取是對(duì)文本中出現(xiàn)詞條Ti及其權(quán)值Wi的選取,特征提取的單位是特征項(xiàng),特征提取分為一般特征項(xiàng)和專業(yè)特征項(xiàng).在藥商興趣信息提取中,一般特征項(xiàng)是某些出現(xiàn)頻次高的名詞,如{價(jià)格,銷售,上升,…,回落,產(chǎn)地};專有特征項(xiàng)主要為藥材名稱、銷售日期、數(shù)量數(shù)字、產(chǎn)地等,如{甘草,當(dāng)歸,白芍,柴胡,…,2014-4-2,2014-4-5,…,50,98,,…,湖北利川市,貴州施秉縣,…}.文本特征項(xiàng)提取可以采用信息增益、互信息、χ2統(tǒng)計(jì)等構(gòu)造函數(shù):
(1)信息增益.是用來(lái)衡量中藥材信息的一個(gè)屬性值標(biāo)準(zhǔn).一種中藥材信息的信息增益值可以用公式(1-1)表示.
(2)互信息.在本系統(tǒng)中,t表示藥材信息屬性,c則表示藥材類別;t表示藥材信息種類,c則表示藥材信息大類.則一個(gè)文本特征t相對(duì)于類別c的互信息可以用公式(1-2)計(jì)算.
(3)χ2統(tǒng)計(jì).用 t表示詞語(yǔ),如中藥材名稱、價(jià)格、產(chǎn)地等信息;c可以表示中藥材大類、中藥材類別、中藥材屬性類別等.t的χ2估計(jì)表示為公式(1-3).
方便用戶瀏覽文檔和簡(jiǎn)化文檔查找,文本分類階段是按照既定分類模型,在文檔集合范圍內(nèi)為各文檔確立一個(gè)類別,文本分類分為建立分類模型和根據(jù)分類模型進(jìn)行分類兩個(gè)階段:
2.5.1 建立分類模型
(1)設(shè)類別集合為C,集合中各層次為并列式,則有:
(2)設(shè)訓(xùn)練文檔集合為S,則有:
(3)在S中提取各個(gè)文檔的特征矢量V(sj),然后確定代表C中各個(gè)類別的特征矢量V(ci).
2.5.2 根據(jù)分類模型進(jìn)行分類:
(1)設(shè)測(cè)試文檔集為D,則有D=(d1,d2,d3,…,di-1,dk,dk+1,…,dk-1,dt),對(duì) D中任何一個(gè)待分文檔dk計(jì)算V(dk)與V(ci)之間的相似度,用兩特征矢量之間的夾角余弦,表示為:
在該階段是把一組文本對(duì)象按照相似性歸納成相關(guān)類別,可以用K-緊鄰參照聚類法、基于概念的文本聚類、層次聚類法、平面劃分法、簡(jiǎn)單貝葉斯聚類法等,本系統(tǒng)考慮到藥材種類與各屬性、藥材類別與各種類、用戶與屬性等之間關(guān)系,采用層次聚類法,具體過(guò)程為:
對(duì)象文檔為 T,T 表示為{d1,d2,d3,…,di-1,di,di+1,…,dn}.
(1)把給定文檔集合T中的每一個(gè)文檔di作為一個(gè)由一個(gè)單一成員的簇,即ci={di},這些單個(gè)成員的簇構(gòu)成T的一個(gè)聚類,表示為:C={c1,c2,c3,…,ci-1,ci,ci+1,…,cn};
(2)逐次計(jì)算C中每對(duì)簇ci和cj之間的相似度:sim(ci,cj);
(4)重復(fù)步驟①②③,直到C中僅剩下一個(gè)簇時(shí)結(jié)束.
本文采用亳州藥通網(wǎng)2014年3月份網(wǎng)站日志、供求信息數(shù)據(jù)庫(kù)、用戶注冊(cè)信息作為挖掘?qū)ο?,采用SQLServer 2005中的SQL Server Business Intelligence Development Studio工具進(jìn)行挖掘.部分實(shí)例如下:
從中藥材信息網(wǎng)所采集的原始數(shù)據(jù)如表1所示,包括用戶IP地址、用戶ID、用戶訪問(wèn)時(shí)間、用戶離開(kāi)時(shí)間、訪問(wèn)方式、訪問(wèn)內(nèi)容、訪問(wèn)頁(yè)面標(biāo)題等.
表1 中藥材網(wǎng)站用戶興趣提取來(lái)源Tab.1 Traditional Chinese Medicinal Materials that the user's interest extraction source
如表2所示,為以用戶08005為檢索關(guān)鍵詞所得到的用戶訪問(wèn)網(wǎng)站記錄,包括用戶IP地址、訪問(wèn)網(wǎng)頁(yè)內(nèi)容、訪問(wèn)時(shí)間、網(wǎng)頁(yè)名稱等內(nèi)容.
表2 某用戶瀏覽網(wǎng)站記錄Tab.2 Some user's browsing the website record
如表3,為文本分類階段后,各文本提取的中藥材名稱,及所屬中藥材大類對(duì)應(yīng)表部分,其中包括每種中藥材所屬大類.
表4為經(jīng)過(guò)文本聚類后,用戶與興趣所屬中藥材大類、中藥材屬性對(duì)應(yīng)列表.其中包括用戶ID、中藥材大類、中藥材屬性等信息.
表3 中藥材大類及中藥材種類對(duì)應(yīng)Tab.3 The broad category of the Traditional Chinese Medicinal Materials and the comparison of the Traditional Chinese Medicinal Materials category
表4 用戶興趣中藥材大類及屬性Tab.4 The user's interest the broad category of the Traditional Chinese Medicinal Materials and the nature
Web文本的特征決定著文本的不確定性、歧義性和內(nèi)涵豐富性,從網(wǎng)站注冊(cè)信息、訪問(wèn)日志、交易記錄數(shù)據(jù)庫(kù)中自動(dòng)提取文本,并對(duì)文本進(jìn)行分析,以文本特征標(biāo)志用戶興趣,實(shí)現(xiàn)了用戶興趣評(píng)價(jià),排除了認(rèn)為評(píng)價(jià)用戶興趣的主觀性.本文借助文本挖掘流程,并改進(jìn)文本挖掘流程,借助中藥材信息網(wǎng)數(shù)據(jù),實(shí)現(xiàn)了用戶興趣挖掘,為網(wǎng)站的個(gè)性化服務(wù)奠定了基礎(chǔ).
[1]鄒臘梅,肖基毅,龔向堅(jiān).Web文本挖掘技術(shù)研究[J].情報(bào)雜志,2007,(2):53-55.
[2]諶志群,張國(guó)煊.文本挖掘與中文文本挖掘模型研究[J].情報(bào)科學(xué),2007,25(7):1046-1051.
[3]Oren Etzioni.The world wide web:Quagmire or gold mine?[J].Communication of the ACM,1996,39(11):65-68.
[4]袁軍鵬,朱東華,李毅,等.文本挖掘技術(shù)研究進(jìn)展[J].計(jì)算機(jī)應(yīng)用研究,2006,(2):1-4.
[5]馬剛.基于語(yǔ)義的Web數(shù)據(jù)挖掘[M].大連:東北財(cái)經(jīng)大學(xué)出版社,2014.
[6]蔣濤,張彬.一個(gè)集成Web語(yǔ)義和使用挖掘的個(gè)性化模型[J].長(zhǎng)沙大學(xué)學(xué)報(bào),2006,20(5):63-66.
[7]王興起,王維才,謝宗曉,等.文本挖掘技術(shù)在信息安全風(fēng)險(xiǎn)評(píng)估系統(tǒng)中的應(yīng)用研究[J].情報(bào)理論與實(shí)踐,2013,36(4):107-110.
[8]王偉.基于語(yǔ)義挖掘的智能競(jìng)爭(zhēng)情報(bào)系統(tǒng)研究[J].情報(bào)理論與實(shí)踐,2008,31(5):773-776.
[9]劉恒文.基于網(wǎng)絡(luò)語(yǔ)義挖掘的輿情監(jiān)測(cè)預(yù)警研究[D].武漢:武漢理工大學(xué),2010.