一種基於人工智慧的推送信息的方法和裝置與流程
2023-10-26 16:26:57 1

本申請涉及計算機技術領域,具體涉及網際網路技術領域,尤其涉及一種基於人工智慧的推送信息的方法和裝置。
背景技術:
人工智慧(Artificial Intelligence),英文縮寫為AI。它是研究、開發用於模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。人工智慧是計算機科學的一個分支,它企圖了解智能的實質,並生產出一種新的能以人類智能相似的方式做出反應的智能機器,該領域的研究包括機器人、語言識別、圖像識別、自然語言處理和專家系統等。
目前,用戶在通過搜尋引擎進行檢索時,通常需要向搜尋引擎的輸入窗口輸入檢索關鍵詞以獲取搜索結果。搜尋引擎在接收到當前關鍵詞後,可以基於當前關鍵詞在所有用戶的歷史查詢關鍵詞中出現的頻次以及該用戶在歷史查詢記錄中對查詢關鍵詞的點擊反饋數據,確定當前關鍵詞對應的搜索結果。
然而,目前搜尋引擎採用的確定關鍵詞搜索結果的方法,由於確定搜索結果時所參考的與用戶輸入的數據量較少,因此推送的搜索結果的針對性較弱,推送信息的精準度較低。
技術實現要素:
本申請的目的在於提出一種改進的一種基於人工智慧的推送信息的方法和裝置,來解決以上背景技術部分提到的技術問題。
第一方面,本申請提供了一種基於人工智慧的推送信息的方法,所述方法包括:獲取用戶的當前查詢文本及預定時間內的歷史查詢文本,得到查詢文本組;將所述查詢文本組中的各查詢文本分詞,得到單詞序列組;獲取所述單詞序列組中各單詞的向量表示,得到單詞向量表示序列組;獲取所述單詞向量表示序列組的向量表示,得到編碼的向量表示;解碼所述編碼的向量表示,得到推薦查詢文本;基於所述推薦查詢文本,向用戶推送信息。
在一些實施例中,所述獲取所述單詞向量表示序列組的向量表示,得到編碼的向量表示包括:對於所述單詞向量表示序列組中的各單詞向量表示序列,分別獲取序列的向量表示,得到編碼向量表示序列;以及對於所述編碼向量表示序列,獲取序列的向量表示,得到所述編碼的向量表示。
在一些實施例中,所述獲取序列的向量表示包括:設置神經網絡模型的初始輸出值為0,依次從序列中讀取向量表示並執行以下輸出步驟直至遍歷所述序列以得到序列的向量表示:將當前向量表示和上一次神經網絡模型輸出的向量表示作為神經網絡模型的輸入,得到當前神經網絡模型輸出的向量表示。
在一些實施例中,所述解碼所述編碼的向量表示,得到推薦查詢文本包括:將所述編碼的向量表示的當前狀態添加至當前狀態序列,對所述當前狀態序列執行以下獲取演化步驟以得到單詞的向量表示序列組:獲取單詞的向量表示與所述當前狀態序列中各當前狀態的相似概率,得到當前相似概率序列,採用最大似然估計獲取所述當前相似概率序列中各相似概率與演化至當前狀態過程中的所有相似概率的乘積序列,從大到小獲取所述乘積序列中預定數量的單詞的向量表示,根據各當前狀態獲取的單詞的向量表示將各當前狀態演化至下一狀態,得到下一狀態序列,將所述下一狀態序列作為新的當前狀態序列,並對所述新的當前狀態執行所述獲取演化步驟;基於所述單詞的向量表示序列組,得到推薦查詢文本序列。
在一些實施例中,所述基於所述推薦查詢文本,向用戶推送信息包括:從查詢資料庫中搜索符合各推薦查詢文本的推送信息;向用戶推送搜索到的推送信息。
第二方面,本申請提供了一種基於人工智慧的推送信息的裝置,所述裝置包括:文本獲取單元,用於獲取用戶的當前查詢文本及預定時間內的歷史查詢文本,得到查詢文本組;文本分詞單元,用於將所述查詢文本組中的各查詢文本分詞,得到單詞序列組;向量獲取單元,用於獲取所述單詞序列組中各單詞的向量表示,得到單詞向量表示序列組;向量編碼單元,用於獲取所述單詞向量表示序列組的向量表示,得到編碼的向量表示;向量解碼單元,用於解碼所述編碼的向量表示,得到推薦查詢文本;信息推送單元,用於基於所述推薦查詢文本,向用戶推送信息。
在一些實施例中,所述向量編碼單元包括:單詞向量編碼子單元,用於對於所述單詞向量表示序列組中的各單詞向量表示序列,分別獲取序列的向量表示,得到編碼向量表示序列;以及編碼向量編碼子單元,用於對於所述編碼向量表示序列,獲取序列的向量表示,得到所述編碼的向量表示。
在一些實施例中,所述單詞向量編碼子單元和所述編碼向量編碼子單元中獲取序列的向量表示包括:設置神經網絡模型的初始輸出值為0,依次從序列中讀取向量表示並執行以下輸出步驟直至遍歷所述序列以得到序列的向量表示:將當前向量表示和上一次神經網絡模型輸出的向量表示作為神經網絡模型的輸入,得到當前神經網絡模型輸出的向量表示。
在一些實施例中,所述向量解碼單元包括:獲取演化子單元,用於將所述編碼的向量表示的當前狀態添加至當前狀態序列,對所述當前狀態序列執行以下獲取演化步驟以得到單詞的向量表示序列組:獲取單詞的向量表示與所述當前狀態序列中各當前狀態的相似概率,得到當前相似概率序列,採用最大似然估計獲取所述當前相似概率序列中各相似概率與演化至當前狀態過程中的所有相似概率的乘積序列,從大到小獲取所述乘積序列中預定數量的單詞的向量表示,根據各當前狀態獲取的單詞的向量表示將各當前狀態演化至下一狀態,得到下一狀態序列,將所述下一狀態序列作為新的當前狀態序列,並對所述新的當前狀態執行所述獲取演化步驟;推薦文本子單元,用於基於所述單詞的向量表示序列組,得到推薦查詢文本序列。
在一些實施例中,所述信息推送單元包括:信息搜索子單元,用於從查詢資料庫中搜索符合各推薦查詢文本的推送信息;信息推送子單元,用於向用戶推送搜索到的推送信息。
本申請提供的一種基於人工智慧的推送信息的方法和裝置,首先獲取用戶的當前查詢文本及預定時間內的歷史查詢文本,得到查詢文本組;接著將查詢文本組中的各查詢文本分詞,得到單詞序列組;之後獲取單詞序列組中各單詞的向量表示,得到單詞向量表示序列組;然後獲取單詞向量表示序列組的向量表示,得到編碼的向量表示;然後解碼編碼的向量表示,得到推薦查詢文本;最後基於推薦查詢文本,向用戶推送信息。由於在編碼和解碼的過程中均考慮了上文對下文的影響,因此實現了高效、準確且富於針對性的信息推送。
附圖說明
通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本申請的其它特徵、目的和優點將會變得更明顯:
圖1是本申請可以應用於其中的示例性系統架構圖;
圖2是根據本申請的基於人工智慧的推送信息的方法的一個實施例的示意性流程圖;
圖3是根據本實施例的基於人工智慧的推送信息的方法中獲取編碼的向量表示並解碼編碼的向量表示的一個示例性應用場景;
圖4是根據本申請的基於人工智慧的推送信息的裝置的一個實施例的示例性結構圖;
圖5是適於用來實現本申請實施例的終端設備或伺服器的計算機系統的結構示意圖。
具體實施方式
下面結合附圖和實施例對本申請作進一步的詳細說明。可以理解的是,此處所描述的具體實施例僅僅用於解釋相關發明,而非對該發明的限定。另外還需要說明的是,為了便於描述,附圖中僅示出了與有關發明相關的部分。
需要說明的是,在不衝突的情況下,本申請中的實施例及實施例中的特徵可以相互組合。下面將參考附圖並結合實施例來詳細說明本申請。
圖1示出了可以應用本申請的基於人工智慧的推送信息的方法或基於人工智慧的推送信息的裝置的實施例的示例性系統架構100。
如圖1所示,系統架構100可以包括終端設備101、102、103,網絡104和伺服器105、106。網絡104用以在終端設備101、102、103和伺服器105、106之間提供通信鏈路的介質。網絡104可以包括各種連接類型,例如有線、無線通信鏈路或者光纖電纜等等。
用戶110可以使用終端設備101、102、103通過網絡104與伺服器105、106交互,以接收或發送消息等。終端設備101、102、103上可以安裝有各種通訊客戶端應用,例如網頁瀏覽器應用、搜尋引擎類應用、購物類應用、即時通信工具、郵箱客戶端、社交平臺軟體等。
終端設備101、102、103可以是具有顯示屏並且支持搜索功能的各種電子設備,包括但不限於智慧型手機、平板電腦、電子書閱讀器、MP3播放器(Moving Picture Experts Group Audio Layer III,動態影像專家壓縮標準音頻層面3)、MP4(Moving Picture Experts Group Audio Layer IV,動態影像專家壓縮標準音頻層面4)播放器、膝上型便攜計算機和臺式計算機等等。
伺服器105、106可以是提供各種服務的伺服器,例如對終端設備101、102、103提供支持的後臺伺服器。後臺伺服器可以對接收到的請求等數據進行分析等處理,並將處理結果(例如推送的用戶感興趣目標)反饋給終端設備。
需要說明的是,本申請中實施例所提供的基於人工智慧的推送信息的方法一般由伺服器105、106執行,相應地,基於人工智慧的推送信息的裝置一般設置於伺服器105、106中。
應該理解,圖1中的終端設備、網絡和伺服器的數目僅僅是示意性的。根據實現需要,可以具有任意數目的終端設備、網絡和伺服器。
繼續參考圖2,示出了根據本申請的基於人工智慧的推送信息的方法的一個實施例的流程200。所述的基於人工智慧的推送信息的方法,包括以下步驟:
步驟201,獲取用戶的當前查詢文本及預定時間內的歷史查詢文本,得到查詢文本組。
在本實施例中,基於人工智慧的推送信息的方法運行於其上的電子設備(例如圖1所示的伺服器),可以在接收用戶端發送的當前查詢文本之前或在接收用戶端發送的當前查詢文本之時,獲取該用戶在預定時間內的歷史查詢文本。
這裡的用戶在預定時間內的歷史查詢文本,來源於搜尋引擎中的用戶檢索歷史。基於人工智慧的推送信息的方法運行於其上的電子設備可以根據用戶身份標識號切分多組數據,每組數據表示一個用戶的查詢檢索歷史。考慮到當兩個查詢之間的間隔時間過長時,這兩個查詢之間的上下文關係並不是很緊密。因此可以選取距當前查詢文本的時長小於預定時長的查詢文本(例如30分鐘內的查詢文本),將其作為預定時間內的歷史查詢文本。
在獲取用戶的當前查詢文本及預定時間內的歷史查詢文本之後,可以將用戶的當前查詢文本和預定時間內的每一個歷史查詢文本分別添加至查詢文本組,以得到查詢文本組。
步驟202,將查詢文本組中的各查詢文本分詞,得到單詞序列組。
在本實施例中,當查詢文本組之後,需要對查詢文本組中的每個查詢文本進行切詞,對應一個查詢文本會得到一個單詞序列,從而得到查詢文本組對應的單詞序列組。
步驟203,獲取單詞序列組中各單詞的向量表示,得到單詞向量表示序列組。
在本實施例中,為了方便後續的處理,可以從單詞與標識碼的映射關係資料庫中,查詢單詞序列組中各單詞序列所對應的標誌碼序列,得到標識碼序列組;再從標誌碼與向量的映射關係資料庫中,查詢標識碼序列組中各標識碼序列所對應的向量序列,得到向量序列組。在映射的過程中,為了讓模型對低頻詞(頻次低於預設數量的詞)有更好的平滑效果,可以將出現頻次低的詞映射到同一個標誌碼。
步驟204,獲取單詞向量表示序列組的向量表示,得到編碼的向量表示。
在本實施例中,獲取單詞向量表示序列組的向量表示時,可以基於當前輸入的單詞向量表示和上一次輸入的單詞向量表示的輸出狀態得到單詞向量表示序列組的向量表示,其實現方法可以為現有技術或未來發展的技術中能夠基於當前輸入的單詞向量表示和上一次輸入的單詞向量表示的輸出狀態得到單詞向量表示序列組的向量表示的方法,例如神經網絡模型(RNN),本申請對此不做限定。
在本實施例的一些可選的實現方式中,為了避免傳統的神經網絡模型訓練過程中長梯度難回傳的問題,可以通過神經網絡模型中的門控遞歸單元(GRU)來單詞向量表示序列組的向量表示。
可選地,在獲取單詞向量表示序列組的向量表示時,可以依次讀取單詞向量表示序列組中的單詞向量表示輸入GRU,並基於GRU上一個輸出狀態和當前輸入的單詞向量表示得到GRU當前輸出狀態,最終得到單詞向量表示序列組的向量表示。
備選地,在獲取單詞向量表示序列組的向量表示時,還可以先獲取各個單詞向量表示序列的向量表示,得到編碼向量表示序列,之後再獲取編碼向量表示序列的向量表示,得到編碼的向量表示。
示例性的,在獲取各個單詞向量表示序列的向量表示時,可以設置神經網絡模型的初始輸出值為0,依次從單詞向量表示序列中讀取單詞向量表示並執行以下輸出步驟直至遍歷單詞向量表示序列以得到單詞向量表示序列的向量表示:將當前向量表示和上一次神經網絡模型輸出的向量表示作為神經網絡模型的輸入,得到當前神經網絡模型輸出的向量表示。也即,可以通過神經網絡模型對單詞向量表示序列中的單詞向量表示進行編碼以得到單詞向量表示序列的向量表示。
應當理解,這裡的單詞向量表示序列的向量表示的當前輸出狀態,可以基於對上一個輸出狀態和當前輸入的單詞向量表示的非線性變換得到,計算公式如下:
hn=f(hn-1,Wn);
其中hn表示第n個輸出狀態,R表示實數域,dh表示輸出狀態的維度長度,hn-1表示第n-1個輸出狀態,f表示非線性變換,Wn表示第n個單詞向量表示。
上述獲取的各單詞向量表示序列的向量表示,可以添加至編碼向量表示序列,之後再獲取編碼向量表示序列的向量表示,再將編碼向量表示序列的向量表示作為編碼的向量表示。
示例性的,還可以通過上述的神經網絡模型來獲取編碼向量表示序列的向量表示:設置神經網絡模型的初始輸出值為0,依次從編碼向量表示序列中讀取編碼向量表示並執行以下輸出步驟直至遍歷編碼向量表示序列以得到編碼向量表示序列的向量表示:將當前向量表示和上一次神經網絡模型輸出的向量表示作為神經網絡模型的輸入,得到當前神經網絡模型輸出的向量表示。也即可以通過神經網絡模型對編碼向量表示序列中的編碼向量表示進行編碼以得到編碼向量表示序列的向量表示。
應當理解,這裡的編碼向量表示序列的向量表示的當前輸出狀態同樣可以基於對上一個輸出狀態和當前輸入的編碼向量表示的非線性變換得到,計算公式為:
hn=f(hn-1,Wn);
其中hn表示第n個輸出狀態,R表示實數域,dh表示輸出狀態的維度長度,hn-1表示第n-1個輸出狀態,f表示非線性變換,Wn表示第n個編碼向量表示。
步驟205,解碼編碼的向量表示,得到推薦查詢文本。
在本實施例中,基於步驟204中得到的編碼的向量表示,可以對編碼的向量表示進行解碼,從而得到單詞的向量表示序列組,再基於單詞的向量表示序列組,得到推薦查詢文本序列。
在對編碼的向量表示進行解碼時,可以採用現有技術或未來發展的技術中的解碼方法來實現,本申請對此不做限定。例如,可以從編碼的向量表示中每次解碼出與編碼的向量表示的當前狀態相似概率最大的單詞的向量表示,之後演化編碼的向量表示至下一狀態,並將下一狀態作為當前狀態再次獲取相似概率最大的單詞的向量表示並再次演化。
在本實施例的一些可選實現方式中,在對上述編碼的向量表示進行解碼時,可以將編碼的向量表示的當前狀態添加至當前狀態序列,對當前狀態序列執行以下獲取演化步驟以得到單詞的向量表示序列組:獲取單詞的向量表示與當前狀態序列中各當前狀態的相似概率,得到當前相似概率序列,採用最大似然估計獲取當前相似概率序列中各相似概率與演化至當前狀態過程中的所有相似概率的乘積序列,從大到小獲取乘積序列中預定數量的單詞的向量表示,根據各當前狀態獲取的單詞的向量表示將各當前狀態演化至下一狀態,得到下一狀態序列,將下一狀態序列作為新的當前狀態序列,並對新的當前狀態執行獲取演化步驟。
應當理解,對於上述編碼的向量的當前狀態,計算單詞的向量表示與當前狀態的cosine相似度,得到一個相似概率:
SCORE(wi)=COS(Hn,wi);
其中,SCORE(wi)表示單詞wi與編碼的向量的當前狀態Hn的cosine相似概率;
採用最大似然估計獲取當前相似概率序列中各相似概率與演化至當前狀態過程中的所有相似概率的乘積序列:
其中,Qm表示要向用戶推薦的查詢文本,Q1:m-1表示用戶輸入的m-1個查詢歷史記錄,P(Qm|Q1:m-1)表示從用戶輸入的m-1個查詢歷史記錄中得到要向用戶推薦的查詢文本的概率,Wn表示解碼過程中當前產出的單詞的向量表示,W1:n-1表示解碼過程中已經產出的n-1個單詞的向量表示,表示基於從解碼過程中已經產出的n-1個單詞的向量表示以及用戶輸入的m-1個查詢歷史記錄的向量表示中得到當前產出的單詞的相似概率與演化至當前狀態過程中的所有相似概率的乘積概率,Nm表示要向用戶推薦的查詢文本產出的單詞的數量。
同時,可以從上一個狀態和狀態演化矩陣得到當前狀態:
Hn=Hn-1×M
其中Hn表示當前狀態為第n個狀態,Hn-1表示第n-1個狀態,M表示在獲取乘積序列中單詞的向量表示後得到的狀態演化矩陣。
應當注意的是,這裡由於每一個當前狀態均會獲取大量的相似概率較高的單詞,為了減少搜索所佔用的空間和時間,在每一步深度擴展的時候,保留預定數量的乘積概率較高的單詞的向量表示,並剪掉其它的單詞的向量表示以減少了空間消耗和提高時間效率,這樣最終得到預定數量的單詞的向量表示序列組。
對於預定數量的單詞的向量表示序列組中的各單詞的向量表示序列,可以得到一個推薦查詢文本,從而可以得到預定數量的推薦查詢文本。在將單詞的向量表示序列轉換為推薦查詢文本時,可以從標誌碼與向量的映射關係資料庫中,查詢單詞的向量表示序列所對應的標識碼序列,再從單詞與標識碼的映射關係資料庫中,查詢標誌碼序列所對應的單詞序列,也即推薦查詢文本。
步驟206,基於推薦查詢文本,向用戶推送信息。
在本實施例中,在步驟205中得到推薦查詢文本之後,可以基於推薦查詢文本向用戶推送信息。
在本實施例的一些可選實現方式中,可以從查詢資料庫中搜索符合各推薦查詢文本的推送信息,之後向用戶推送搜索到的推送信息。
本申請上述實施例提供的基於人工智慧的推送信息的方法,對用戶當前查詢文本和歷史查詢文本進行編碼,得到編碼的向量表示,在解碼編碼的向量表示,從而得到推薦的查詢文本,最後並基於推薦的查詢文本向用戶推送信息,由於編碼和解碼的過程中考慮了上文對下文的影響,因此實現了富於針對性的信息推送,且推送的信息的精準度較高。
請參考圖3,圖3是根據本實施例的基於人工智慧的推送信息的方法中獲取編碼的向量表示並解碼編碼的向量表示的一個示例性應用場景。
如圖3所示,在獲取編碼的向量表示並解碼編碼的向量表示的一個應用場景中,用戶在30分鐘之內先後查詢了「深圳最新房價」和「商業貸款」,則運行基於人工智慧的推送信息的方法的設備將這兩個查詢文本「深圳最新房價」和「商業貸款」分別分詞,得到包括「深圳」、「最新」、「房價」三個單詞的第一個單詞序列301,以及包括「商業」和「貸款」兩個單詞的第二個單詞序列302;之後將第一個單詞序列301轉換為第一個單詞向量表示序列303,將第二個單詞序列302轉換為第二個單詞向量表示序列304;然後採用神經網絡模型編碼第一個單詞向量表示序列303,得到第一個編碼向量表示305,採用神經網絡模型編碼第二個單詞向量表示序列304,得到第二個編碼向量表示306;之後採用神經網絡模型將兩個編碼向量表示305、306合併為編碼的向量表示307;之後解碼編碼的向量表示307,得到與編碼的向量表示相似概率最高的「公積金」的向量表示308,並將編碼的向量表示演化至下一狀態,將下一狀態作為當前狀態進行解碼,獲取文本的向量表示中與當前狀態的相似概率,並獲取該相似概率與演化過程中的相似概率的乘積,得到乘積最大的「貸款」的向量表示309,從而得到單詞310「公積金」和單詞311「貸款」,也即得到推薦查詢文本「公積金貸款」,之後可以基於「公積金貸款」向用戶推送查詢資料庫中符合「公積金貸款」的推送信息。
應當理解,圖3中示出的應用場景僅為示例性說明,並不代表對本申請的限定。例如,其中的查詢文本可以為多個,從而得到與查詢文本的數量相同的單詞的表示向量以及編碼向量的數量,最終得到的推薦查詢文本也可以為多個。
在本申請的上述實施例中,第一個單詞序列和第二個單詞序列僅代表兩個不同的單詞序列。本領域技術人員應當理解,其中的第一個或第二個並不構成對單詞序列的特殊限定。
在本申請的上述實施例中,第一個單詞向量表示和第二個單詞向量表示僅代表兩個不同的單詞向量表示。本領域技術人員應當理解,其中的第一個或第二個並不構成對單詞向量表示的特殊限定。
在本申請的上述實施例中,第一個編碼向量表示和第二個編碼向量表示僅代表兩個不同的編碼向量表示。本領域技術人員應當理解,其中的第一個或第二個並不構成對編碼向量表示的特殊限定。
進一步參考圖4,作為對上述方法的實現,本申請提供了一種基於人工智慧的推送信息的裝置的一個實施例,該裝置實施例與圖2所示的方法實施例相對應,該裝置具體可以應用於各種電子設備中。
如圖4所示,本實施例的基於人工智慧的推送信息的裝置400包括:文本獲取單元410、文本分詞單元420、向量獲取單元430、向量編碼單元440、向量解碼單元450和信息推送單元460。
其中,文本獲取單元410,配置用於獲取用戶的當前查詢文本及預定時間內的歷史查詢文本,得到查詢文本組。文本分詞單元420,配置用於將查詢文本組中的各查詢文本分詞,得到單詞序列組。向量獲取單元430,配置用於獲取單詞序列組中各單詞的向量表示,得到單詞向量表示序列組。向量編碼單元440,配置用於獲取單詞向量表示序列組的向量表示,得到編碼的向量表示。向量解碼單元450,配置用於解碼編碼的向量表示,得到推薦查詢文本。信息推送單元460,配置用於基於推薦查詢文本,向用戶推送信息。
在本實施例的一些可選實現方式中,向量編碼單元440包括:單詞向量編碼子單元441,用於對於單詞向量表示序列組中的各單詞向量表示序列,分別獲取序列的向量表示,得到編碼向量表示序列;以及編碼向量編碼子單元442,用於對於編碼向量表示序列,獲取序列的向量表示,得到編碼的向量表示。
在本實施例的一些可選實現方式中,單詞向量編碼子單元441和編碼向量編碼子單元442中獲取序列的向量表示包括:設置神經網絡模型的初始輸出值為0,依次從序列中讀取向量表示並執行以下輸出步驟直至遍歷序列以得到序列的向量表示:將當前向量表示和上一次神經網絡模型輸出的向量表示作為神經網絡模型的輸入,得到當前神經網絡模型輸出的向量表示。
在本實施例的一些可選實現方式中,向量解碼單元450包括:獲取演化子單元451,用於將編碼的向量表示的當前狀態添加至當前狀態序列,對當前狀態序列執行以下獲取演化步驟以得到單詞的向量表示序列組:獲取單詞的向量表示與當前狀態序列中各當前狀態的相似概率,得到當前相似概率序列,採用最大似然估計獲取當前相似概率序列中各相似概率與演化至當前狀態過程中的所有相似概率的乘積序列,從大到小獲取乘積序列中預定數量的單詞的向量表示,根據各當前狀態獲取的單詞的向量表示將各當前狀態演化至下一狀態,得到下一狀態序列,將下一狀態序列作為新的當前狀態序列,並對新的當前狀態執行獲取演化步驟;推薦文本子單元452,用於基於單詞的向量表示序列組,得到推薦查詢文本序列。
在本實施例的一些可選實現方式中,信息推送單元460包括:信息搜索子單元461,用於從查詢資料庫中搜索符合各推薦查詢文本的推送信息;信息推送子單元462,用於向用戶推送搜索到的推送信息。
應當理解,參考圖4描述的裝置中的單元410至460與圖2中描述的方法的步驟201至步驟206相對應。由此,上文針對步驟201至步驟206描述的操作和特徵同樣適用於單元410至單元460,在此不再贅述。
從圖4中可以看出,本實施例中的基於人工智慧的推送信息的方法的裝置400,首先對當前查詢文本和歷史查詢文本分別進行編碼,分別得到編碼向量表示,之後對編碼向量表示序列進行編碼,得到編碼的向量表示,之後解碼編碼的向量表示,從而得到推薦查詢文本,由於在編碼和解碼的過程中均考慮了上文對下文的影響,因此實現了高效、準確且富於針對性的信息推送。
下面參考圖5,其示出了適於用來實現本申請實施例的終端設備或伺服器的計算機系統500的結構示意圖。
如圖5所示,計算機系統500包括中央處理單元(CPU)501,其可以根據存儲在只讀存儲器(ROM)502中的
程序或者從存儲部分508加載到隨機訪問存儲器(RAM)503中的程序而執行各種適當的動作和處理。在RAM 503中,還存儲有系統500操作所需的各種程序和數據。CPU 501、ROM 502以及RAM 503通過總線504彼此相連。輸入/輸出(I/O)接口505也連接至總線504。
以下部件連接至I/O接口505:包括鍵盤、滑鼠等的輸入部分506;包括諸如陰極射線管(CRT)、液晶顯示器(LCD)等以及揚聲器等的輸出部分507;包括硬碟等的存儲部分508;以及包括諸如LAN卡、數據機等的網絡接口卡的通信部分509。通信部分509經由諸如網際網路的網絡執行通信處理。驅動器510也根據需要連接至I/O接口505。可拆卸介質511,諸如磁碟、光碟、磁光碟、半導體存儲器等等,根據需要安裝在驅動器510上,以便於從其上讀出的電腦程式根據需要被安裝入存儲部分508。
特別地,根據本公開的實施例,上文參考流程圖描述的過程可以被實現為計算機軟體程序。例如,本公開的實施例包括一種電腦程式產品,其包括有形地包含在機器可讀介質上的電腦程式,所述電腦程式包含用於執行流程圖所示的方法的程序代碼。在這樣的實施例中,該電腦程式可以通過通信部分509從網絡上被下載和安裝,和/或從可拆卸介質511被安裝。在該電腦程式被中央處理單元(CPU)501執行時,執行本申請的方法中限定的上述功能。
附圖中的流程圖和框圖,圖示了按照本申請各種實施例的系統、方法和電腦程式產品的可能實現的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個單元、程序段、或代碼的一部分,所述單元、程序段、或代碼的一部分包含一個或多個用於實現規定的邏輯功能的可執行指令。也應當注意,在有些作為替換的實現中,方框中所標註的功能也可以以不同於附圖中所標註的順序發生。例如,兩個接連地表示的方框實際上可以基本並行地執行,它們有時也可以按相反的順序執行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執行規定的功能或操作的專用的基於硬體的系統來實現,或者可以用專用硬體與計算機指令的組合來實現。
描述於本申請實施例中所涉及到的單元可以通過軟體的方式實現,也可以通過硬體的方式來實現。所描述的單元也可以設置在處理器中,例如,可以描述為:一種處理器包括文本獲取單元、文本分詞單元、向量獲取單元、向量編碼單元、向量解碼單元和信息推送單元。其中,這些單元的名稱在某種情況下並不構成對該單元本身的限定,例如,文本獲取單元還可以被描述為「獲取用戶的當前查詢文本及預定時間內的歷史查詢文本,得到查詢文本組的單元」。
作為另一方面,本申請還提供了一種非易失性計算機存儲介質,該非易失性計算機存儲介質可以是上述實施例中所述裝置中所包含的非易失性計算機存儲介質;也可以是單獨存在,未裝配入終端中的非易失性計算機存儲介質。上述非易失性計算機存儲介質存儲有一個或者多個程序,當所述一個或者多個程序被一個設備執行時,使得所述設備:獲取用戶的當前查詢文本及預定時間內的歷史查詢文本,得到查詢文本組;將查詢文本組中的各查詢文本分詞,得到單詞序列組;獲取單詞序列組中各單詞的向量表示,得到單詞向量表示序列組;獲取單詞向量表示序列組的向量表示,得到編碼的向量表示;解碼編碼的向量表示,得到推薦查詢文本;基於推薦查詢文本,向用戶推送信息。
以上描述僅為本申請的較佳實施例以及對所運用技術原理的說明。本領域技術人員應當理解,本申請中所涉及的發明範圍,並不限於上述技術特徵的特定組合而成的技術方案,同時也應涵蓋在不脫離所述發明構思的情況下,由上述技術特徵或其等同特徵進行任意組合而形成的其它技術方案。例如上述特徵與本申請中公開的(但不限於)具有類似功能的技術特徵進行互相替換而形成的技術方案。