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