【摘要】分類作為數(shù)據(jù)挖掘的一種重要技術(shù)開始應(yīng)用到旅游信息智能服務(wù)領(lǐng)域,幫助旅游機(jī)構(gòu)為游客推薦旅游信息,提供滿足其需求的旅游服務(wù)。本文將分類集成算法引入旅游信息智能服務(wù)平臺(tái),設(shè)計(jì)并實(shí)現(xiàn)了旅游信息的智能推薦。實(shí)驗(yàn)使用貴州省旅游局提供的旅游數(shù)據(jù)作為數(shù)據(jù)集,驗(yàn)證算法的分類效果。在此基礎(chǔ)上給出分類集成算法在平臺(tái)上的應(yīng)用實(shí)例,說明利用高性能的分類集成算法能幫助旅游機(jī)構(gòu)快速地為游客提供適合的旅游信息推薦,輔助制定旅游計(jì)劃。
【關(guān)鍵詞】分類集成;準(zhǔn)確率;旅游信息推薦
引言
隨著旅游資源不斷豐富,人們對(duì)于旅游信息和旅游服務(wù)的需求日益增加。游客面對(duì)海量的旅游信息,在選擇旅游資源的時(shí)候常常存在很大的盲目性和隨意性。同時(shí),旅游機(jī)構(gòu)為了增加競(jìng)爭(zhēng)力和經(jīng)營(yíng)業(yè)績(jī),也迫切需要提高旅游服務(wù)質(zhì)量。近年來,隨著國(guó)內(nèi)旅游行業(yè)的迅速發(fā)展,數(shù)據(jù)挖掘技術(shù)已經(jīng)應(yīng)用到旅游信息服務(wù)領(lǐng)域,各類旅游服務(wù)和旅游信息推薦系統(tǒng)應(yīng)運(yùn)而生。文獻(xiàn)[4]中為輔助旅游機(jī)構(gòu)向游客推薦旅游目的地,設(shè)計(jì)了一種旅游信息智能推薦系統(tǒng)(TIRS)。文獻(xiàn)[5]中根據(jù)旅游服務(wù)信息的特點(diǎn),提出了一種綜合信息檢索、聯(lián)機(jī)分析處理和數(shù)據(jù)挖掘等多種技術(shù)的旅游智能推薦(TSIR)系統(tǒng);對(duì)于貴州省這類旅游資源豐富、少數(shù)民族聚居的地域,旅游產(chǎn)業(yè)在經(jīng)濟(jì)發(fā)展中占據(jù)了舉足輕重的地位。在旅游信息服務(wù)平臺(tái)中引入高性能的分類集成算法,實(shí)現(xiàn)根據(jù)游客的特征和偏好進(jìn)行個(gè)性化的旅游信息推薦,充分滿足游客的個(gè)性化需求。研究分類集成算法在旅游信息服務(wù)平臺(tái)中的應(yīng)用,對(duì)于提高省內(nèi)旅游行業(yè)的軟環(huán)境服務(wù)水平,加快旅游信息化建設(shè),實(shí)現(xiàn)由傳統(tǒng)旅游業(yè)向現(xiàn)代旅游業(yè)的躍升,都有著重要的意義。
圖1 生成旅游信息推薦模型的流程圖
1.旅游信息推薦過程
為游客推薦旅游信息可以視為一個(gè)分類問題。旅游機(jī)構(gòu)會(huì)根據(jù)當(dāng)?shù)氐穆糜钨Y源推出相應(yīng)的旅游項(xiàng)目、旅游景區(qū)和旅游產(chǎn)品,同時(shí)也會(huì)保存以往大量游客的個(gè)人基本信息及其選擇的旅游信息的歷史記錄。將這些原始數(shù)據(jù)進(jìn)行預(yù)處理之后入庫,通過特征選擇算法篩選出對(duì)于推薦旅游信息起作用并且適合分類算法的屬性構(gòu)成數(shù)據(jù)集。將需要推薦的旅游信息作為訓(xùn)練樣本的目標(biāo)屬性,樣本的其余屬性則視為影響目標(biāo)屬性確定的決策屬性,然后在訓(xùn)練集上使用分類算法或分類集成算法生成分類模型。檢測(cè)分類模型,如果該模型達(dá)到分類準(zhǔn)確率的要求就將其入庫。使用分類集成算法訓(xùn)練得到旅游信息推薦模型的過程如圖1所示。
適用于分類算法或分類集成算法的旅游信息有很多種,如旅游項(xiàng)目、旅游景區(qū)(點(diǎn))、旅行社、旅游產(chǎn)品等,這些數(shù)據(jù)通過屬性篩選以后都可以進(jìn)行智能推薦。
2.分類集成算法的描述
流行的分類集成算法有很多,本文選擇了一種適用于旅游信息推薦的分類集成算法——Adaboost.M1。該算法的基本思想是:首先賦予所有訓(xùn)練樣本相同的權(quán)值,然后應(yīng)用C4.5決策樹算法在數(shù)據(jù)集上生成一個(gè)分類器。根據(jù)該分類器的分類結(jié)果對(duì)每個(gè)樣本重新加權(quán)。調(diào)整樣本的權(quán)重,增加錯(cuò)誤分類樣本的權(quán)重,同時(shí)減少正確分類樣本的權(quán)重。于是得到一組權(quán)重較低的“容易對(duì)付”的樣本和另一組權(quán)重較高的“難以對(duì)付”的樣本。在后繼的迭代中分類器重點(diǎn)處理那些難以對(duì)付的樣本,使其能實(shí)現(xiàn)正確分類。最后,依據(jù)新分類器的分類結(jié)果調(diào)整樣本的權(quán)重。在每次迭代之后,權(quán)重反映了當(dāng)前構(gòu)建的分類器對(duì)樣本錯(cuò)誤分類的難易程度。通過對(duì)每個(gè)樣本分類難度的估計(jì),從而得到一組互補(bǔ)型的專家,并采用加權(quán)投票的方法來預(yù)測(cè)新樣本的類別。
Adaboost.M1算法的過程描述如下。
生成模型
begin
(1)每個(gè)訓(xùn)練樣本的權(quán)重均賦予相同的值。
(2)for i=1,2,…,t do
1將C4.5算法應(yīng)用于加權(quán)的訓(xùn)練集上得到并保存結(jié)果模型。
2計(jì)算模型在加權(quán)訓(xùn)練集上的誤差e。
3if (e==0)||(e>=0.5) then exitendif
4for j=1,2,…,n do
if 模型將樣本正確分類 then
將樣本權(quán)重乘以e/(1-e)
endif
5對(duì)每一個(gè)樣本的權(quán)重進(jìn)行正?;幚?。
end for
end for
end
分類
begin
(1)每個(gè)類的權(quán)重均賦為0。
(2)for i=1,2,…,t do
給模型所預(yù)測(cè)的類賦予權(quán)重:。
end for
(3)返回權(quán)重最高的類。
end
3.算法性能驗(yàn)證
從數(shù)據(jù)庫表trainingdata_1中選取5000個(gè)樣本,每個(gè)樣本包含18個(gè)屬性。分別按20%、40%、60%和80%四種比率劃分訓(xùn)練集,組成訓(xùn)練集1、訓(xùn)練集2、訓(xùn)練集3和訓(xùn)練集4。為了比較AdaBoost.M1算法與幾種流行的分類算法的分類預(yù)測(cè)能力,本文對(duì)4種分類算法分別在4個(gè)訓(xùn)練集中生成的分類模型進(jìn)行測(cè)試,對(duì)比結(jié)果如圖2所示。
根據(jù)圖2可得:(1)AdaBoost.M1算法在4個(gè)訓(xùn)練集生成的分類模型中均得到了最高的分類準(zhǔn)確率,并且隨著訓(xùn)練數(shù)據(jù)比例的增大,算法的正確率呈上升趨勢(shì)。說明針對(duì)旅游數(shù)據(jù)而言,AdaBoost.1算法具有比其他3種分類算法更好的分類效果。(2)隨著訓(xùn)練集樣本數(shù)目的不斷增加,AdaBoost.M1算法生成的分類模型的準(zhǔn)確率變化范圍最小,說明該算法得到的分類模型受訓(xùn)練集劃分比例的影響最小,算法的穩(wěn)定性好。實(shí)驗(yàn)結(jié)果說明,分類集成算法AdaBoost.M1在旅游信息分類中能夠取得較高的準(zhǔn)確率,得到更好的分類效果。
圖2 4種分類算法的準(zhǔn)確率對(duì)比
4.算法應(yīng)用
4.1 系統(tǒng)結(jié)構(gòu)
旅游信息智能服務(wù)平臺(tái)的結(jié)構(gòu)如圖3所示。該平臺(tái)由三個(gè)邏輯層次構(gòu)成,分別是數(shù)據(jù)層、業(yè)務(wù)邏輯層和應(yīng)用層。平臺(tái)采用三層模式結(jié)構(gòu),后臺(tái)使用SQL SERVER 2008數(shù)據(jù)庫用以存儲(chǔ)需要進(jìn)行挖掘的數(shù)據(jù),在tomcat 5.0服務(wù)器上進(jìn)行相應(yīng)的挖掘以及模型的生成,在客戶機(jī)上訪問相應(yīng)的WEB頁面即可運(yùn)行旅游信息智能服務(wù)平臺(tái)的客戶端。
旅游信息智能服務(wù)平臺(tái)主要實(shí)現(xiàn)以下功能:(1)界面功能:平臺(tái)面向的用戶分為游客、旅行社、酒店和景區(qū)4類,能夠完成用戶基本信息的錄入和維護(hù),可以設(shè)置各種提示窗口和提示信息。如果游客需要使用平臺(tái)的智能推薦功能,則需要進(jìn)行用戶注冊(cè),登陸之后才能為其推薦旅游信息。(2)后臺(tái)管理:將數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)換成適合各種學(xué)習(xí)算法構(gòu)造模型所需的數(shù)據(jù)形式,因此需要一個(gè)轉(zhuǎn)化的過程。在用戶界面上顯示的是用戶能夠理解的數(shù)據(jù)表示形式,比如交通類別分為飛機(jī)、火車、汽車、自駕和其他5種類別。為方便存儲(chǔ),在數(shù)據(jù)庫中用TrafficCategory字段表示交通類別屬性,其值分別為1、2、3、4、5。(3)旅游信息智能推薦:利用推薦算法得到的分類模型為游客推薦旅游項(xiàng)目、旅游景區(qū)(點(diǎn))、旅游產(chǎn)品等信息,并將推薦結(jié)果通過用戶界面返回給游客。
圖3 旅游信息智能服務(wù)平臺(tái)結(jié)構(gòu)圖
表1 旅游項(xiàng)目推薦的樣本字段描述
字段名 類型 長(zhǎng)度 離散處理后的值
Tsex Varchar 10 1=男,2=女
Teducation Varchar 10 1=大學(xué)本科以上(含大學(xué)本科),2=大專,
3=中專及高中,4=高中以下
Tage Varchar 2 1=60歲以上,2=40-60歲,
3=23-39歲,4=23歲以下
Tvocation Varchar 4 1=公務(wù)員及企事業(yè)管理人員,
2=文教科技人員,3=服務(wù)銷售商貿(mào)人員,
4=工人和農(nóng)民,5=學(xué)生
Tpermon
-income Varchar 10 1=大于3000元,2=1500到3000元,
3=500到1499元,4=小于500
Tpermon
-expense Varchar 10 1=大于3000元,2=1500到3000元,
3=500到1499元,4=小于500
Ttravel
-days Varchar 10 1=大于7天,2=3-7天,3=小于3天
Ttravel
-time Varchar 10 1=寒暑假,2=十一黃金周,3=其他節(jié)假日,
4=淡季,5=無所謂
Tconcern
-what Varchar 10 1=酒店,2=餐飲,3=交通,4=娛樂,5=購(gòu)物,
6=導(dǎo)游服務(wù),7=景區(qū)服務(wù)
Tpurpose Varchar 20 1=旅游觀光,2=休閑度假,3=探親訪友,4=商務(wù),
5=會(huì)議,6=文化體育科技交流,7=宗教朝拜,
8=其他
Tway Varchar 30 1=旅行社組織,2=單位組織,3=個(gè)人旅行
TrafficCategory Varchar 20 1=飛機(jī),2=火車,3=汽車,4=自己開車,5=其他
HotelGrade Varchar 10 1=3星級(jí)以下,2=3星級(jí),4=4星級(jí),5=5星級(jí)
RepastGrade Varchar 10 1=3星級(jí)以下,2=3星級(jí),4=4星級(jí),5=5星級(jí)
ScenicZone
Category Varchar 10 1=自然景觀,2=人文景觀,3=現(xiàn)代旅游景區(qū),
4=遺產(chǎn)景區(qū),5=紅色景區(qū)
ScenicZone
Grade Varchar 10 1=3A以下,2=3A,3=4A,4=5A
Tcost Varchar 10 1=大于3000元,2=2000-3000元,
3=1000-1999元,4=500-999元,
5=小于500元
Tpid Varchar 20 1=安順黃果樹-天星橋-陡坡塘瀑布-龍宮一日游,2=黔南珍珠景點(diǎn)二日游,3=黔西南馬嶺河二日游,4=荔波小七孔梅園二日游,5=黔東南杉木河漂流二日游,6=黔東南西江劍河二日游,……
智能推薦功能模塊是旅游信息智能服務(wù)平臺(tái)的核心功能模塊。在該模塊中,使用分類器動(dòng)態(tài)集成算法AdaBoost.M1得到旅游信息推薦模型,使用模型實(shí)現(xiàn)為計(jì)劃出行的游客推薦旅游信息。
4.2 數(shù)據(jù)整理
應(yīng)用中使用的原始數(shù)據(jù)來自于貴州省旅游局提供的相關(guān)旅游數(shù)據(jù)和《貴州省游客旅游信息問卷調(diào)查》,大致可分為4個(gè)部分:(1)貴州省的旅游景區(qū)信息:包括景區(qū)名稱、門票價(jià)格、開放月份、景區(qū)類別、景區(qū)等級(jí)、所在地區(qū)等;(2)貴州省的旅行社信息:包括旅游社名稱、所在地區(qū)、提供的省內(nèi)旅游項(xiàng)目等;(3)貴州省的酒店信息,包括酒店名稱、所在地區(qū)、酒店等級(jí)、提供的各類房間的每日價(jià)格等;(4)游客的個(gè)人信息和旅游信息,這部分信息主要從《貴州省游客旅游信息問卷調(diào)查》中獲取。游客的旅游信息包含貴州省內(nèi)的旅游記錄和省外的旅游記錄,包括游客的個(gè)人資料,如姓名、性別、年齡、學(xué)歷、職業(yè)、家庭人均月收入、家庭人均月支出、通常選擇的出游天數(shù)、通常選擇何時(shí)去旅游、是否在外過夜等,以及游客以往的旅游歷史記錄,包括當(dāng)次旅游的旅游項(xiàng)目、旅游景區(qū)、旅游的目的、出游方式、交通類別、入住的酒店等級(jí)、游覽的景區(qū)等級(jí)、花費(fèi)情況等。對(duì)上述數(shù)據(jù)進(jìn)行特征屬性抽取,獲得應(yīng)用所需的數(shù)據(jù)集。以上信息轉(zhuǎn)換為數(shù)據(jù)庫中的78個(gè)字段,共有15000條記錄,作為分類集成算法在旅游信息智能推薦中的數(shù)據(jù)集。
分類算法主要針對(duì)離散型的數(shù)據(jù),因此需要對(duì)數(shù)據(jù)集的屬性值進(jìn)行離散處理。本文以推薦旅游項(xiàng)目為例說明如何應(yīng)用分類集成算法實(shí)現(xiàn)旅游信息推薦,文中僅給出旅游項(xiàng)目智能推薦所需樣本屬性對(duì)應(yīng)字段的描述如表1所示。
4.3 應(yīng)用實(shí)例
將AdaBoost.M1算法生成的分類模型應(yīng)用到旅游信息智能推薦平臺(tái)的原型系統(tǒng)中,本節(jié)給出一個(gè)旅游項(xiàng)目智能推薦的實(shí)例對(duì)算法的應(yīng)用進(jìn)行說明。
游客在貴州省旅游信息服務(wù)平臺(tái)上選擇使用旅游項(xiàng)目推薦,需要根據(jù)提示在下拉列表中選擇對(duì)應(yīng)的個(gè)人基本信息和旅游偏好,點(diǎn)擊“旅游項(xiàng)目推薦”按鈕。游客的錄入信息如圖4所示。
本實(shí)例中,系統(tǒng)為該游客推薦的旅游項(xiàng)目是荔波小七孔梅園二日游。如圖5所示,完成旅游項(xiàng)目推薦之后,游客可以點(diǎn)擊查看旅游項(xiàng)目的簡(jiǎn)介,以了解該旅游項(xiàng)目的基本情況。
5.結(jié)束語
本文將一種流行的分類集成算法Adaboost.M1引入到旅游信息智能服務(wù)平臺(tái)的智能推薦模塊中,把為游客提供旅游信息推薦服務(wù)轉(zhuǎn)換成分類問題。使用貴州省旅游局提供的相關(guān)旅游數(shù)據(jù)作為原始數(shù)據(jù),篩選、整理入庫后,即可作為生成和測(cè)試推薦模型的數(shù)據(jù)集。
通過實(shí)驗(yàn)驗(yàn)證和應(yīng)用實(shí)例可知,在旅游信息智能服務(wù)平臺(tái)中使用高性能的分類器集成算法Adaboost.M1能夠快速、有效地根據(jù)游客的個(gè)性特征為其推薦滿足需求的、個(gè)性化的旅游信息。通過這種方式,能夠提高游客對(duì)旅游公司的認(rèn)可度,從而增加企業(yè)的競(jìng)爭(zhēng)力和經(jīng)營(yíng)業(yè)績(jī),提高省內(nèi)旅游行業(yè)的服務(wù)水平,加快旅游信息化建設(shè)。
參考文獻(xiàn)
[1]戴常英,孫德全.基于C4_5和Boosting算法的數(shù)據(jù)庫負(fù)載自動(dòng)識(shí)別[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(4):972-975.
[2]陳冰,張化祥.集成學(xué)習(xí)的多分類器動(dòng)態(tài)組合方法[J].計(jì)算機(jī)工程,2008,34(24):218-220.
[3]關(guān)菁華,劉大有,賈海洋.自適應(yīng)多分類器集成學(xué)習(xí)算法[J].計(jì)算機(jī)研究與發(fā)展,2008,45(Suppl):218-221.
[4]趙琳,羅漢,劉京.加權(quán)馬氏距離判別分析方法及其權(quán)值確定——旅游信息服務(wù)系統(tǒng)的智能推薦[J].經(jīng)濟(jì)數(shù)學(xué),2007,24(2):185-188.
[5]張晗.基于數(shù)據(jù)挖掘的旅游資訊服務(wù)智能推薦系統(tǒng)的研究與設(shè)計(jì)[D].鄭州:中國(guó)人民解放軍信息工程大學(xué)信息工程學(xué)院,2006.
[6]陳海霞.面向數(shù)據(jù)挖掘的分類器集成研究[D].長(zhǎng)春:吉林大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,2006.
[7]Jiawei Han,Micheline Kamber.數(shù)據(jù)挖掘概念與技術(shù)[M].北京:機(jī)械工業(yè)出版社,2004.
基金項(xiàng)目:貴州大學(xué)青年教師科研基金項(xiàng)目自然科學(xué)類(2012017)。
作者簡(jiǎn)介:姜季春(1981—),女,重慶人,碩士研究生,講師,主要研究方向:數(shù)據(jù)庫技術(shù)與軟件工程。