本發明涉及搜索技術領域,特別涉及一種基于人工智能的搜索方法和裝置。
背景技術:
人工智能(Artificial Intelligence),英文縮寫為AI。它是研究、開發用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。人工智能是計算機科學的一個分支,它企圖了解智能的實質,并生產出一種新的能以人類智能相似的方式做出反應的智能機器,該領域的研究包括機器人、語言識別、圖像識別、自然語言處理和專家系統等。
隨著互聯網的發展,越來越多的用戶通過互聯網搜索各種信息。但是,不同地域不同語言的搜索引擎都有各自的擅長領域。大多搜索引擎都是基于某種特定語言的,對于一個搜索引擎來說,對其相應的語言的搜索有較好的效果,而對其他語言的搜索效果的質量和相關性較低。例如,對于中國用戶來說,中文搜索引擎比谷歌搜索引擎更懂中文,搜索結果更符合其需求,而對于美國用戶來說,谷歌搜索引擎則比中文搜索引擎更懂英文,搜索結果更符合其需求。目前,為了滿足不同語言類型的搜索需求,用戶根據期望搜索的語言選擇相應的搜索引擎進行搜索,但是這種方式,需要在分別擅長不同語言的搜索引擎之間進行切換,操作非常不便,搜索查詢效率較低。
技術實現要素:
本發明旨在至少在一定程度上解決上述技術問題。
為此,本發明的第一個目的在于提出一種基于人工智能的搜索方法,能夠滿足用戶對不同語言類型的搜索需求,提升搜索的準確率和效率。
本發明的第二個目的在于提出一種基于人工智能的搜索裝置。
為達上述目的,根據本發明第一方面實施例提出了一種基于人工智能的搜索方法,包括以下步驟:接收用戶輸入的搜索詞;根據所述搜索詞確定所述用戶的語言需求類型;以及根據所述用戶的語言需求類型獲取所述搜索詞對應的搜索結果,并提供給所述用戶。
本發明實施例的基于人工智能的搜索方法,通過根據用戶輸入的搜索詞確定用戶的語言需求類型,進而根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給用戶,能夠通過對用戶的特定語言類型的搜索需求的識別,對用戶的搜索詞從語言需求的維度進行劃分,從而滿足用戶對不同語言類型的搜索需求,提升搜索的準確率和效率,節省用戶的搜索時間。
本發明第二方面實施例提出了一種基于人工智能的搜索裝置,包括:接收模塊,用于接收用戶輸入的搜索詞;確定模塊,用于根據所述搜索詞確定所述用戶的語言需求類型;以及獲取模塊,用于根據所述用戶的語言需求類型獲取所述搜索詞對應的搜索結果;提供模塊,用于提將所述搜索結果供給所述用戶。
本發明實施例的基于人工智能的搜索裝置,通過根據用戶輸入的搜索詞確定用戶的語言需求類型,進而根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給用戶,能夠通過對用戶的特定語言類型的搜索需求的識別,對用戶的搜索詞從語言需求的維度進行劃分,從而滿足用戶對不同語言類型的搜索需求,提升搜索的準確率和效率,節省用戶的搜索時間。
本發明的附加方面和優點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發明的實踐了解到。
附圖說明
本發明的上述和/或附加的方面和優點從結合下面附圖對實施例的描述中將變得明顯和容易理解,其中:
圖1為根據本發明一個實施例的基于人工智能的搜索方法的流程圖;
圖2為根據本發明一個實施例的建立需求詞典的流程圖;
圖3為根據本發明另一個實施例的基于人工智能的搜索方法的流程圖;
圖4為根據本發明另一個實施例的基于人工智能的搜索方法的流程圖;
圖5為根據本發明一個實施例的訓練第一預設模型的流程圖;
圖6為根據本發明一個實施例的訓練第二預設模型的流程圖;
圖7為根據本發明另一個實施例的基于人工智能的搜索方法的流程圖;
圖8為根據本發明一個實施例的基于人工智能的搜索裝置的結構示意圖;
圖9為根據本發明另一個實施例的基于人工智能的搜索裝置的結構示意圖;
圖10為根據本發明另一個實施例的基于人工智能的搜索裝置的結構示意圖。
具體實施方式
下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發明,而不能理解為對本發明的限制。
在本發明的描述中,需要理解的是,術語“多個”指兩個或兩個以上;術語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性。
下面參考附圖描述根據本發明實施例的。
為了能夠使搜索結果能夠更加符合用戶的需求,提高搜索效率,本發明提出了一種基于人工智能的搜索方法和裝置。
本發明實施例的基于人工智能的搜索方法,包括以下步驟:接收用戶輸入的搜索詞;根據所述搜索詞確定所述用戶的語言需求類型;以及根據所述用戶的語言需求類型獲取所述搜索詞對應的搜索結果,并提供給所述用戶。
圖1為根據本發明一個實施例的基于人工智能的搜索方法的流程圖。
如圖1所示,根據本發明實施例的基于人工智能的搜索方法,包括以下步驟。
S101,接收用戶輸入的搜索詞。
需要說明的是,本發明實施例的搜索詞可理解為廣義上的搜索詞,可以是單個字、詞語、詞組甚至是句子。
本發明實施例中的搜索詞可以是任意語言類型的漢字、數字、字母等。
其中,搜索引擎可通過但不限于搜索框、語音輸入框等形式接收用戶輸入的搜索詞。
S102,根據所述搜索詞確定用戶的語言需求類型。
其中,語言需求類型是指用戶期望得到的搜索結果的語言類型。
舉例來說,對于用戶輸入的搜索詞“A”,一些用戶希望得到中文的搜索結果,則這部分用戶的語言需求類型為中文,另一些用戶希望得到英文的搜索結果,則這部分用戶的語言需求類型為英文。
在本發明的一個實施例中,可通過多種方式根據搜索詞確定用戶的語言需求類型。具體而言,可通過但不限于以下方式確定用戶的語言需求類型:
方式一
根據搜索引擎的語言類型和搜索詞所屬的語言類型確定用戶的語言需求類型。
其中,搜索引擎的語言類型是指搜索引擎擅長或主要處理的語言類型,或者開發語言類型。舉例來說,中文搜索引擎的語言類型則為中文,谷歌搜索引擎的語言類型則為英文。
具體地,如果搜索引擎的語言類型與搜索詞所屬的語言類型一致,則用戶的語言需求類型為搜索引擎的語言類型。如果搜索引擎的語言類型與搜索詞所屬的語言類型不一致,則用戶的語言需求類型可能與搜索引擎的語言類型不同,需要進一步判斷識別用戶的語言需求類型。
方式二
根據搜索詞查詢預設的需求詞典,以從需求詞典中查詢該搜索詞對應的語言需求類型,并作為用戶的語言需求類型。
其中,需求詞典可為預先基于用戶與搜索引擎的交互日志分析、識別得到。具體地,在本發明的一個實施例中,可根據圖2所示實施例建立需求詞典,如圖2所示,可包括步驟S201和S202。
S201,獲取用戶與搜索引擎交互的日志信息。
其中,用戶與搜索引擎交互的日志信息可包括本次發起搜索的用戶與搜索引擎交互的日志信息,也可包括其他大量用戶與搜索引擎交互的日志信息。
日志信息包括用戶輸入的搜索詞、用戶對搜索結果的點擊、查看等行為日志。
S202,根據所述日志信息分析各個原始搜索詞對應的語言需求類型,以建立所述需求詞典。
具體地,可基于海量數據的日志信息,對歷史搜索過程中用戶輸入搜索詞后,根據經驗、規則以及識別模型對用戶點擊或查看的搜索結果的語言類型進行分析,以識別出各個搜索詞對應的語言需求類型,并根據對應關系建立需求詞典。
具體而言,需求詞典可針對不同語言類型分別建立。舉例來說,對應中文搜索引擎,其中文搜索能力非常強大,因此,可針對其他各種不同語言分別建立需求詞典。
以建立英文的需求詞典為例,需求詞典中可通過中英文的來標識搜索詞的語言需求類型。例如,需求對比強度為0,則表示對英文結果的需求極低,對應的語言需求類型為中文需求類型;需求對比強度為1,則表示對英文結果和中文結果都存在需求,對應的語言需求類型為中文需求類型或英文需求類型;需求對比強度為2,則表示對英文結果的需求極高,對應的語言需求類型為英文需求類型。由此,可針對中文搜索引擎得到對于英文搜索需求具有高準確率、高召回率的需求識別結果,進而能夠為用戶提供更符合需求的搜索結果。
在本發明的實施例中,可預先基于海量的日志信息,進行分析,建立需求詞典。由此建立的需求詞典中可包括豐富、全面的搜索詞與語言需求類型的對應關系。經過試驗數據分析,至少85%以上的搜索詞都可通過查詢需求詞典確定對應的語言需求類型。由此,通過查詢需求詞典的方式,能夠快速、準確定用戶的語言需求類型,進而后續能夠高效、精準地為用戶提供搜索結果,且能夠針對用戶的語言需求類型提供更符合用戶需求的搜索結果,有效提升搜索效率和相關性。
方式三
將搜索詞與預先建立的需求規則分別進行匹配,以確定用戶的語言需求類型。
其中,需求規則為預先基于經驗,根據各個語言需求類型對應搜索詞的特征建立的。舉例來說,對于11位的數字,雖然為字符類型,但是,大多11位數字為手機號碼,一般不會作為英文的需求類型,而是作為中文的需求類型。因此,可建立“11位數字的搜索詞對應的語言需求類型為中文類型”的規則。類似地,可根據一些專有名詞、或者特定詞、或者已知的常用搜索習慣建立相應的規則,從而,在確定用戶的語言需求類型時,可根據搜索詞與規則進行匹配確定用戶的語言需求類型。
方式四
根據預設模型識別搜索詞對應的語言需求類型,并作為用戶的語言需求類型。
具體而言,可預先建立用于識別搜索詞對應的語言需求類型的模型,進而,可通過建立的模型識別用戶輸入的搜索詞對應的語言需求類型。
S103,根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給所述用戶。
在根據搜索詞進行搜索時,可有針對性地搜索符合用戶的語言需求類型的搜索結果,并提供給用戶,從而能夠避免將不符合用戶語言需求的搜索結果提供給用戶,提升了搜索結果的質量和相關性。
本發明實施例的基于人工智能的搜索方法,通過根據用戶輸入的搜索詞確定用戶的語言需求類型,進而根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給用戶,能夠通過對用戶的特定語言類型的搜索需求的識別,對用戶的搜索詞從語言需求的維度進行劃分,從而滿足用戶對不同語言類型的搜索需求,提升搜索的準確率和效率,節省用戶的搜索時間。
圖3為根據本發明另一個實施例的基于人工智能的搜索方法的流程圖。
如圖3所示,根據本發明實施例的基于人工智能的搜索方法,包括以下步驟。
S301,接收用戶輸入的搜索詞。
需要說明的是,本發明實施例的搜索詞可理解為廣義上的搜索詞,可以是單個字、詞語、詞組甚至是句子。
本發明實施例中的搜索詞可以是任意語言類型的漢字、數字、字母等。
其中,搜索引擎可通過但不限于搜索框、語音輸入框等形式接收用戶輸入的搜索詞。
S302,識別搜索詞所屬的第一語言類型。
在本發明的一個實施例中,可根據預設的語言模型識別搜索詞屬于哪種語言,即搜索詞所屬的語言類型,如中文、英文、泰文等。
舉例來說,可識別搜索詞是漢字、或者是字母、數字等ASCII碼字符等,如果是漢字,則對應的語言類型為中文,如果是字母,則可進一步判斷是否為拼音,如果是拼音,則對應的語言類型為中文,否則為英文。
S303,判斷第一語言類型與搜索引擎的第二語言類型是否一致。
其中,搜索引擎的語言類型是指搜索引擎擅長或主要處理的語言類型,或者開發語言類型。舉例來說,中文搜索引擎的語言類型則為中文,谷歌搜索引擎的語言類型則為英文。
S304,如果第一語言類型與搜索引擎的第二語言類型一致,則可確定用戶的語言需求類型為第二語言類型。
S305,在第一語言類型與第二語言類型不一致時,根據搜索詞確定用戶的語言需求類型。
對于使用第二語言類型的搜索引擎的用戶來說,其需求主要是基于第二語言類型的,但是,當用戶輸入的第一語言類型的搜索詞時,用戶的需求可能為第一語言類型,也可能為第二語言類型。因此,在此情況下,需要根據搜索詞進一步確定用戶的語言需求類型為第一語言類型還是第二語言類型。
在本發明的一個實施例中,可通過圖4所示實施例確定用戶的語言需求類型。
圖4為根據本發明另一個實施例的基于人工智能的搜索方法的流程圖。
如圖4所示,根據搜索詞確定用戶的語言需求類型可包括以下步驟。
S401,根據所述搜索詞查詢預設的需求詞典,以確定所述用戶的語言需求類型。
其中,需求詞典中包括海量的搜索詞及其對應的語言需求類型,因此,可通過查詢該需求詞典,如果在需求詞典中查詢到搜索詞,則可直接確定搜索詞對應的語言需求類型,并作為用戶本次搜索的語言需求類型。
上述需求詞典可參照圖2所示實施例建立,在此不再進行說明。
如果在需求詞典中未查詢到搜索詞,則可基于預設規則和/或預設模型對所述搜索詞進行識別,以確定所述用戶的語言需求類型。具體可參見步驟S402和步驟S404。
S402,將所述搜索詞與預設的需求規則庫中的規則分別進行匹配,并將匹配到的規則對應的語言需求類型作為所述用戶的語言需求類型。
其中,需求規則庫中的規則可為預先基于經驗,根據各個語言需求類型對應搜索詞的特征建立的。舉例來說,對于11位的數字,雖然為字符類型,但是,大多11位數字為手機號碼,一般不會作為英文的需求類型,而是作為中文的需求類型。因此,可建立“11位數字的搜索詞對應的語言需求類型為中文類型”的規則。類似地,可根據一些專有名詞、或者特定詞、或者已知的常用搜索習慣建立相應的規則,建立需求規則庫。從而,在確定用戶的語言需求類型時,可根據搜索詞與需求規則庫中的規則進行匹配,如果搜索詞命中其中的規則,則可根據該規則對應的語言需求類型確定為用戶的語言需求類型。
S403,如果所述需求規則庫中不存在與所述搜索詞匹配的規則,則進一步根據第一預設模型識別所述搜索詞對應的語言需求類型。
在本發明的一個實施例中,步驟S403可包括:根據所述第一預設模型預測所述搜索詞對應的語言需求類型為所述搜索詞所屬的第一語言類型的概率;如果所述概率大于預設概率閾值,則所述搜索詞對應的語言需求類型為所述第一語言類型;如果所述概率不大于所述預設概率閾值,則所述搜索詞對應的語言需求類型為所述搜索引擎的第二語言類型。
其中,第一預設模型為預先根據用戶與搜索引擎交互的日志信息進行訓練得到的。具體而言,第一預設模型可通過圖5所示的實施例進行訓練得到。如圖5所示,包括步驟S501-S503。
S501,獲取用戶與搜索引擎交互的日志信息。
其中,用戶與搜索引擎交互的日志信息可包括本次發起搜索的用戶與搜索引擎交互的日志信息,也可包括其他大量用戶與搜索引擎交互的日志信息。
日志信息包括用戶輸入的搜索詞、用戶對搜索結果的點擊、查看等行為日志。
S502,通過所述日志信息,分析用戶對各個原始搜索詞對應的搜索結果的點擊行為。
S503,根據所述點擊行為,對各個原始搜索詞對應的被點擊的搜索結果的語言類型進行統計分析,并根據統計分析結果訓練所述第一預設模型。
舉例來說,以建立中英文需求識別的第一預設模型為例,對于每個原始搜索詞,可分別統計用戶點擊搜索結果中的中文標題(title)和點擊搜索結果中英文標題的行為分別進行統計,得到中文和英文分別對應的統計數據,進而可基于各個原始搜索詞對應的統計數據使用預設的學習模型進行訓練,得到第一預設模型。
需要說明的是,本發明對訓練過程中所使用的學習模型不進行限定,舉例來說,可使用神經網絡模型進行訓練等。
S404,如果根據第一預設模型識別所述搜索詞對應的語言需求類型為所述搜索引擎的第二語言類型,則進一步根據第二預設模型識別所述搜索詞對應的語言需求類型,并作為所述用戶的語言需求類型。
在本發明的一個實施例中,S404可包括:對所述搜索詞進行分詞處理,得到所述搜索詞的至少一個分詞;分別根據所述至少一個分詞查詢所述需求詞典,以分別確定所述至少一個分詞對應的語言需求類型;根據所述第二預設模型對所述至少一個分詞對應的語言需求類型進行擬合,得到所述搜索詞對應的語言需求類型。
其中,第二預設模型為預先根據用戶與搜索引擎交互的日志信息和需求詞典進行訓練得到的。具體而言,第二預設模型可通過圖6所示的實施例進行訓練得到。如圖6所示,包括步驟S601-S605。
S601,獲取用戶與搜索引擎交互的日志信息。
其中,用戶與搜索引擎交互的日志信息可包括本次發起搜索的用戶與搜索引擎交互的日志信息,也可包括其他大量用戶與搜索引擎交互的日志信息。
日志信息包括用戶輸入的搜索詞、用戶對搜索結果的點擊、查看等行為日志。
S602,對所述日志信息中的各個原始搜索詞進行分詞處理,得到多個分詞。
S603,根據所述多個分詞生成搜索詞的訓練數據。
在得到多個分詞后,可將兩個或兩個以上的分詞之間分別進行組合,例如,對于A、B、C三個分詞,可組合為AB、AC、BC、ABC等,由此,經過組合后可生成大量新的搜索詞,形成搜索詞的訓練數據。
S604,根據所述搜索詞訓練數據查詢所述需求詞典,以確定所述搜索詞訓練數據對應的語言需求類型。
具體而言,可根據訓練數據中的每個搜索詞分別查詢需求詞典,以確定各個訓練數據對應的語言需求類型。
S605,根據所述搜索詞訓練數據以及對應的語言需求類型訓練所述第二預設模型。
需要說明的是,本發明對訓練過程中所使用的學習模型不進行限定,舉例來說,可使用神經網絡模型進行訓練等。
由此,通過圖4所示的實施例,通過查詢離線的需求詞典可查詢到大多數搜索詞對應的用戶的語言需求類型,時效快,并在需求詞典無法查詢到對應的語言需求類型時,可通過預設的規則或預設模型通過在線識別的方式確定用戶的語言需求類型,進一步通過需求詞典、在線規則和預設模型相結合的方式確定用戶的語言需求類型,能夠準確識別用戶的語言需求類型,并提高與搜索引擎的語言類型不同的語言需求類型的召回率。
S306,根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給用戶。
在根據搜索詞進行搜索時,可有針對性地搜索符合用戶的語言需求類型的搜索結果,并提供給用戶,從而能夠避免將不符合用戶語言需求的搜索結果提供給用戶,提升了搜索結果的質量和相關性。
本發明實施例的基于人工智能的搜索方法,通過識別用戶輸入的搜索詞的語言類型,并在搜索詞的語言類型與搜索引擎的語言類型不一致時,確定用戶的語言需求類型,進而根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給用戶,從而能夠高準確率、高召回率地確定出與搜索引擎語言類型不同用戶需求語言類型,進而能夠據此提升搜索結果的準確率和效率,節省用戶的搜索時間。
圖7為根據本發明另一個實施例的基于人工智能的搜索方法的流程圖。
如圖7所示,根據本發明實施例的基于人工智能的搜索方法,還可包括步驟S701-S707。
S701,針對多個語言需求類型分別建立對應的搜索數據庫。
相關的信息檢索中大多是混合式的搜索,即無論用戶輸入的是中文、還是英文、還是其他語言的搜索詞,都基于搜索引擎的當前索引庫進行搜索,這就存在類似于用戶希望得到英文搜索結果,但是卻提供給了用戶中文結果的問題,難以符合用戶的實際需求,導致搜索效率和準確率較低。
為此,在本發明的一個實施例中,可分別針對各個不同的語言需求類型分別建立對應的搜索數據庫,從而,在后續確定用戶的語言需求類型后,可在用戶的語言需求類型對應的搜索數據庫中進行搜索,由此得到的搜索結果具有更高的相關性,更加符合用戶的實際需求。
其中,步驟S702-S706與圖3所示實施例中步驟S301-S305相同。
S707,根據搜索詞在所述語言需求類型對應的搜索數據庫中進行搜索,以獲取所述搜索詞對應的搜索結果。
S708,將上述搜索結果提供給用戶。
本發明實施例的基于人工智能的搜索方法,通過針對不同的語言需求類型分別建立搜索數據庫,進而在確定用戶的語言需求類型之后,可從該語言需求類型對于那個的搜索數據庫中進行搜索,以獲取符合用戶需求的語言類型的搜索結果,提升搜索結果與用戶需求的相關性和準確性,進一步提升搜索效率。
與上述基于人工智能的搜索方法實施例相對應,本發明還提出一種基于人工智能的搜索裝置。
一種基于人工智能的搜索裝置,包括:接收模塊,用于接收用戶輸入的搜索詞;確定模塊,用于根據所述搜索詞確定所述用戶的語言需求類型;以及獲取模塊,用于根據所述用戶的語言需求類型獲取所述搜索詞對應的搜索結果;提供模塊,用于提將所述搜索結果供給所述用戶。
圖8為根據本發明一個實施例的基于人工智能的搜索裝置的結構示意圖。
如圖8所示,根據本發明實施例的基于人工智能的搜索裝置,包括:接收模塊10、確定模塊20、獲取模塊30和提供模塊40。
具體地,接收模塊10用于接收用戶輸入的搜索詞。
需要說明的是,本發明實施例的搜索詞可理解為廣義上的搜索詞,可以是單個字、詞語、詞組甚至是句子。
本發明實施例中的搜索詞可以是任意語言類型的漢字、數字、字母等。
其中,接收模塊10可通過但不限于搜索框、語音輸入框等形式接收用戶輸入的搜索詞。
確定模塊20用于根據所述搜索詞確定所述用戶的語言需求類型。
其中,語言需求類型是指用戶期望得到的搜索結果的語言類型。
舉例來說,對于用戶輸入的搜索詞“A”,一些用戶希望得到中文的搜索結果,則這部分用戶的語言需求類型為中文,另一些用戶希望得到英文的搜索結果,則這部分用戶的語言需求類型為英文。
在本發明的一個實施例中,確定模塊20可通過多種方式根據搜索詞確定用戶的語言需求類型。具體而言,確定模塊20可通過但不限于以下方式確定用戶的語言需求類型:
方式一
根據搜索引擎的語言類型和搜索詞所屬的語言類型確定用戶的語言需求類型。
其中,搜索引擎的語言類型是指搜索引擎擅長或主要處理的語言類型,或者開發語言類型。舉例來說,中文搜索引擎的語言類型則為中文,谷歌搜索引擎的語言類型則為英文。
具體地,如果搜索引擎的語言類型與搜索詞所屬的語言類型一致,則用戶的語言需求類型為搜索引擎的語言類型。如果搜索引擎的語言類型與搜索詞所屬的語言類型不一致,則用戶的語言需求類型可能與搜索引擎的語言類型不同,需要進一步判斷識別用戶的語言需求類型。
方式二
根據搜索詞查詢預設的需求詞典,以從需求詞典中查詢該搜索詞對應的語言需求類型,并作為用戶的語言需求類型。
其中,需求詞典可為預先基于用戶與搜索引擎的交互日志分析、識別得到。具體地,在本發明的一個實施例中,可根據圖2所示實施例建立需求詞典。
在本發明的實施例中,可預先基于海量的日志信息,進行分析,建立需求詞典。由此建立的需求詞典中可包括豐富、全面的搜索詞與語言需求類型的對應關系。經過試驗數據分析,至少85%以上的搜索詞都可通過查詢需求詞典確定對應的語言需求類型。由此,通過查詢需求詞典的方式,能夠快速、準確定用戶的語言需求類型,進而后續能夠高效、精準地為用戶提供搜索結果,且能夠針對用戶的語言需求類型提供更符合用戶需求的搜索結果,有效提升搜索效率和相關性。
方式三
將搜索詞與預先建立的需求規則分別進行匹配,以確定用戶的語言需求類型。
其中,需求規則為預先基于經驗,根據各個語言需求類型對應搜索詞的特征建立的。舉例來說,對于11位的數字,雖然為字符類型,但是,大多11位數字為手機號碼,一般不會作為英文的需求類型,而是作為中文的需求類型。因此,可建立“11位數字的搜索詞對應的語言需求類型為中文類型”的規則。類似地,可根據一些專有名詞、或者特定詞、或者已知的常用搜索習慣建立相應的規則,從而,在確定用戶的語言需求類型時,可根據搜索詞與規則進行匹配確定用戶的語言需求類型。
方式四
根據預設模型識別搜索詞對應的語言需求類型,并作為用戶的語言需求類型。
具體而言,可預先建立用于識別搜索詞對應的語言需求類型的模型,進而,可通過建立的模型識別用戶輸入的搜索詞對應的語言需求類型。
獲取模塊30用于根據所述用戶的語言需求類型獲取所述搜索詞對應的搜索結果。
在根據搜索詞進行搜索時,獲取模塊30可有針對性地搜索符合用戶的語言需求類型的搜索結果,并提供給用戶,從而能夠避免將不符合用戶語言需求的搜索結果提供給用戶,提升了搜索結果的質量和相關性。
提供模塊40用于提將所述搜索結果供給所述用戶。
本發明實施例的基于人工智能的搜索裝置,通過根據用戶輸入的搜索詞確定用戶的語言需求類型,進而根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給用戶,能夠通過對用戶的特定語言類型的搜索需求的識別,對用戶的搜索詞從語言需求的維度進行劃分,從而滿足用戶對不同語言類型的搜索需求,提升搜索的準確率和效率,節省用戶的搜索時間。
圖9為根據本發明另一個實施例的基于人工智能的搜索裝置的結構示意圖。
如圖9所示,根據本發明實施例的基于人工智能的搜索裝置,包括:接收模塊10、確定模塊20、獲取模塊30、提供模塊40、識別模塊50和判斷模塊60。
其中,接收模塊10、確定模塊20、獲取模塊30和提供模塊40與圖8所示所述相同,可參照圖8所示實施例。
識別模塊50用于識別所述搜索詞所屬的第一語言類型。
在本發明的一個實施例中,識別模塊50可根據預設的語言模型識別搜索詞屬于哪種語言,即搜索詞所屬的語言類型,如中文、英文、泰文等。
舉例來說,識別模塊50可識別搜索詞是漢字、或者是字母、數字等ASCII碼字符等,如果是漢字,則對應的語言類型為中文,如果是字母,則可進一步判斷是否為拼音,如果是拼音,則對應的語言類型為中文,否則為英文。
判斷模塊60用于判斷所述第一語言類型與搜索引擎的第二語言類型是否一致。
其中,搜索引擎的語言類型是指搜索引擎擅長或主要處理的語言類型,或者開發語言類型。舉例來說,中文搜索引擎的語言類型則為中文,谷歌搜索引擎的語言類型則為英文。
如果第一語言類型與搜索引擎的第二語言類型一致,則確定模塊20可確定用戶的語言需求類型為第二語言類型。
確定模塊20可用于在所述第一語言類型與所述第二語言類型不一致時,根據所述搜索詞確定所述用戶的語言需求類型。
對于使用第二語言類型的搜索引擎的用戶來說,其需求主要是基于第二語言類型的,但是,當用戶輸入的第一語言類型的搜索詞時,用戶的需求可能為第一語言類型,也可能為第二語言類型。因此,在此情況下,需要根據搜索詞進一步確定用戶的語言需求類型為第一語言類型還是第二語言類型。
在本發明的一個實施例中,確定模塊20可包括:查詢單元21和識別單元22。
其中,查詢單元21用于根據所述搜索詞查詢預設的需求詞典,以確定所述用戶的語言需求類型。
其中,需求詞典中包括海量的搜索詞及其對應的語言需求類型,因此,可通過查詢該需求詞典,如果在需求詞典中查詢到搜索詞,則可直接確定搜索詞對應的語言需求類型,并作為用戶本次搜索的語言需求類型。
上述需求詞典可參照圖2所示實施例建立,在此不再進行說明。
如果在需求詞典中未查詢到搜索詞,則可通過識別單元22基于預設規則和/或預設模型對所述搜索詞進行識別,以確定所述用戶的語言需求類型。
識別單元22用于如果在所述需求詞典中未查詢到所述搜索詞,則基于預設規則和/或預設模型對所述搜索詞進行識別,以確定所述用戶的語言需求類型。
在本發明的一個實施例中,識別單元22可用于:將所述搜索詞與預設的需求規則庫中的規則分別進行匹配,并將匹配到的規則對應的語言需求類型作為所述用戶的語言需求類型。如果所述需求規則庫中不存在與所述搜索詞匹配的規則,則進一步根據第一預設模型識別所述搜索詞對應的語言需求類型;如果根據第一預設模型識別所述搜索詞對應的語言需求類型為所述搜索引擎的第二語言類型,則進一步根據第二預設模型識別所述搜索詞對應的語言需求類型,并作為所述用戶的語言需求類型。
其中,需求規則庫中的規則可為預先基于經驗,根據各個語言需求類型對應搜索詞的特征建立的。舉例來說,對于11位的數字,雖然為字符類型,但是,大多11位數字為手機號碼,一般不會作為英文的需求類型,而是作為中文的需求類型。因此,可建立“11位數字的搜索詞對應的語言需求類型為中文類型”的規則。類似地,可根據一些專有名詞、或者特定詞、或者已知的常用搜索習慣建立相應的規則,建立需求規則庫。從而,在確定用戶的語言需求類型時,可根據搜索詞與需求規則庫中的規則進行匹配,如果搜索詞命中其中的規則,則可根據該規則對應的語言需求類型確定為用戶的語言需求類型。
在本發明的一個實施例中,識別單元22在根據第一預設模型識別所述搜索詞對應的語言需求類型時,可用于:根據所述第一預設模型預測所述搜索詞對應的語言需求類型為所述搜索詞所屬的第一語言類型的概率;如果所述概率大于預設概率閾值,則所述搜索詞對應的語言需求類型為所述第一語言類型;如果所述概率不大于所述預設概率閾值,則所述搜索詞對應的語言需求類型為所述搜索引擎的第二語言類型。
其中,第一預設模型為預先根據用戶與搜索引擎交互的日志信息進行訓練得到的。具體而言,第一預設模型可通過圖5所示的實施例進行訓練得到。
在本發明的一個實施例中,識別單元22在根據第二預設模型識別所述搜索詞對應的語言需求類型時,可用于:對所述搜索詞進行分詞處理,得到所述搜索詞的至少一個分詞;分別根據所述至少一個分詞查詢所述需求詞典,以分別確定所述至少一個分詞對應的語言需求類型;根據所述第二預設模型對所述至少一個分詞對應的語言需求類型進行擬合,得到所述搜索詞對應的語言需求類型。
其中,第二預設模型為預先根據用戶與搜索引擎交互的日志信息和需求詞典進行訓練得到的。具體而言,第二預設模型可通過圖6所示的實施例進行訓練得到。
由此,通過查詢離線的需求詞典可查詢到大多數搜索詞對應的用戶的語言需求類型,時效快,并在需求詞典無法查詢到對應的語言需求類型時,可通過預設的規則或預設模型通過在線識別的方式確定用戶的語言需求類型,進一步通過需求詞典、在線規則和預設模型相結合的方式確定用戶的語言需求類型,能夠準確識別用戶的語言需求類型,并提高與搜索引擎的語言類型不同的語言需求類型的召回率。
本發明實施例的基于人工智能的搜索裝置,通過識別用戶輸入的搜索詞的語言類型,并在搜索詞的語言類型與搜索引擎的語言類型不一致時,確定用戶的語言需求類型,進而根據用戶的語言需求類型獲取搜索詞對應的搜索結果,并提供給用戶,從而能夠高準確率、高召回率地確定出與搜索引擎語言類型不同用戶需求語言類型,進而能夠據此提升搜索結果的準確率和效率,節省用戶的搜索時間。
圖10為根據本發明另一個實施例的基于人工智能的搜索裝置的結構示意圖。
如圖10所示,根據本發明實施例的基于人工智能的搜索裝置,包括:接收模塊10、確定模塊20、獲取模塊30、提供模塊40、識別模塊50、判斷模塊60和建立模塊70。
其中,接收模塊10、確定模塊20、獲取模塊30、提供模塊40、識別模塊50和判斷模塊60與圖9所示實施例相同,可參照圖9所示實施例。
建立模塊70用于針對多個語言需求類型分別建立對應的搜索數據庫。
相關的信息檢索中大多是混合式的搜索,即無論用戶輸入的是中文、還是英文、還是其他語言的搜索詞,都基于搜索引擎的當前索引庫進行搜索,這就存在類似于用戶希望得到英文搜索結果,但是卻提供給了用戶中文結果的問題,難以符合用戶的實際需求,導致搜索效率和準確率較低。
為此,在本發明的一個實施例中,建立模塊70可分別針對各個不同的語言需求類型分別建立對應的搜索數據庫,從而,在后續確定用戶的語言需求類型后,可在用戶的語言需求類型對應的搜索數據庫中進行搜索,由此得到的搜索結果具有更高的相關性,更加符合用戶的實際需求。
其中,獲取模塊30可用于:根據搜索詞在所述語言需求類型對應的搜索數據庫中進行搜索,以獲取所述搜索詞對應的搜索結果。
本發明實施例的基于人工智能的搜索裝置,通過針對不同的語言需求類型分別建立搜索數據庫,進而在確定用戶的語言需求類型之后,可從該語言需求類型對于那個的搜索數據庫中進行搜索,以獲取符合用戶需求的語言類型的搜索結果,提升搜索結果與用戶需求的相關性和準確性,進一步提升搜索效率。
應當理解,本發明的各部分可以用硬件、軟件、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟件或固件來實現。例如,如果用硬件來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用于對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現場可編程門陣列(FPGA)等。
本技術領域的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。
盡管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在本發明的范圍內可以對上述實施例進行變化、修改、替換和變型。