孫 偉 李 一 馬永強(qiáng)
(集寧師范學(xué)院 計(jì)算機(jī)與大數(shù)據(jù)學(xué)院,內(nèi)蒙古 烏蘭察布 012000)
智慧旅游可以為我區(qū)旅游高質(zhì)量發(fā)展提供強(qiáng)有力的抓手。智慧旅游從游客出發(fā),通過大數(shù)據(jù)技術(shù)融合旅游業(yè)上下游產(chǎn)業(yè)數(shù)據(jù)為用戶提供個性化的旅行線路推薦、旅游產(chǎn)品預(yù)訂支付和回顧評價;智慧旅游還可以通過旅游輿情監(jiān)控和數(shù)據(jù)分析,挖掘旅游熱點(diǎn)和游客興趣點(diǎn),引導(dǎo)旅游企業(yè)策劃對應(yīng)的旅游產(chǎn)品,制定對應(yīng)的營銷主題,從而推動旅游行業(yè)的產(chǎn)品創(chuàng)新和營銷創(chuàng)新。個性化旅游推薦是智慧旅游的重要應(yīng)用場景,但傳統(tǒng)的個性化旅游推薦算法存在數(shù)據(jù)稀疏和冷啟動等問題。知識圖譜是結(jié)構(gòu)化的語義知識庫,以符號形式描述物理世界中的概念及其相互關(guān)系。知識圖譜技術(shù)為解決傳統(tǒng)旅游推薦中存在的問題提供了新的可能。知識圖譜可以通過實(shí)體之間的語意信息有效地解決傳統(tǒng)個性化推薦算法中存在的數(shù)據(jù)稀疏和冷啟動等問題,為游客提供精準(zhǔn)的個性化旅游線路推薦服務(wù),提升旅游體驗(yàn)和旅游品質(zhì);同時建設(shè)旅游知識圖譜還能融合旅游產(chǎn)業(yè)數(shù)據(jù)為智慧旅游平臺提供數(shù)據(jù)基礎(chǔ),助力我區(qū)旅游產(chǎn)業(yè)高質(zhì)量發(fā)展。
知識圖譜構(gòu)造的主要任務(wù)包括:數(shù)據(jù)采集、命名實(shí)體識別、關(guān)系抽取數(shù)據(jù)融合等任務(wù)。本研究從主流旅游網(wǎng)站上通過網(wǎng)絡(luò)爬蟲獲取內(nèi)蒙古旅游景點(diǎn)的基本信息、游客游記以及游客評論信息作為研究數(shù)據(jù)來源。首先,項(xiàng)目組對原始數(shù)據(jù)進(jìn)行數(shù)據(jù)清洗形成原始語料。然后,從原始語料識別命名實(shí)體。之后,從標(biāo)注實(shí)體信息的語料中抽取實(shí)體之間的關(guān)系。最后,構(gòu)建和表示內(nèi)蒙古旅游知識圖譜。內(nèi)蒙古旅游知識圖譜包括:景點(diǎn)知識圖譜和旅行知識圖譜,前者以實(shí)體為中心,體現(xiàn)了旅游景點(diǎn)的靜態(tài)特征(如位置、面積、項(xiàng)目等),數(shù)據(jù)為形如“實(shí)體—關(guān)系—實(shí)體”或者“實(shí)體—關(guān)系—屬性”的實(shí)體三元組;后者以事務(wù)為中心,反映了游客在旅行中的行為(如時間、景點(diǎn)、活動等),數(shù)據(jù)為形如“時間—景點(diǎn)—活動”的事務(wù)三元組。將景點(diǎn)知識圖譜和旅行知識圖譜進(jìn)行融合,存儲在圖數(shù)據(jù)庫中。內(nèi)蒙古旅游知識圖譜的構(gòu)建及融合過程如圖1 所示:
圖1 知識圖譜構(gòu)造及融合過程研究框架圖
數(shù)據(jù)采集主要通過網(wǎng)絡(luò)爬蟲工具從主流旅游網(wǎng)站獲取內(nèi)蒙古旅游景點(diǎn)的基本信息、游客游記以及游客評論信息。數(shù)據(jù)采集分為半結(jié)構(gòu)化數(shù)據(jù)采集和無結(jié)構(gòu)化采集。半結(jié)構(gòu)化數(shù)據(jù)采集的數(shù)據(jù)源是攜程網(wǎng)旅游實(shí)體頁面中的旅游實(shí)體信息框、旅游實(shí)體詳情欄、酒店房型價格框等半結(jié)構(gòu)數(shù)據(jù),抽取出來的半結(jié)構(gòu)化數(shù)據(jù)經(jīng)過去重噪、統(tǒng)一格式后映射為高質(zhì)量的RDF 三元組文件。無結(jié)構(gòu)化數(shù)據(jù)采集的數(shù)據(jù)源是攜程網(wǎng)、飛豬網(wǎng)、美團(tuán)等在線旅游網(wǎng)站的游記和評論數(shù)據(jù)。被抽取出的無結(jié)構(gòu)信息經(jīng)過去停用詞、數(shù)據(jù)去重、數(shù)據(jù)整合、統(tǒng)一格式后形成原始語料數(shù)據(jù)。下面以半結(jié)構(gòu)化數(shù)據(jù)采集過程為例說明數(shù)據(jù)采集過程,具體流程如圖2 所示:
圖2 數(shù)據(jù)采集過程圖
命名實(shí)體識別的任務(wù)是從原始語料中標(biāo)注景點(diǎn)、游客、活動等實(shí)體信息,采取的標(biāo)注方法是 BIO標(biāo)注,將文本中的每個元素標(biāo)注為“B-X”、“I-X”或者“O”,其中“B-X”表示某類命名實(shí)體的開始位置,“I-X”表示某類命名實(shí)體中間某一個位置,“O”表示該元素不屬于一個實(shí)體。例如一條原始語料句子為“我喜歡在內(nèi)蒙古的草原上騎馬”,對其中的每個字都行進(jìn)BIO 標(biāo)注,標(biāo)注結(jié)果為[我_O,喜_O,歡_O,在_O,內(nèi)_ B-Loc,蒙_ I- Loc,古_ I- Loc,的_O,草_ B-Scenic,原_ I- Scenic,上_O,騎_ B- Activities,馬_I- Activities]
命名實(shí)體識別的任務(wù)是從原始語料中標(biāo)注景點(diǎn)、游客、活動等實(shí)體信息,采用目前比較流行的BERT+BiLSTM+CRF 作為命名實(shí)體識別模型,該方案有較高的識別準(zhǔn)確性,可以為后續(xù)的工作提供有力的保障。命名實(shí)體識別任務(wù)主要分為三個步驟:第一步是詞嵌入,使用BERT 模型進(jìn)行預(yù)訓(xùn)練獲得原始語料的詞向量;第二步是特征編碼,使用BiLSTM 網(wǎng)絡(luò)對詞向量做變換,得到每一個詞屬于不同標(biāo)簽的概率;第三步是解碼過程,使用CRF 模型通過轉(zhuǎn)移矩陣結(jié)合上下文信息得到詞性標(biāo)注序列。命名實(shí)體識別研究方法框架如圖3 所示:
圖3 命名實(shí)體識別研究方法框架圖
對于任意標(biāo)簽序列y=y1,y2,…,yt,標(biāo)簽序列分?jǐn)?shù)公式為:
對于任意標(biāo)簽序列y=y1,y2,…,yt,標(biāo)簽序列概率公式為:
正確標(biāo)注序列最大對數(shù)似然概率公式可以表示為:
命名實(shí)體識別公式可以表示為:
關(guān)系抽取任務(wù)可以看作一個多分類任務(wù),實(shí)現(xiàn)對景點(diǎn)、時間、活動等實(shí)體之間的關(guān)系進(jìn)行抽取。關(guān)系抽取首先需要將標(biāo)記過實(shí)體的語料處理為<實(shí)體 1,實(shí)體 2,句子>的結(jié)構(gòu),然后通過模型計(jì)算出兩個實(shí)體間可能性最大的關(guān)系類型作為兩個實(shí)體之間的關(guān)系。例如,一條文本語料<烏蘭察布市,四子王旗,四子王旗是烏蘭察布市面積最大的旗縣>,對其進(jìn)行關(guān)系抽取后,結(jié)果是實(shí)體烏蘭察布市與實(shí)體四子王旗之間的關(guān)系為包含。
關(guān)系抽取采用BERT+BiGRU+Attention 作為任務(wù)模型,具體過程包含五個步驟:第一步數(shù)據(jù)預(yù)處理,將實(shí)體標(biāo)注后的語料預(yù)處理為包含實(shí)體關(guān)系的句子形式;第二步詞嵌入,使用BERT 模型進(jìn)行預(yù)訓(xùn)練獲得預(yù)處理語料的詞向量;第三步獲取句子特征向量,使用BiGRU 獲取含有上下文語義信息的原始句子特征向量。第四步特征向量加權(quán),使用注意力機(jī)制為原始句子特征向量賦予不同的權(quán)重;第五步關(guān)系分類,通過sofrmax函數(shù)選取概率值最大的向量對應(yīng)的關(guān)系作為輸出結(jié)果。關(guān)系抽取研究方法框架如圖4 所示:
圖4 關(guān)系抽取研究方法框架圖
GRU 網(wǎng)絡(luò)相關(guān)公式為:
Attention 相關(guān)公式為:
關(guān)系分類公式可以表示為:
自然語言處理技術(shù)在內(nèi)蒙古旅游知識圖譜建設(shè)中的成功應(yīng)用很好地解決了傳統(tǒng)知識圖譜構(gòu)造中存在的問題,提高了命名實(shí)體識別和關(guān)系抽取的準(zhǔn)確率,為內(nèi)蒙古智慧旅游發(fā)展提供了新的思路。