李學良,李 雪,張樹美
(青島大學數(shù)據(jù)科學與軟件工程學院 山東 青島 266071)
隨著我國經(jīng)濟迅速發(fā)展以及公眾收入不斷增加,伴隨而來的是消費觀念的升級以及健身意識的增強,健身需求越來越大。近年來,國家持續(xù)推進大眾健身,全民健身已經(jīng)上升為國家戰(zhàn)略,人們對個性化健身知識需求的不斷增加。
研究數(shù)據(jù)表明,在現(xiàn)如今的互聯(lián)網(wǎng)時代人們獲取信息的主要途徑是通過搜索引擎[1]。但是用戶會耗費大量的時間來對搜索引擎獲取的良莠不齊的冗余信息進行甄別,大大消耗了用戶的時間與精力[2],影響了用戶的體驗感。知識圖譜由于其強大功能在近些年得到了飛速發(fā)展,隨之而來的知識圖譜的價值不斷地被人們發(fā)掘。知識圖譜能夠捕捉并呈現(xiàn)領域概念之間的語義關系,實現(xiàn)對瑣碎、零散知識的連接[3]。隨著大數(shù)據(jù)時代的到來,知識圖譜除了通過搜索知識庫返回搜索結果外,還能夠處理復雜問題的推理,作為一個新領域近年來廣受關注[4]。
知識圖譜的出現(xiàn)為知識服務改進提供了全新的方法。一個良好的智能問答系統(tǒng)能夠便捷地實現(xiàn)健身知識服務的信息化、自動化及智能化,因此構建一個基于知識圖譜的交互式可視化智能問答系統(tǒng)具有現(xiàn)實意義。
隨著人們生活條件的改善和生活觀念的改變,健身走進了千家萬戶,健身問題逐漸已經(jīng)成為中國各個年齡段的熱點,越來越受到人們的重視。傳統(tǒng)的健身信息查找和咨詢方式有一定的局限性,因而難以滿足很多人對于健身方面的需求。因此一個交互式可視化的智能問答健身知識服務系統(tǒng)可以有效解決多方面的問題,不僅可以有效整合網(wǎng)絡、文獻等各種資源為廣大用戶提供更加智能、更有針對性的健身知識,還可以通過飲食訓練多方面系統(tǒng)地為用戶提供幫助。
系統(tǒng)研究知識表示模型、知識圖譜構建、檢索和分析方法,建立交互式可視化健身知識服務系統(tǒng),支持針對用戶的體脂診斷和智能問答以及飲食訓練建議,作為一個能集成各種類型數(shù)據(jù)、滿足多元化用戶的需求、界面操作簡單、能提供智能問答服務的健身知識服務平臺。主要研究目標為:(1)設計健身知識表示模型。(2)解決問題處理的更新[5],所建知識庫能夠實現(xiàn)自動更新,保證系統(tǒng)的時效性和可用性。(3)滿足用戶的個性化輸入,能夠識別用戶個性的問題輸入方式。(4)系統(tǒng)能夠進行數(shù)據(jù)分析以及對用戶實際情況進行評估,并向其提供飲食和訓練的針對性服務。(5)實現(xiàn)領域知識理論更新與技術應用迭代的適應性,系統(tǒng)滿足安全性、穩(wěn)定性、魯棒性等特點,并且方便系統(tǒng)未來的擴展與升級。
該健身知識圖譜構建的具體步驟包括:(1)對需要提取的內(nèi)容進行識別分析;(2)數(shù)據(jù)預處理;(3)抽取標題,內(nèi)容主題及術語等;(4)建立三元組關系;(5)數(shù)據(jù)融合;(6)數(shù)據(jù)存儲及可視化。
實體識別是知識圖譜構建的數(shù)據(jù)功能支撐。該系統(tǒng)知識圖譜中的實體、屬性等數(shù)據(jù),都需要通過實體識別獲取,實體識別獲取的實體、屬性等數(shù)據(jù)是知識圖譜構建的數(shù)據(jù)功能支撐,所以實體識別對于知識庫的構建來說意義重大。
本文實體抽取采用的是基于深度學習的BILSTM+CRF方法。LSTM本質(zhì)是通過隱藏狀態(tài)保存輸入信息,但LSTM局限于只會從左到右獲取而不會聯(lián)系上下文語義,而我們所采取的雙向循環(huán)神經(jīng)網(wǎng)絡可以很好地考慮上下文的語義信息,對LSTM來說是一個很大的提升,因此本文采用BiLSTM+CRF的方法來識別命名實體。
該研究涉及健身相關領域的標題和關系,其中關系包括主次和從屬關系。本次健身知識圖譜構建兩種形式的三元組,一種是文章的結構,文章的結構又包括標題和內(nèi)容,而且每級標題的關系也被包含其中;一種是術語的屬性,此外包括術語之間的關系。
針對研究目標,該智能問答系統(tǒng)主要可以分為五大模塊:人機交互模塊、FAQ問答、語義查詢、知識庫構建、數(shù)據(jù)源。系統(tǒng)的數(shù)據(jù)源主要是從百度百科中關于健身的知識以及權威健身專業(yè)書籍中抽取,然后對不同源的數(shù)據(jù)進行知識融合,概括起來包括健身信息抽取、知識融合和知識推理方法。同時該健身知識圖譜檢索不到的問題,會將疑難問題轉交給人工客服,然后人工客服進行人工審核,最后給用戶提供答案,這種處理方式可以大大提高系統(tǒng)的可用性。
4.2.1 人機交互模塊
人機交互模塊位于智能問答系統(tǒng)的頂層,它的主要功能是接收用戶的問題,以及最終進行結果的輸出。具體來說,人機交互模塊可以先對問題進行預處理,通過對問題預處理后就可以判斷用戶輸入問題的范疇,最后將處理后的問題轉發(fā)給系統(tǒng)模塊中的語義查詢模塊,最終,由FAQ問答模塊或者語義查詢模塊得出的答案將通過人機交互界面?zhèn)鬟f并展示給用戶。
4.2.2 FAQ模塊
通過對健身問題統(tǒng)計和分析,發(fā)現(xiàn)有相當一部分問題重復性非常高,如果對于這些具有普遍性的重復率高的問題不做歸類作答的話,就會耗費大量時間。通過面向FAQ的問答方法可以將這些帶有普遍性的問題進行歸類統(tǒng)一的回復,節(jié)省了大量時間。例如“想要減脂怎么做好飲食”,“怎么吃才能減脂”這種類似的問題,F(xiàn)AQ就可以很快速地解決。FAQ的方法流程包括模板生成與匹配。模板生成可分為三個步驟:(1)首先對問句中的自然語言進行分詞,然后判斷其詞性和類型;(2)根據(jù)領域語義和語法規(guī)則,將問句詞匯劃分成領域相關詞匯和領域無關詞匯。以“無氧運動的運動方法有哪些?”為例,領域無關詞匯有“的”,“哪些”等;領域相關詞匯有“無氧運動”和“運動方法”等;(3)將劃分好的領域相關詞匯和無關詞匯構造成模板。
4.2.3 語義查詢模塊
FAQ雖然快捷,可以快速處理具有既有模板的問句解答,但是FAQ并非對所有問句都可以有對應的解決答案與之匹配,那這些FAQ無法處理的問句就要交給語義查詢模塊來處理。語義查詢模塊包括語義分析、知識圖譜查詢、問答結果的評價,還包括對系統(tǒng)無法解決的疑難問題處理等等。語義查詢模塊流程上首先對問題進行預處理,然后計算健身術語中的問題的語義相似性,通過計算結果將實體和關系分類進行映射,最后將問句轉化為可以在知識圖譜中進行查詢的可識別語言。
假如通過查詢出現(xiàn)了多個結果,就需要運用評價機制對查詢結果進行評估,挑選出最佳答案展示給用戶。假如問題過于復雜或者問句缺少了關鍵信息使系統(tǒng)無法解析,那么系統(tǒng)將這些問題轉發(fā)到搜索引擎或者將問題轉發(fā)給人工客服。
4.2.4 知識庫構建模塊
知識庫是基于知識圖譜的問答系統(tǒng)實現(xiàn)的基礎。通過對現(xiàn)有數(shù)據(jù)庫的對比發(fā)現(xiàn),Neo4j圖數(shù)據(jù)庫有實時數(shù)據(jù)分析、輕松檢索、高可用性等優(yōu)點,可以可視化顯示和輕松地實現(xiàn)檢索其他數(shù)據(jù)庫中的連接數(shù)據(jù),而且Neo4j圖數(shù)據(jù)庫查詢速度快,代碼量少。因此,該系統(tǒng)采用數(shù)據(jù)庫Neo4j作為存儲數(shù)據(jù)庫。
知識庫的建立,我們采用自動構建和手工構建結合的方式,首先從百度百科等網(wǎng)站分析問答系統(tǒng)需要的信息并抽取數(shù)據(jù)源的實體和關系。由于信息抽取的結果中可能包含非常多的冗余以及錯誤信息,因此需要通過知識融合將多數(shù)據(jù)源抽取出來的實體和關系進行整合,整合完成后再進行構建知識庫。自動方式可以讓信息方便高效地進入知識庫中去,同時通過循環(huán)迭代填充知識庫和進行知識庫的更新等方法,讓數(shù)據(jù)庫知識更加完備和具有時效性。
我們?yōu)榱蓑炞C智能問答系統(tǒng)的可行性以及分析其性能,收集數(shù)據(jù)并搭建了一個基于健身知識圖譜的智能問答系統(tǒng)的測試平臺,該平臺以Neo4j圖數(shù)據(jù)庫和Java語言為工具實現(xiàn)智能問答測試系統(tǒng)的相關模塊與功能。本研究從準確率P、召回率Q和R值共3個指標來進行分析。從實驗結果可以看出,系統(tǒng)回答的準確率和召回率都較高,證實了基于健身知識圖譜的智能問答系統(tǒng)的實用性。但該實驗結果是在少量數(shù)據(jù)的情況下得到的查詢準確率結果,后續(xù)需要再做驗證。
本研究從百科以及健身文獻中進行知識抽取與融合,從而構建了健身知識領域的知識圖譜,并構建了一個為用戶提供健身知識服務的交互式智能問答系統(tǒng)。通過問答系統(tǒng)為用戶提供包括飲食、訓練計劃等方面的知識服務,并通過實驗結果證實了該系統(tǒng)的實用性。目前,基于健身知識圖譜的智能問答系統(tǒng)還可以通過改進算法提升其準確率,后續(xù)將對相似度算法進行改進和嘗試使用更過適合的算法,用以提高系統(tǒng)準確率,并且在后續(xù)時間不斷將信息填充到健身知識圖譜中,進一步驗證大量數(shù)據(jù)下該問答系統(tǒng)能否維持其準確性與實用性。