本發(fā)明涉及信息領(lǐng)域,尤其涉及一種搜索處理方法、設(shè)備和計算機(jī)存儲介質(zhì)。
背景技術(shù):
隨著互聯(lián)網(wǎng)的發(fā)展和移動終端的普及,從網(wǎng)上獲取信息已經(jīng)成為人們?nèi)粘I詈凸ぷ髦幸粋€重要的獲取信息的途徑。由于互聯(lián)網(wǎng)存儲的資源的信息量巨大,如何有效快捷的從這些海量資源中獲取所需要的目標(biāo)資源就成為一件困難的事情,搜索引擎是一種向用戶提供信息搜索功能的查詢工具,搜索引擎的出現(xiàn)成為了解決目標(biāo)資源獲取困難這一問題的一種有效方法。搜索引擎因其在當(dāng)今信息社會所具有巨大的實用價值和商業(yè)價值,搜索引擎被在當(dāng)今社會已經(jīng)得到普遍使用。
目前,搜索引擎可以預(yù)設(shè)的匹配方式和匹配度條件確定搜索詞對應(yīng)的搜索結(jié)果,例如,匹配方式可以為根據(jù)搜索詞在某一資源庫中各個資源對應(yīng)的描述信息中出現(xiàn)的次數(shù)確定搜索詞與資源的匹配度,搜索引擎將滿足匹配度條件的資源的標(biāo)識按照對應(yīng)的匹配度排序作為搜索結(jié)果向用戶反饋。
由于搜索詞與資源的匹配度是固定不變的,搜索結(jié)果中各個資源標(biāo)識的排序也是不變的,這導(dǎo)致用戶可能最希望搜索到的目標(biāo)資源對應(yīng)的資源標(biāo)識在搜索結(jié)果中的排位靠后,當(dāng)滿足匹配度條件的資源的數(shù)量眾多時,用戶查看搜索結(jié)果并獲取目標(biāo)資源的效率就會降低,造成用戶對搜索引擎的滿意度降低。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明實施例期望提供一種搜索處理方法、設(shè)備和計算機(jī)存儲介質(zhì),能夠提高用戶查看搜索結(jié)果的效率。
為達(dá)到上述目的,本發(fā)明實施例的技術(shù)方案是這樣實現(xiàn)的:
第一方面,本發(fā)明實施例提供一種搜索處理方法,包括:
根據(jù)搜索詞在預(yù)設(shè)的資源庫中進(jìn)行搜索得到n個資源的資源標(biāo)識,n為大于或者等于2的整數(shù);
獲取所述n個資源中的每個資源在當(dāng)前時刻的偏好屬性值;
將所述n個資源中的每個資源在當(dāng)前時刻的偏好屬性值輸入資源轉(zhuǎn)化率模型,對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率;所述資源轉(zhuǎn)化率模型為基于所述資源庫中的m個資源在早于所述當(dāng)前時刻的歷史時刻的偏好屬性值進(jìn)行訓(xùn)練得到的;m為大于或者等于2的整數(shù);
根據(jù)所述n個預(yù)測資源轉(zhuǎn)化率對所述n個資源標(biāo)識進(jìn)行排序;
將排序后的所述n個資源標(biāo)識作為搜索結(jié)果輸出。
第二方面,本發(fā)明實施例提供一種搜索處理裝置,包括:
獲取模塊,配置為根據(jù)搜索詞在預(yù)設(shè)的資源庫中進(jìn)行搜索得到n個資源的資源標(biāo)識,n為大于或者等于2的整數(shù);
所述獲取模塊,還配置為獲取所述n個資源中的每個資源在當(dāng)前時刻的偏好屬性值;
處理模塊,配置為將所述n個資源中的每個資源在當(dāng)前時刻的偏好屬性值輸入資源轉(zhuǎn)化率模型,對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率;所述資源轉(zhuǎn)化率模型為基于所述資源庫中的m個資源在早于所述當(dāng)前時刻的歷史時刻的偏好屬性值進(jìn)行訓(xùn)練得到的;m為大于或者等于2的整數(shù);
所述處理模塊,還配置為根據(jù)所述n個預(yù)測資源轉(zhuǎn)化率對所述n個資源標(biāo)識進(jìn)行排序;
輸出模塊,配置為將排序后的所述n個資源標(biāo)識作為搜索結(jié)果輸出。
第三方面,本發(fā)明實施例提供一種服務(wù)器,所述服務(wù)器包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的搜索處理程序,所述搜索處理程序被所述處理器執(zhí)行時實現(xiàn)如第一方面任一種所述的搜索處理方法的步驟。
第四方面,本發(fā)明實施例提供一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)上存儲有搜索處理程序,所述搜索處理程序被處理器執(zhí)行時實現(xiàn)如第一方面任一種所述的搜索處理方法的步驟。
本發(fā)明實施例中,通過根據(jù)搜索詞在預(yù)設(shè)的資源庫中進(jìn)行搜索得到n個資源的資源標(biāo)識,將n個資源在當(dāng)前時刻的偏好屬性值輸入資源轉(zhuǎn)化率模型對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率,所述資源轉(zhuǎn)化率模型為根據(jù)m個資源在歷史時刻的偏好屬性值訓(xùn)練得到,并根據(jù)n個預(yù)測資源轉(zhuǎn)化率對n個資源標(biāo)識進(jìn)行排序,并將排序后的n個資源標(biāo)識作為搜索結(jié)果輸出,由于資源轉(zhuǎn)化率模型能夠反映出使用用戶在搜索資源時對各種偏好屬性的重視程度,即在資源轉(zhuǎn)化率模型中,用戶越重視的偏好屬性的偏好屬性系數(shù)越高,進(jìn)而使得搜索結(jié)果能夠?qū)⒆罘嫌脩粝胍x擇的資源標(biāo)識放在較前的排序中,使得搜索結(jié)果更加符合用戶的搜索習(xí)慣,從而可以提高用戶查看搜索結(jié)果的效率,同時可以提升用戶對搜索引擎的滿意度。
附圖說明
圖1為實現(xiàn)本發(fā)明各個可選的實施例的移動終端的硬件結(jié)構(gòu)示意;
圖2為本發(fā)明實施例中搜索處理方法的流程示意圖一;
圖3為本發(fā)明實施例中搜索處理方法的流程示意圖二;
圖4a為本發(fā)明實施例中搜索處理方法的用戶圖形界面的示意圖一;
圖4b為本發(fā)明實施例中搜索處理方法的用戶圖形界面的示意圖二;
圖5為本發(fā)明實施例中搜索處理方法中用戶日志收集系統(tǒng)的結(jié)構(gòu)示意圖;
圖6為本發(fā)明實施例中搜索處理方法中日志信息分析處理的處理流程示意圖;
圖7為本發(fā)明實施例中搜索處理方法中搜索結(jié)果優(yōu)化處理的處理流程示意圖;
圖8為本發(fā)明實施例中搜索處理裝置的結(jié)構(gòu)示意圖;
圖9為本發(fā)明實施例中服務(wù)器的結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述。
現(xiàn)在將參考附圖1來描述實現(xiàn)本發(fā)明各個實施例的移動終端。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說明,其本身并沒有特定的意義。因此,"模塊"與"部件"可以混合地使用。
移動終端可以以各種形式來實施。例如,本發(fā)明中描述的終端可以包括諸如移動電話、智能電話、筆記本電腦、數(shù)字廣播接收器、個人數(shù)字助理(pda)、平板電腦(pad)、便攜式多媒體播放器(pmp)、導(dǎo)航裝置等等的移動終端以及諸如數(shù)字tv、臺式計算機(jī)等等的固定終端。下面,假設(shè)終端是移動終端。然而,本領(lǐng)域技術(shù)人員將理解的是,除了特別用于移動目的的元件之外,根據(jù)本發(fā)明的實施方式的構(gòu)造也能夠應(yīng)用于固定類型的終端。
圖1為實現(xiàn)本發(fā)明各個可選的實施例的移動終端的硬件結(jié)構(gòu)示意。
移動終端100可以包括無線通信單元110、音頻/視頻(a/v)輸入單元120、用戶輸入單元130、感測單元140、輸出單元150、存儲器160、接口單元170、控制器180和電源單元190等等。圖1示出了具有各種組件的移動終端,但是應(yīng)理解的是,并不要求實施所有示出的組件,可以替代地實施更多或更少的組件,將在下面詳細(xì)描述移動終端的元件。
無線通信單元110通常包括一個或多個組件,其允許移動終端100與無線通信系統(tǒng)或網(wǎng)絡(luò)之間的無線電通信。例如,無線通信單元可以包括廣播接收模塊111、移動通信模塊112、無線互聯(lián)網(wǎng)模塊113、短程通信模塊114和位置信息模塊115中的至少一個。
廣播接收模塊111經(jīng)由廣播信道從外部廣播管理服務(wù)器接收廣播信號和/或廣播相關(guān)信息。廣播信道可以包括衛(wèi)星信道和/或地面信道。廣播管理服務(wù)器可以是生成并發(fā)送廣播信號和/或廣播相關(guān)信息的服務(wù)器或者接收之前生成的廣播信號和/或廣播相關(guān)信息并且將其發(fā)送給終端的服務(wù)器。廣播信號可以包括tv廣播信號、無線電廣播信號、數(shù)據(jù)廣播信號等等。而且,廣播信號可以進(jìn)一步包括與tv或無線電廣播信號組合的廣播信號。廣播相關(guān)信息也可以經(jīng)由移動通信網(wǎng)絡(luò)提供,并且在該情況下,廣播相關(guān)信息可以由移動通信模塊112來接收。廣播信號可以以各種形式存在,例如,其可以以數(shù)字多媒體廣播(dmb)的電子節(jié)目指南(epg)、數(shù)字視頻廣播手持(dvb-h)的電子服務(wù)指南(esg)等等的形式而存在。廣播接收模塊111可以通過使用各種類型的廣播系統(tǒng)接收信號廣播。特別地,廣播接收模塊111可以通過使用諸如多媒體廣播-地面(dmb-t)、數(shù)字多媒體廣播-衛(wèi)星(dmb-s)、數(shù)字視頻廣播-手持(dvb-h),前向鏈路媒體(mediaflo@)的數(shù)據(jù)廣播系統(tǒng)、地面數(shù)字廣播綜合服務(wù)(isdb-t)等等的數(shù)字廣播系統(tǒng)接收數(shù)字廣播。廣播接收模塊111可以被構(gòu)造為適合提供廣播信號的各種廣播系統(tǒng)以及上述數(shù)字廣播系統(tǒng)。經(jīng)由廣播接收模塊111接收的廣播信號和/或廣播相關(guān)信息可以存儲在存儲器160(或者其它類型的存儲介質(zhì))中。
移動通信模塊112將無線電信號發(fā)送到基站(例如,接入點、節(jié)點b等等)、外部終端以及服務(wù)器中的至少一個和/或從其接收無線電信號。這樣的無線電信號可以包括語音通話信號、視頻通話信號、或者根據(jù)文本和/或多媒體消息發(fā)送和/或接收的各種類型的數(shù)據(jù)。
無線互聯(lián)網(wǎng)模塊113支持移動終端的無線互聯(lián)網(wǎng)接入。該模塊可以內(nèi)部或外部地耦接到終端。該模塊所涉及的無線互聯(lián)網(wǎng)接入技術(shù)可以包括wlan(無線lan)(wi-fi)、wibro(無線寬帶)、wimax(全球微波互聯(lián)接入)、hsdpa(高速下行鏈路分組接入)等等。
短程通信模塊114是用于支持短程通信的模塊。短程通信技術(shù)的一些示例包括藍(lán)牙tm、射頻識別(rfid)、紅外數(shù)據(jù)協(xié)會(irda)、超寬帶(uwb)、紫蜂tm等等。
位置信息模塊115是用于檢查或獲取移動終端的位置信息的模塊。位置信息模塊115的典型示例是全球定位系統(tǒng)(gps)。根據(jù)當(dāng)前的技術(shù),gps的位置信息模塊115計算來自三個或更多衛(wèi)星的距離信息和準(zhǔn)確的時間信息并且對于計算的信息應(yīng)用三角測量法,從而根據(jù)經(jīng)度、緯度和高度準(zhǔn)確地計算三維當(dāng)前位置信息。當(dāng)前,用于計算位置和時間信息的方法使用三顆衛(wèi)星并且通過使用另外的一顆衛(wèi)星校正計算出的位置和時間信息的誤差。此外,gps的位置信息模塊115能夠通過實時地連續(xù)計算當(dāng)前位置信息來計算速度信息。
a/v輸入單元120用于接收音頻或視頻信號。a/v輸入單元120可以包括相機(jī)121和麥克風(fēng)122,相機(jī)121對在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置獲得的靜態(tài)圖片或視頻的圖像數(shù)據(jù)進(jìn)行處理。處理后的圖像幀可以顯示在顯示單元151上。經(jīng)相機(jī)121處理后的圖像幀可以存儲在存儲器160(或其它存儲介質(zhì))中或者經(jīng)由無線通信單元110進(jìn)行發(fā)送,可以根據(jù)移動終端的構(gòu)造提供兩個或更多相機(jī)121。麥克風(fēng)122可以在電話通話模式、記錄模式、語音識別模式等等運行模式中經(jīng)由麥克風(fēng)122接收聲音(音頻數(shù)據(jù)),并且能夠?qū)⑦@樣的聲音處理為音頻數(shù)據(jù)。處理后的音頻(語音)數(shù)據(jù)可以在電話通話模式的情況下轉(zhuǎn)換為可經(jīng)由移動通信模塊112發(fā)送到移動通信基站的格式輸出。麥克風(fēng)122可以實施各種類型的噪聲消除(或抑制)算法以消除(或抑制)在接收和發(fā)送音頻信號的過程中產(chǎn)生的噪聲或者干擾。
用戶輸入單元130可以根據(jù)用戶輸入的命令生成鍵輸入數(shù)據(jù)以控制移動終端的各種操作。用戶輸入單元130允許用戶輸入各種類型的信息,并且可以包括鍵盤、鍋仔片、觸摸板(例如,檢測由于被接觸而導(dǎo)致的電阻、壓力、電容等等的變化的觸敏組件)、滾輪、搖桿等等。特別地,當(dāng)觸摸板以層的形式疊加在顯示單元151上時,可以形成觸摸屏。
感測單元140檢測移動終端100的當(dāng)前狀態(tài),(例如,移動終端100的打開或關(guān)閉狀態(tài))、移動終端100的位置、用戶對于移動終端100的接觸(即,觸摸輸入)的有無、移動終端100的取向、移動終端100的加速或減速移動和方向等等,并且生成用于控制移動終端100的操作的命令或信號。例如,當(dāng)移動終端100實施為滑動型移動電話時,感測單元140可以感測該滑動型電話是打開還是關(guān)閉。另外,感測單元140能夠檢測電源單元190是否提供電力或者接口單元170是否與外部裝置耦接。感測單元140可以包括接近傳感器141將在下面結(jié)合觸摸屏來對此進(jìn)行描述。
接口單元170用作至少一個外部裝置與移動終端100連接可以通過的接口。例如,外部裝置可以包括有線或無線頭戴式耳機(jī)端口、外部電源(或電池充電器)端口、有線或無線數(shù)據(jù)端口、存儲卡端口、用于連接具有識別模塊的裝置的端口、音頻輸入/輸出(i/o)端口、視頻i/o端口、耳機(jī)端口等等。識別模塊可以是存儲用于驗證用戶使用移動終端100的各種信息并且可以包括用戶識別模塊(uim)、客戶識別模塊(sim)、通用客戶識別模塊(usim)等等。另外,具有識別模塊的裝置(下面稱為"識別裝置")可以采取智能卡的形式,因此,識別裝置可以經(jīng)由端口或其它連接裝置與移動終端100連接。接口單元170可以用于接收來自外部裝置的輸入(例如,數(shù)據(jù)信息、電力等等)并且將接收到的輸入傳輸?shù)揭苿咏K端100內(nèi)的一個或多個元件或者可以用于在移動終端和外部裝置之間傳輸數(shù)據(jù)。
另外,當(dāng)移動終端100與外部底座連接時,接口單元170可以用作允許通過其將電力從底座提供到移動終端100的路徑或者可以用作允許從底座輸入的各種命令信號通過其傳輸?shù)揭苿咏K端的路徑。從底座輸入的各種命令信號或電力可以用作用于識別移動終端是否準(zhǔn)確地安裝在底座上的信號。輸出單元150被構(gòu)造為以視覺、音頻和/或觸覺方式提供輸出信號(例如,音頻信號、視頻信號、警報信號、振動信號等等)。輸出單元150可以包括顯示單元151、音頻輸出模塊152等等。
顯示單元151可以顯示在移動終端100中處理的信息。例如,當(dāng)移動終端100處于電話通話模式時,顯示單元151可以顯示與通話或其它通信(例如,文本消息收發(fā)、多媒體文件下載等等)相關(guān)的用戶界面(ui)或圖形用戶界面(gui)。當(dāng)移動終端100處于視頻通話模式或者圖像捕獲模式時,顯示單元151可以顯示捕獲的圖像和/或接收的圖像、示出視頻或圖像以及相關(guān)功能的ui或gui等等。
同時,當(dāng)顯示單元151和觸摸板以層的形式彼此疊加以形成觸摸屏?xí)r,顯示單元151可以用作輸入裝置和輸出裝置。顯示單元151可以包括液晶顯示器(lcd)、薄膜晶體管lcd(tft-lcd)、有機(jī)發(fā)光二極管(oled)顯示器、柔性顯示器、三維(3d)顯示器等等中的至少一種。這些顯示器中的一些可以被構(gòu)造為透明狀以允許用戶從外部觀看,這可以稱為透明顯示器,典型的透明顯示器可以例如為toled(透明有機(jī)發(fā)光二極管)顯示器等等。根據(jù)特定想要的實施方式,移動終端100可以包括兩個或更多顯示單元(或其它顯示裝置),例如,移動終端可以包括外部顯示單元(未示出)和內(nèi)部顯示單元(未示出)。觸摸屏可用于檢測觸摸輸入壓力以及觸摸輸入位置和觸摸輸入面積。
音頻輸出模塊152可以在移動終端處于呼叫信號接收模式、通話模式、記錄模式、語音識別模式、廣播接收模式等等模式下時,將無線通信單元110接收的或者在存儲器160中存儲的音頻數(shù)據(jù)轉(zhuǎn)換音頻信號并且輸出為聲音。而且,音頻輸出模塊152可以提供與移動終端100執(zhí)行的特定功能相關(guān)的音頻輸出(例如,呼叫信號接收聲音、消息接收聲音等等)。音頻輸出模塊152可以包括揚(yáng)聲器、蜂鳴器等等。
警報單元153可以提供輸出以將事件的發(fā)生通知給移動終端100。典型的事件可以包括呼叫接收、消息接收、鍵信號輸入、觸摸輸入等等。除了音頻或視頻輸出之外,警報單元153可以以不同的方式提供輸出以通知事件的發(fā)生。例如,警報單元153可以以振動的形式提供輸出。警報單元153也可以經(jīng)由顯示單元151或音頻輸出模塊152提供通知事件的發(fā)生的輸出。
存儲器160可以存儲由控制器180執(zhí)行的處理和控制操作的軟件程序等等,或者可以暫時地存儲已經(jīng)輸出或?qū)⒁敵龅臄?shù)據(jù)。
存儲器160可以包括至少一種類型的存儲介質(zhì),所述存儲介質(zhì)包括閃存、硬盤、多媒體卡、卡型存儲器、隨機(jī)訪問存儲器(ram)、靜態(tài)隨機(jī)訪問存儲器(sram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、可編程只讀存儲器(prom)、磁性存儲器、磁盤、光盤等等。而且,移動終端100可以與通過網(wǎng)絡(luò)連接執(zhí)行存儲器160的存儲功能的網(wǎng)絡(luò)存儲裝置協(xié)作。
控制器180通??刂埔苿咏K端的總體操作。例如,控制器180執(zhí)行與語音通話、數(shù)據(jù)通信、視頻通話等等相關(guān)的控制和處理。另外,控制器180可以包括用于再現(xiàn)(或回放)多媒體數(shù)據(jù)的多媒體模塊181,多媒體模塊181可以構(gòu)造在控制器180內(nèi),或者可以構(gòu)造為與控制器180分離。控制器180可以執(zhí)行模式識別處理,以將在觸摸屏上執(zhí)行的手寫輸入或者圖片繪制輸入識別為字符或圖像。
電源單元190在控制器180的控制下接收外部電力或內(nèi)部電力并且提供操作各元件和組件所需的適當(dāng)?shù)碾娏Α?/p>
這里描述的各種實施方式可以以使用例如計算機(jī)軟件、硬件或其任何組合的計算機(jī)可讀介質(zhì)來實施。對于硬件實施,這里描述的實施方式可以通過使用特定用途集成電路(asic)、數(shù)字信號處理器(dsp)、數(shù)字信號處理裝置(dspd)、可編程邏輯裝置(pld)、現(xiàn)場可編程門陣列(fpga)、處理器、控制器、微控制器、微處理器、被設(shè)計為執(zhí)行這里描述的功能的電子單元中的至少一種來實施,在一些情況下,這樣的實施方式可以在控制器180中實施。對于軟件實施,諸如過程或功能的實施方式可以與允許執(zhí)行至少一種功能或操作的單獨的軟件模塊來實施。軟件代碼可以由以任何適當(dāng)?shù)木幊陶Z言編寫的軟件應(yīng)用程序(或程序)來實施,軟件代碼可以存儲在存儲器160中并且由控制器180執(zhí)行。
至此,已經(jīng)按照其功能描述了移動終端。下面,為了簡要起見,將描述諸如折疊型、直板型、擺動型、滑動型移動終端等等的各種類型的移動終端中的滑動型移動終端作為示例。因此,本發(fā)明能夠應(yīng)用于任何類型的移動終端,并且不限于滑動型移動終端。
如圖1中所示的移動終端100可以被構(gòu)造為利用經(jīng)由幀或分組發(fā)送數(shù)據(jù)的諸如有線和無線通信系統(tǒng)以及基于衛(wèi)星的通信系統(tǒng)來操作。
本發(fā)明的移動終端能夠操作的通信系統(tǒng)可以使用不同的空中接口和/或物理層。例如,由通信系統(tǒng)使用的空中接口包括例如頻分多址(fdma)、時分多址(tdma)、碼分多址(cdma)和通用移動通信系統(tǒng)(umts)(特別地,長期演進(jìn)(lte))、全球移動通信系統(tǒng)(gsm)等等。作為非限制性示例,下面的描述涉及cdma通信系統(tǒng),但是這樣的教導(dǎo)同樣適用于其它類型的系統(tǒng)。
基于上述移動終端硬件結(jié)構(gòu)以及通信系統(tǒng),提出本發(fā)明方法各個實施例。
搜索引擎在建成初期,由于搜索資源數(shù)量、用戶使用量以及技術(shù)積累等因素的限制,導(dǎo)致搜索結(jié)果無法滿足用戶需求,因此,搜索引擎需要一個逐漸優(yōu)化的過程,在本發(fā)明實施例中,對搜索引擎的的優(yōu)化可以從廣大用戶的使用角度考慮,讓搜索引擎根據(jù)廣大用戶的使用習(xí)慣來不斷的優(yōu)化其搜索結(jié)果,使搜索結(jié)果能夠更好的貼合用戶的期望從而更好的滿足廣大用戶的需求。本發(fā)明實施例通過在搜索引擎的排序過程中引入機(jī)器學(xué)習(xí)的多元線性回歸算法,使得搜索引擎的排序結(jié)果能夠隨著用戶的使用不斷進(jìn)行自優(yōu)化。本發(fā)明實施例的技術(shù)方案通過不斷的收集用戶對搜索引擎的使用日志信息,并從中提取可用于機(jī)器學(xué)習(xí)多元線性回歸模型訓(xùn)練的有用數(shù)據(jù),訓(xùn)練基于多元線程回歸算法的機(jī)器排序模型,并將其應(yīng)用到輸出搜索結(jié)果前的排序處理中,從而達(dá)到搜索引擎根據(jù)用戶使用不斷自優(yōu)化的目的。
基于上述目的本發(fā)明實施例提供如下的具有自優(yōu)化能力的搜索處理方法。
實施例一
本發(fā)明實施例的執(zhí)行主體可以為提供搜索引擎服務(wù)的服務(wù)器。服務(wù)器可以在接收到客戶端發(fā)起的攜帶有搜索詞的搜索請求之后,執(zhí)行本發(fā)明實施例提供的搜索處理方法的步驟。圖2為本發(fā)明實施例中搜索處理方法的流程示意圖一。如圖2所示,本發(fā)明實施例的步驟包括:
s101:根據(jù)搜索詞在預(yù)設(shè)的資源庫中進(jìn)行搜索得到n個資源的資源標(biāo)識。
其中,提供搜索引擎服務(wù)的服務(wù)器上可以存儲有預(yù)設(shè)的資源庫,該資源庫中可以存儲有至少m個資源,每個資源可以具有一資源標(biāo)識,m為大于或者2的整數(shù)n可以為大于或者等于2的整數(shù)。
在本發(fā)明實施例中,服務(wù)器可以提供多種搜索匹配算法來獲取搜索詞對應(yīng)的搜索結(jié)果。舉例來說,可以采用相似度檢索模型(termfrequency–inversedocumentfrequency,tf-idf)在資源庫中進(jìn)行搜索,得到與搜索詞滿足預(yù)設(shè)的匹配度的n個資源對應(yīng)的資源標(biāo)識。本發(fā)明實施例對在資源庫中搜索得到n個資源的搜索匹配算法不做限制。
s102:獲取n個資源中的每個資源在當(dāng)前時刻的偏好屬性值。
其中,為了使得搜索結(jié)果更加貼近用戶需求,即盡可能將用戶可能最希望看到的資源的資源標(biāo)識設(shè)置在搜索結(jié)果中排序較前的位置,本發(fā)明實施例可以選擇資源轉(zhuǎn)化率作為評價用戶滿意度的評價指標(biāo),并選擇可能影響資源轉(zhuǎn)化率的影響因素,例如一些用戶在搜索時可能關(guān)心的與資源有關(guān)的一個或多個屬性的偏好屬性值,建立基于多元線性回歸算法的資源轉(zhuǎn)化率模型。
在本發(fā)明實施例中,與資源有關(guān)的偏好屬性值可以是該資源自身的一些屬性的表征值,和/或,海量用戶使用該資源的使用數(shù)據(jù)。
在一示例中,用戶想要搜索的資源可以是應(yīng)用(application,app),則預(yù)設(shè)的資源庫可以是應(yīng)用庫,應(yīng)用自身的屬性的表征值可以是:該應(yīng)用是否為企業(yè)或組織發(fā)布的官方應(yīng)用這一屬性的邏輯值、安裝包大小量級、應(yīng)用所使用的語言是否是中文這一屬性的邏輯值、應(yīng)用是否加載有廣告這一屬性的邏輯值等,應(yīng)用的使用數(shù)據(jù)可以是海量用戶在預(yù)設(shè)時長內(nèi)的應(yīng)用下載量、應(yīng)用使用次數(shù)、應(yīng)用卸載次數(shù)、應(yīng)用質(zhì)量估計值等。
需要說明的是,應(yīng)用質(zhì)量估計值可以為根據(jù)應(yīng)用質(zhì)量評價因子與預(yù)設(shè)的應(yīng)用質(zhì)量評價函數(shù)得到的,應(yīng)用質(zhì)量評價因子可以為應(yīng)用卸載次數(shù)和/或應(yīng)用使用次數(shù)和/或應(yīng)用使用時間。示例性地,應(yīng)用質(zhì)量評價函數(shù)可以設(shè)置為應(yīng)用質(zhì)量估計值與應(yīng)用卸載次數(shù)成反比關(guān)系的函數(shù),即應(yīng)用卸載次數(shù)越高,應(yīng)用質(zhì)量估計值越低,類似的,應(yīng)用質(zhì)量評價函數(shù)可以設(shè)置為應(yīng)用質(zhì)量估計值與應(yīng)用使用次數(shù)及應(yīng)用使用時間成正比關(guān)系的函數(shù),即應(yīng)用使用次數(shù)越多、使用時間越長,應(yīng)用質(zhì)量估計值越高。
相應(yīng)地,應(yīng)用的資源轉(zhuǎn)化率可以為在預(yù)設(shè)檢測時長內(nèi)應(yīng)用下載次數(shù)與應(yīng)用曝光次數(shù)的比值,其中,應(yīng)用曝光次數(shù)可以為所述應(yīng)用對應(yīng)的標(biāo)識出現(xiàn)在所述檢測時長內(nèi)的任一搜索結(jié)果中的次數(shù)。
在另一示例中,用戶想要搜索的資源可以是帖子,則預(yù)設(shè)的資源庫可以是帖子庫,帖子的偏好屬性值包括以下至少一種:帖子點擊次數(shù)、帖子質(zhì)量屬性;其中,所述帖子質(zhì)量屬性為根據(jù)帖子質(zhì)量因子和預(yù)設(shè)的帖子質(zhì)量評價函數(shù)得到的,所述帖子質(zhì)量因子為帖子瀏覽時間和/或帖子點擊次數(shù)。
相應(yīng)地,帖子的資源轉(zhuǎn)化率可以在預(yù)設(shè)檢測時長內(nèi)帖子點擊次數(shù)與帖子曝光次數(shù)的比值,其中,帖子曝光次數(shù)可以為所述帖子對應(yīng)的標(biāo)識出現(xiàn)在所述檢測時長內(nèi)的任一搜索結(jié)果中的次數(shù)。
在本發(fā)明實施例中,獲取n個資源中的每個資源在當(dāng)前時刻的偏好屬性值的方式,可以包括:在當(dāng)前時刻前的預(yù)設(shè)檢測時長內(nèi)接收至少一個客戶端發(fā)送的用戶日志信息,所述用戶日志信息包括在當(dāng)前時刻前的檢測時長內(nèi)的用戶搜索行為事件、用戶查看搜索結(jié)果事件、用戶點擊搜索結(jié)果事件;根據(jù)用戶日志信息分析得到m個資源在當(dāng)前時刻的偏好屬性值。
需要說明的是,客戶端可以設(shè)置埋點事件,埋點事件可以包括但不限于用戶搜索行為事件、用戶查看搜索結(jié)果事件、用戶點擊搜索結(jié)果事件等。用戶使用搜索引擎的過程如果觸發(fā)預(yù)置的埋點事件,客戶端會根據(jù)預(yù)置的埋點事件收集用戶日志信息,根據(jù)用戶日志信息可以分析出搜索詞、搜索結(jié)果、資源標(biāo)識點擊次數(shù)/資源下載次數(shù)、資源使用/瀏覽時間、資源卸載次數(shù)等。客戶端將收集到的用戶日志信息發(fā)送至服務(wù)器,服務(wù)器對接收的用戶信息進(jìn)行校驗、過濾和持久化存儲。
s103:將n個資源中的每個資源在當(dāng)前時刻的偏好屬性值輸入資源轉(zhuǎn)化率模型,對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率;該資源轉(zhuǎn)化率模型為基于資源庫中的m個資源在早于當(dāng)前時刻的歷史時刻的偏好屬性值進(jìn)行訓(xùn)練得到的。
其中,m為大于或者等于2的整數(shù)。歷史時刻可以是比當(dāng)前時刻早預(yù)設(shè)檢測時長的時刻。
在本發(fā)明實施例中,資源轉(zhuǎn)化率模型可以用于根據(jù)第i個資源在t時刻的偏好屬性值和預(yù)先獲取的屬性系數(shù)組確定該第i個資源在t時刻的預(yù)測資源轉(zhuǎn)化率。
舉例來說,資源轉(zhuǎn)化率模型可以為如下公式(1)
yi=a1*g1(x1i)+a2*g2(x2i)+……+as*gs(xsi)(1);
其中,x1i、x2i、……、xsi為第i個資源的s個偏好屬性值,a1、a2、……、as為s個偏好屬性值對應(yīng)的屬性系數(shù)組,g1、g2、……、gs分別為s個偏好屬性值對應(yīng)的s個歸一化處理函數(shù),yi為第i個資源對應(yīng)的預(yù)測資源轉(zhuǎn)化率;i為大于或者等于1且小于或等于m的整數(shù);s為大于或者等于1的整數(shù),屬性系數(shù)組中的s個屬性系數(shù)與s個偏好屬性值一一對應(yīng)。
需要說明的是,輸入資源轉(zhuǎn)化率模型的有些數(shù)據(jù)需要做歸一化處理后才能作為模型訓(xùn)練和測試的數(shù)據(jù)集,這是因為某些偏好屬性值的取值的差異可能非常大,比如“應(yīng)用下載量”,有些下載量可能達(dá)到幾千萬,而有些只有幾百次,如果不做處理直接用于訓(xùn)練會導(dǎo)致該項數(shù)據(jù)對結(jié)果的影響變大。一種簡單的歸一化方法可以是對偏好屬性值進(jìn)行取log值處理,例如,log(應(yīng)用下載量)。各個偏好屬性值對應(yīng)的歸一化函數(shù)可以相同也可以不同。在本發(fā)明其他實施例中,某些偏好屬性值也可以不進(jìn)行歸一化處理直接輸入資源轉(zhuǎn)化率模型。
在本發(fā)明實施例中,用于計算n個資源在當(dāng)前時刻的預(yù)測資源轉(zhuǎn)化率的資源轉(zhuǎn)化率模型中的屬性系數(shù)組可以是在將所述n個資源中的每個資源在當(dāng)前時刻的偏好屬性值輸入資源轉(zhuǎn)化率模型,對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率之前,根據(jù)訓(xùn)練數(shù)據(jù)進(jìn)行模型訓(xùn)練得到的最優(yōu)屬性系數(shù)組。
在本發(fā)明實施例中可以包括如下模型訓(xùn)練過程的步驟:
獲取m個資源在歷史時刻的偏好屬性值和資源轉(zhuǎn)化率作為訓(xùn)練數(shù)據(jù);根據(jù)m個訓(xùn)練數(shù)據(jù)和資源轉(zhuǎn)化率模型對應(yīng)的目標(biāo)代價函數(shù)進(jìn)行參數(shù)擬合,得到能夠使得所述目標(biāo)代價函數(shù)的代價值小于預(yù)設(shè)的代價值范圍的屬性系數(shù)組。
其中,目標(biāo)代價函數(shù)的代價值可以是根據(jù)m個資源在歷史時刻的預(yù)測資源轉(zhuǎn)化率和m個資源在歷史時刻的資源轉(zhuǎn)化率進(jìn)行差異比較得到的,m個資源在歷史時刻的預(yù)測資源轉(zhuǎn)化率為分別將所述m個資源在歷史時刻的偏好屬性值輸入采用不同的屬性系數(shù)組的資源轉(zhuǎn)化率模型計算得到的。
舉例來說,目標(biāo)代價函數(shù)可以為如下公式(2):
其中,z為代價值,pi為第i個資源的資源轉(zhuǎn)化率。
將公式(1)帶入公式(2)可以得到公式(3):
根據(jù)公式(3)和訓(xùn)練數(shù)據(jù)可以得到不同的屬性系數(shù)組對應(yīng)的代價值,則最優(yōu)屬性系數(shù)組可以選擇使得代價值最小的一組屬性系數(shù)組。
在本發(fā)明其他實施例中,目標(biāo)代價函數(shù)也可以采用其他的差異比較方法,本發(fā)明實施例對此不做限制。例如,可以目標(biāo)代價函數(shù)也可以采用如下公式(4):
s104:根據(jù)n個預(yù)測資源轉(zhuǎn)化率對n個資源標(biāo)識進(jìn)行排序。
其中,n個預(yù)測資源轉(zhuǎn)化率為將n個資源在當(dāng)前時刻的偏好屬性值分別輸入采用最優(yōu)屬性系數(shù)組的資源轉(zhuǎn)化率模型中得到的。在本發(fā)明實施例中,可以按照n個預(yù)測資源轉(zhuǎn)化率由高到低對n個資源標(biāo)識進(jìn)行排序。
s105:將排序后的n個資源標(biāo)識作為搜索結(jié)果輸出。
其中,服務(wù)器可以向發(fā)起搜索的客戶端發(fā)送搜索結(jié)果。
在本發(fā)明實施例中,通過根據(jù)搜索詞在預(yù)設(shè)的資源庫中進(jìn)行搜索得到n個資源的資源標(biāo)識,將n個資源在當(dāng)前時刻的偏好屬性值輸入資源轉(zhuǎn)化率模型對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率,所述資源轉(zhuǎn)化率模型為根據(jù)m個資源在歷史時刻的偏好屬性值訓(xùn)練得到,并根據(jù)n個預(yù)測資源轉(zhuǎn)化率對n個資源標(biāo)識進(jìn)行排序,并將排序后的n個資源標(biāo)識作為搜索結(jié)果輸出,由于資源轉(zhuǎn)化率模型能夠反映出使用用戶在搜索資源時對各種偏好屬性的重視程度,即在資源轉(zhuǎn)化率模型中,用戶越重視的偏好屬性的偏好屬性系數(shù)越高,進(jìn)而使得搜索結(jié)果能夠?qū)⒆罘嫌脩粝胍x擇的資源的資源標(biāo)識放在較前的排序中,使得搜索結(jié)果更加符合用戶的搜索習(xí)慣,從而可以提高用戶查看搜索結(jié)果的效率,同時可以提升用戶對搜索引擎的滿意度。
實施例二
本發(fā)明實施例還提供一種搜索處理方法,圖3為本發(fā)明實施例中搜索處理方法的流程示意圖二。如圖3所示,本發(fā)明實施例的步驟可以包括:
s201:第一客戶端設(shè)置埋點事件。
其中,埋點事件可以用于收集用戶搜索行為事件、用戶查看搜索結(jié)果事件、用戶點擊搜索結(jié)果事件。
s202:第一客戶端在埋點事件被觸發(fā)時收集用戶日志信息。
其中,當(dāng)?shù)谝豢蛻舳税l(fā)起搜索、查看搜索結(jié)果時,會觸發(fā)預(yù)先設(shè)置的埋點事件。用戶日志信息可以包括但不限于搜索詞、搜索結(jié)果、點擊資源標(biāo)識、資源瀏覽時間等。
s203:第一客戶端對預(yù)設(shè)檢測時長內(nèi)的用戶日志信息進(jìn)行日志分析得到的第一客戶端對應(yīng)的單用戶偏好屬性值。
需要說明的是,用于訓(xùn)練資源轉(zhuǎn)化率模型的偏好屬性可以包括兩類屬性,一類是從服務(wù)器側(cè)的統(tǒng)計信息可以分析得到的海量用戶偏好屬性,另一類是通過從一個或多個使用搜索引擎的客戶端上的用戶日志信息分析得到的單用戶偏好屬性。在本發(fā)明其他實施例中,第一客戶端可以采用第一客戶端對應(yīng)的用戶標(biāo)識或者設(shè)備標(biāo)識對向服務(wù)器上報的單用戶偏好屬性的單用戶偏好屬性值進(jìn)行標(biāo)識。服務(wù)器可以對各個客戶端上報的單用戶偏好屬性值得到匯總后的單用戶偏好屬性值。
舉例來說,單用戶偏好屬性可以包括資源質(zhì)量屬性、分類偏好屬性等。其中,資源質(zhì)量屬性對應(yīng)的資源質(zhì)量屬性值可以根據(jù)用戶日志信息中包含的資源瀏覽時間、資源使用次數(shù)、資源下載次數(shù)、資源卸載次數(shù)等確定的資源的質(zhì)量評分。示例性地,用戶瀏覽資源的時間越長、使用資源的次數(shù)越多、下載次數(shù)越多、卸載次數(shù)越少,資源質(zhì)量屬性的屬性值可以越高。
分類偏好屬性對應(yīng)的分類偏好屬性值可以是用于表征搜索該資源的海量用戶是通過多個資源分類搜索到該資源的,還是在特定的資源分類下搜索到該資源的。資源分類例如可以是游戲類、理財類、閱讀類。當(dāng)海量用戶更多的是在某一分類下搜索該資源時,該資源與特定分類的關(guān)聯(lián)程度可能更高,則該資源與特定分類對應(yīng)的分類偏好屬性值更高,當(dāng)海量用戶更多的是在多個分類下搜索到該資源時,該資源與特定分類的關(guān)聯(lián)程度可能較低,則該資源與特定分類對應(yīng)的分類偏好屬性值更低。
對于第一客戶端來說,第一客戶端上報的單用戶偏好屬性值中的分類偏好屬性值可以為根據(jù)第一客戶端上的用戶使用日志分析得到的資源與特定分類的關(guān)聯(lián)程度。示例性地,若第一客戶端發(fā)出的搜索請求中指定的資源分類為分類a,搜索結(jié)果包括資源a和資源b,用戶最后在第一客戶端選擇下載資源a,則第一客戶端可以上報資源a與分類a的關(guān)聯(lián)程度為高,資源b與分類a的關(guān)聯(lián)程度為低,即資源a與分類a對應(yīng)的分類偏好屬性值為高,資源b與分類a對應(yīng)的分類偏好屬性值為低。
還需要說明的是,在利用分類偏好屬性值建立資源轉(zhuǎn)化率模型時,若模型中與分類偏好屬性值對應(yīng)的屬性系數(shù)越大,代表用戶更看重資源與資源分類的關(guān)聯(lián)程度,若對應(yīng)的屬性系數(shù)越小,代表用戶較不看重資源與應(yīng)用分類的關(guān)聯(lián)程度,即用戶更希望在更廣泛的分類下搜索資源。這樣,就可以在搜索引擎指定了資源分類時,方便用戶獲取與搜索詞相關(guān)的其他應(yīng)用分類的資源。
s204:第一客戶端將第一客戶端對應(yīng)的單用戶偏好屬性值發(fā)送給服務(wù)器。
其中,服務(wù)器對第一客戶端對應(yīng)的單用戶偏好屬性值和其他客戶端發(fā)送的單用戶偏好屬性值進(jìn)行匯總,得到匯總后的單用戶偏好屬性值。
s205:第一客戶端向服務(wù)器發(fā)送攜帶搜索詞的搜索請求。
其中,搜索請求中還可以包括指定的資源分類。
s206:服務(wù)器采用相似度檢索模型在資源庫中進(jìn)行搜索,得到與搜索詞滿足預(yù)設(shè)的匹配度的n個資源對應(yīng)的資源標(biāo)識。
其中,采用相似度檢索模型得到的搜索結(jié)果包含按照n個資源的相似度排序的n個資源對應(yīng)的資源標(biāo)識。
s207:服務(wù)器獲取n個資源中的每個資源在當(dāng)前時刻的偏好屬性值。
其中,偏好屬性值可以為在當(dāng)前時刻前的預(yù)設(shè)時長內(nèi)根據(jù)一個或多個客戶端上報的單用戶偏好屬性值進(jìn)行匯總得到的,也可以是根據(jù)服務(wù)器記錄的海量用戶偏好屬性值確定的。
s208:服務(wù)器將n個資源中的每個資源在當(dāng)前時刻的偏好屬性值輸入第一客戶端對應(yīng)的資源轉(zhuǎn)化率模型,對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率,第一客戶端對應(yīng)的資源轉(zhuǎn)化率模型為基于資源庫中在第一客戶端的搜索結(jié)果中出現(xiàn)過的的m個資源在歷史時刻的偏好屬性值進(jìn)行訓(xùn)練得到的。
其中,m個資源為在第一客戶端的搜索結(jié)果中出現(xiàn)過的部分或全部資源,即在第一客戶端上曝光過的資源,此外,m個資源中至少一個資源的資源轉(zhuǎn)化率可以不為零,即,m個資源中至少一個資源在第一客戶端上被下載或者瀏覽過。
在本發(fā)明其他實施例中,m個資源在歷史時刻的偏好屬性值中的單用戶偏好屬性值可以僅選擇由第一客戶端上報的單用戶偏好屬性值匯總得到。示例性地,可以選擇第一客戶端在歷史時刻前的預(yù)測檢測時長內(nèi)上報的單用戶偏好屬性值進(jìn)行匯總得到。相應(yīng)的,在對第一客戶端對應(yīng)的資源轉(zhuǎn)化率模型進(jìn)行模型訓(xùn)練時,可以將歷史時刻的海量用戶偏好屬性值和第一客戶端對應(yīng)的單用戶偏好屬性值作為訓(xùn)練數(shù)據(jù)。需要說明的是,對第一客戶端對應(yīng)的資源轉(zhuǎn)化率模型的訓(xùn)練過程與對不區(qū)分客戶端使用的資源轉(zhuǎn)化率模型的訓(xùn)練過程是類似的,相應(yīng)地,在最終確定的第一客戶端對應(yīng)的資源轉(zhuǎn)化率模型中采用的最優(yōu)偏好屬性系數(shù)組應(yīng)當(dāng)包括海量用戶偏好屬性和單用戶偏好屬性對應(yīng)的屬性系數(shù)。
在確定了第一客戶端對應(yīng)的資源轉(zhuǎn)化率模型中的最優(yōu)偏好屬性系數(shù)組后,就可以分別對n個資源計算對應(yīng)的n個預(yù)測資源轉(zhuǎn)化率。
s209:服務(wù)器根據(jù)n個預(yù)測資源轉(zhuǎn)化率對n個資源標(biāo)識進(jìn)行排序。
其中,服務(wù)器可以按照從高到低的順序?qū)個資源標(biāo)識進(jìn)行排序。
s210:服務(wù)器將排序后的n個資源標(biāo)識作為搜索結(jié)果輸出至第一客戶端。
需要說明的是,本發(fā)明實施例對s202至s205的步驟與s205與s210的步驟之間的執(zhí)行順序并不限定為圖3所示的順序。例如,客戶端可以在每次發(fā)起搜索行為的同時收集相應(yīng)的用戶日志信息,即客戶端進(jìn)行用戶日志信息的收集過程和上報過程,可以是與服務(wù)器接收搜索詞、確定搜索結(jié)果和輸出搜索結(jié)果同時進(jìn)行。又如,客戶端可以對預(yù)設(shè)檢測時長內(nèi)收集的用戶日志信息進(jìn)行匯總上報給服務(wù)器,并可以在預(yù)設(shè)檢測時長后的下一個檢測時長結(jié)束時,將下一個檢測時長收集的用戶日志信息匯總上報給服務(wù)器。此外,客戶端在用戶上一次搜索動作收集的用戶日志信息可以影響在該上一次搜索動作之后的搜索動作的搜索結(jié)果。
在本發(fā)明實施例中,服務(wù)器采用第一客戶端的資源轉(zhuǎn)化率模型對第一客戶端請求搜索的搜索詞匹配的n個資源的資源標(biāo)識進(jìn)行排序,由于第一客戶端的資源轉(zhuǎn)化率模型能夠反映出使用第一客戶端的用戶在搜索資源時對各種偏好屬性的重視程度,即在第一客戶端的資源轉(zhuǎn)化率模型中,用戶越重視的偏好屬性的偏好屬性系數(shù)越高,使得作為搜索結(jié)果輸出的n個資源標(biāo)識的排序,更加符合用戶的搜索習(xí)慣,從而可以提高用戶查看搜索結(jié)果的效率,同時可以提升用戶對搜索引擎的滿意度。
進(jìn)一步地,本發(fā)明實施例可以設(shè)置不同的檢測時長,并在每個檢測時長獲取海量用戶偏好屬性的屬性值和/或某一客戶端對應(yīng)的單用戶偏好屬性的屬性值,以訓(xùn)練得到每個檢測時長的結(jié)束時刻對應(yīng)的不區(qū)分客戶端或者區(qū)分客戶端的資源轉(zhuǎn)化率模型。從而使得資源轉(zhuǎn)化率模型能夠反映出隨著時間推移,海量用戶/單用戶對各種偏好屬性的重視程度的變化情況。
圖4a為本發(fā)明實施例中搜索處理方法的用戶圖形界面的示意圖一。如圖4a所示為客戶端收集用戶日志信息的場景,客戶端可以是如圖4a所示的瀏覽器或者是app。瀏覽器或app提供搜索引擎服務(wù),當(dāng)用戶需要使用搜索引擎時,可以在客戶端的搜索欄輸入搜索詞,如“打折”,并觸發(fā)客戶端向服務(wù)器發(fā)出搜索請求。示例性地,客戶端還可以提供搜索資源類型的選項,例如,資源分類可以是應(yīng)用、帖子、論文等。此時,客戶端可以在用戶發(fā)起搜索請求時收集用戶搜索事件,獲取搜索詞、搜索的資源分類等數(shù)據(jù)。
圖4b為本發(fā)明實施例中搜索處理方法的用戶圖形界面的示意圖二。如圖4b所示為客戶端展示服務(wù)器向客戶端發(fā)送的搜索結(jié)果,其中,搜索結(jié)果中資源標(biāo)識的排序是根據(jù)資源轉(zhuǎn)化率模型優(yōu)化后的排序,示例性地,當(dāng)用戶更關(guān)心資源是否是中文語言、以及是否是官方應(yīng)用時,對這兩個屬性的綜合符合程度更高的資源的資源標(biāo)識出現(xiàn)在搜索結(jié)果較靠前的位置。
本發(fā)明實施例的其他技術(shù)方案細(xì)節(jié)和技術(shù)效果與圖2所示方法類似,本發(fā)明實施例的其他技術(shù)方案細(xì)節(jié)和技術(shù)效果可參考本發(fā)明其他實施例中的相關(guān)描述。
實施例三
本發(fā)明實施例提供的搜索處理方法的總體實施流程可以包括用戶日志信息收集、日志信息分析以及搜索結(jié)果優(yōu)化三部分處理過程。
圖5為本發(fā)明實施例中搜索處理方法中用戶日志收集系統(tǒng)的結(jié)構(gòu)示意圖。如圖5所示,用戶日志收集系統(tǒng)可以包括客戶端51和日志服務(wù)器52兩部分。
客戶端51上與用戶日志收集處理過程有關(guān)的四個處理模塊分別是:預(yù)置埋點事件模塊501、埋點事件觸發(fā)模塊502、用戶日志信息獲取模塊503以及數(shù)據(jù)打包發(fā)送模塊504。
其中,預(yù)置埋點事件模塊用于預(yù)先設(shè)置埋點事件,埋點事件可以主要包括但不限于用戶搜索行為事件、用戶查看搜索結(jié)果事件、用戶點擊搜索結(jié)果事件等。用戶在使用搜索引擎的過程中如果觸發(fā)預(yù)置的埋點事件,則埋點事件觸發(fā)模塊502可以根據(jù)用戶預(yù)置的埋點事件觸發(fā)用戶日志信息獲取模塊503收集用戶日志信息,該信息用戶日志信息可以包括但不限于搜索詞、搜索結(jié)果、點擊資源標(biāo)識、資源瀏覽時間等。用戶日志信息獲取模塊503完成用戶日志信息收集后通過數(shù)據(jù)打包發(fā)送模塊504將收集的用戶信息打包發(fā)送到日志服務(wù)器52。示例性地,客戶端51可以通過超文本傳輸協(xié)議(hypertexttransferprotocol,http)協(xié)議傳輸用戶日志信息或者用戶日志信息的分析結(jié)果。
日志服務(wù)器52上與用戶日志收集處理過程有關(guān)的三個處理模塊分別是:數(shù)據(jù)校驗?zāi)K505、數(shù)據(jù)過濾模塊506、數(shù)據(jù)存儲模塊507。
其中,數(shù)據(jù)校驗?zāi)K505用于對接收到的用戶日志信息進(jìn)行數(shù)據(jù)正確性校驗,數(shù)據(jù)過濾模塊506用于對異常數(shù)據(jù)進(jìn)行剔除,數(shù)據(jù)存儲模塊507用于將用戶日志信息進(jìn)行規(guī)范化存儲以利于持久化存儲和管理。
在本發(fā)明其他實施例中,日志服務(wù)器52與圖3所示的服務(wù)器可以為分設(shè),也可以合設(shè)。
圖6為本發(fā)明實施例中搜索處理方法中日志信息分析處理的處理流程示意圖。如圖6所示,日志信息分析處理流程的步驟可以包括:s601讀取用戶日志信息和s602用戶日志信息分析,用戶日志信息分析的輸出結(jié)果是各種偏好屬性的屬性值。如動態(tài)下載量或者動態(tài)點擊量、資源質(zhì)量,或者其他的偏好屬性的屬性值。需要說明的是,日志信息分析流程可以由日志服務(wù)器52執(zhí)行、也可以由存儲有資源庫的服務(wù)器執(zhí)行。
下面以日志信息分析流程由存儲有資源庫的服務(wù)器執(zhí)行為例進(jìn)行說明。
存儲有資源庫的服務(wù)器上可以設(shè)置一個日志信息分析模塊,日志信息分析模塊在執(zhí)行s601時,讀取日志服務(wù)器52中存儲的用戶日志信息,然后執(zhí)行s602進(jìn)行日志分析,從讀取的用戶日志信息中提取機(jī)器訓(xùn)練需要的數(shù)據(jù)。日志信息分析需要提取與可能影響資源轉(zhuǎn)化率的一些維度的屬性的偏好屬性值。以應(yīng)用搜索為例,用戶日志信息中包括海量用戶使用搜索引擎的過程中,最終下載的下載應(yīng)用名、下載應(yīng)用分類、下載時間、下載用戶標(biāo)識可以統(tǒng)計分析出應(yīng)用在一段時間的動態(tài)下載量等反映用戶下載偏好的數(shù)據(jù)。
搜索結(jié)果優(yōu)化處理使用用戶日志信息分析的結(jié)果作為用于對搜索結(jié)果的資源標(biāo)識進(jìn)行排序的排序模型的訓(xùn)練數(shù)據(jù)來訓(xùn)練模型,然后對搜索引擎按照搜索詞相似度匹配的結(jié)果按照訓(xùn)練好的排序模型進(jìn)行排序優(yōu)化。示例性地,本發(fā)明實施例中的排序模型可以為結(jié)果標(biāo)記為資源轉(zhuǎn)化率的資源轉(zhuǎn)化率模型。圖7為本發(fā)明實施例中搜索處理方法中搜索結(jié)果優(yōu)化處理的處理流程示意圖。如圖7所示,搜索結(jié)果優(yōu)化處理包括三個階段的子處理過程,分別是:數(shù)據(jù)準(zhǔn)備過程71、模型訓(xùn)練過程72和排序優(yōu)化過程73。
數(shù)據(jù)準(zhǔn)備過程71用于準(zhǔn)備對資源轉(zhuǎn)化率模型進(jìn)行訓(xùn)練和測試的數(shù)據(jù)集,這些訓(xùn)練數(shù)據(jù)的準(zhǔn)備又分為確定排序數(shù)據(jù)和數(shù)據(jù)歸一化處理兩部分。
其中,確定排序數(shù)據(jù)過程我們需要確定哪些數(shù)據(jù)可以用來進(jìn)行排序模型的訓(xùn)練和測試。模型訓(xùn)練數(shù)據(jù)的準(zhǔn)備和具體搜索業(yè)務(wù)以及收集、提取的數(shù)據(jù)有關(guān)。如應(yīng)用搜索業(yè)務(wù),可以選擇“應(yīng)用下載量”、“應(yīng)用質(zhì)量”、“是否官方”作為訓(xùn)練數(shù)據(jù),選擇應(yīng)用“下載轉(zhuǎn)化率”作為訓(xùn)練數(shù)據(jù)的結(jié)果標(biāo)記。
用戶日志信息處理輸出的有些數(shù)據(jù)需要做歸一化處理后才能作為排序模型訓(xùn)練和測試的數(shù)據(jù)集,這是因為用戶日志數(shù)據(jù)的取值差異可能非常大,比如“應(yīng)用下載量”,有些下載量可能達(dá)到幾千萬,而有些只有幾百次,如果不做處理直接用于訓(xùn)練會導(dǎo)致該項數(shù)據(jù)對結(jié)果的影響變大。最簡單的歸一化方法可以直接取log值,如log(應(yīng)用下載量)。
模型訓(xùn)練過程72可以包括確定模型算法721、確定代價函數(shù)722、擬合參數(shù)723和最優(yōu)化算法724。
確定模型算法721是指確定用于排序模型訓(xùn)練的算法,這里使用機(jī)器學(xué)習(xí)的多元線性回歸算法作為排序模型的訓(xùn)練算法。以應(yīng)用搜索為例,可以選擇將“應(yīng)用下載量”和“是否官方應(yīng)用屬性”以及“應(yīng)用質(zhì)量屬性”作為多元線性回歸算法中的變量,以“應(yīng)用下載轉(zhuǎn)化率”作為訓(xùn)練樣本的結(jié)果標(biāo)記,以a1、a2、a3作為變量的系數(shù),得到如下訓(xùn)練模型:
應(yīng)用下載轉(zhuǎn)化率=a1*log(應(yīng)用下載量)+a2*是否官方應(yīng)用屬性+a3*應(yīng)用質(zhì)量屬性;
其中,應(yīng)用下載轉(zhuǎn)化率等于應(yīng)用下載次數(shù)與應(yīng)用曝光次數(shù)的比值。應(yīng)用曝光次數(shù)是指該應(yīng)用對應(yīng)的應(yīng)用標(biāo)識出現(xiàn)在預(yù)設(shè)時長內(nèi)的任一搜索結(jié)果中的次數(shù),應(yīng)用下載次數(shù)可以根據(jù)服務(wù)器上記錄的該應(yīng)用被下載的次數(shù)獲得。即的應(yīng)用下載轉(zhuǎn)化率可以通過實際的統(tǒng)計數(shù)據(jù)獲得。
這樣,上面的多元線性模型訓(xùn)練過程轉(zhuǎn)化為通過用戶日志信息的數(shù)據(jù)計算a1、a2和a3的值的過程。
在確定代價函數(shù)722的過程中,對于如上確定的排序的算法,即在假定a1、a2和a3確定的情況下可以計算得出搜索結(jié)果的排序得分,但是為了評價如上計算結(jié)果和實際用戶希望結(jié)果之間的差異,需要引入代價函數(shù),它用于表示預(yù)測排序結(jié)果和實際用戶希望結(jié)果的差異。如果用m表示應(yīng)用資源庫中全部或部分搜索資源的數(shù)量,則代價函數(shù)z可以表示為公式(5):
其中,x1i為應(yīng)用i的應(yīng)用下載量,x2i為應(yīng)用i是否官方應(yīng)用屬性值,x3i為應(yīng)用i的應(yīng)用質(zhì)量屬性值,pi為應(yīng)用i的實際的下載轉(zhuǎn)化率。
排序模型的訓(xùn)練過程就是確定a1、a2和a3的值,使計算的排序結(jié)果和實際結(jié)果誤差最小,即求解代價函數(shù)z的最小值。求解代價函數(shù)z最小值的過程可以使用梯度下降方法。
擬合參數(shù)723的過程就是最優(yōu)化算法724的求解過程,已梯度下降方法為例,就是先隨便確定一組a1、a2和a3,然后計算一個代價函數(shù)的值,然后求代價函數(shù)的偏導(dǎo),確定a1、a2和a3參數(shù)的調(diào)整值,然后逐步迭代,直到得到使得代價函數(shù)的值達(dá)到最小值的a1、a2和a3。
在擬合參數(shù)的過程中,可以采用測試集數(shù)據(jù)對模型進(jìn)行測試,當(dāng)根據(jù)模型計算的m個資源的預(yù)測資源轉(zhuǎn)化率與對應(yīng)的實際的資源轉(zhuǎn)化率數(shù)據(jù)的相比,準(zhǔn)確率達(dá)到預(yù)設(shè)的準(zhǔn)確度時,確定排序模型訓(xùn)練完成。準(zhǔn)確度例如是m個資源中80%的資源的預(yù)測資源轉(zhuǎn)化率與對應(yīng)的實際的資源轉(zhuǎn)化率的差值小于預(yù)設(shè)的偏差范圍。
搜索優(yōu)化過程73分為相似度排序731和機(jī)器模型排序732兩個階段。排序優(yōu)化過程中的機(jī)器模型排序是使用訓(xùn)練的排序模型是對相似度排序的搜索結(jié)果進(jìn)行二次排序優(yōu)化,從而達(dá)到優(yōu)化搜索結(jié)果的目的。
相似度排序731是搜索優(yōu)化過程的第一個階段,這個階段主要使用常用的相似度檢索模型,tf-idf從資源庫對應(yīng)的索引庫中的索引數(shù)據(jù)中檢索出與用戶搜索動作中攜帶的搜索詞相匹配的結(jié)果,并將搜索結(jié)果按照相似度進(jìn)行排序。索引庫中的文件可以是與應(yīng)用對應(yīng)的描述應(yīng)用的文件。對于搜索詞ti在索引庫的文件dj中的相似度tf-idf可以使用公式(6)得到。
其中,tfi,j為搜索詞ti相對于第j個文件dj的詞頻(termfrequency),idfi,j為搜索詞ti相對于文件dj的逆向文件頻率(inversedocumentfrequency),ni,j為搜索詞ti在文件dj中出現(xiàn)的次數(shù);k為文件dj中出現(xiàn)的所有詞的個數(shù),
機(jī)器模型排序732是搜索優(yōu)化過程的第二個階段,這個階段使用已經(jīng)訓(xùn)練好的排序模型來對第一階段輸出的相似度最靠前的例如前k個(top-k)結(jié)果進(jìn)行精確重排。機(jī)器模型排序中我們以索引中top-k搜索結(jié)果中應(yīng)用對應(yīng)的“應(yīng)用下載量”、“是否官方應(yīng)用屬性”、“應(yīng)用質(zhì)量屬性”等數(shù)據(jù)作為二次排序機(jī)器模型輸入數(shù)據(jù),以排序模型的輸出結(jié)果作為二次排序的依據(jù)。將二次排序的搜索結(jié)果作為最終的搜索結(jié)果輸出。
本發(fā)明實施例提出的一種搜索引擎自優(yōu)化的方法,通過在搜索引擎排序過程中引入基于機(jī)器學(xué)習(xí)的多元線性回歸排序模型,從而解決了搜索引擎無法自優(yōu)化的問題,使得搜索引擎隨著用戶使用而不斷優(yōu)化。該方法的應(yīng)用可以使現(xiàn)有的搜索引擎隨著用戶使用的增加而不斷優(yōu)化,從而使得搜索結(jié)果更加滿足用戶需要。
本發(fā)明實施例的其他技術(shù)方案細(xì)節(jié)和技術(shù)效果與圖3至圖4b所示方法類似,本發(fā)明實施例的其他技術(shù)方案細(xì)節(jié)和技術(shù)效果可參考本發(fā)明其他實施例中的相關(guān)描述。
實施例四
本發(fā)明實施例還提供一種搜索處理裝置,圖8為本發(fā)明實施例中搜索處理裝置的結(jié)構(gòu)示意圖,如圖8所示,本發(fā)明實施例的搜索處理裝置80包括:
獲取模塊801,配置為根據(jù)搜索詞在預(yù)設(shè)的資源庫中進(jìn)行搜索得到n個資源的資源標(biāo)識,n為大于或者等于2的整數(shù);
獲取模塊801,還配置為獲取所述n個資源中的每個資源在當(dāng)前時刻的偏好屬性值;
處理模塊802,配置為將所述n個資源中的每個資源在當(dāng)前時刻的偏好屬性值輸入資源轉(zhuǎn)化率模型,對應(yīng)得到n個預(yù)測資源轉(zhuǎn)化率;所述資源轉(zhuǎn)化率模型為基于所述資源庫中的m個資源在早于所述當(dāng)前時刻的歷史時刻的偏好屬性值進(jìn)行訓(xùn)練得到的;m為大于或者等于2的整數(shù);
處理模塊802,還配置為根據(jù)所述n個預(yù)測資源轉(zhuǎn)化率對所述n個資源標(biāo)識進(jìn)行排序;
輸出模塊803,配置為將排序后的所述n個資源標(biāo)識作為搜索結(jié)果輸出。
在本發(fā)明實施例中,搜索處理裝置可以位于服務(wù)器側(cè)。
本發(fā)明實施例的其他技術(shù)方案細(xì)節(jié)和技術(shù)效果與圖3至圖7所示方法類似,本發(fā)明實施例的其他技術(shù)方案細(xì)節(jié)和技術(shù)效果可參考本發(fā)明其他實施例中的相關(guān)描述。
本發(fā)明實施例還提供一種服務(wù)器,圖9為本發(fā)明實施例中服務(wù)器的結(jié)構(gòu)示意圖,如圖9所示,本發(fā)明實施例的服務(wù)器90包括:
存儲器901、處理器902及存儲在所述存儲器901上并可在處理器902上運行的搜索處理程序(圖9中未示出),所述搜索處理程序被處理器902執(zhí)行時實現(xiàn)圖3至圖7所示的任一種搜索處理方法中服務(wù)器執(zhí)行的步驟。
在本發(fā)明實施例中,服務(wù)器還可以包括接口903和總線904,接口903可以用于與至少一個客戶端建立通信連接,并基于接口903與客戶端實現(xiàn)本發(fā)明實施例中涉及的信息的交互。
本發(fā)明實施例的服務(wù)器可以用于執(zhí)行圖3至圖7所示任一種的搜索處理方法,本發(fā)明實施例的其他技術(shù)方案細(xì)節(jié)可參考圖3至圖7所示實施例的描述。
本發(fā)明實施例還提供一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)上存儲有搜索處理程序,所述搜索處理程序被處理器執(zhí)行時實現(xiàn)如圖3至圖7所示服務(wù)器執(zhí)行的搜索處理方法的步驟。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機(jī),計算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所描述的方法。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機(jī)程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機(jī)程序指令到通用計算機(jī)、專用計算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機(jī)器,使得通過計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機(jī)程序指令也可存儲在能引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機(jī)可讀存儲器中,使得存儲在該計算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機(jī)程序指令也可裝載到計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實現(xiàn)的處理,從而在計算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。