• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于知識圖譜的四大名著人物關(guān)系的構(gòu)建

      2021-03-14 00:51:02王家樂宋龍生
      現(xiàn)代計(jì)算機(jī) 2021年36期
      關(guān)鍵詞:爬蟲圖譜可視化

      王家樂,宋龍生

      (西藏大學(xué)信息科學(xué)技術(shù)學(xué)院,拉薩 850000)

      0 引言

      近年來,隨著人工智能技術(shù)的發(fā)展和大數(shù)據(jù)時(shí)代的到來,知識圖譜技術(shù)得到極大的發(fā)展,大量的知識圖譜被構(gòu)建出來并廣泛應(yīng)用在多種場景之中。四大名著作為我國古代杰出的文學(xué)作品,里面包含的人物眾多,不同的人物之間又具有錯(cuò)綜復(fù)雜的關(guān)系,要想讀懂這幾部經(jīng)典著作,必須將其中的人物關(guān)系梳理清楚。

      為了解決這個(gè)問題,本文利用知識圖譜把四大名著中復(fù)雜的人物關(guān)系結(jié)合在一起。通過問答系統(tǒng)也可以為用戶找出想要獲取的某人的準(zhǔn)確信息以及和親屬之間的聯(lián)系,為用戶提供更有價(jià)值的深層次信息。

      1 系統(tǒng)開發(fā)環(huán)境及相關(guān)技術(shù)的介紹

      1.1 Python

      Python 作為一種跨平臺的計(jì)算機(jī)程序設(shè)計(jì)語言,Python 語言簡潔易讀、擴(kuò)展性好容易維護(hù),它不像C 語言那樣對格式的要求嚴(yán)謹(jǐn),它的風(fēng)格比較隨意,很多的層次結(jié)構(gòu)用空格就可以實(shí)現(xiàn),對于開發(fā)者而言比較友好。同時(shí)Python 具有很好的可移植性,能夠適應(yīng)于多種平臺,因此選擇Python語言進(jìn)行本設(shè)計(jì)開發(fā)。

      1.2 Flask框架

      與Python 中常用的框架Django 相比較而言,F(xiàn)lask框架可以定義為一個(gè)輕量級的框架,重要的是它顯得簡潔、輕巧而且靈活度高。Flask框架適合做分層比較少、邏輯簡單的項(xiàng)目。本系統(tǒng)中采用Flask框架比較適合。

      1.3 圖形數(shù)據(jù)庫Neo4j

      圖數(shù)據(jù)庫存儲(chǔ)和查詢數(shù)據(jù)是通過圖這種數(shù)據(jù)結(jié)構(gòu)來實(shí)現(xiàn)的[1],數(shù)據(jù)都是以節(jié)點(diǎn)的形式來保存,它是通過指針來說明兩個(gè)節(jié)點(diǎn)之間的關(guān)系,具有任意性。圖數(shù)據(jù)庫的數(shù)據(jù)存儲(chǔ)方式和查詢方式都是以圖論為基礎(chǔ)的[2]。本文使用圖數(shù)據(jù)庫Neo4j來實(shí)現(xiàn)對四大名著人物關(guān)系的存儲(chǔ)。

      1.4 MySQL數(shù)據(jù)庫

      在存儲(chǔ)可視化展示界面和單個(gè)人物的事跡與簡介的數(shù)據(jù)時(shí)采用MySQL 數(shù)據(jù)庫。MySQL 是一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng)[3]。在存儲(chǔ)關(guān)系型數(shù)據(jù)時(shí),MySQL仍然是首要的選擇。

      1.5 知識圖譜

      知識圖譜經(jīng)歷了早期語義網(wǎng)時(shí)代的發(fā)展、積累,最后才發(fā)展衍生出了這一概念。知識圖譜有助于提供更好的搜索服務(wù),比如當(dāng)搜索籃球明星姚明時(shí),搜索引擎不僅會(huì)出現(xiàn)查找人物的信息,而且旁邊還會(huì)出現(xiàn)他的朋友、妻子、子女等簡要信息。事實(shí)上,這種效果就是知識圖譜的功勞,可以理解為知識圖譜的簡單應(yīng)用。

      2 系統(tǒng)整體框架與知識圖譜的構(gòu)建

      2.1 系統(tǒng)的整體框架

      本系統(tǒng)采用Flask 框架對整個(gè)項(xiàng)目進(jìn)行交互,還包括網(wǎng)絡(luò)爬蟲部分、數(shù)據(jù)處理部分、知識圖譜構(gòu)建部分、分詞部分和前端展示部分。

      2.2 知識圖譜的構(gòu)建

      知識圖譜的構(gòu)建首先需要大量的數(shù)據(jù)作為支撐,通過結(jié)合人工獲取與網(wǎng)絡(luò)爬蟲共同得到本系統(tǒng)需要的數(shù)據(jù),在得到大量的數(shù)據(jù)之后,接下來需要對數(shù)據(jù)進(jìn)行分類。構(gòu)建知識圖譜的主要方法可以分為兩種:一是自頂向下的構(gòu)建方式,二是自底向上的構(gòu)建方式[4]。

      目前,在構(gòu)建知識圖譜時(shí),一般采用自底向上的方式,從網(wǎng)絡(luò)中抽取信息[5],這種從下往上將知識進(jìn)行疊加的方式便于信息的修改。但是在后期的過程中同時(shí)使用自頂向下和自底向上構(gòu)建方法,并將兩種方法的優(yōu)勢結(jié)合一起能夠更高效地完成這一階段的工作。

      2.3 數(shù)據(jù)的爬取

      由于本系統(tǒng)要使用眾多的人物圖片和一些相關(guān)信息,所以使用網(wǎng)絡(luò)爬蟲技術(shù)作為收集數(shù)據(jù)的主要方式。網(wǎng)絡(luò)爬蟲伴隨著大數(shù)據(jù)與人工智能時(shí)代的來臨而受到越來越多人的重視與青睞。網(wǎng)絡(luò)爬蟲是搜索引擎的重要組成部分[6]。通俗的講,爬蟲就是程序代替人們在網(wǎng)頁中獲取想要的信息,用程序替你獲取你想要的信息。

      爬蟲的主要步驟分為:分析站點(diǎn)(目標(biāo)網(wǎng)站)→發(fā)送請求→獲取相應(yīng)的內(nèi)容→解析網(wǎng)頁→數(shù)據(jù)保存。

      2.4 知識抽取

      知識抽取的過程包括分詞、實(shí)體命名識別、關(guān)系抽取以及事件抽?。?]。本系統(tǒng)的分詞工具直接使用的是已經(jīng)比較完善的LTP,因?yàn)樗闪朔衷~和詞性標(biāo)注等多種方法在里面。

      在本系統(tǒng)中用到的實(shí)體關(guān)系一般是指君臣關(guān)系、兄弟關(guān)系、同僚關(guān)系等。實(shí)體命名識別主要是從互聯(lián)網(wǎng)或者文本中發(fā)現(xiàn)有用的人物節(jié)點(diǎn)。除了這種方式外,還有人工獲取,將數(shù)據(jù)同樣整理成三元組的形式進(jìn)行存儲(chǔ)。之所以加入人工獲取的方式是因?yàn)樵谒拇竺奈谋局写嬖谟卸x性的詞語。但是,本系統(tǒng)中的數(shù)據(jù)關(guān)系來源幾乎都是人工整理所得,不存在二義性的問題。

      2.5 問答系統(tǒng)架構(gòu)

      (1)數(shù)據(jù)處理部分。原始數(shù)據(jù)來源于關(guān)系數(shù)據(jù)庫,需要將數(shù)據(jù)預(yù)處理后,導(dǎo)入的圖數(shù)據(jù)庫Neo4j 中。本系統(tǒng)選擇使用Neo4j-import 將大規(guī)模的數(shù)據(jù)導(dǎo)入到Neo4j 數(shù)據(jù)庫中(首先將數(shù)據(jù)Excel轉(zhuǎn)換成CSV 格式,然后將CSV 格式存放在import文件夾下),最終形成想要的知識庫。

      (2)問題分析部分。本系統(tǒng)針對用戶輸入的問題進(jìn)行模式匹配,識別出實(shí)體,進(jìn)行詞性分析,從而找出人名實(shí)體和親屬關(guān)系類別。

      (3)查詢結(jié)果部分。主要的功能分為兩種類型:一種是查詢?nèi)宋锏挠H屬關(guān)系,另一種是查詢兩個(gè)人物之間是否存在關(guān)系。

      (4)結(jié)果返回部分。如果在圖數(shù)據(jù)庫中能找到答案,就返回相應(yīng)的節(jié)點(diǎn)和關(guān)系展示出圖譜的全貌,如果查找失敗就報(bào)錯(cuò),查詢兩個(gè)人物之間的關(guān)系時(shí)如果存在關(guān)系就會(huì)跳轉(zhuǎn)到答案的界面,沒有則顯示沒有關(guān)系,若查找成功還會(huì)出現(xiàn)人物對應(yīng)的圖片與人物簡介。

      3 知識圖譜可視化系統(tǒng)與功能實(shí)現(xiàn)

      在本系統(tǒng)中知識圖譜的可視化主要是前端界面的整體展示,在對整體數(shù)據(jù)進(jìn)行展示的過程中使用echarts 可視化平臺可以直觀地看到系統(tǒng)中的各類關(guān)系和實(shí)體以及數(shù)據(jù)的統(tǒng)計(jì)。人物檢索主要是以關(guān)鍵詞為中心,結(jié)果會(huì)將和關(guān)鍵詞有關(guān)系的節(jié)點(diǎn)(實(shí)體)連在一起形成一個(gè)大的知識網(wǎng)絡(luò),展示在網(wǎng)頁中。

      對Neo4j 數(shù)據(jù)庫中數(shù)據(jù)的讀取和前端HTML界面的展示依靠的是Flask框架,進(jìn)而將數(shù)據(jù)庫中的所有內(nèi)容進(jìn)行可視化展示。可視化界面還具有搜索單個(gè)人物、知識圖譜全貌的展示、查詢?nèi)宋镪P(guān)系等功能。

      3.1 可視化界面實(shí)現(xiàn)

      整體系統(tǒng)實(shí)現(xiàn)了:①可視化展示;②四大名著知識圖譜全貌展示;③搜索單個(gè)人物;④查詢?nèi)宋镏g的關(guān)系。

      圖1 是可視化界面,顯示了本系統(tǒng)中關(guān)系和實(shí)體的總數(shù)目,中間部分的圖譜效果是由echarts實(shí)現(xiàn),當(dāng)點(diǎn)擊其中的名字會(huì)出現(xiàn)相應(yīng)內(nèi)容介紹。右側(cè)介紹了系統(tǒng)中的主要功能模塊。

      圖1 可視化界面展示

      3.2 知識圖譜的實(shí)現(xiàn)

      圖2是數(shù)據(jù)的展示界面。

      圖2 四大名著數(shù)據(jù)展示

      可以看到四大名著人物關(guān)系全貌的一部分,它和在圖形數(shù)據(jù)庫Neo4j 中的效果略同,但是它在前端的展示會(huì)顯得清楚、美觀。

      3.3 問答系統(tǒng)的實(shí)現(xiàn)

      關(guān)于增添關(guān)系的效果,當(dāng)需要添加兩個(gè)人物的關(guān)系時(shí),在輸入框中添加兩個(gè)人物的,名字和他們之間的關(guān)系就可以成功的添加這兩個(gè)人的關(guān)系。

      查找某個(gè)人的親屬關(guān)系,只要這個(gè)關(guān)系存在就會(huì)顯示親屬的關(guān)系圖譜,并且會(huì)顯示出對應(yīng)人物的簡介。

      除上述的功能之外,為了使系統(tǒng)中的內(nèi)容更加充實(shí)以滿足更多的使用者,加入了四大名著中主要事件的搜索以及主要事件的視頻內(nèi)容。例如:在搜索欄中搜索“武松打虎”,就會(huì)與數(shù)據(jù)庫中的內(nèi)容進(jìn)行匹配,然后出現(xiàn)對應(yīng)的視頻片段。

      4 結(jié)語

      本文主要論述了基于四大名著的知識圖譜的構(gòu)建,使用人工獲取和網(wǎng)絡(luò)爬蟲在互聯(lián)網(wǎng)上獲取相關(guān)資源后,通過對獲取的人物關(guān)系進(jìn)行歸納、整合等操作后整理成三元組的形式,利用Neo4j存儲(chǔ)其中的人物關(guān)系,接下來使用Flask框架來實(shí)現(xiàn)系統(tǒng)中前后端的交互,最終構(gòu)建了四大名著人物關(guān)系的知識圖譜。不僅有基本的人物圖譜的全部展示,而且加入了類似于大數(shù)據(jù)的前端展示,使得數(shù)據(jù)的可視化效果增強(qiáng)。

      猜你喜歡
      爬蟲圖譜可視化
      利用網(wǎng)絡(luò)爬蟲技術(shù)驗(yàn)證房地產(chǎn)灰犀牛之說
      基于CiteSpace的足三里穴研究可視化分析
      基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
      云南化工(2021年8期)2021-12-21 06:37:54
      基于Python的網(wǎng)絡(luò)爬蟲和反爬蟲技術(shù)研究
      繪一張成長圖譜
      基于CGAL和OpenGL的海底地形三維可視化
      “融評”:黨媒評論的可視化創(chuàng)新
      傳媒評論(2019年4期)2019-07-13 05:49:14
      利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
      電子測試(2018年1期)2018-04-18 11:53:04
      補(bǔ)腎強(qiáng)身片UPLC指紋圖譜
      中成藥(2017年3期)2017-05-17 06:09:01
      大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡(luò)爬蟲技術(shù)
      電子制作(2017年9期)2017-04-17 03:00:46
      莱西市| 历史| 砀山县| 吉林省| 莆田市| 河源市| 麦盖提县| 绥江县| 株洲县| 丹阳市| 栾川县| 抚远县| 贡嘎县| 大石桥市| 日土县| 汤阴县| 安化县| 唐山市| 二连浩特市| 芷江| 郯城县| 康乐县| 冀州市| 论坛| 丰原市| 梓潼县| 广东省| 周至县| 花垣县| 和政县| 池州市| 长顺县| 关岭| 辛集市| 泰宁县| 衡东县| 常宁市| 鹤岗市| 都昌县| 象州县| 修水县|