亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

知識(shí)圖譜構(gòu)建系統(tǒng)的制作方法

文檔序號(hào):11807948閱讀:719來(lái)源:國(guó)知局
知識(shí)圖譜構(gòu)建系統(tǒng)的制作方法與工藝

本發(fā)明屬于大規(guī)模數(shù)據(jù)挖掘技術(shù)領(lǐng)域,具體涉及一種知識(shí)圖譜構(gòu)建系統(tǒng)。



背景技術(shù):

知識(shí)圖譜的構(gòu)建對(duì)于智能對(duì)話知識(shí)性問(wèn)題的理解與準(zhǔn)確回答有著極大的作用;因此對(duì)于對(duì)話系統(tǒng)的后臺(tái),如何快速有效的從大量的規(guī)則和不規(guī)則數(shù)據(jù)中挖掘出有價(jià)值的知識(shí)信息,成為構(gòu)建知識(shí)圖譜的關(guān)鍵。這其中需要通過(guò)爬蟲(chóng)進(jìn)行海量相關(guān)數(shù)據(jù)的抓取和存儲(chǔ);對(duì)后臺(tái)抓取的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,提取相關(guān)的信息;對(duì)于提取的信息,結(jié)構(gòu)化的數(shù)據(jù)可以以相對(duì)簡(jiǎn)單的方式處理入庫(kù)。對(duì)于非結(jié)構(gòu)化的信息,要通過(guò)分詞,命名實(shí)體識(shí)別,文本聚類(lèi),文本分類(lèi)等算法進(jìn)一步做數(shù)據(jù)處理;最后通過(guò)一系列的數(shù)據(jù)挖掘算法挖掘諸如頻繁項(xiàng)的挖掘等,以一定的方式進(jìn)入后臺(tái)的審核系統(tǒng),在通過(guò)人工審核后,入庫(kù)。

目前的工程應(yīng)用中,或者不存在知識(shí)發(fā)現(xiàn)到入庫(kù)這一完整的知識(shí)圖譜全生命周期系統(tǒng)設(shè)計(jì);或者已有的系統(tǒng)設(shè)計(jì)在處理海量數(shù)據(jù)時(shí)效率偏低,難以滿(mǎn)足大規(guī)模知識(shí)挖掘和知識(shí)發(fā)現(xiàn)的應(yīng)用需求。



技術(shù)實(shí)現(xiàn)要素:

針對(duì)現(xiàn)有的大規(guī)模知識(shí)挖掘和知識(shí)發(fā)現(xiàn)應(yīng)用中系統(tǒng)設(shè)計(jì)不佳導(dǎo)致的效率偏低問(wèn)題,本發(fā)明提出一種知識(shí)圖譜構(gòu)建系統(tǒng)。本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng)可以快速構(gòu)建知識(shí)發(fā)現(xiàn)和知識(shí)入庫(kù)的體系架構(gòu)。

本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),包括爬蟲(chóng)集群、Hadoop分布式存儲(chǔ)集群、自然語(yǔ)言處理集群、Mahout知識(shí)挖掘模塊和知識(shí)數(shù)據(jù)庫(kù);該爬蟲(chóng)集群用于根據(jù)種子地址,抓取網(wǎng)頁(yè)數(shù)據(jù),并將該網(wǎng)頁(yè)數(shù)據(jù)存儲(chǔ)在網(wǎng)頁(yè)HBase表中,該網(wǎng)頁(yè)HBase表存儲(chǔ)在該Hadoop分布式存儲(chǔ)集群中;該自然語(yǔ)言處理集群用于從該Hadoop分布式存儲(chǔ)集群中獲取該網(wǎng)頁(yè)HBase表,生成原始知識(shí)信息,并將該原始知識(shí)信息存儲(chǔ)在原始知識(shí)HBase表中,該原始知識(shí)HBase表存儲(chǔ)在該Hadoop分布式存儲(chǔ)集群中;該Mahout知識(shí)挖掘模塊用于對(duì)該原始知識(shí)信息進(jìn)行知識(shí)挖掘,生成非結(jié)構(gòu)化數(shù)據(jù),并將該非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)在非結(jié)構(gòu)化數(shù)據(jù)HBase表中,該非結(jié)構(gòu)化數(shù)據(jù)HBase表存儲(chǔ)在該Hadoop分布式存儲(chǔ)集群中;該知識(shí)數(shù)據(jù)庫(kù)用于根據(jù)經(jīng)過(guò)人工審核的該非結(jié)構(gòu)化數(shù)據(jù)構(gòu)建知識(shí)圖譜。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),還包括知識(shí)審核模塊;該知識(shí)審核模塊用于獲取該非結(jié)構(gòu)化數(shù)據(jù),并獲取對(duì)應(yīng)于該非結(jié)構(gòu)化數(shù)據(jù)的人工審核信息,并在人工審核信息為審核通過(guò)時(shí),將該非結(jié)構(gòu)化數(shù)據(jù)發(fā)送給該知識(shí)數(shù)據(jù)庫(kù)。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),還包括結(jié)構(gòu)化數(shù)據(jù)處理模塊;該結(jié)構(gòu)化處理模塊用于利用Jsoup工具從該網(wǎng)頁(yè)數(shù)據(jù)中提取結(jié)構(gòu)化數(shù)據(jù),并發(fā)送給該知識(shí)數(shù)據(jù)庫(kù);該知識(shí)數(shù)據(jù)庫(kù)還用于根據(jù)該結(jié)構(gòu)化數(shù)據(jù)構(gòu)建該知識(shí)圖譜。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),該爬蟲(chóng)集群包括多個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn);該Hadoop分布式存儲(chǔ)集群還用于存儲(chǔ)HBase邏輯分表;每個(gè)該爬蟲(chóng)服務(wù)器節(jié)點(diǎn)用于根據(jù)從該HBase邏輯分表獲取的第一組種子表抓取網(wǎng)頁(yè)數(shù)據(jù),并將該網(wǎng)頁(yè)數(shù)據(jù)存儲(chǔ)在該網(wǎng)頁(yè)HBase表中;該第一組種子表中包括多個(gè)待抓取的URL;該HBase邏輯分表中包括該多個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)待抓取的URL的總和。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),每個(gè)該爬蟲(chóng)服務(wù)器節(jié)點(diǎn)還用于在完成該第一組種子表后,根據(jù)從該HBase邏輯分表獲取的第二組種子表抓取網(wǎng)頁(yè)數(shù)據(jù);該HBase邏輯分表在檢測(cè)到該第一組種子表完成后立即被更新。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),該爬蟲(chóng)集群還包括一個(gè)安裝有Ansible的運(yùn)維服務(wù)器節(jié)點(diǎn);該運(yùn)維服務(wù)器節(jié)點(diǎn)與該多個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)連接。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),該Hadoop分布式存儲(chǔ)集群還包括Map/Reduce運(yùn)算模塊;該Map/Reduce運(yùn)算模塊用于對(duì)該種子表,該HBase邏輯分表和/或該網(wǎng)頁(yè)HBase表進(jìn)行統(tǒng)計(jì)和更新。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),該自然語(yǔ)言處理集群包括至少一個(gè)自然語(yǔ)言處理服務(wù)器節(jié)點(diǎn),該自然語(yǔ)言處理服務(wù)器節(jié)點(diǎn)配置有HanNLP工具。

進(jìn)一步地,本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng),該知識(shí)數(shù)據(jù)庫(kù)為配置有Jena圖關(guān)系數(shù)據(jù)庫(kù)的Hadoop集群。

本發(fā)明提出的知識(shí)圖譜構(gòu)建系統(tǒng)基于Hadoop平臺(tái),應(yīng)用HBase數(shù)據(jù)庫(kù)、Mahout知識(shí)挖掘算法實(shí)現(xiàn)了從大數(shù)據(jù)抓取、大數(shù)據(jù)挖掘到人工審核知識(shí)入庫(kù)的整個(gè)系統(tǒng)構(gòu)建。

附圖說(shuō)明

為了更清楚地說(shuō)明本發(fā)明具體實(shí)施方式或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)具體實(shí)施方式或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹。在所有附圖中,類(lèi)似的元件或部分一般由類(lèi)似的附圖標(biāo)記標(biāo)識(shí)。附圖中,各元件或部分并不一定按照實(shí)際的比例繪制。

圖1示出了本發(fā)明實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)的組成示意圖;

圖2示出了本發(fā)明實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)實(shí)現(xiàn)知識(shí)審核時(shí)的組成示意圖;

圖3示出了本發(fā)明實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)處理結(jié)構(gòu)化數(shù)據(jù)時(shí)的組成示意圖;

圖4示出了本發(fā)明實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)設(shè)置有運(yùn)維工具和統(tǒng)計(jì)工具時(shí)的組成示意圖。

具體實(shí)施方式

下面將結(jié)合附圖對(duì)本發(fā)明技術(shù)方案的實(shí)施例進(jìn)行詳細(xì)的描述。以下實(shí)施例僅用于更加清楚地說(shuō)明本發(fā)明的技術(shù)方案,因此只是作為示例,而不能以此來(lái)限制本發(fā)明的保護(hù)范圍。

需要注意的是,除非另有說(shuō)明,本申請(qǐng)使用的技術(shù)術(shù)語(yǔ)或者科學(xué)術(shù)語(yǔ)應(yīng)當(dāng)為本發(fā)明所屬領(lǐng)域技術(shù)人員所理解的通常意義。

需要說(shuō)明的是,Hadoop平臺(tái)、Mahout算法、Jsoup工具、HanNLP工具、Jena圖關(guān)系數(shù)據(jù)庫(kù)、HBase數(shù)據(jù)庫(kù)支持的各HBase表;Map/Reduce并行運(yùn)算框架、Ansible運(yùn)維工具、LNMP分別具有本發(fā)明所屬領(lǐng)域技術(shù)人員所理解的通常意義,這里不再贅述。

實(shí)施例

如圖1所示,本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),包括爬蟲(chóng)集群10、Hadoop分布式存儲(chǔ)集群20、自然語(yǔ)言處理集群50、Mahout知識(shí)挖掘模塊30和知識(shí)數(shù)據(jù)庫(kù)40;爬蟲(chóng)集群10用于根據(jù)種子地址,抓取網(wǎng)頁(yè)數(shù)據(jù),并將網(wǎng)頁(yè)數(shù)據(jù)存儲(chǔ)在網(wǎng)頁(yè)HBase表中,網(wǎng)頁(yè)HBase表存儲(chǔ)在Hadoop分布式存儲(chǔ)集群中;自然語(yǔ)言處理集群50用于從Hadoop分布式存儲(chǔ)集群中獲取網(wǎng)頁(yè)HBase表,生成原始知識(shí)信息,并將原始知識(shí)信息存儲(chǔ)在原始知識(shí)HBase表中,原始知識(shí)HBase表存儲(chǔ)在Hadoop分布式存儲(chǔ)集群中;Mahout知識(shí)挖掘模塊30用于對(duì)原始知識(shí)信息進(jìn)行知識(shí)挖掘,生成非結(jié)構(gòu)化數(shù)據(jù),并將非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)在非結(jié)構(gòu)化數(shù)據(jù)HBase表中,非結(jié)構(gòu)化數(shù)據(jù)HBase表存儲(chǔ)在Hadoop分布式存儲(chǔ)集群中;知識(shí)數(shù)據(jù)庫(kù)40用于根據(jù)經(jīng)過(guò)人工審核的非結(jié)構(gòu)化數(shù)據(jù)構(gòu)建知識(shí)圖譜。

需要說(shuō)明的是,每個(gè)爬蟲(chóng)節(jié)點(diǎn)會(huì)根據(jù)自己的機(jī)器名在hbase中生成屬于自己的獨(dú)一無(wú)二的url種子表和對(duì)應(yīng)的存放抓取網(wǎng)頁(yè)的表,也即url種子表是由爬蟲(chóng)節(jié)點(diǎn)自行生成的,而不是由統(tǒng)一的爬蟲(chóng)集群管理工具根據(jù)每個(gè)爬蟲(chóng)集群的機(jī)器名為之統(tǒng)一分配的。

對(duì)應(yīng)的存放抓取網(wǎng)頁(yè)的表是由爬蟲(chóng)節(jié)點(diǎn)自行生成的,并存儲(chǔ)在Hadoop分布式存儲(chǔ)集群中。

需要說(shuō)明的是,具體實(shí)施時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)中的Mahout知識(shí)挖掘模塊30和知識(shí)數(shù)據(jù)庫(kù)40,可以分別單獨(dú)設(shè)置,也可以設(shè)置在Hadoop分布式存儲(chǔ)集群20中,也可以組合實(shí)施并完成組合后的功能。但是,Mahout知識(shí)挖掘模塊30和知識(shí)數(shù)據(jù)庫(kù)40目前都是基于Hadoop平臺(tái)的,以實(shí)現(xiàn)較好的兼容性。

需要說(shuō)明的是,Mahout算法工具是基于hadoop平臺(tái)的一個(gè)算法包Mahout算法工具應(yīng)用與自然語(yǔ)言處理集群是分開(kāi)的,可以應(yīng)用在知識(shí)挖掘模塊及應(yīng)用在頻繁規(guī)則發(fā)現(xiàn)的算法。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)基于Hadoop平臺(tái),應(yīng)用HBase數(shù)據(jù)庫(kù)、Mahout知識(shí)挖掘算法實(shí)現(xiàn)了從大數(shù)據(jù)抓取、大數(shù)據(jù)挖掘到人工審核知識(shí)入庫(kù)的整個(gè)系統(tǒng)構(gòu)建。

如圖2所示,具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),還可以包括知識(shí)審核模塊60;知識(shí)審核模塊60用于獲取非結(jié)構(gòu)化數(shù)據(jù),并獲取對(duì)應(yīng)于非結(jié)構(gòu)化數(shù)據(jù)的人工審核信息,并在人工審核信息為審核通過(guò)時(shí),將非結(jié)構(gòu)化數(shù)據(jù)發(fā)送給知識(shí)數(shù)據(jù)庫(kù)40。

需要說(shuō)明的是,知識(shí)審核模塊和知識(shí)數(shù)據(jù)庫(kù)是兩個(gè)獨(dú)立的模塊,知識(shí)審核模塊的輸入數(shù)據(jù)是mahout處理爬蟲(chóng)數(shù)據(jù)后產(chǎn)生的待審核數(shù)據(jù)知識(shí)審核模塊對(duì)待審核數(shù)據(jù)進(jìn)行審核,審核通過(guò)就會(huì)通過(guò)審核模塊程序?qū)懭胫R(shí)數(shù)據(jù)庫(kù)40中。

其中,Mahout知識(shí)挖掘模塊利用Mahout算法包處理非結(jié)構(gòu)化數(shù)據(jù),運(yùn)用頻繁規(guī)則發(fā)現(xiàn)等算法發(fā)現(xiàn)知識(shí)。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)給出了針對(duì)非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行知識(shí)審核的方法。

如圖3所示,具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),還可以包括結(jié)構(gòu)化數(shù)據(jù)處理模塊70;結(jié)構(gòu)化處理模塊用于利用Jsoup工具從網(wǎng)頁(yè)數(shù)據(jù)中提取結(jié)構(gòu)化數(shù)據(jù),并發(fā)送給知識(shí)數(shù)據(jù)庫(kù);知識(shí)數(shù)據(jù)庫(kù)還用于根據(jù)結(jié)構(gòu)化數(shù)據(jù)構(gòu)建知識(shí)圖譜。

需要說(shuō)明的是,具體實(shí)施時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)中的結(jié)構(gòu)化數(shù)據(jù)處理模塊70可以分別單獨(dú)設(shè)置,也可以設(shè)置在Hadoop分布式存儲(chǔ)集群20中,也可以設(shè)置在知識(shí)數(shù)據(jù)庫(kù)40中。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)給出了針對(duì)結(jié)構(gòu)化數(shù)據(jù)進(jìn)行處理的方法。

如圖4所示,具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),爬蟲(chóng)集群還可以包括多個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)11;Hadoop分布式存儲(chǔ)集群還用于存儲(chǔ)HBase邏輯分表;每個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)用于根據(jù)從HBase邏輯分表獲取的第一組種子表抓取網(wǎng)頁(yè)數(shù)據(jù),并將網(wǎng)頁(yè)數(shù)據(jù)存儲(chǔ)在網(wǎng)頁(yè)HBase表中;種子表中包括多個(gè)待抓取的URL;HBase邏輯分表中包括多個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)待抓取的URL的總和。

具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),每個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)還可以用于在完成第一組種子表后,根據(jù)從HBase邏輯分表獲取第二組種子表抓取網(wǎng)頁(yè)數(shù)據(jù);HBase邏輯分表在檢測(cè)到第一組種子表完成后立即被更新。

需要說(shuō)明的是,種子地址和抓取地址指的都是url,種子地址指的是爬蟲(chóng)系統(tǒng)每個(gè)爬蟲(chóng)節(jié)點(diǎn)起始的抓取地址,比如抓取新浪一般是從新浪的首頁(yè)抓取,那么新浪首頁(yè)就是種子地址。一般種子地址是手動(dòng)配置,等爬蟲(chóng)開(kāi)抓以后就會(huì)源源不斷產(chǎn)生新的抓取地址。

也即種子地址url可以衍生出抓取地址url。不同爬蟲(chóng)節(jié)點(diǎn)之間自動(dòng)負(fù)載平衡時(shí),在完成為自己指定的任務(wù)之后,分擔(dān)的其他爬蟲(chóng)節(jié)點(diǎn)的任務(wù)時(shí),可能分擔(dān)的是其他爬蟲(chóng)節(jié)點(diǎn)的種子地址url,也可能是衍生出的抓取地址url。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)給出了爬蟲(chóng)集群的組成及各爬蟲(chóng)服務(wù)器節(jié)點(diǎn)的工作方式。

如圖4所示,具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),爬蟲(chóng)集群還包括一個(gè)安裝有Ansible的運(yùn)維服務(wù)器節(jié)點(diǎn)12;運(yùn)維服務(wù)器節(jié)點(diǎn)12與多個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)11連接。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)利用安裝有Ansible的運(yùn)維服務(wù)器節(jié)點(diǎn)對(duì)爬蟲(chóng)集群進(jìn)行管理。

如圖4所示,具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),Hadoop分布式存儲(chǔ)集群還包括Map/Reduce運(yùn)算模塊21;Map/Reduce運(yùn)算模塊21用于對(duì)種子表,HBase邏輯分表和/或網(wǎng)頁(yè)HBase表進(jìn)行統(tǒng)計(jì)和更新。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)利用Map/Reduce運(yùn)算模塊進(jìn)行業(yè)務(wù)統(tǒng)計(jì)和更新。

具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),自然語(yǔ)言處理集群包括至少一個(gè)自然語(yǔ)言處理服務(wù)器節(jié)點(diǎn),自然語(yǔ)言處理服務(wù)器節(jié)點(diǎn)配置有HanNLP工具。

具體應(yīng)用時(shí),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),知識(shí)數(shù)據(jù)庫(kù)為配置有Jena圖關(guān)系數(shù)據(jù)庫(kù)的Hadoop集群。

以下對(duì)知識(shí)圖譜構(gòu)建系統(tǒng)進(jìn)行具體說(shuō)明。

爬蟲(chóng)服務(wù)器節(jié)點(diǎn)服務(wù)器抓取到的網(wǎng)頁(yè)數(shù)據(jù)和待爬取的種子地址分別采用HBase表存儲(chǔ)于基于Hadoop的分布式文件存儲(chǔ)平臺(tái),優(yōu)選地,為Hadoop分布式存儲(chǔ)集群。

爬蟲(chóng)集群工作時(shí),首先將要抓取的地址放在HBase邏輯分表,每個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)負(fù)責(zé)抓取自己的種子表,當(dāng)自己的種子表完成后,以預(yù)先設(shè)定的策略去分擔(dān)其他任務(wù)負(fù)載比較重的爬蟲(chóng)服務(wù)器節(jié)點(diǎn)的種子表內(nèi)的部分任務(wù);這時(shí),這兩個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)的種子表及HBase邏輯分表都將動(dòng)態(tài)更新為最新的任務(wù)分配狀態(tài)。

網(wǎng)頁(yè)HBase表記錄一條網(wǎng)頁(yè)的基本信息,其字段包括:網(wǎng)頁(yè)地址,網(wǎng)頁(yè)源碼,網(wǎng)頁(yè)抓取時(shí)間等。

爬蟲(chóng)集群通過(guò)配置文件實(shí)現(xiàn)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)與HBase邏輯分表中的種子表,網(wǎng)頁(yè)HBase表,以及種子分發(fā)表等實(shí)現(xiàn)邏輯對(duì)應(yīng)關(guān)系。邏輯對(duì)應(yīng)關(guān)系主要指創(chuàng)建的HBase邏輯分表可以表明網(wǎng)頁(yè)HBase表是依靠不同的爬蟲(chóng)服務(wù)器節(jié)點(diǎn)完成的;種子地址表的表名以爬蟲(chóng)服務(wù)器節(jié)點(diǎn)的機(jī)器名為唯一標(biāo)識(shí),每個(gè)爬蟲(chóng)服務(wù)器節(jié)點(diǎn)有唯一的種子表名與之對(duì)應(yīng)。

爬蟲(chóng)集群的部署、運(yùn)行和維護(hù)由Ansible運(yùn)維工具進(jìn)行控制。Ansible運(yùn)維工具是一個(gè)對(duì)多個(gè)節(jié)點(diǎn)服務(wù)器進(jìn)行統(tǒng)一命令執(zhí)行的工具。通過(guò)編寫(xiě)安裝腳本,在一臺(tái)Ansible機(jī)器上執(zhí)行安裝腳本,就能夠?qū)崿F(xiàn)在多個(gè)服務(wù)器節(jié)點(diǎn)上無(wú)差異地安裝某種軟件。Ansible運(yùn)維工具能夠極大地提高爬蟲(chóng)集群的運(yùn)維效率。

Hadoop分布式存儲(chǔ)集群還包括Map/Reduce運(yùn)算模塊;爬蟲(chóng)集群還與Map/Reduce運(yùn)算模塊協(xié)同工作。Map/Reduce運(yùn)算模塊用于對(duì)種子表,HBase邏輯分表和/或網(wǎng)頁(yè)HBase表進(jìn)行統(tǒng)計(jì)和更新。

具體地,Map/Reduce是基于Hadoop平臺(tái)的并行計(jì)算框架,Map/Reduce運(yùn)算模塊主要對(duì)種子表,抓取頁(yè)面的表(是指網(wǎng)頁(yè)HBase表)進(jìn)行一系列的計(jì)算,如對(duì)爬蟲(chóng)已經(jīng)抓取和將要抓取的存儲(chǔ)在HBase表里的數(shù)據(jù)進(jìn)行統(tǒng)計(jì),比如統(tǒng)計(jì)抓取總數(shù),每天數(shù)據(jù)增加量等。另外,還包括爬蟲(chóng)種子均衡分發(fā)控制等。

與現(xiàn)有技術(shù)相比,綜合應(yīng)用了Map/Reduce并行計(jì)算框架、Hadoop平臺(tái)及HBase數(shù)據(jù)庫(kù)及Ansible運(yùn)維工具,本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)由爬蟲(chóng)集群實(shí)現(xiàn)的知識(shí)抓取步驟,是一整套的完整解決方案,在商業(yè)中得到了成熟運(yùn)用,能夠支持億級(jí)數(shù)據(jù)的抓取和處理。

Hadoop分布式存儲(chǔ)集群為知識(shí)圖譜構(gòu)建系統(tǒng)后臺(tái)處理數(shù)據(jù)的存儲(chǔ)模塊,其中爬蟲(chóng)集群抓取的網(wǎng)頁(yè)數(shù)據(jù)以及經(jīng)過(guò)自然語(yǔ)言處理后的原始知識(shí)信息分別存儲(chǔ)在對(duì)應(yīng)的HBase表中,即網(wǎng)頁(yè)HBase表、原始知識(shí)HBase表、非結(jié)構(gòu)化數(shù)據(jù)HBase表;最終獲得的知識(shí)圖譜數(shù)據(jù)存儲(chǔ)于Jena圖關(guān)系數(shù)據(jù)庫(kù)中。

在Hadoop平臺(tái)上配置HBase數(shù)據(jù)庫(kù),有著很高的可靠性、兼容性和穩(wěn)定性。

目前分布式Spark在處理速度上優(yōu)于Hadoop,但鑒于Spark的穩(wěn)定性不如Hadoop,及知識(shí)圖譜數(shù)據(jù)屬于后臺(tái)數(shù)據(jù),實(shí)時(shí)性要求并不是第一優(yōu)先需要保證的,相對(duì)而言,對(duì)其穩(wěn)定性要求的優(yōu)先級(jí)更高,所以選擇Hadoop分布式存儲(chǔ)集群作為整個(gè)系統(tǒng)的存儲(chǔ)和并行計(jì)算處理平臺(tái)。

優(yōu)選地,從成本、可兼容性、安全性角度考慮,Hadoop分布式存儲(chǔ)集群的操作系統(tǒng)無(wú)關(guān)一般采用Linux。

與現(xiàn)有技術(shù)相比,綜合應(yīng)用了Hadoop平臺(tái)、HBase數(shù)據(jù)庫(kù)及Jena圖關(guān)系數(shù)據(jù)庫(kù),本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)的存儲(chǔ)集群采用業(yè)界主流技術(shù),通用性好,有著很高的可靠性、兼容性和穩(wěn)定性。

由于數(shù)據(jù)處理壓力較大,自然語(yǔ)言處理集群部署在多臺(tái)自然語(yǔ)言處理服務(wù)器節(jié)點(diǎn)上。這多臺(tái)自然語(yǔ)言處理服務(wù)器的配置、功能是等同的,可以相互替換,并可以多臺(tái)協(xié)同工作。在具體應(yīng)用時(shí),隨機(jī)選擇一個(gè)或多個(gè)自然語(yǔ)言處理服務(wù)器節(jié)點(diǎn)進(jìn)行數(shù)據(jù)處理。

自然語(yǔ)言處理可以認(rèn)為是對(duì)抓取的數(shù)據(jù)進(jìn)行預(yù)處理。自然語(yǔ)言處理用于對(duì)抓取的數(shù)據(jù)進(jìn)行分詞、句法分析等基本的語(yǔ)義理解。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)的自然語(yǔ)言處理服務(wù)器節(jié)點(diǎn)申請(qǐng)配置有HanNLP工具,并進(jìn)行了二次開(kāi)發(fā),從而在現(xiàn)有的基礎(chǔ)上進(jìn)行功能強(qiáng)化,如:分詞功能中加入大量的詞典。詞典主要是用戶(hù)詞典,添加一系列需要關(guān)注的各行業(yè)關(guān)鍵詞,比如人名、地名等。強(qiáng)化分詞功能可以更準(zhǔn)確地更好挖掘人物之間的關(guān)系

進(jìn)一步地,利用Mahout知識(shí)挖掘模塊進(jìn)行知識(shí)挖掘,采用關(guān)聯(lián)規(guī)則等算法進(jìn)行實(shí)體識(shí)別和多實(shí)體關(guān)系識(shí)別。Mahout知識(shí)挖掘模塊也配置有HanNLP工具。如命名實(shí)體識(shí)別中針對(duì)人名和地名在現(xiàn)有HanNLP基礎(chǔ)上增加人名地名的正則表達(dá)式,從而降低Mahout算法識(shí)別人名地名時(shí)候的錯(cuò)誤率,提高命名實(shí)體的識(shí)別正確率。語(yǔ)料是指大量出現(xiàn)人名的資料,比如人民日?qǐng)?bào)的語(yǔ)料中間會(huì)大量出現(xiàn)國(guó)家領(lǐng)導(dǎo)人的姓名,那么基于這些語(yǔ)料就可以用概率算法計(jì)算一些字組合的凝聚度,從而計(jì)算出疑似人名。進(jìn)一步地,基于大量的語(yǔ)料使用n-gram分割算法,對(duì)于大量的詞頻進(jìn)行計(jì)算,可以進(jìn)行疑似新詞發(fā)現(xiàn)。

綜上所述,本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)的自然語(yǔ)言處理及知識(shí)挖掘都基于HanNLP工具進(jìn)行了二次開(kāi)發(fā),包括分詞,關(guān)鍵詞提取,句法分析,命名實(shí)體識(shí)別等,從而提高了Mahout算法的正確率。

Mahout算法運(yùn)行在Hadoop平臺(tái),也是Hadoop平臺(tái)生態(tài)的一系列機(jī)器學(xué)習(xí)算法包。這系列算法運(yùn)行完成后會(huì)生成原始知識(shí)信息。

生成的原始知識(shí)信息屬于非結(jié)構(gòu)化數(shù)據(jù),存儲(chǔ)在在非結(jié)構(gòu)化數(shù)據(jù)HBase表中,非結(jié)構(gòu)化數(shù)據(jù)HBase表則存儲(chǔ)在所述Hadoop分布式存儲(chǔ)集群中。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng),還包括結(jié)構(gòu)化數(shù)據(jù)處理模塊;結(jié)構(gòu)化處理模塊用于利用Jsoup工具從網(wǎng)頁(yè)數(shù)據(jù)中提取結(jié)構(gòu)化數(shù)據(jù),并發(fā)送給知識(shí)數(shù)據(jù)庫(kù);知識(shí)數(shù)據(jù)庫(kù)還用于根據(jù)結(jié)構(gòu)化數(shù)據(jù)構(gòu)建知識(shí)圖譜。

相比于非結(jié)構(gòu)化數(shù)據(jù),結(jié)構(gòu)化數(shù)據(jù)的處理較為簡(jiǎn)單。本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)利用Jsoup工具從爬蟲(chóng)集群抓取的網(wǎng)頁(yè)數(shù)據(jù)中提取出結(jié)構(gòu)化數(shù)據(jù),并發(fā)送給知識(shí)數(shù)據(jù)庫(kù),用于構(gòu)建知識(shí)圖譜。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)還包括知識(shí)審核模塊;知識(shí)審核模塊用于獲取非結(jié)構(gòu)化數(shù)據(jù),并獲取對(duì)應(yīng)于非結(jié)構(gòu)化數(shù)據(jù)的人工審核信息,并在人工審核信息為審核通過(guò)時(shí),將非結(jié)構(gòu)化數(shù)據(jù)發(fā)送給知識(shí)數(shù)據(jù)庫(kù)。

知識(shí)審核模塊用于對(duì)前述產(chǎn)生的非結(jié)構(gòu)化數(shù)據(jù)中表征的知識(shí)請(qǐng)求人工審核,人工審核合格就進(jìn)入Jena數(shù)據(jù)庫(kù),正式作為知識(shí)圖譜中的有效知識(shí)。

知識(shí)審核模塊配置有Mahout算法工具,用于對(duì)得到的非結(jié)構(gòu)化數(shù)據(jù)中表征的知識(shí)進(jìn)行人工審核??梢灾С峙繉徍撕蛦螚l審核。知識(shí)審核模塊基于LNMP開(kāi)發(fā),可以做成網(wǎng)頁(yè)訪問(wèn)的形式,并通過(guò)普通的臺(tái)式機(jī)進(jìn)行訪問(wèn)。

人工審核通過(guò)的知識(shí)數(shù)據(jù)根據(jù)知識(shí)類(lèi)別進(jìn)入Jena圖關(guān)系數(shù)據(jù)庫(kù),從而完成后臺(tái)知識(shí)的挖掘生成工作。其中,知識(shí)類(lèi)別包括人物類(lèi),地理類(lèi)等。優(yōu)選地,知識(shí)類(lèi)別的劃分基于Mahout算法工具進(jìn)行。

本實(shí)施例知識(shí)圖譜構(gòu)建系統(tǒng)設(shè)置有大規(guī)模分布式數(shù)據(jù)抓取和存儲(chǔ)架構(gòu),包括定時(shí)增量抓取,后臺(tái)監(jiān)控統(tǒng)計(jì)等模塊的設(shè)計(jì),實(shí)現(xiàn)從海量網(wǎng)頁(yè)數(shù)據(jù)中提取結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。對(duì)于非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,包括文本分類(lèi),聚類(lèi),自然語(yǔ)言處理(分詞,句法分析等),從中發(fā)現(xiàn)命名實(shí)體,命名實(shí)體屬性和多個(gè)命名實(shí)體之間的關(guān)系。還設(shè)置有人工審核環(huán)節(jié),并將通過(guò)審核的規(guī)則自動(dòng)導(dǎo)入Jena圖關(guān)系數(shù)據(jù)庫(kù),實(shí)現(xiàn)了整個(gè)知識(shí)圖譜構(gòu)件系統(tǒng)的穩(wěn)定架構(gòu)設(shè)計(jì)。

最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求和說(shuō)明書(shū)的范圍當(dāng)中。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1