出行線路的推薦方法及裝置與流程
2023-11-30 04:20:16 4
本發明涉及查詢技術,尤其涉及一種出行線路的推薦方法及裝置。
背景技術:
隨著通信技術的發展,終端集成了越來越多的功能,從而使得終端的系統功能列表中包含了越來越多相應的應用(Application,APP)。有些應用中會涉及一些出行線路的推薦服務,例如,百度地圖等。通常,都是通過推薦其他用戶所提供的攻略、遊記等出行記錄相關的線路推薦給用戶。
然而,由於直接將其他用戶所提供的出行記錄相關的線路,推薦給用戶,使得所推薦的線路被用戶所採納的可能性並不是很高,從而導致了線路推薦的可靠性的降低。
技術實現要素:
本發明的多個方面提供一種出行線路的推薦方法及裝置,用以提高出行線路的推薦的可靠性。
本發明的一方面,提供一種出行線路的推薦方法,包括:
獲取指定地點;
根據所述指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路;
根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分;
根據所述推薦得分,執行出行線路推薦操作。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述獲取指定地點,包括:
獲取用戶提供的輸入地點,以作為所述指定地點;或者
獲取用戶當前所在的實時地點,以作為所述指定地點。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述根據所述指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路之前,還包括:
利用網絡爬蟲,獲得指定網站的頁面內容;
根據所述頁面內容,獲得至少一個POI序列;
利用所述至少一個POI序列,採用所述語言模型的訓練方法進行模型訓練,以獲得所述出行線路模型。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述根據所述頁面內容,獲得至少一個POI序列,包括:
利用預先設置的指定類型POI詞典,對所述頁面內容進行過濾處理,以獲得所述至少一個POI序列;
對所述至少一個POI序列中每個POI的名稱,進行歸一化處理,以獲得歸一化處理之後的至少一個POI序列。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分,包括:
根據所述至少一個出行線路,利用行列式點過程技術,獲得所述至少一個出行線路中每個出行線路的推薦得分。
本發明的另一方面,提供一種出行線路的推薦裝置,包括:
獲取單元,用於獲取指定地點;
模型單元,用於根據所述指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路;
評分單元,用於根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分;
推薦單元,用於根據所述推薦得分,執行出行線路推薦操作。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述獲取單元,具體用於
獲取用戶提供的輸入地點,以作為所述指定地點;或者
獲取用戶當前所在的實時地點,以作為所述指定地點。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述模型單元,還用於
利用網絡爬蟲,獲得指定網站的頁面內容;
根據所述頁面內容,獲得至少一個POI序列;以及
利用所述至少一個POI序列,採用所述語言模型的訓練方法進行模型訓練,以獲得所述出行線路模型。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述模型單元,具體用於
利用預先設置的指定類型POI詞典,對所述頁面內容進行過濾處理,以獲得所述至少一個POI序列;以及
對所述至少一個POI序列中每個POI的名稱,進行歸一化處理,以獲得歸一化處理之後的至少一個POI序列。
如上所述的方面和任一可能的實現方式,進一步提供一種實現方式,所述評分單元,具體用於
根據所述至少一個出行線路,利用行列式點過程技術,獲得所述至少一個出行線路中每個出行線路的推薦得分。
由上述技術方案可知,本發明實施例通過根據所獲取的指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路,進而根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分,使得能夠根據所述推薦得分,執行出行線路推薦操作,由於利用了採用語言模型的訓練方法所訓練的出行線路模型,使得所推薦的出行現線路具有大數據的支撐,使得所推薦的線路很容易被用戶所採納,從而提高了線路推薦的可靠性。
另外,採用本發明所提供的技術方案,由於採用了指定網站的頁面內容這一網頁大數據,進行出行線路模型的訓練,使得能夠充分利用其他用戶的經驗路線,可以提供更加合理的推薦結果,能夠極大提升用戶體驗。
【附圖說明】
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明一實施例提供的出行線路的推薦方法的流程示意圖;
圖2為本發明另一實施例提供的出行線路的推薦裝置的結構示意圖。
【具體實施方式】
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的全部其他實施例,都屬於本發明保護的範圍。
需要說明的是,本發明實施例中所涉及的終端可以包括但不限於手機、個人數字助理(Personal Digital Assistant,PDA)、無線手持設備、平板電腦(Tablet Computer)、個人電腦(Personal Computer,PC)、MP3播放器、MP4播放器、可穿戴設備(例如,智能眼鏡、智能手錶、智能手環等)等。
另外,本文中術語「和/或」,僅僅是一種描述關聯對象的關聯關係,表示可以存在三種關係,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。另外,本文中字符「/」,一般表示前後關聯對象是一種「或」的關係。
圖1為本發明一實施例提供的出行線路的推薦方法的流程示意圖,如圖1所示。
101、獲取指定地點。
102、根據所述指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路。
103、根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分。
104、根據所述推薦得分,執行出行線路推薦操作。
需要說明的是,101~104的執行主體的部分或全部可以為位於本地終端的應用,或者還可以為設置在位於本地終端的應用中的插件或軟體開發工具包(Software Development Kit,SDK)等功能單元,或者還可以為位於網絡側伺服器中的處理引擎,或者還可以為位於網絡側的分布式系統,本實施例對此不進行特別限定。
可以理解的是,所述應用可以是安裝在終端上的本地程序(nativeApp),或者還可以是終端上的瀏覽器的一個網頁程序(webApp),本實施例對此不進行限定。
這樣,通過根據所獲取的指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路,進而根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分,使得能夠根據所述推薦得分,執行出行線路推薦操作,由於利用了採用語言模型的訓練方法所訓練的出行線路模型,使得所推薦的出行現線路具有大數據的支撐,使得所推薦的線路很容易被用戶所採納,從而提高了線路推薦的可靠性。
可選地,在本實施例的一個可能的實現方式中,在101中,具體可以獲取用戶提供的輸入地點,以作為所述指定地點。
具體來說,具體可以採集用戶所提供的輸入地點即地點關鍵詞,也可以稱為查詢數據。具體可以通過用戶所觸發的查詢命令實現。具體可以採用下述四種方式觸發查詢命令:
方式一:
用戶可以在當前應用所展現的頁面上所輸入或選擇的查詢關鍵詞,該查詢關鍵詞中可以包括但不限於一個地點的名字或簡稱。然後,通過點擊該頁面上的查詢按鈕,以觸發查詢命令,該查詢命令中包含所述查詢關鍵詞。這樣,在接收到該查詢命令之後,則可以解析出其中所包含的所述查詢關鍵詞。
方式二:
採用異步加載技術例如,Ajax異步加載或Jsonp異步加載等,實時獲取用戶在當前應用所展現的頁面上所輸入的輸入內容,為了與查詢關鍵詞進行區分,此時的輸入內容可以稱為是輸入關鍵詞。然後,獲取完一個輸入字符,以觸發查詢命令,該查詢命令中包含所述查詢關鍵詞。這樣,在接收到該查詢命令之後,則可以解析出其中所包含的所述查詢關鍵詞。具體地,具體可以提供Ajax接口或Jsonp接口等接口,這些接口可以使用Java、超級文本預處理(Hypertext Preprocessor,PHP)語言等語言進行編寫,其具體的調用可以使用Jquery,或者原生的JavaScript等語言進行編寫。
方式三:用戶可以通過長按當前應用所展現的頁面上的語音查詢按鈕,說出想要輸入的語音內容,然後,鬆開語音查詢按鈕,以觸發查詢命令,該查詢命令中包含根據所說出的語音內容轉換的文本形式的查詢關鍵詞。這樣,在接收到該查詢命令之後,則可以解析出其中所包含的所述查詢關鍵詞。
方式四:用戶可以通過點擊當前應用所展現的頁面上的語音查詢按鈕,說出想要輸入的語音內容,待結束說出語音內容一段時間例如,2秒鐘之後,則觸發查詢命令,該查詢命令中包含根據所說出的語音內容轉換的文本形式的查詢關鍵詞。這樣,在接收到該查詢命令之後,則可以解析出其中所包含的所述查詢關鍵詞。
在獲取到所述查詢關鍵詞之後,將所述查詢關鍵詞作為所述指定地點,執行後續操作即102~104。
可選地,在本實施例的一個可能的實現方式中,在101中,具體可以獲取用戶當前所在的實時地點,以作為所述指定地點。
具體來說,具體可以利用全球定位系統(Global Positioning System,GPS)技術、基站定位技術、IP位址定位技術等定位技術,獲得用戶當前所在的實時位置即實時地點。
在獲取到所述實時位置之後,將所述實時位置作為所述指定地點,執行後續操作即102~104。
可選地,在本實施例的一個可能的實現方式中,在102之前,還可以進一步包括出行線路模型的訓練流程。
具體來說,具體可以利用網絡爬蟲,獲得指定網站例如,攜程網等網際網路權威旅遊網站的頁面內容,例如,用於發布遊記的網站頁面上的頁面內容等。進而,則可以根據所述頁面內容,獲得至少一個興趣點(Point of Interest,POI)序列。然後,可以利用所述至少一個POI序列,採用所述語言模型的訓練方法進行模型訓練,以獲得所述出行線路模型。
在獲得指定網站的頁面內容之後,具體可以利用預先設置的指定類型POI詞典,對所述頁面內容進行過濾處理,以獲得所述至少一個POI序列。然後,則可以對所述至少一個POI序列中每個POI的名稱,進行歸一化處理,以獲得歸一化處理之後的至少一個POI序列。
所謂的POI的類型,可以包括但不限於大型商場、高級酒店、交通樞紐、城市公園、名勝古蹟、休閒場館、重要機關、文化教育、醫院、大廈和小區,本實施例對此不進行特別限定。因此,可以預先設置包含一些指定類型POI的指定類型POI詞典,例如,名勝古蹟、休閒場館等適合休閒度假時前往的POI。
將所獲得的歸一化處理之後的至少一個POI序列,作為模型訓練的訓練語料,進而,就可以採用所述語言模型的訓練方法進行模型訓練,以獲得所述出行線路模型。
實際上,語音模型與出行線路模型的本質是一致的,都是根據前N個點,預測下一個點的概率。不同在於,語言模型中的一個點表示的是一個分詞結果,而出行線路模型中的一個點表示的是一個POI。
那麼,則可以採用任一語言模型的訓練方法,進行出行線路模型的模型訓練。例如,Bengio提出了三層神經網絡的訓練方法或包含了長短期記憶(Long Short Term Memory,LSTM)單元的循環神經網絡(Recurrent Neural Network,RNN),等等。
在出行線路模型訓練完畢之後,則可以根據所獲取的指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路,以作為候選推薦線路。
可選地,在本實施例的一個可能的實現方式中,在103中,具體可以根據所述至少一個出行線路,利用行列式點過程(Determinantal Point Processes,DPP)技術,獲得所述至少一個出行線路中每個出行線路的推薦得分。
具體來說,可以預先設計一個線路評分函數和線路相似度評估函數,然後,再利用DPP技術,獲得所述至少一個出行線路中每個出行線路的推薦得分。這樣,可以將推薦得分最高的指定數量例如5個出行線路,作為推薦出行線路,既能夠保證所推薦的出行線路的質量,也能夠保證出行線路的多樣性。
例如,可以根據具體應用,決定指定數量的取值例如,將取值設置為5,這些指定數量的出行線路,可以組成一個推薦集合,即推薦集合的大小為指定數量的取值。具體可以利用DPP技術,逐步生成大小為5的推薦集合。DPP的生成過程如下:初始化推薦集合為空;計算所述至少一個出行線路中每個出行線路的推薦得分,選出推薦得分最高的出行線路加入推薦集合,重複此過程,直到推薦集合的大小達到指定數量的取值。
本實施例中,通過根據所獲取的指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路,進而根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分,使得能夠根據所述推薦得分,執行出行線路推薦操作,由於利用了採用語言模型的訓練方法所訓練的出行線路模型,使得所推薦的出行現線路具有大數據的支撐,使得所推薦的線路很容易被用戶所採納,從而提高了線路推薦的可靠性。
另外,採用本發明所提供的技術方案,由於採用了指定網站的頁面內容這一網頁大數據,進行出行線路模型的訓練,使得能夠充分利用其他用戶的經驗路線,可以提供更加合理的推薦結果,能夠極大提升用戶體驗。
需要說明的是,對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明並不受所描述的動作順序的限制,因為依據本發明,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模塊並不一定是本發明所必須的。
在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。
圖2為本發明另一實施例提供的出行線路的推薦裝置的結構示意圖,如圖2所示。本實施例的出行線路的推薦裝置可以包括獲取單元21、模型單元22、評分單元23和推薦單元24。其中,獲取單元21,用於獲取指定地點;模型單元22,用於根據所述指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路;評分單元23,用於根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分;推薦單元24,用於根據所述推薦得分,執行出行線路推薦操作。
需要說明的是,本實施例所提供的出行線路的推薦裝置的部分或全部可以為位於本地終端的應用,或者還可以為設置在位於本地終端的應用中的插件或軟體開發工具包(Software Development Kit,SDK)等功能單元,或者還可以為位於網絡側伺服器中的處理引擎,或者還可以為位於網絡側的分布式系統,本實施例對此不進行特別限定。
可以理解的是,所述應用可以是安裝在終端上的本地程序(nativeApp),或者還可以是終端上的瀏覽器的一個網頁程序(webApp),本實施例對此不進行限定。
可選地,在本實施例的一個可能的實現方式中,所述獲取單元21,具體可以用於獲取用戶提供的輸入地點,以作為所述指定地點;或者獲取用戶當前所在的實時地點,以作為所述指定地點。
可選地,在本實施例的一個可能的實現方式中,所述模型單元22,還可以進一步用於利用網絡爬蟲,獲得指定網站的頁面內容;根據所述頁面內容,獲得至少一個POI序列;以及利用所述至少一個POI序列,採用所述語言模型的訓練方法進行模型訓練,以獲得所述出行線路模型。
具體地,所述模型單元22,具體可以用於利用預先設置的指定類型POI詞典,對所述頁面內容進行過濾處理,以獲得所述至少一個POI序列;以及對所述至少一個POI序列中每個POI的名稱,進行歸一化處理,以獲得歸一化處理之後的至少一個POI序列。
可選地,在本實施例的一個可能的實現方式中,所述評分單元23,具體可以用於根據所述至少一個出行線路,利用行列式點過程DPP技術,獲得所述至少一個出行線路中每個出行線路的推薦得分。
需要說明的是,圖1對應的實施例中方法,可以由本實施例提供的出行線路的推薦裝置實現。詳細描述可以參見圖1對應的實施例中的相關內容,此處不再贅述。
本實施例中,通過模型單元根據獲取單元所獲取的指定地點,利用採用語言模型的訓練方法所訓練的出行線路模型,獲得至少一個出行線路,進而由評分單元根據所述至少一個出行線路,獲得所述至少一個出行線路中每個出行線路的推薦得分,使得推薦單元能夠根據所述推薦得分,執行出行線路推薦操作,由於利用了採用語言模型的訓練方法所訓練的出行線路模型,使得所推薦的出行現線路具有大數據的支撐,使得所推薦的線路很容易被用戶所採納,從而提高了線路推薦的可靠性。
另外,採用本發明所提供的技術方案,由於採用了指定網站的頁面內容這一網頁大數據,進行出行線路模型的訓練,使得能夠充分利用其他用戶的經驗路線,可以提供更加合理的推薦結果,能夠極大提升用戶體驗。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統,裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本發明所提供的幾個實施例中,應該理解到,所揭露的系統,裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特徵可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用硬體加軟體功能單元的形式實現。
上述以軟體功能單元的形式實現的集成的單元,可以存儲在一個計算機可讀取存儲介質中。上述軟體功能單元存儲在一個存儲介質中,包括若干指令用以使得一臺計算機裝置(可以是個人計算機,伺服器,或者網絡裝置等)或處理器(processor)執行本發明各個實施例所述方法的部分步驟。而前述的存儲介質包括:U盤、移動硬碟、只讀存儲器(Read-Only Memory,ROM)、隨機存取存儲器(Random Access Memory,RAM)、磁碟或者光碟等各種可以存儲程序代碼的介質。
最後應說明的是:以上實施例僅用以說明本發明的技術方案,而非對其限制;儘管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特徵進行等同替換;而這些修改或者替換,並不使相應技術方案的本質脫離本發明各實施例技術方案的精神和範圍。