何震葦,鄒若晨,鐘偉彬,嚴(yán)麗云
(1.中國(guó)電信股份有限公司廣東研究院 廣州510630;2.華南理工大學(xué) 廣州510006)
隨著手機(jī)上網(wǎng)人數(shù)的快速增長(zhǎng)和網(wǎng)絡(luò)信息的飛速膨脹,移動(dòng)搜索已經(jīng)成為人們利用移動(dòng)終端進(jìn)行信息檢索的最主要工具,CNNIC的最新報(bào)告顯示,移動(dòng)搜索已成為國(guó)內(nèi)僅次于手機(jī)即時(shí)通信的第二大移動(dòng)互聯(lián)網(wǎng)應(yīng)用。移動(dòng)搜索與傳統(tǒng)Web搜索相比,對(duì)信息精度的要求更高、對(duì)個(gè)性化搜索服務(wù)的需要更迫切,因此,如何提高移動(dòng)搜索上的信息查詢準(zhǔn)確率、搜索結(jié)果返回的精度,滿足搜索用戶的個(gè)性化需求成為亟需解決的問題。
較好地解決這些問題的根本思路就是在移動(dòng)終端和搜索引擎之間引入搜索代理,正確理解用戶搜索意圖,返回精確的搜索結(jié)果,簡(jiǎn)化用戶搜索操作。
移動(dòng)搜索基本過程與PC搜索類似,包括3個(gè)步驟:提交搜索請(qǐng)求,分析查詢語(yǔ)義,獲取搜索結(jié)果。由于終端設(shè)備和用戶群體的差異性,移動(dòng)搜索具有其顯著特點(diǎn),如移動(dòng)性,用戶可能會(huì)邊走邊搜,而在移動(dòng)中要輸入搜索文字是很困難的;多元化,移動(dòng)用戶搜索的信息多種多樣,既可能是吃喝玩樂信息,也可能是商品比價(jià)、健康醫(yī)療信息,單一的搜索引擎往往難以覆蓋用戶的信息需求;隱私性,要挖掘個(gè)人興趣必須搜集個(gè)人信息,而用戶的隱私又要得到合理保護(hù)。
因此,一個(gè)完善的移動(dòng)個(gè)性化搜索引擎應(yīng)重點(diǎn)考慮以下幾個(gè)方面。
·使用便捷:不僅要提供用戶查詢?cè)~的自動(dòng)補(bǔ)全和相關(guān)搜索提示等功能,還需要提供語(yǔ)音、菜單等更高效的搜索請(qǐng)求輸入方式。
·個(gè)性化服務(wù):所謂個(gè)性化,就是能夠感知人及人所在的環(huán)境,針對(duì)“此時(shí)、此地、此人”建立模型,正確理解用戶的搜索意圖。
·保護(hù)隱私:允許用戶定義隱私基準(zhǔn),控制個(gè)人信息開放的范圍。
·響應(yīng)迅速:迅速響應(yīng)用戶的搜索請(qǐng)求,與傳統(tǒng)搜索引擎相比沒有明顯時(shí)延。
作為一種新型搜索技術(shù),個(gè)性化移動(dòng)搜索的研究仍處于起步階段。這種新興的搜索是搜索技術(shù)在移動(dòng)平臺(tái)上的延伸,真正打破了地域、網(wǎng)絡(luò)和硬件的局限性,滿足了用戶隨時(shí)、隨地的搜索需求。根據(jù)第2節(jié)提出的移動(dòng)個(gè)性化搜索代理的需求,對(duì)其中較為關(guān)鍵的實(shí)現(xiàn)技術(shù)進(jìn)行了細(xì)致分析。
元搜索引擎,是指在統(tǒng)一的用戶查詢界面與信息反饋形式下,共享多個(gè)搜索引擎的資源庫(kù)為用戶提供統(tǒng)一的搜索服務(wù)。元搜索引擎是對(duì)搜索引擎進(jìn)行搜索的引擎,元搜索引擎與一般搜索引擎的最大不同在于,它可以沒有自己的資源庫(kù)和機(jī)器人,而只是充當(dāng)一個(gè)中間代理的角色,接受用戶的查詢請(qǐng)求,將請(qǐng)求翻譯成相應(yīng)搜索引擎的查詢語(yǔ)法。在向各個(gè)搜索引擎發(fā)送查詢請(qǐng)求并獲得反饋之后,首先進(jìn)行綜合相關(guān)度排序,然后將整理抽取之后的查詢結(jié)果返回給用戶。
因?yàn)樵阉饕娴慕Y(jié)果是基于獨(dú)立搜索引擎的,所以在功能上,這些排列順序會(huì)根據(jù)網(wǎng)站權(quán)重、網(wǎng)站關(guān)聯(lián)度等進(jìn)行改變,實(shí)現(xiàn)上將會(huì)受到獨(dú)立搜索引擎的限制。元搜索引擎的覆蓋比較廣,但是檢索的準(zhǔn)確率卻不容易控制,而個(gè)性化結(jié)果整合排序就顯得尤為重要。
個(gè)性化搜索的核心是根據(jù)用戶的行為,建立一套準(zhǔn)確的個(gè)人興趣模型。用戶興趣即用戶的檢索習(xí)慣,針對(duì)用戶的搜索習(xí)慣進(jìn)行信息檢索,可以極大地提高信息傳遞的準(zhǔn)確性。對(duì)于移動(dòng)搜索代理來說,不僅是移動(dòng)搜索的內(nèi)容,移動(dòng)設(shè)備所提供的其他信息(如地理位置)也同樣重要。個(gè)性化移動(dòng)搜索系統(tǒng)的核心內(nèi)容便是通過數(shù)據(jù)挖掘技術(shù)在用戶數(shù)據(jù)信息中自動(dòng)地發(fā)現(xiàn)有用的信息,構(gòu)建用戶興趣模型。
用戶建模主要包括如下兩個(gè)方面。
(1)興趣模型結(jié)構(gòu)的構(gòu)建
用戶的興趣可以表現(xiàn)為不同的興趣類別,各個(gè)興趣類別之間在結(jié)構(gòu)或者語(yǔ)義上存在一定的聯(lián)系,模型構(gòu)建的意義在于發(fā)現(xiàn)并組織這些聯(lián)系,確定以何種數(shù)據(jù)模型表達(dá)用戶的興趣,使用戶興趣模型清晰、高效地為個(gè)性化信息檢索服務(wù)。
(2)興趣類別以及興趣度權(quán)值的計(jì)算
用戶的興趣類別千差萬別,對(duì)不同類別表現(xiàn)的興趣也有很大差異,用戶興趣建模用興趣類別和興趣度權(quán)值體現(xiàn)這種差異,在得到興趣模型結(jié)構(gòu)的基礎(chǔ)上,計(jì)算不同的興趣類別,并對(duì)不同的興趣進(jìn)行分析,以區(qū)別用戶對(duì)不同類別喜好的程度高低?,F(xiàn)有的用戶興趣模型中,使用較多的主要有空間向量模型、GauchS的基本體的表示方式以及概念層次模型。
圖1是一種比較理想化的用戶建模方式,即通過終端全面收集與用戶相關(guān)的信息源,包括用戶搜索歷史及點(diǎn)擊記錄、用戶瀏覽過的網(wǎng)頁(yè)、用戶位置信息、用戶所收藏的信息以及用戶發(fā)布的信息等內(nèi)容。
圖1 理想化的用戶興趣模型
在用戶興趣建模中,最常用的方式是將顯示和隱示兩種方式結(jié)合起來,通過顯示的方式獲取靜態(tài)用戶信息,通過隱示的方式獲取動(dòng)態(tài)用戶信息。具體來說,用戶興趣挖掘信息的主要來源有以下幾個(gè)方面:
·用戶輸入搜索引擎的關(guān)鍵詞;
·用戶的瀏覽歷史,即用戶在搜索結(jié)果中點(diǎn)擊瀏覽的頁(yè)面,通過計(jì)算用戶瀏覽頁(yè)面與興趣分類模型的相關(guān)度,可以識(shí)別用戶的瀏覽興趣;
·用戶位置,可通過用戶的位置坐標(biāo)識(shí)別用戶的位置屬性,如街道、城區(qū)、城市、省份等;
·用戶社交信息,用戶所屬的社交網(wǎng)絡(luò)群組的興趣特征;
·用戶發(fā)布的信息,如用戶自定義的標(biāo)簽。
作為建模數(shù)據(jù)的用戶信息需要經(jīng)過謹(jǐn)慎選擇,因?yàn)橛脩粜畔?duì)用戶興趣模型的性能有非常重要的影響,因此,建模數(shù)據(jù)只能是那些真正反映用戶興趣的信息,否則構(gòu)建出來的用戶興趣模型的性能將得不到保證。
用戶發(fā)出的每個(gè)搜索請(qǐng)求背后都隱含著潛在的搜索意圖,如果能夠通過查詢?cè)~匯,自動(dòng)找出背后的用戶搜索意圖,然后針對(duì)不同的搜索意圖,提供不同的檢索方法,將更符合用戶意圖的搜索結(jié)果排在前列,無疑會(huì)增加搜索引擎用戶的搜索體驗(yàn)。例如,用戶搜索“廣州 天氣”的時(shí)候,會(huì)主動(dòng)將當(dāng)天的氣溫等情況列在搜索結(jié)果最前面。
搜索意圖分類的任務(wù),就是確定用戶輸入的查詢屬于哪個(gè)預(yù)定義的意圖類別。多數(shù)分類技術(shù)是根據(jù)輸入數(shù)據(jù)集建立分類模型的系統(tǒng)方法。其通過學(xué)習(xí)算法確定分類模型,該模型不僅要很好地?cái)M合輸入數(shù)據(jù),還要能夠正確地預(yù)測(cè)未知樣本的類別。因此,學(xué)習(xí)算法的主要目標(biāo)就是建立具有很好的泛化能力的模型,即建立能夠準(zhǔn)確地預(yù)測(cè)未知樣本類別的模型。
圖2展示了解決分類問題的一般方法。首先,需要一個(gè)訓(xùn)練集,它由類標(biāo)號(hào)已知的記錄組成。在使用訓(xùn)練集建立分類模型前,先要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,以幫助提高分類的準(zhǔn)確性、效率和可擴(kuò)展性。預(yù)處理包含大量以復(fù)雜方式相關(guān)聯(lián)的不同策略和技術(shù),例如聚集、抽樣、維規(guī)約、特征子集選擇、特征創(chuàng)建、離散化和二元化、變量變換等。這些項(xiàng)目分為兩類,即選擇分析所需要的數(shù)據(jù)對(duì)象和屬性以及創(chuàng)建/改變屬性。例如記錄用戶提交搜索的星期數(shù),就可能與搜索類型分類無關(guān);此外有些屬性也可能是冗余的。因此需要對(duì)數(shù)據(jù)進(jìn)行維規(guī)約以及特征子集選擇,以幫助其在學(xué)習(xí)階段就消除無關(guān)或冗余的屬性。
圖2 一般分類過程
其次,預(yù)處理從原始的、大量的特征項(xiàng)中篩選出區(qū)分能力最強(qiáng)、最有代表性的特征項(xiàng)。數(shù)據(jù)經(jīng)過預(yù)處理之后,將會(huì)轉(zhuǎn)換成分類算法所能接受的數(shù)據(jù)類型。此時(shí)分類算法已從訓(xùn)練集的學(xué)習(xí)過程中得到了一個(gè)目標(biāo)函數(shù),也稱作分類模型,該模型將運(yùn)用于對(duì)未知類別的用戶查詢進(jìn)行分類。
語(yǔ)音識(shí)別能夠代替繁瑣的鍵盤或手寫輸入,大大提升了移動(dòng)搜索的便捷性。目前Android、Windows Phone等主流的智能終端均提供了語(yǔ)音識(shí)別SDK,這些SDK封裝了服務(wù)端語(yǔ)音識(shí)別引擎的API,為終端應(yīng)用提供Speech2Text的轉(zhuǎn)換能力。
以Android的語(yǔ)音識(shí)別SDK為例,整個(gè)語(yǔ)音識(shí)別過程包括以下步驟。
(1)判斷當(dāng)前設(shè)備是否支持語(yǔ)音識(shí)別能力,只有終端安裝Android語(yǔ)音識(shí)別軟件并開啟網(wǎng)絡(luò)連接時(shí),才能進(jìn)行語(yǔ)音識(shí)別。
(2)開啟語(yǔ)音識(shí)別功能,啟動(dòng)語(yǔ)音識(shí)別界面,提示用戶輸入語(yǔ)音。
(3)用戶進(jìn)行語(yǔ)音輸入時(shí),通過明顯的語(yǔ)音停頓或點(diǎn)擊“完畢”按鈕完成語(yǔ)音輸入。
(4)語(yǔ)音識(shí)別SDK捕捉用戶輸入的語(yǔ)音信號(hào),發(fā)送給谷歌語(yǔ)音識(shí)別引擎進(jìn)行處理。
(5)谷歌語(yǔ)音識(shí)別引擎根據(jù)語(yǔ)音信號(hào)的聲學(xué)特征、語(yǔ)言模型及發(fā)聲詞典,尋找能夠以最大概率輸出該語(yǔ)音信號(hào)的詞串,返回給終端。
語(yǔ)音識(shí)別SDK將語(yǔ)音識(shí)別引擎返回的詞串通過回調(diào)函數(shù)返回給終端應(yīng)用。
個(gè)性化移動(dòng)搜索代理采用C/S架構(gòu),如圖3所示,移動(dòng)用戶通過客戶端輸入搜索請(qǐng)求,客戶端將用戶的搜索請(qǐng)求和用戶個(gè)性化標(biāo)簽通過HTTP+JSON協(xié)議發(fā)送給搜索代理服務(wù)器,代理服務(wù)器將用戶的搜索請(qǐng)求轉(zhuǎn)發(fā)給百度、谷歌等商業(yè)搜索引擎,并將搜索引擎返回的搜索結(jié)果進(jìn)行處理后返回給用戶。代理服務(wù)器提供數(shù)據(jù)加工和頁(yè)面重排服務(wù);而客戶端發(fā)揮著收集、分析和提取用戶資料的作用。出于對(duì)用戶個(gè)人隱私保護(hù)的考慮,搜索過程中一些簡(jiǎn)單的任務(wù),如整理用戶瀏覽記錄、更新點(diǎn)擊率和搜索記錄、創(chuàng)造用戶特征等都在客戶端處理。
圖3 搜索代理系統(tǒng)架構(gòu)
客戶端不僅能夠記錄用戶的搜索歷史、搜索位置,還能利用智能終端的傳感器搜集與用戶搜索行為相關(guān)的溫度、速度等關(guān)聯(lián)的場(chǎng)景信息,整合成完整的用戶個(gè)性化模型。用戶的查詢信息在客戶端與用戶喜好標(biāo)簽關(guān)聯(lián),以體現(xiàn)用戶的搜索意圖,客戶端還負(fù)責(zé)對(duì)自服務(wù)器的搜索結(jié)果數(shù)據(jù)進(jìn)行個(gè)性化展示。
代理服務(wù)器接收客戶端的請(qǐng)求,根據(jù)用戶的搜索意圖調(diào)用合適的成員搜索引擎,將搜索引擎的結(jié)果進(jìn)行個(gè)性化排序后返回給客戶端。
客戶端采用基于PhoneGap的混合應(yīng)用架構(gòu),如圖4所示。在查詢過程中,用戶的輸入方式有很多種,除了傳統(tǒng)的文本輸入方式外,還可以使用語(yǔ)音輸入、菜單輸入方式??蛻舳藭?huì)依據(jù)用戶的興趣模型優(yōu)化用戶的查詢請(qǐng)求,縮小查詢范圍,例如在查詢餐館時(shí)增加城市關(guān)鍵字。同時(shí)客戶端會(huì)從用戶興趣模型中提取出與本次查詢相關(guān)的用戶標(biāo)簽,如查詢餐館時(shí),打上川菜、粵菜等標(biāo)簽。查詢的關(guān)鍵字和用戶標(biāo)簽以JSON格式封裝,通過HTTP發(fā)送給代理服務(wù)器。代理服務(wù)器返回的查詢結(jié)果也以JSON格式封裝,客戶端通過Web View框架進(jìn)行解釋和呈現(xiàn)。
客戶端還記錄用戶的搜索關(guān)鍵字、搜索位置、搜索結(jié)果頁(yè)面的瀏覽歷史,為了保護(hù)用戶隱私,這些詳細(xì)日志信息只保存在客戶端數(shù)據(jù)庫(kù)中,不發(fā)送給服務(wù)器,只有搜索的關(guān)鍵字和與搜索會(huì)話相關(guān)的用戶標(biāo)簽才會(huì)發(fā)送給服務(wù)器。用戶還可以通過設(shè)置位置精度(街道、城區(qū)、城市、省份等)和內(nèi)容精度(即用戶標(biāo)簽級(jí)別)來保護(hù)個(gè)人隱私。
代理服務(wù)器的架構(gòu)如圖5所示,代理服務(wù)器負(fù)責(zé)根據(jù)用戶的搜索請(qǐng)求選擇成員搜索引擎,向成員搜索引擎轉(zhuǎn)發(fā)搜索請(qǐng)求,按用戶喜好整合搜索結(jié)果并以JSON格式返回給客戶端。
圖4 客戶端結(jié)構(gòu)
圖5 代理服務(wù)端結(jié)構(gòu)
(1)成員引擎調(diào)度
成員搜索引擎的選擇要根據(jù)用戶的搜索意圖和成員引擎的評(píng)價(jià)進(jìn)行綜合判斷,用戶的搜索意圖可通過搜索關(guān)鍵字和用戶標(biāo)簽判斷,比如用戶搜索商品信息就選擇淘寶引擎,搜索餐館信息就選擇大眾點(diǎn)評(píng)引擎。成員引擎的響應(yīng)速度、結(jié)果質(zhì)量也是成員引擎選擇的重要依據(jù)。
(2)搜索請(qǐng)求轉(zhuǎn)發(fā)
不同搜索引擎的搜索條件可能存在差異,將原始的搜索請(qǐng)求轉(zhuǎn)換為成員搜索引擎的目標(biāo)搜索條件有助于提升搜索的精度。例如用戶輸入“1 000元手機(jī)”,映射到淘寶引擎的搜索輸入條件即為“商品:手機(jī)+價(jià)格:800~1 200”。
(3)搜索結(jié)果整合
根據(jù)用戶的興趣計(jì)算搜索結(jié)果和用戶的關(guān)鍵詞和標(biāo)簽的相關(guān)度,然后考慮成員搜索引擎的權(quán)重、搜索結(jié)果的重復(fù)度等因素,最后計(jì)算搜索結(jié)果的權(quán)重值,對(duì)結(jié)果進(jìn)行整合排序。整合后的搜索結(jié)果封裝成JSON對(duì)象,通過HTTP返回給客戶端。
為了提高代理服務(wù)器的性能,可以引入負(fù)載均衡器構(gòu)建代理服務(wù)器集群,并通過分布式緩存技術(shù)保存頻繁訪問的搜索結(jié)果。
個(gè)性化服務(wù)是移動(dòng)搜索的一種趨勢(shì),也是一個(gè)研究熱點(diǎn),為了滿足移動(dòng)搜索的個(gè)性化需求,本文研究了個(gè)性化技術(shù)和元搜索技術(shù),結(jié)合智能終端能力,設(shè)計(jì)出了個(gè)性化移動(dòng)搜索代理的基本架構(gòu),能夠在一定程度上提升移動(dòng)搜索的效率和準(zhǔn)確性。今后將持續(xù)改進(jìn)用戶興趣模型,優(yōu)化服務(wù)器性能,使之能在用戶檢索效率和用戶體驗(yàn)方面得到更好的提高。
1 Kenneth Wai-Ting Leung,DikLun Lee,Wang-Chien Lee.PMSE:a personalized mobile search engine.IEEE Transations on Knowledge and Data Engeneering,2013,25(4)
2 許天亮,王義峰,曾平.個(gè)性化元搜索引擎技術(shù)研究.電子科技,2008(1):56~59
3 王忠,程磊.基于元搜索引擎的個(gè)性化Web信息采集.計(jì)算機(jī)工程與設(shè)計(jì),2009(7):3117~3119