两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種文本匹配方法及裝置的制作方法

文檔序號:6332609閱讀:221來源:國知局
專利名稱:一種文本匹配方法及裝置的制作方法
技術領域
本申請涉及數(shù)據(jù)處理領域,尤指一種大數(shù)據(jù)量的文本匹配方法及裝置。
背景技術
現(xiàn)有的文本比較,一般采用全量運算匹配的方式,當需要計算文本之間的相關程度的時候,需要針對獲取的所有文本進行計算,最終得到兩兩之間的相似度,這樣每計算一次相似度都要針對所有的文本數(shù)據(jù)進行計算,其計算量將是非常巨大的,其運行時間為 0(Ν"2)量級的,隨著文本數(shù)量N的增大,運算的時間也會很長。這種大數(shù)據(jù)量的運算比較對設備的系統(tǒng)性能帶來了很大的影響,使系統(tǒng)的I/O通訊、數(shù)據(jù)存儲、數(shù)據(jù)的網(wǎng)絡傳輸都面臨很大的壓力,導致設備的數(shù)據(jù)處理速度緩慢,甚至出現(xiàn)數(shù)據(jù)傳輸?shù)淖枞驌砣_@種全量運算的文本匹配所存在的大數(shù)據(jù)運算量對系統(tǒng)性能的影響,隨著需要匹配的文本數(shù)量的增大,變的越來越嚴重。如何實現(xiàn)對大數(shù)據(jù)量匹配的高效處理,成為亟待解決的難題。由于現(xiàn)有技術中基本上都對基于內(nèi)容的文本匹配進行全量數(shù)據(jù)運算,對于基于內(nèi)容的文本匹配的優(yōu)化,已有技術可以包括下列方式(1)針對單機版的基于內(nèi)容的文本匹配,通過建索引的方式提高文本匹配的速度禾口效率。(2)針對分布式的基于內(nèi)容的文本匹配,主要是增加硬件支持,比如增加并行度, 執(zhí)行并行運算。但是無論是建立索引還是增加并行度都不能很好的解決文本匹配過程中,全量數(shù)據(jù)運算操作所存在的數(shù)據(jù)計算量大,運行時間長,需要對所有數(shù)據(jù)進行運算和一一比對,需要的存儲空間大等問題,因此,現(xiàn)有的文本匹配方式存在的數(shù)據(jù)處理速度慢、網(wǎng)絡傳輸阻塞等系統(tǒng)性能瓶頸依然比較嚴重。

發(fā)明內(nèi)容
本申請實施例提供一種文本匹配方法及裝置,用以解決現(xiàn)有技術中存在的文本匹配數(shù)據(jù)處理量大導致處理速度慢、影響系統(tǒng)性能、引起傳輸阻塞等問題。一種文本匹配方法,包括周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當前周期內(nèi)收集的內(nèi)容信息得到當前周期內(nèi)的新增文本并存儲到數(shù)據(jù)庫中;對輸入的新增文本進行分詞,并提取關鍵詞;根據(jù)預先存儲的詞頻表計算提取的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重;所述詞頻表根據(jù)各個詞語在數(shù)據(jù)庫中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫中的文本包括當前周期存儲的新增文本和之前存儲的原始文本;根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重,計算每個新增文本與數(shù)據(jù)庫中的各文本的相似度,或計算數(shù)據(jù)庫中任意兩個文本的相似度;根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本。一種文本匹配裝置,包括收集模塊,用于周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當前周期內(nèi)收集的內(nèi)容信息得到當前周期內(nèi)的新增文本并存儲到數(shù)據(jù)庫中;分詞模塊,用于對輸入的新增文本進行分詞,并提取關鍵詞;權重確定模塊,用于根據(jù)預先存儲的詞頻表計算提取的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重;詞頻更新模塊,用于根據(jù)各個詞語在數(shù)據(jù)庫中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫中的文本包括當前周期存儲的新增文本和之前存儲的原始文本;相似度確定模塊,用于根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重,計算每個新增文本與數(shù)據(jù)庫中的各文本的相似度,或計算數(shù)據(jù)庫中任意兩個文本的相似度;文本比較模塊,用于根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本。本申請有益效果如下本申請實施例提供的文本匹配方法及裝置,通過周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當前周期內(nèi)收集的內(nèi)容信息得到當前周期內(nèi)的新增文本并存儲到數(shù)據(jù)庫中;對輸入的新增文本進行分詞,并提取關鍵詞;根據(jù)預先存儲的詞頻表計算提取的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重;所述詞頻表根據(jù)各個詞語在數(shù)據(jù)庫中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫中的文本包括當前周期存儲的新增文本和之前存儲的原始文本;根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重,計算每個新增文本與數(shù)據(jù)庫中的各文本的相似度,或計算數(shù)據(jù)庫中任意兩個文本的相似度;根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本。上述方法通過建立和更新詞頻表的方式避免了現(xiàn)有技術中任意兩個文本的匹配都需要對所有文本進行計算的問題,具體為關鍵詞的權重不再依賴于全局數(shù)據(jù)運算得到全局變量,而依靠詞頻表即可實現(xiàn),從而減少了匹配運算工作量,提高了系統(tǒng)性能;且通過使用詞頻表可以僅計算部分文本之間的相似度或計算全部文本之間的相似度,因此即使只針對更新后的新增文本進行計算,也能獲取到準確的匹配運算結果。該方式適用于所有文本的匹配,具有很強的通用性和普遍適用性,其匹配過程實現(xiàn)簡單,很好的解決網(wǎng)絡系統(tǒng)瓶頸問題。


圖1為本申請實施例一中文本匹配系統(tǒng)的結構示意圖;圖2為本申請實施例一中文本匹配方法的流程圖;圖3為本申請實施例二中文本匹配方法的流程圖;圖4為本申請實施例三中文本匹配方法的流程圖;圖5為本申請實施例五中文本匹配實現(xiàn)原理的示意圖;圖6為本申請實施例五中文本匹配方法的流程圖;圖7為本申請實施例五中詞頻表更新的原理示意圖8為本申請實施例中文本匹配裝置的結構示意圖。
具體實施例方式本申請實施例提供的文本匹配方法,周期性的獲取新增文本,并將獲取到的新增文本加入數(shù)據(jù)庫中;預先建立詞頻表,并根據(jù)獲取的新增文本或根據(jù)數(shù)據(jù)庫中增加新增文本之后的所有文本更新詞頻表,從而可以根據(jù)詞頻表方便的計算任意兩個文本(包括新增文本和原始文本)之間的相似度。在本申請中根據(jù)需要可以計算數(shù)據(jù)庫中任意兩個文本之間的相似度、也可以只計算新增文本與新增文本以及新增文本與原始文本之間的相似度。下面通過具體的實施例分別說明這兩種情況的實現(xiàn)流程。其中,數(shù)據(jù)庫中存儲的原始文本是指當前周期之前存儲的文本,即上一個周期存入新增文本之后數(shù)據(jù)庫中的所有文本。本申請實現(xiàn)文本匹配的系統(tǒng)架構如圖1所示,該系統(tǒng)包括服務器和若干客戶端, 服務器通過周期性收集客戶端的操作行為,獲取新增文本,實現(xiàn)對文本的匹配??蛻舳撕头掌鞯木唧w功能,在下面的實施例中進行詳細介紹。例如服務器可以對用戶通過客戶端發(fā)布的商品信息進行匹配,確定與用戶發(fā)布的商品信息具有相關性的商品信息,從而實現(xiàn)在其他用戶瀏覽到用戶發(fā)布的商品時,能夠為用戶顯示和推薦類似的或相關的商品。當然本申請的文本匹配方法不限于商品信息的匹配,只要是基于文本的文本匹配都可以通過本申請的方法實現(xiàn)。下面通過具體的實施例說明本申請文本匹配的實現(xiàn)過程。實施例一本申請實施例一提供的文本匹配方法,針對每個周期的每個新增文本,計算每個新增文本與每個原始文本之間、以及任意兩個新增文本之間的相似度。即確定與新增文本相關的相似度數(shù)據(jù)。例如在商品推薦過程中使用時,則是根據(jù)當前周期內(nèi)發(fā)布的商品信息獲取新增文本。并根據(jù)新增文本確定與當前周期內(nèi)發(fā)布的商品信息相匹配的所有商品(信息包括此前發(fā)布的商品信息和當前周期內(nèi)發(fā)布的商品信息)。本申請實施例一提供的文本匹配方法的流程如圖2所示,執(zhí)行步驟如下步驟Sll 周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)用戶發(fā)布的內(nèi)容信息得到當前周期內(nèi)的新增文本。收集用戶發(fā)布的內(nèi)容信息的周期可以根據(jù)需要設定。根據(jù)收集到的各個用戶在當前周期內(nèi)發(fā)布的內(nèi)容信息,可以生成相關的文本,即為當前周期的新增文本。收集到新增文本后將其存儲至數(shù)據(jù)庫中,則數(shù)據(jù)庫中當前存儲有上個周期就已經(jīng)存儲的原始文本和當前周期內(nèi)存入的新增文本。例如用戶通過客戶端發(fā)布商品信息,服務器周期性的獲取各個客戶端發(fā)布的商品信息,其中設定的周期可以是一天、一星期或幾個小時等。優(yōu)選的,在收集到用戶發(fā)布的內(nèi)容信息后,根據(jù)設定的輸入過濾規(guī)則,對收集到的用戶發(fā)布的內(nèi)容信息進行過濾。對收集到的用戶發(fā)布的內(nèi)容信息進行過濾可以根據(jù)內(nèi)容信息的質(zhì)量是否符合設定的質(zhì)量評估閾值,發(fā)布內(nèi)容信息的用戶是否是設定的合格用戶等設置的過濾規(guī)則中的一個或多個,對收集到的用戶發(fā)布的內(nèi)容信息進行過濾。或者根據(jù)其他設置的輸入過濾規(guī)則,對收集到的用戶發(fā)布的內(nèi)容信息進行過濾。在對收集到的用戶發(fā)布的內(nèi)容信息進行過濾后,根據(jù)過濾后內(nèi)容信息生成當前周期內(nèi)的新增文本。仍以商品信息的匹配為例,在獲取到客戶端發(fā)布的商品信息時,對商品信息進行過濾,例如過濾掉沒有提供圖片或沒有其他設定的必要信息的商品。上述通過對收集到的內(nèi)容信息進行過濾,得到新增文本,可以提高收集得到的用戶發(fā)布的內(nèi)容信息的可用性,提高了用于匹配的新增文本的質(zhì)量,從而可以獲得更佳的匹配結果;同時也進一步減少匹配過程的計算量,提高了匹配速度。仍以商品信息的匹配為例,在獲取到客戶端在當前周期內(nèi)發(fā)布的商品信息后可以得到當前周期內(nèi)的新增文本。例如發(fā)布的一個MP3的商品信息包括名稱MP3、顏色紅色、 型號XX以及功能描述等相關信息,則根據(jù)用戶發(fā)布的商品信息,得到一個新增文本。步驟S12 對輸入的新增文本進行分詞,提取關鍵詞。即針對輸入的每個新增文本,將文本內(nèi)容劃分為若干詞語,并提取用于文本匹配的若干關鍵詞,提取得到的若干關鍵詞可以生成一個分詞向量。例如發(fā)布的一個MP3的商品信息包括名稱MP3、顏色紅色、型號XX和功能描述等信息,則將得到的文本分詞后,可以從中提取出MP3、紅色等關鍵詞,這些關鍵詞可以組成一個分詞向量。步驟S13 根據(jù)預先存儲的詞頻表計算從新增文本中提取的每個關鍵詞在數(shù)據(jù)庫中當前存儲的各文本中的權重。該步驟具體計算每個關鍵詞在數(shù)據(jù)庫中存儲的每個文本(包括當前周期的新增文本和上一個周期存儲的原始文本)中的權重,具體可以通過查詢詞頻表中每個關鍵詞在文本中的出現(xiàn)頻率,實現(xiàn)計算關鍵詞在該文本中的權重。其中,詞頻表根據(jù)各個詞語在數(shù)據(jù)庫中存儲的每個文本中的出現(xiàn)頻率周期性更新。這里的各個詞語是指所有詞頻表中詞語,針對這些詞語預計算出來的詞頻,而不僅僅包含當前輸入的新增文本分詞后劃分出的關鍵詞的詞頻。詞頻表在建立時,針對數(shù)據(jù)庫中已存儲的所有文本進行統(tǒng)計,得到每個詞語在各個文本中出現(xiàn)次數(shù)的詞頻表,在后續(xù)可以通過更新的方式來添加和減少更新后的結果。每個收集周期,詞頻表都可以根據(jù)各個關鍵詞在數(shù)據(jù)庫中的當前存儲的各文本中的出現(xiàn)頻率周期性更新,具體包括兩種情況情況一根據(jù)數(shù)據(jù)庫中的當前存儲的所有文本直接更新詞頻表。每次輸入新增文本后,統(tǒng)計各個詞語在輸入的新增文本和數(shù)據(jù)庫中存儲的原始文本中的出現(xiàn)頻率,得到包含各個詞語在數(shù)據(jù)庫中當前存儲的每個文本中的出現(xiàn)頻率的詞頻表。由于計算詞頻的運算量是與輸入數(shù)據(jù)量成線性關系的,因此,即使采用對數(shù)據(jù)庫中存儲的所有文本進行統(tǒng)計來更新詞頻表,其運算量也不會很大,時間也不長。情況二 根據(jù)新增文本和原來詞頻表中存儲的內(nèi)容更新詞頻表。每次輸入新增文本后,統(tǒng)計各個詞語在輸入的每個新增文本中的出現(xiàn)頻率,根據(jù)統(tǒng)計得到的結果與詞頻表中存儲的各個詞語在數(shù)據(jù)庫中存儲的原始文本中的出現(xiàn)頻率,得到包含各個詞語在數(shù)據(jù)庫中的每個文本中的出現(xiàn)頻率的詞頻表。具體實施例中,若預先存儲的詞頻表中未記錄新增文本分詞后得到的各詞語的詞頻,則以情況一所述方案更新詞頻表。若預先存儲的詞頻表中已記錄新增文本分詞后得到的各詞語在原始文本中的詞頻,則以情況二所述方案更新詞頻表。上述根據(jù)預先存儲的詞頻表計算分詞提取的每個關鍵詞在數(shù)據(jù)庫中的當前存儲的各個文本中的權重,具體包括根據(jù)詞頻表,分別確定選定關鍵詞在數(shù)據(jù)庫中當前存儲的每個文本中的出現(xiàn)次數(shù)。以及確定數(shù)據(jù)庫中當前存儲的的所有文本與包含有選定關鍵詞的文本的數(shù)量比。根據(jù)選定關鍵詞在每個文本中的出現(xiàn)次數(shù)和上述計算得到的數(shù)量比,分別計算每個關鍵詞在每個文本中的權重。步驟S14:根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中當前存儲的各個文本中的權重,計算每個新增文本與數(shù)據(jù)庫當前存儲的各個文本的相似度。計算每個新增文本與數(shù)據(jù)庫中當前存儲的各個文本的相似度,包括計算輸入的任意兩個新增文本之間的相似度、以及計算每個新增文本和數(shù)據(jù)庫中存儲的每個原始文本的相似度。計算每個新增文本與數(shù)據(jù)庫中當前存儲的各文本的相似度,具體包括將待計算相似度的文本中的每個關鍵詞的權重組成權重向量。權重向量由上述計算出的各個關鍵詞在該文本中的權重組成。針對每個新增文本,分別計算該新增文本的權重向量與數(shù)據(jù)庫中當前存儲的各文本的權重向量的內(nèi)積,得到該新增文本與數(shù)據(jù)庫中當前存儲的各文本的相似度。由于數(shù)據(jù)庫中的原始文本之間的相似度在上一次輸入上一個周期的新增文本時已經(jīng)計算過,因此,本次只計算新輸入的新增文本之間、以及新輸入的新增文本與數(shù)據(jù)庫中的原始文本之間的相似度,從而大大減少了運算量。步驟S15 根據(jù)計算得到的相似度確定數(shù)據(jù)庫中當前存儲的每個文本的相關文本。上述計算獲取到的每個新增文本和數(shù)據(jù)庫中當前存儲的各個文本之間的相似度之后,根據(jù)具體需求,既可以確定與每個新增文本具有一定相關性的相關文本,也可以確定與數(shù)據(jù)庫中當前存儲的每個文本具有一定相關性的相關文本了。其中,與每個新增文本相關的文本可以是新獲取到的其他新增文本也可以是存儲的原始文本。與數(shù)據(jù)庫中當前存儲的每個文本相關的文本可以是新獲取到的新增文本也可以是存儲的原始文本。其中原始文本與原始文本之間的相似度在之前的周期內(nèi)已經(jīng)確定并存儲在數(shù)據(jù)庫中。也就是說在本實施例中,在確定相關文本時,涉及到數(shù)據(jù)庫中原始文本和原始文本之間的相似度時,直接使用上一次存儲的相似度。其中,與每個文本具有一定相關性的相關文本的確定,具體包括下列兩種確定方式方式一通過設定閾值確定符合設定條件的相關文本。針對待確定相關文本的新增文本或數(shù)據(jù)庫中當前存儲的文本,確定與該新增文本或數(shù)據(jù)庫中當前存儲的文本的相似度大于或大于等于設定閾值的至少一個文本為該新增文本或數(shù)據(jù)庫中當前存儲的文本的相關文本。方式二 通過排序獲取設定數(shù)量的相關文本。針對待確定相關文本的新增文本或數(shù)據(jù)庫中當前存儲的文本,根據(jù)數(shù)據(jù)庫中數(shù)據(jù)庫中當前存儲的每個文本與待確定相關文本的新增文本或數(shù)據(jù)庫中當前存儲的文本的相似度大小排序,確定相似度較高的設定數(shù)量的文本作為待確定相關文本的新增文本或數(shù)據(jù)庫中當前存儲的文本的相關文本。在確定了新增文本或數(shù)據(jù)庫中當前存儲的文本得相關文本之后,存儲在數(shù)據(jù)庫中,用作后續(xù)的商品推薦或其他過程中使用。以用于商品推薦為例在獲取到包括用戶的點擊行為、瀏覽行為、用戶購買行為、收藏網(wǎng)頁上展示的商品等等用戶操作行為時,根據(jù)用戶操作行為涉及的商品所對應的文本,從數(shù)據(jù)庫中獲取該文本的相關文本,將獲取到的相關文本對應的商品推薦給用戶。其中,涉及的商品所對應的文本和該文本的相關文本,根據(jù)商品的發(fā)布時間不同,可能是新增文本也可能是原始文本。實施例二 本申請實施例二提供的文本匹配方法,針對每個周期輸入新增文本后數(shù)據(jù)中存儲的每個文本,計算任意兩個文本之間的相似度,其流程如圖3所示,執(zhí)行步驟如下步驟S21 周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)用戶發(fā)布的內(nèi)容信息得到當前周期內(nèi)的新增文本。同步驟Sll,此處不再贅述。步驟S22 對輸入的新增文本進行分詞,提取關鍵詞。同步驟S12,此處不再贅述。步驟S23 根據(jù)預先存儲的詞頻表計算從新增文本中提取的每個關鍵詞在數(shù)據(jù)庫中的當前存儲的各文本中的權重。同步驟S13,此處不再贅述。步驟S24:根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中當前存儲的各文本中的權重, 計算數(shù)據(jù)庫中任意兩個文本的相似度。計算數(shù)據(jù)庫中任意兩個文本的相似度,包括計算輸入的任意兩個新增文本之間的相似度、計算每個新增文本和數(shù)據(jù)庫中存儲的每個原始文本的相似度、以及計算任意兩個原始文本之間的相似度。計算任意兩個文本的相似度,具體包括將待計算相似度的文本中的每個關鍵詞的權重組成權重向量。針對每個文本,分別計算該文本的權重向量與數(shù)據(jù)庫中存儲的各文本的權重向量的內(nèi)積,得到該文本與數(shù)據(jù)庫中存儲的各文本的相似度。該方式在詞頻更新之后重新計算每個文本之間的相似度,從而能夠獲取到準確的相似度值,使后續(xù)比較匹配的結果更準確。步驟S25 根據(jù)計算得到的相似度確定數(shù)據(jù)庫中當前存儲的每個文本的相關文本。該步驟確定相關文本時,和步驟S15類似的也包含兩種方式。所不同的是在本實施例中,在確定相關文本時,涉及到數(shù)據(jù)庫中原始文本和原始文本之間的相似度時,也是用本次計算得到的相似度。確定相關文本后在商品推薦過程中的應用也與步驟S15類似。實施例三本申請實施例三提供的文本匹配方法,針對實施例一和實施例二的方案進行改進,增加輸出過濾的過程。具體包括
在實施例一的步驟S14計算相似度之后和步驟S15確定相關文本之前增加輸出過濾的步驟,在實施例二的步驟SM計算相似度之后和步驟S25確定相關文本之前增加輸出過濾的過程,其流程如圖4所示,執(zhí)行步驟如下步驟S31 獲取計算得到的每個新增文本與數(shù)據(jù)庫中當前存儲的各個文本的相似度,或計算得到的數(shù)據(jù)庫中任意兩個文本的相似度。針對兩個文本的相似度的過濾,可以根據(jù)后續(xù)相關文本確定的不同要求,對不同文本的相似度進行過濾,因此,針對實施例一計算新增文本和數(shù)據(jù)庫中當前存儲的各個文本之間的相似度時,獲取的是計算得到的每個新增文本與數(shù)據(jù)庫中的數(shù)據(jù)庫中當前存儲的每個文本的相似度。針對實施例二計算任意兩個文本之間的相似度時,獲取的是計算得到的數(shù)據(jù)庫中任意兩個文本的相似度。步驟S32 根據(jù)設定的輸出過濾規(guī)則,對數(shù)據(jù)庫中當前存儲的待確定相關文本的每個文本相關的相似度數(shù)據(jù)進行過濾。對待確定相關文本的每個文本相關的相似度數(shù)據(jù)進行過濾,去除不符合設定條件的文本數(shù)據(jù)時,可以根據(jù)相似度的大小,去除與待確定相關文本的每個文本相似度小于設定閾值的文本;也可以根據(jù)相似度的大小排序,去除與待確定相關文本的每個文本相似度較低的設定數(shù)量的文本。當然也可以設置其他的輸出過濾規(guī)則對輸出文本進行過濾。通過對待確定相關文本的每個文本相關的相似度數(shù)據(jù)進行過濾,減少匹配過程中需要匹配的文本的數(shù)量,從而進一步了提高匹配速度和效率。實施例四本申請實施例四提供的文本匹配方法,具體提供實現(xiàn)文本匹配的一個具體實現(xiàn)示例,其實現(xiàn)原理如圖5所示,其流程如圖6所示,執(zhí)行步驟如下步驟S41 周期性在數(shù)據(jù)層采集用戶發(fā)布的內(nèi)容信息。其中,用戶發(fā)布的內(nèi)容信息的采集是在數(shù)據(jù)層完成的。數(shù)據(jù)表中的數(shù)據(jù)在數(shù)據(jù)層進行更新,更新根據(jù)設定的周期進行。數(shù)據(jù)層是數(shù)據(jù)的提供層和存儲層,為數(shù)據(jù)的應用層提供數(shù)據(jù),最終用于前臺展現(xiàn)。 同時,數(shù)據(jù)層為底層的算法層提供輸入數(shù)據(jù),也接受算法層的運算結果。這一層包括數(shù)據(jù)庫和一些存儲文件。例如,將采集到的用戶發(fā)布的商品信息中的商品名稱作為文本數(shù)據(jù),下面的匹配對比是基于得到的文本數(shù)據(jù)的內(nèi)容進行的。例如采集到發(fā)布的商品信息為MP3,則找到包含MP3的其他文本作為匹配文本。步驟S42 對采集到的用戶發(fā)布的內(nèi)容信息進行過濾。在過濾層進行用戶發(fā)布的內(nèi)容信息的過濾,根據(jù)設定輸入過濾規(guī)則,對采集到的用戶發(fā)布的內(nèi)容信息進行過濾。也就是說由過濾層對算法層的輸入和輸出做過濾處理,該步驟的輸入過濾涉及到的是對算法層輸入的過濾,過濾后提供給算法層。后續(xù)步驟中的輸出過濾涉及到的是對算法層的計算結果進行過濾,提供給數(shù)據(jù)層。其中,設定的過濾規(guī)則包括實施例一中所描述的內(nèi)容信息的質(zhì)量是否符合設定的質(zhì)量評估閾值,發(fā)布內(nèi)容信息的用戶是否是設定合格用戶等等。例如過濾去掉數(shù)據(jù)質(zhì)量低的內(nèi)容信息。即將內(nèi)容信息質(zhì)量低于設定的質(zhì)量評估閾值的內(nèi)容信息去除。從而避免在文本匹配中,有的文本來源于低質(zhì)量的商品信息,這類商品信息,通常質(zhì)量評分值比較低,比如沒有提供圖片,或其他必要的信息,這類商品被推薦和點擊的意義不大。因此,這類商品信息一般質(zhì)量評分值低于設定的質(zhì)量評估閾值,在進行文本匹配運算之前就會被過濾剔除掉。又例如過濾掉不合格用戶的內(nèi)容信息,不合格用戶包括網(wǎng)絡爬蟲,機器人,和不合格的物理用戶等等??梢酝ㄟ^判斷發(fā)布內(nèi)容信息的用戶的訪問次數(shù)是否超過設定的訪問閾值,例如網(wǎng)絡爬蟲,機器人,他們的行為有明顯的特征,他們通常在一段時間內(nèi)異?;钴S,他們提供的數(shù)據(jù),可視為噪音,予以剔除。此時可以設定一個訪問閾值,當訪問次數(shù)大于該閾值認為是網(wǎng)絡爬蟲或機器人。也可以通過判斷用戶的信用值、有效期限等來判斷是否是合格的用戶。從而去除包括低信用的用戶,過期的用戶,還有不活躍的用戶(一般指設定時間范圍內(nèi)沒有操作行為的用戶,如最近的一個月沒有登錄,一個月沒有行為數(shù)據(jù)等),這些不合格的用戶發(fā)布的內(nèi)容信息可視為無效信息,予以剔除。輸入過濾的目的是在系統(tǒng)采集到待輸入的文本數(shù)據(jù)后,對輸入的文本數(shù)據(jù)的過濾處理,過濾掉噪音,不合格用戶數(shù)據(jù)和低質(zhì)量數(shù)據(jù)等,使輸入的文本數(shù)據(jù)減少。步驟S43 根據(jù)過濾后的內(nèi)容信息得到當前周期的新增文本。在對收集到的用戶發(fā)布的內(nèi)容信息進行過濾后,根據(jù)過濾后內(nèi)容信息生成當前周期內(nèi)的新增文本,從而提高了新增文本的質(zhì)量。步驟S44 根據(jù)過濾后輸入的新增文本進行相似度計算。過濾后的新增文本會被輸入到算法層,用于相似度的運算,以及更新詞頻表。其中,更新詞頻表的原理如圖7所示。當新增文本輸入后,算法層擁有包含此前各周期內(nèi)輸入的原始文本和當前周期輸入的新增文本在內(nèi)的數(shù)據(jù)庫中當前存儲的所有文本。此時可以直接根據(jù)數(shù)據(jù)庫中當前存儲的所有文本更新詞頻表,也可以根據(jù)數(shù)據(jù)庫中當前存儲的所有文本與原始文本對比得到的新增文本,獲取新增的數(shù)據(jù)文件來更新詞頻表。新增文本與數(shù)據(jù)庫中存儲的各文本之間的相似度計算,以及數(shù)據(jù)庫中當前存儲任意兩個文本之間的相似度計算過程分別參見實施例一和實施例二的描述其中,根據(jù)預先存儲的詞頻表計算分詞提取的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重的過程具體包括首先,確定選定關鍵詞在數(shù)據(jù)庫中每個文本中的出現(xiàn)次數(shù)。即針對每個文本,分別確定選定的關鍵詞的出現(xiàn)次數(shù)。具體可以通過詞頻表的到,詞頻表中詞語出現(xiàn)次數(shù)可以通過詞頻-反向文檔頻率 (term frequency-inverse document frequency, TF-1DF),艮口第 i 個關鍵詞在第 j 個文本中出現(xiàn)的次數(shù)可以通過下列公式計算得到TFlj = fu
max f2 j其中,fi,」是第i個關鍵詞Ici在第j個文本Clj中出現(xiàn)的次數(shù),max fZjJ表示中的最大值,i,j為正整數(shù)。詞頻表根據(jù)該公式更新,而使用過程中需要確定時可以直接查詢詞頻表。
在使用上述公式時,可以根據(jù)實際情況對f^和max fz,j的值進行限定。例如可以設置fi,j和max fz,j的值為1,來表示將文本中多次出現(xiàn)的同一個關鍵詞視為出現(xiàn)了一次。其次,確定數(shù)據(jù)庫中的存儲的所有文本與包含有選定關鍵詞的文本的數(shù)量比。具體通過下列公式確定
權利要求
1.一種文本匹配方法,其特征在于,包括周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當前周期內(nèi)收集的內(nèi)容信息得到當前周期內(nèi)的新增文本并存儲到數(shù)據(jù)庫中;對輸入的新增文本進行分詞,并提取關鍵詞;根據(jù)預先存儲的詞頻表計算提取的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重;所述詞頻表根據(jù)各個詞語在數(shù)據(jù)庫中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫中的文本包括當前周期存儲的新增文本和之前存儲的原始文本;根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重,計算每個新增文本與數(shù)據(jù)庫中的各文本的相似度,或計算數(shù)據(jù)庫中任意兩個文本的相似度; 根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本。
2.如權利要求1所述的方法,其特征在于,所述詞頻表根據(jù)各個關鍵詞在數(shù)據(jù)庫中的各文本中的出現(xiàn)頻率周期性更新,具體包括每次輸入新增文本后,統(tǒng)計各個詞語在輸入的新增文本和數(shù)據(jù)庫中存儲的原始文本中的出現(xiàn)的頻率,得到包含各個詞語在數(shù)據(jù)庫中的每個文本中的出現(xiàn)頻率的的詞頻表;或每次輸入新增文本后,統(tǒng)計各個詞語在輸入的每個新增文本中的出現(xiàn)的頻率,根據(jù)統(tǒng)計得到的結果與詞頻表中存儲的各個詞語在數(shù)據(jù)庫中的存儲的原始文本中的出現(xiàn)頻率,得到包含各個詞語在數(shù)據(jù)庫中的每個文本中的出現(xiàn)頻率的的詞頻表。
3.如權利要求2所述的方法,其特征在于,所述根據(jù)預先存儲的詞頻表計算分詞得到的每個關鍵詞在數(shù)據(jù)庫中各文本中的權重,具體包括根據(jù)詞頻表,分別確定選定關鍵詞在數(shù)據(jù)庫中每個文本中的出現(xiàn)次數(shù);以及確定數(shù)據(jù)庫中的存儲的文本與包含有選定關鍵詞的文本的數(shù)量比; 根據(jù)選定關鍵詞在每個文本中的出現(xiàn)次數(shù)和所述數(shù)量比,分別計算每個關鍵詞在每個文本中的權重。
4.如權利要求1所述的方法,其特征在于,所述計算每個新增文本與數(shù)據(jù)庫中的各文本的相似度,或計算數(shù)據(jù)庫中任意兩個文本的相似度,具體包括將待計算相似度的文本中的每個關鍵詞的權重組成權重向量; 針對每個新增文本,分別計算該新增文本的權重向量與數(shù)據(jù)庫中存儲的各文本的權重向量的內(nèi)積,得到該新增文本與數(shù)據(jù)庫中存儲的各文本的相似度;或針對數(shù)據(jù)庫中存儲的每個文本,分別計算該文本的權重向量與數(shù)據(jù)庫中存儲的各文本的權重向量的內(nèi)積,得到該文本與數(shù)據(jù)庫中存儲的各文本的相似度。
5.如權利要求1所述的方法,其特征在于,所述根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本,具體包括針對待確定相關文本的每個文本,確定與該文本的相似度大于或大于等于設定閾值的至少一個數(shù)據(jù)庫中存儲的文本為該文本的相關文本;或針對待確定相關文本的每個文本,根據(jù)數(shù)據(jù)庫中各文本與待確定相關文本的文本的相似度大小排序,確定相似度較高的設定數(shù)量的數(shù)據(jù)庫中存儲的文本作為待確定相關文本的文本的相關文本。
6.如權利要求1-5任一所述的方法,其特征在于,所述根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本之前,還包括根據(jù)計算得到的每個新增文本與數(shù)據(jù)庫中的每個文本的相似度,或計算得到的數(shù)據(jù)庫中任意兩個文本的相似度;對待確定相關文本的新增文本或數(shù)據(jù)庫中存儲的文本相關的相似度數(shù)據(jù)進行過濾,去除與待確定相關文本的新增文本或數(shù)據(jù)庫中存儲的文本相似度小于設定閾值的文本,或去除與待確定相關文本的新增文本或數(shù)據(jù)庫中存儲的文本相似度較低的設定數(shù)量的文本。
7.如權利要求1-5任一所述的方法,其特征在于,所述根據(jù)當前周期內(nèi)收集的內(nèi)容信息得到當前周期內(nèi)的新增文本之前,還包括根據(jù)設定的輸入過濾規(guī)則,對當前周期內(nèi)收集到用戶發(fā)布的內(nèi)容信息進行過濾,根據(jù)過濾后內(nèi)容信息得到當前周期內(nèi)的新增文本。
8.如權利要求7所述的方法,其特征在于,所述根據(jù)設定的輸入過濾規(guī)則,對當前周期內(nèi)收集到用戶發(fā)布的內(nèi)容信息進行過濾,具體包括根據(jù)內(nèi)容信息的質(zhì)量是否符合設定的質(zhì)量評估閾值和/或發(fā)布內(nèi)容信息的用戶是否是設定的合格用戶,對所述收集到的內(nèi)容信息進行過濾。
9.一種文本匹配裝置,其特征在于,包括收集模塊,用于周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當前周期內(nèi)收集的內(nèi)容信息得到當前周期內(nèi)的新增文本并存儲到數(shù)據(jù)庫中;分詞模塊,用于對輸入的新增文本進行分詞,并提取關鍵詞;權重確定模塊,用于根據(jù)預先存儲的詞頻表計算提取的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重;詞頻更新模塊,用于根據(jù)各個詞語在數(shù)據(jù)庫中的各文本中的出現(xiàn)頻率周期性更新詞頻表;數(shù)據(jù)庫中的文本包括當前周期存儲的新增文本和之前存儲的原始文本;相似度確定模塊,用于根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重,計算每個新增文本與數(shù)據(jù)庫中的各文本的相似度,或計算數(shù)據(jù)庫中任意兩個文本的相似度;文本比較模塊,用于根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本。
10.如權利要求9所述的裝置,其特征在于,所述詞頻更新模塊,具體用于每次輸入新增文本后,統(tǒng)計各個詞語在輸入的新增文本和數(shù)據(jù)庫中存儲的原始文本中的出現(xiàn)的頻率,得到包含各個詞語在數(shù)據(jù)庫中的每個文本中的出現(xiàn)頻率的的詞頻表;或每次輸入新增文本后,統(tǒng)計各個詞語在輸入的每個新增文本中的出現(xiàn)的頻率,根據(jù)統(tǒng)計得到的結果與詞頻表中存儲的各個詞語在數(shù)據(jù)庫中的存儲的原始文本中的出現(xiàn)頻率,得到包含各個詞語在數(shù)據(jù)庫中的每個文本中的出現(xiàn)頻率的的詞頻表。
11.如權利要求10所述的裝置,其特征在于,所述權重確定模塊,具體包括第一確定單元,用于根據(jù)詞頻表,分別確定選定關鍵詞在數(shù)據(jù)庫中每個文本中的出現(xiàn)次數(shù);第二確定單元,用于確定數(shù)據(jù)庫中存儲的文本與包含有選定關鍵詞的文本的數(shù)量比;權重計算單元,用于根據(jù)選定關鍵詞在每個文本中的出現(xiàn)次數(shù)和所述數(shù)量比,分別計算每個關鍵詞在每個文本中的權重。
12.如權利要求9所述的裝置,其特征在于,所述相似度確定模塊,具體包括向量生成單元,用于將待計算相似度的文本中的每個關鍵詞的權重組成權重向量;相似度計算單元,用于針對每個新增文本,分別計算該新增文本的權重向量與數(shù)據(jù)庫中存儲的各文本的權重向量的內(nèi)積,得到該新增文本與數(shù)據(jù)庫中存儲的各文本的相似度; 或針對數(shù)據(jù)庫中存儲的每個文本,分別計算該文本的權重向量與數(shù)據(jù)庫中存儲的各文本的權重向量的內(nèi)積,得到該文本與數(shù)據(jù)庫中存儲的各文本的相似度。
13.如權利要求9所述的裝置,其特征在于,所述文本比較模塊,具體用于針對待確定相關文本的每個文本,確定與該文本的相似度大于或大于等于設定閾值的至少一個數(shù)據(jù)庫中存儲的文本的相關文本;或針對待確定相關文本的每個文本,根據(jù)數(shù)據(jù)庫中各文本與待確定相關文本的文本的相似度大小排序,確定相似度較高的設定數(shù)量的數(shù)據(jù)庫中存儲的文本作為待確定相關文本的文本的相關文本。
14.如權利要求9-13任一所述的裝置,其特征在于,還包括輸入過濾模塊,用于根據(jù)設定的輸入過濾規(guī)則,對當前周期內(nèi)收集到用戶發(fā)布的內(nèi)容信息進行過濾,根據(jù)過濾后內(nèi)容信息得到當前周期內(nèi)的新增文本。
15.如權利要求9-13任一所述的裝置,其特征在于,還包括輸出過濾模塊,用于根據(jù)所述相似度確定模塊計算得到的每個新增文本與數(shù)據(jù)庫中的每個文本的相似度,或計算得到的數(shù)據(jù)庫中任意兩個文本的相似度;對待確定相關文本的新增文本或數(shù)據(jù)庫中存儲的文本相關的相似度數(shù)據(jù)進行過濾,去除與待確定相關文本的新增文本或數(shù)據(jù)庫中存儲的文本相似度小于設定閾值的文本,或去除與待確定相關文本的新增文本或數(shù)據(jù)庫中存儲的文本相似度較低的設定數(shù)量的文本;所述文本比較模塊具體用于根據(jù)過濾后的文本確定數(shù)據(jù)庫中存儲的各文本的相關文本。
全文摘要
本申請公開了一種文本匹配方法及裝置,該方法包括根據(jù)當前周期內(nèi)收集的內(nèi)容信息得到當前周期內(nèi)的新增文本并存儲到數(shù)據(jù)庫中;對輸入的新增文本進行分詞并提取關鍵詞;根據(jù)預先存儲的詞頻表計算提取的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重;所述詞頻表根據(jù)各個詞語在數(shù)據(jù)庫中的各文本中的出現(xiàn)頻率周期性更新;根據(jù)計算得到的每個關鍵詞在數(shù)據(jù)庫中的各文本中的權重,計算每個新增文本與數(shù)據(jù)庫中的各文本的相似度,或計算數(shù)據(jù)庫中任意兩個文本的相似度;根據(jù)計算得到的相似度確定數(shù)據(jù)庫中存儲的各文本的相關文本。通過建立和更新詞頻表的方式避免了現(xiàn)有技術中每次匹配都需要對所有文本進行計算的問題,減少了匹配運算工作量,提高了系統(tǒng)性能。
文檔編號G06F17/27GK102411583SQ20101029069
公開日2012年4月11日 申請日期2010年9月20日 優(yōu)先權日2010年9月20日
發(fā)明者張旭, 祁建程, 蘇寧軍, 顧海杰 申請人:阿里巴巴集團控股有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
鞍山市| 内丘县| 渑池县| 池州市| 商都县| 关岭| 阿拉善右旗| 原阳县| 双辽市| 巴楚县| 察隅县| 深州市| 格尔木市| 祁门县| 临颍县| 嘉禾县| 安庆市| 博野县| 天峨县| 巴塘县| 游戏| 科技| 鹤岗市| 潞城市| 云安县| 武乡县| 平湖市| 山阴县| 金门县| 定南县| 阳信县| 监利县| 修水县| 萨嘎县| 壶关县| 临湘市| 申扎县| 柯坪县| 剑川县| 呼图壁县| 雷波县|