專利名稱:一種文本匹配方法及裝置的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及數(shù)據(jù)處理領(lǐng)域,尤指一種大數(shù)據(jù)量的文本匹配方法及裝置。
背景技術(shù):
現(xiàn)有的文本比較,一般采用全量運(yùn)算匹配的方式,當(dāng)需要計(jì)算文本之間的相關(guān)程度的時(shí)候,需要針對(duì)獲取的所有文本進(jìn)行計(jì)算,最終得到兩兩之間的相似度,這樣每計(jì)算一次相似度都要針對(duì)所有的文本數(shù)據(jù)進(jìn)行計(jì)算,其計(jì)算量將是非常巨大的,其運(yùn)行時(shí)間為 0(Ν"2)量級(jí)的,隨著文本數(shù)量N的增大,運(yùn)算的時(shí)間也會(huì)很長(zhǎng)。這種大數(shù)據(jù)量的運(yùn)算比較對(duì)設(shè)備的系統(tǒng)性能帶來(lái)了很大的影響,使系統(tǒng)的I/O通訊、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)的網(wǎng)絡(luò)傳輸都面臨很大的壓力,導(dǎo)致設(shè)備的數(shù)據(jù)處理速度緩慢,甚至出現(xiàn)數(shù)據(jù)傳輸?shù)淖枞驌砣?。這種全量運(yùn)算的文本匹配所存在的大數(shù)據(jù)運(yùn)算量對(duì)系統(tǒng)性能的影響,隨著需要匹配的文本數(shù)量的增大,變的越來(lái)越嚴(yán)重。如何實(shí)現(xiàn)對(duì)大數(shù)據(jù)量匹配的高效處理,成為亟待解決的難題。由于現(xiàn)有技術(shù)中基本上都對(duì)基于內(nèi)容的文本匹配進(jìn)行全量數(shù)據(jù)運(yùn)算,對(duì)于基于內(nèi)容的文本匹配的優(yōu)化,已有技術(shù)可以包括下列方式(1)針對(duì)單機(jī)版的基于內(nèi)容的文本匹配,通過(guò)建索引的方式提高文本匹配的速度禾口效率。(2)針對(duì)分布式的基于內(nèi)容的文本匹配,主要是增加硬件支持,比如增加并行度, 執(zhí)行并行運(yùn)算。但是無(wú)論是建立索引還是增加并行度都不能很好的解決文本匹配過(guò)程中,全量數(shù)據(jù)運(yùn)算操作所存在的數(shù)據(jù)計(jì)算量大,運(yùn)行時(shí)間長(zhǎng),需要對(duì)所有數(shù)據(jù)進(jìn)行運(yùn)算和一一比對(duì),需要的存儲(chǔ)空間大等問(wèn)題,因此,現(xiàn)有的文本匹配方式存在的數(shù)據(jù)處理速度慢、網(wǎng)絡(luò)傳輸阻塞等系統(tǒng)性能瓶頸依然比較嚴(yán)重。
發(fā)明內(nèi)容
本申請(qǐng)實(shí)施例提供一種文本匹配方法及裝置,用以解決現(xiàn)有技術(shù)中存在的文本匹配數(shù)據(jù)處理量大導(dǎo)致處理速度慢、影響系統(tǒng)性能、引起傳輸阻塞等問(wèn)題。一種文本匹配方法,包括周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當(dāng)前周期內(nèi)收集的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本并存儲(chǔ)到數(shù)據(jù)庫(kù)中;對(duì)輸入的新增文本進(jìn)行分詞,并提取關(guān)鍵詞;根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重;所述詞頻表根據(jù)各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫(kù)中的文本包括當(dāng)前周期存儲(chǔ)的新增文本和之前存儲(chǔ)的原始文本;根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重,計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中的各文本的相似度,或計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度;根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本。一種文本匹配裝置,包括收集模塊,用于周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當(dāng)前周期內(nèi)收集的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本并存儲(chǔ)到數(shù)據(jù)庫(kù)中;分詞模塊,用于對(duì)輸入的新增文本進(jìn)行分詞,并提取關(guān)鍵詞;權(quán)重確定模塊,用于根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重;詞頻更新模塊,用于根據(jù)各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫(kù)中的文本包括當(dāng)前周期存儲(chǔ)的新增文本和之前存儲(chǔ)的原始文本;相似度確定模塊,用于根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重,計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中的各文本的相似度,或計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度;文本比較模塊,用于根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本。本申請(qǐng)有益效果如下本申請(qǐng)實(shí)施例提供的文本匹配方法及裝置,通過(guò)周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當(dāng)前周期內(nèi)收集的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本并存儲(chǔ)到數(shù)據(jù)庫(kù)中;對(duì)輸入的新增文本進(jìn)行分詞,并提取關(guān)鍵詞;根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重;所述詞頻表根據(jù)各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫(kù)中的文本包括當(dāng)前周期存儲(chǔ)的新增文本和之前存儲(chǔ)的原始文本;根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重,計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中的各文本的相似度,或計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度;根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本。上述方法通過(guò)建立和更新詞頻表的方式避免了現(xiàn)有技術(shù)中任意兩個(gè)文本的匹配都需要對(duì)所有文本進(jìn)行計(jì)算的問(wèn)題,具體為關(guān)鍵詞的權(quán)重不再依賴于全局?jǐn)?shù)據(jù)運(yùn)算得到全局變量,而依靠詞頻表即可實(shí)現(xiàn),從而減少了匹配運(yùn)算工作量,提高了系統(tǒng)性能;且通過(guò)使用詞頻表可以僅計(jì)算部分文本之間的相似度或計(jì)算全部文本之間的相似度,因此即使只針對(duì)更新后的新增文本進(jìn)行計(jì)算,也能獲取到準(zhǔn)確的匹配運(yùn)算結(jié)果。該方式適用于所有文本的匹配,具有很強(qiáng)的通用性和普遍適用性,其匹配過(guò)程實(shí)現(xiàn)簡(jiǎn)單,很好的解決網(wǎng)絡(luò)系統(tǒng)瓶頸問(wèn)題。
圖1為本申請(qǐng)實(shí)施例一中文本匹配系統(tǒng)的結(jié)構(gòu)示意圖;圖2為本申請(qǐng)實(shí)施例一中文本匹配方法的流程圖;圖3為本申請(qǐng)實(shí)施例二中文本匹配方法的流程圖;圖4為本申請(qǐng)實(shí)施例三中文本匹配方法的流程圖;圖5為本申請(qǐng)實(shí)施例五中文本匹配實(shí)現(xiàn)原理的示意圖;圖6為本申請(qǐng)實(shí)施例五中文本匹配方法的流程圖;圖7為本申請(qǐng)實(shí)施例五中詞頻表更新的原理示意圖8為本申請(qǐng)實(shí)施例中文本匹配裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式本申請(qǐng)實(shí)施例提供的文本匹配方法,周期性的獲取新增文本,并將獲取到的新增文本加入數(shù)據(jù)庫(kù)中;預(yù)先建立詞頻表,并根據(jù)獲取的新增文本或根據(jù)數(shù)據(jù)庫(kù)中增加新增文本之后的所有文本更新詞頻表,從而可以根據(jù)詞頻表方便的計(jì)算任意兩個(gè)文本(包括新增文本和原始文本)之間的相似度。在本申請(qǐng)中根據(jù)需要可以計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本之間的相似度、也可以只計(jì)算新增文本與新增文本以及新增文本與原始文本之間的相似度。下面通過(guò)具體的實(shí)施例分別說(shuō)明這兩種情況的實(shí)現(xiàn)流程。其中,數(shù)據(jù)庫(kù)中存儲(chǔ)的原始文本是指當(dāng)前周期之前存儲(chǔ)的文本,即上一個(gè)周期存入新增文本之后數(shù)據(jù)庫(kù)中的所有文本。本申請(qǐng)實(shí)現(xiàn)文本匹配的系統(tǒng)架構(gòu)如圖1所示,該系統(tǒng)包括服務(wù)器和若干客戶端, 服務(wù)器通過(guò)周期性收集客戶端的操作行為,獲取新增文本,實(shí)現(xiàn)對(duì)文本的匹配??蛻舳撕头?wù)器的具體功能,在下面的實(shí)施例中進(jìn)行詳細(xì)介紹。例如服務(wù)器可以對(duì)用戶通過(guò)客戶端發(fā)布的商品信息進(jìn)行匹配,確定與用戶發(fā)布的商品信息具有相關(guān)性的商品信息,從而實(shí)現(xiàn)在其他用戶瀏覽到用戶發(fā)布的商品時(shí),能夠?yàn)橛脩麸@示和推薦類似的或相關(guān)的商品。當(dāng)然本申請(qǐng)的文本匹配方法不限于商品信息的匹配,只要是基于文本的文本匹配都可以通過(guò)本申請(qǐng)的方法實(shí)現(xiàn)。下面通過(guò)具體的實(shí)施例說(shuō)明本申請(qǐng)文本匹配的實(shí)現(xiàn)過(guò)程。實(shí)施例一本申請(qǐng)實(shí)施例一提供的文本匹配方法,針對(duì)每個(gè)周期的每個(gè)新增文本,計(jì)算每個(gè)新增文本與每個(gè)原始文本之間、以及任意兩個(gè)新增文本之間的相似度。即確定與新增文本相關(guān)的相似度數(shù)據(jù)。例如在商品推薦過(guò)程中使用時(shí),則是根據(jù)當(dāng)前周期內(nèi)發(fā)布的商品信息獲取新增文本。并根據(jù)新增文本確定與當(dāng)前周期內(nèi)發(fā)布的商品信息相匹配的所有商品(信息包括此前發(fā)布的商品信息和當(dāng)前周期內(nèi)發(fā)布的商品信息)。本申請(qǐng)實(shí)施例一提供的文本匹配方法的流程如圖2所示,執(zhí)行步驟如下步驟Sll 周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)用戶發(fā)布的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本。收集用戶發(fā)布的內(nèi)容信息的周期可以根據(jù)需要設(shè)定。根據(jù)收集到的各個(gè)用戶在當(dāng)前周期內(nèi)發(fā)布的內(nèi)容信息,可以生成相關(guān)的文本,即為當(dāng)前周期的新增文本。收集到新增文本后將其存儲(chǔ)至數(shù)據(jù)庫(kù)中,則數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)有上個(gè)周期就已經(jīng)存儲(chǔ)的原始文本和當(dāng)前周期內(nèi)存入的新增文本。例如用戶通過(guò)客戶端發(fā)布商品信息,服務(wù)器周期性的獲取各個(gè)客戶端發(fā)布的商品信息,其中設(shè)定的周期可以是一天、一星期或幾個(gè)小時(shí)等。優(yōu)選的,在收集到用戶發(fā)布的內(nèi)容信息后,根據(jù)設(shè)定的輸入過(guò)濾規(guī)則,對(duì)收集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾。對(duì)收集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾可以根據(jù)內(nèi)容信息的質(zhì)量是否符合設(shè)定的質(zhì)量評(píng)估閾值,發(fā)布內(nèi)容信息的用戶是否是設(shè)定的合格用戶等設(shè)置的過(guò)濾規(guī)則中的一個(gè)或多個(gè),對(duì)收集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾?;蛘吒鶕?jù)其他設(shè)置的輸入過(guò)濾規(guī)則,對(duì)收集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾。在對(duì)收集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾后,根據(jù)過(guò)濾后內(nèi)容信息生成當(dāng)前周期內(nèi)的新增文本。仍以商品信息的匹配為例,在獲取到客戶端發(fā)布的商品信息時(shí),對(duì)商品信息進(jìn)行過(guò)濾,例如過(guò)濾掉沒(méi)有提供圖片或沒(méi)有其他設(shè)定的必要信息的商品。上述通過(guò)對(duì)收集到的內(nèi)容信息進(jìn)行過(guò)濾,得到新增文本,可以提高收集得到的用戶發(fā)布的內(nèi)容信息的可用性,提高了用于匹配的新增文本的質(zhì)量,從而可以獲得更佳的匹配結(jié)果;同時(shí)也進(jìn)一步減少匹配過(guò)程的計(jì)算量,提高了匹配速度。仍以商品信息的匹配為例,在獲取到客戶端在當(dāng)前周期內(nèi)發(fā)布的商品信息后可以得到當(dāng)前周期內(nèi)的新增文本。例如發(fā)布的一個(gè)MP3的商品信息包括名稱MP3、顏色紅色、 型號(hào)XX以及功能描述等相關(guān)信息,則根據(jù)用戶發(fā)布的商品信息,得到一個(gè)新增文本。步驟S12 對(duì)輸入的新增文本進(jìn)行分詞,提取關(guān)鍵詞。即針對(duì)輸入的每個(gè)新增文本,將文本內(nèi)容劃分為若干詞語(yǔ),并提取用于文本匹配的若干關(guān)鍵詞,提取得到的若干關(guān)鍵詞可以生成一個(gè)分詞向量。例如發(fā)布的一個(gè)MP3的商品信息包括名稱MP3、顏色紅色、型號(hào)XX和功能描述等信息,則將得到的文本分詞后,可以從中提取出MP3、紅色等關(guān)鍵詞,這些關(guān)鍵詞可以組成一個(gè)分詞向量。步驟S13 根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算從新增文本中提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各文本中的權(quán)重。該步驟具體計(jì)算每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中存儲(chǔ)的每個(gè)文本(包括當(dāng)前周期的新增文本和上一個(gè)周期存儲(chǔ)的原始文本)中的權(quán)重,具體可以通過(guò)查詢?cè)~頻表中每個(gè)關(guān)鍵詞在文本中的出現(xiàn)頻率,實(shí)現(xiàn)計(jì)算關(guān)鍵詞在該文本中的權(quán)重。其中,詞頻表根據(jù)各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中存儲(chǔ)的每個(gè)文本中的出現(xiàn)頻率周期性更新。這里的各個(gè)詞語(yǔ)是指所有詞頻表中詞語(yǔ),針對(duì)這些詞語(yǔ)預(yù)計(jì)算出來(lái)的詞頻,而不僅僅包含當(dāng)前輸入的新增文本分詞后劃分出的關(guān)鍵詞的詞頻。詞頻表在建立時(shí),針對(duì)數(shù)據(jù)庫(kù)中已存儲(chǔ)的所有文本進(jìn)行統(tǒng)計(jì),得到每個(gè)詞語(yǔ)在各個(gè)文本中出現(xiàn)次數(shù)的詞頻表,在后續(xù)可以通過(guò)更新的方式來(lái)添加和減少更新后的結(jié)果。每個(gè)收集周期,詞頻表都可以根據(jù)各個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的當(dāng)前存儲(chǔ)的各文本中的出現(xiàn)頻率周期性更新,具體包括兩種情況情況一根據(jù)數(shù)據(jù)庫(kù)中的當(dāng)前存儲(chǔ)的所有文本直接更新詞頻表。每次輸入新增文本后,統(tǒng)計(jì)各個(gè)詞語(yǔ)在輸入的新增文本和數(shù)據(jù)庫(kù)中存儲(chǔ)的原始文本中的出現(xiàn)頻率,得到包含各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本中的出現(xiàn)頻率的詞頻表。由于計(jì)算詞頻的運(yùn)算量是與輸入數(shù)據(jù)量成線性關(guān)系的,因此,即使采用對(duì)數(shù)據(jù)庫(kù)中存儲(chǔ)的所有文本進(jìn)行統(tǒng)計(jì)來(lái)更新詞頻表,其運(yùn)算量也不會(huì)很大,時(shí)間也不長(zhǎng)。情況二 根據(jù)新增文本和原來(lái)詞頻表中存儲(chǔ)的內(nèi)容更新詞頻表。每次輸入新增文本后,統(tǒng)計(jì)各個(gè)詞語(yǔ)在輸入的每個(gè)新增文本中的出現(xiàn)頻率,根據(jù)統(tǒng)計(jì)得到的結(jié)果與詞頻表中存儲(chǔ)的各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中存儲(chǔ)的原始文本中的出現(xiàn)頻率,得到包含各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的每個(gè)文本中的出現(xiàn)頻率的詞頻表。具體實(shí)施例中,若預(yù)先存儲(chǔ)的詞頻表中未記錄新增文本分詞后得到的各詞語(yǔ)的詞頻,則以情況一所述方案更新詞頻表。若預(yù)先存儲(chǔ)的詞頻表中已記錄新增文本分詞后得到的各詞語(yǔ)在原始文本中的詞頻,則以情況二所述方案更新詞頻表。上述根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算分詞提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的當(dāng)前存儲(chǔ)的各個(gè)文本中的權(quán)重,具體包括根據(jù)詞頻表,分別確定選定關(guān)鍵詞在數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本中的出現(xiàn)次數(shù)。以及確定數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的的所有文本與包含有選定關(guān)鍵詞的文本的數(shù)量比。根據(jù)選定關(guān)鍵詞在每個(gè)文本中的出現(xiàn)次數(shù)和上述計(jì)算得到的數(shù)量比,分別計(jì)算每個(gè)關(guān)鍵詞在每個(gè)文本中的權(quán)重。步驟S14:根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各個(gè)文本中的權(quán)重,計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)當(dāng)前存儲(chǔ)的各個(gè)文本的相似度。計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各個(gè)文本的相似度,包括計(jì)算輸入的任意兩個(gè)新增文本之間的相似度、以及計(jì)算每個(gè)新增文本和數(shù)據(jù)庫(kù)中存儲(chǔ)的每個(gè)原始文本的相似度。計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各文本的相似度,具體包括將待計(jì)算相似度的文本中的每個(gè)關(guān)鍵詞的權(quán)重組成權(quán)重向量。權(quán)重向量由上述計(jì)算出的各個(gè)關(guān)鍵詞在該文本中的權(quán)重組成。針對(duì)每個(gè)新增文本,分別計(jì)算該新增文本的權(quán)重向量與數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各文本的權(quán)重向量的內(nèi)積,得到該新增文本與數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各文本的相似度。由于數(shù)據(jù)庫(kù)中的原始文本之間的相似度在上一次輸入上一個(gè)周期的新增文本時(shí)已經(jīng)計(jì)算過(guò),因此,本次只計(jì)算新輸入的新增文本之間、以及新輸入的新增文本與數(shù)據(jù)庫(kù)中的原始文本之間的相似度,從而大大減少了運(yùn)算量。步驟S15 根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本的相關(guān)文本。上述計(jì)算獲取到的每個(gè)新增文本和數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各個(gè)文本之間的相似度之后,根據(jù)具體需求,既可以確定與每個(gè)新增文本具有一定相關(guān)性的相關(guān)文本,也可以確定與數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本具有一定相關(guān)性的相關(guān)文本了。其中,與每個(gè)新增文本相關(guān)的文本可以是新獲取到的其他新增文本也可以是存儲(chǔ)的原始文本。與數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本相關(guān)的文本可以是新獲取到的新增文本也可以是存儲(chǔ)的原始文本。其中原始文本與原始文本之間的相似度在之前的周期內(nèi)已經(jīng)確定并存儲(chǔ)在數(shù)據(jù)庫(kù)中。也就是說(shuō)在本實(shí)施例中,在確定相關(guān)文本時(shí),涉及到數(shù)據(jù)庫(kù)中原始文本和原始文本之間的相似度時(shí),直接使用上一次存儲(chǔ)的相似度。其中,與每個(gè)文本具有一定相關(guān)性的相關(guān)文本的確定,具體包括下列兩種確定方式方式一通過(guò)設(shè)定閾值確定符合設(shè)定條件的相關(guān)文本。針對(duì)待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的文本,確定與該新增文本或數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的文本的相似度大于或大于等于設(shè)定閾值的至少一個(gè)文本為該新增文本或數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的文本的相關(guān)文本。方式二 通過(guò)排序獲取設(shè)定數(shù)量的相關(guān)文本。針對(duì)待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的文本,根據(jù)數(shù)據(jù)庫(kù)中數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本與待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的文本的相似度大小排序,確定相似度較高的設(shè)定數(shù)量的文本作為待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的文本的相關(guān)文本。在確定了新增文本或數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的文本得相關(guān)文本之后,存儲(chǔ)在數(shù)據(jù)庫(kù)中,用作后續(xù)的商品推薦或其他過(guò)程中使用。以用于商品推薦為例在獲取到包括用戶的點(diǎn)擊行為、瀏覽行為、用戶購(gòu)買(mǎi)行為、收藏網(wǎng)頁(yè)上展示的商品等等用戶操作行為時(shí),根據(jù)用戶操作行為涉及的商品所對(duì)應(yīng)的文本,從數(shù)據(jù)庫(kù)中獲取該文本的相關(guān)文本,將獲取到的相關(guān)文本對(duì)應(yīng)的商品推薦給用戶。其中,涉及的商品所對(duì)應(yīng)的文本和該文本的相關(guān)文本,根據(jù)商品的發(fā)布時(shí)間不同,可能是新增文本也可能是原始文本。實(shí)施例二 本申請(qǐng)實(shí)施例二提供的文本匹配方法,針對(duì)每個(gè)周期輸入新增文本后數(shù)據(jù)中存儲(chǔ)的每個(gè)文本,計(jì)算任意兩個(gè)文本之間的相似度,其流程如圖3所示,執(zhí)行步驟如下步驟S21 周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)用戶發(fā)布的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本。同步驟Sll,此處不再贅述。步驟S22 對(duì)輸入的新增文本進(jìn)行分詞,提取關(guān)鍵詞。同步驟S12,此處不再贅述。步驟S23 根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算從新增文本中提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的當(dāng)前存儲(chǔ)的各文本中的權(quán)重。同步驟S13,此處不再贅述。步驟S24:根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各文本中的權(quán)重, 計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度。計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度,包括計(jì)算輸入的任意兩個(gè)新增文本之間的相似度、計(jì)算每個(gè)新增文本和數(shù)據(jù)庫(kù)中存儲(chǔ)的每個(gè)原始文本的相似度、以及計(jì)算任意兩個(gè)原始文本之間的相似度。計(jì)算任意兩個(gè)文本的相似度,具體包括將待計(jì)算相似度的文本中的每個(gè)關(guān)鍵詞的權(quán)重組成權(quán)重向量。針對(duì)每個(gè)文本,分別計(jì)算該文本的權(quán)重向量與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的權(quán)重向量的內(nèi)積,得到該文本與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相似度。該方式在詞頻更新之后重新計(jì)算每個(gè)文本之間的相似度,從而能夠獲取到準(zhǔn)確的相似度值,使后續(xù)比較匹配的結(jié)果更準(zhǔn)確。步驟S25 根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本的相關(guān)文本。該步驟確定相關(guān)文本時(shí),和步驟S15類似的也包含兩種方式。所不同的是在本實(shí)施例中,在確定相關(guān)文本時(shí),涉及到數(shù)據(jù)庫(kù)中原始文本和原始文本之間的相似度時(shí),也是用本次計(jì)算得到的相似度。確定相關(guān)文本后在商品推薦過(guò)程中的應(yīng)用也與步驟S15類似。實(shí)施例三本申請(qǐng)實(shí)施例三提供的文本匹配方法,針對(duì)實(shí)施例一和實(shí)施例二的方案進(jìn)行改進(jìn),增加輸出過(guò)濾的過(guò)程。具體包括
在實(shí)施例一的步驟S14計(jì)算相似度之后和步驟S15確定相關(guān)文本之前增加輸出過(guò)濾的步驟,在實(shí)施例二的步驟SM計(jì)算相似度之后和步驟S25確定相關(guān)文本之前增加輸出過(guò)濾的過(guò)程,其流程如圖4所示,執(zhí)行步驟如下步驟S31 獲取計(jì)算得到的每個(gè)新增文本與數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各個(gè)文本的相似度,或計(jì)算得到的數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度。針對(duì)兩個(gè)文本的相似度的過(guò)濾,可以根據(jù)后續(xù)相關(guān)文本確定的不同要求,對(duì)不同文本的相似度進(jìn)行過(guò)濾,因此,針對(duì)實(shí)施例一計(jì)算新增文本和數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的各個(gè)文本之間的相似度時(shí),獲取的是計(jì)算得到的每個(gè)新增文本與數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的每個(gè)文本的相似度。針對(duì)實(shí)施例二計(jì)算任意兩個(gè)文本之間的相似度時(shí),獲取的是計(jì)算得到的數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度。步驟S32 根據(jù)設(shè)定的輸出過(guò)濾規(guī)則,對(duì)數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的待確定相關(guān)文本的每個(gè)文本相關(guān)的相似度數(shù)據(jù)進(jìn)行過(guò)濾。對(duì)待確定相關(guān)文本的每個(gè)文本相關(guān)的相似度數(shù)據(jù)進(jìn)行過(guò)濾,去除不符合設(shè)定條件的文本數(shù)據(jù)時(shí),可以根據(jù)相似度的大小,去除與待確定相關(guān)文本的每個(gè)文本相似度小于設(shè)定閾值的文本;也可以根據(jù)相似度的大小排序,去除與待確定相關(guān)文本的每個(gè)文本相似度較低的設(shè)定數(shù)量的文本。當(dāng)然也可以設(shè)置其他的輸出過(guò)濾規(guī)則對(duì)輸出文本進(jìn)行過(guò)濾。通過(guò)對(duì)待確定相關(guān)文本的每個(gè)文本相關(guān)的相似度數(shù)據(jù)進(jìn)行過(guò)濾,減少匹配過(guò)程中需要匹配的文本的數(shù)量,從而進(jìn)一步了提高匹配速度和效率。實(shí)施例四本申請(qǐng)實(shí)施例四提供的文本匹配方法,具體提供實(shí)現(xiàn)文本匹配的一個(gè)具體實(shí)現(xiàn)示例,其實(shí)現(xiàn)原理如圖5所示,其流程如圖6所示,執(zhí)行步驟如下步驟S41 周期性在數(shù)據(jù)層采集用戶發(fā)布的內(nèi)容信息。其中,用戶發(fā)布的內(nèi)容信息的采集是在數(shù)據(jù)層完成的。數(shù)據(jù)表中的數(shù)據(jù)在數(shù)據(jù)層進(jìn)行更新,更新根據(jù)設(shè)定的周期進(jìn)行。數(shù)據(jù)層是數(shù)據(jù)的提供層和存儲(chǔ)層,為數(shù)據(jù)的應(yīng)用層提供數(shù)據(jù),最終用于前臺(tái)展現(xiàn)。 同時(shí),數(shù)據(jù)層為底層的算法層提供輸入數(shù)據(jù),也接受算法層的運(yùn)算結(jié)果。這一層包括數(shù)據(jù)庫(kù)和一些存儲(chǔ)文件。例如,將采集到的用戶發(fā)布的商品信息中的商品名稱作為文本數(shù)據(jù),下面的匹配對(duì)比是基于得到的文本數(shù)據(jù)的內(nèi)容進(jìn)行的。例如采集到發(fā)布的商品信息為MP3,則找到包含MP3的其他文本作為匹配文本。步驟S42 對(duì)采集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾。在過(guò)濾層進(jìn)行用戶發(fā)布的內(nèi)容信息的過(guò)濾,根據(jù)設(shè)定輸入過(guò)濾規(guī)則,對(duì)采集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾。也就是說(shuō)由過(guò)濾層對(duì)算法層的輸入和輸出做過(guò)濾處理,該步驟的輸入過(guò)濾涉及到的是對(duì)算法層輸入的過(guò)濾,過(guò)濾后提供給算法層。后續(xù)步驟中的輸出過(guò)濾涉及到的是對(duì)算法層的計(jì)算結(jié)果進(jìn)行過(guò)濾,提供給數(shù)據(jù)層。其中,設(shè)定的過(guò)濾規(guī)則包括實(shí)施例一中所描述的內(nèi)容信息的質(zhì)量是否符合設(shè)定的質(zhì)量評(píng)估閾值,發(fā)布內(nèi)容信息的用戶是否是設(shè)定合格用戶等等。例如過(guò)濾去掉數(shù)據(jù)質(zhì)量低的內(nèi)容信息。即將內(nèi)容信息質(zhì)量低于設(shè)定的質(zhì)量評(píng)估閾值的內(nèi)容信息去除。從而避免在文本匹配中,有的文本來(lái)源于低質(zhì)量的商品信息,這類商品信息,通常質(zhì)量評(píng)分值比較低,比如沒(méi)有提供圖片,或其他必要的信息,這類商品被推薦和點(diǎn)擊的意義不大。因此,這類商品信息一般質(zhì)量評(píng)分值低于設(shè)定的質(zhì)量評(píng)估閾值,在進(jìn)行文本匹配運(yùn)算之前就會(huì)被過(guò)濾剔除掉。又例如過(guò)濾掉不合格用戶的內(nèi)容信息,不合格用戶包括網(wǎng)絡(luò)爬蟲(chóng),機(jī)器人,和不合格的物理用戶等等??梢酝ㄟ^(guò)判斷發(fā)布內(nèi)容信息的用戶的訪問(wèn)次數(shù)是否超過(guò)設(shè)定的訪問(wèn)閾值,例如網(wǎng)絡(luò)爬蟲(chóng),機(jī)器人,他們的行為有明顯的特征,他們通常在一段時(shí)間內(nèi)異?;钴S,他們提供的數(shù)據(jù),可視為噪音,予以剔除。此時(shí)可以設(shè)定一個(gè)訪問(wèn)閾值,當(dāng)訪問(wèn)次數(shù)大于該閾值認(rèn)為是網(wǎng)絡(luò)爬蟲(chóng)或機(jī)器人。也可以通過(guò)判斷用戶的信用值、有效期限等來(lái)判斷是否是合格的用戶。從而去除包括低信用的用戶,過(guò)期的用戶,還有不活躍的用戶(一般指設(shè)定時(shí)間范圍內(nèi)沒(méi)有操作行為的用戶,如最近的一個(gè)月沒(méi)有登錄,一個(gè)月沒(méi)有行為數(shù)據(jù)等),這些不合格的用戶發(fā)布的內(nèi)容信息可視為無(wú)效信息,予以剔除。輸入過(guò)濾的目的是在系統(tǒng)采集到待輸入的文本數(shù)據(jù)后,對(duì)輸入的文本數(shù)據(jù)的過(guò)濾處理,過(guò)濾掉噪音,不合格用戶數(shù)據(jù)和低質(zhì)量數(shù)據(jù)等,使輸入的文本數(shù)據(jù)減少。步驟S43 根據(jù)過(guò)濾后的內(nèi)容信息得到當(dāng)前周期的新增文本。在對(duì)收集到的用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾后,根據(jù)過(guò)濾后內(nèi)容信息生成當(dāng)前周期內(nèi)的新增文本,從而提高了新增文本的質(zhì)量。步驟S44 根據(jù)過(guò)濾后輸入的新增文本進(jìn)行相似度計(jì)算。過(guò)濾后的新增文本會(huì)被輸入到算法層,用于相似度的運(yùn)算,以及更新詞頻表。其中,更新詞頻表的原理如圖7所示。當(dāng)新增文本輸入后,算法層擁有包含此前各周期內(nèi)輸入的原始文本和當(dāng)前周期輸入的新增文本在內(nèi)的數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的所有文本。此時(shí)可以直接根據(jù)數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的所有文本更新詞頻表,也可以根據(jù)數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)的所有文本與原始文本對(duì)比得到的新增文本,獲取新增的數(shù)據(jù)文件來(lái)更新詞頻表。新增文本與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本之間的相似度計(jì)算,以及數(shù)據(jù)庫(kù)中當(dāng)前存儲(chǔ)任意兩個(gè)文本之間的相似度計(jì)算過(guò)程分別參見(jiàn)實(shí)施例一和實(shí)施例二的描述其中,根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算分詞提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重的過(guò)程具體包括首先,確定選定關(guān)鍵詞在數(shù)據(jù)庫(kù)中每個(gè)文本中的出現(xiàn)次數(shù)。即針對(duì)每個(gè)文本,分別確定選定的關(guān)鍵詞的出現(xiàn)次數(shù)。具體可以通過(guò)詞頻表的到,詞頻表中詞語(yǔ)出現(xiàn)次數(shù)可以通過(guò)詞頻-反向文檔頻率 (term frequency-inverse document frequency, TF-1DF),艮口第 i 個(gè)關(guān)鍵詞在第 j 個(gè)文本中出現(xiàn)的次數(shù)可以通過(guò)下列公式計(jì)算得到TFlj = fu
max f2 j其中,fi,」是第i個(gè)關(guān)鍵詞Ici在第j個(gè)文本Clj中出現(xiàn)的次數(shù),max fZjJ表示中的最大值,i,j為正整數(shù)。詞頻表根據(jù)該公式更新,而使用過(guò)程中需要確定時(shí)可以直接查詢?cè)~頻表。
在使用上述公式時(shí),可以根據(jù)實(shí)際情況對(duì)f^和max fz,j的值進(jìn)行限定。例如可以設(shè)置fi,j和max fz,j的值為1,來(lái)表示將文本中多次出現(xiàn)的同一個(gè)關(guān)鍵詞視為出現(xiàn)了一次。其次,確定數(shù)據(jù)庫(kù)中的存儲(chǔ)的所有文本與包含有選定關(guān)鍵詞的文本的數(shù)量比。具體通過(guò)下列公式確定
權(quán)利要求
1.一種文本匹配方法,其特征在于,包括周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當(dāng)前周期內(nèi)收集的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本并存儲(chǔ)到數(shù)據(jù)庫(kù)中;對(duì)輸入的新增文本進(jìn)行分詞,并提取關(guān)鍵詞;根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重;所述詞頻表根據(jù)各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的各文本中的出現(xiàn)頻率周期性更新;數(shù)據(jù)庫(kù)中的文本包括當(dāng)前周期存儲(chǔ)的新增文本和之前存儲(chǔ)的原始文本;根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重,計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中的各文本的相似度,或計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度; 根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本。
2.如權(quán)利要求1所述的方法,其特征在于,所述詞頻表根據(jù)各個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的出現(xiàn)頻率周期性更新,具體包括每次輸入新增文本后,統(tǒng)計(jì)各個(gè)詞語(yǔ)在輸入的新增文本和數(shù)據(jù)庫(kù)中存儲(chǔ)的原始文本中的出現(xiàn)的頻率,得到包含各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的每個(gè)文本中的出現(xiàn)頻率的的詞頻表;或每次輸入新增文本后,統(tǒng)計(jì)各個(gè)詞語(yǔ)在輸入的每個(gè)新增文本中的出現(xiàn)的頻率,根據(jù)統(tǒng)計(jì)得到的結(jié)果與詞頻表中存儲(chǔ)的各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的存儲(chǔ)的原始文本中的出現(xiàn)頻率,得到包含各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的每個(gè)文本中的出現(xiàn)頻率的的詞頻表。
3.如權(quán)利要求2所述的方法,其特征在于,所述根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算分詞得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中各文本中的權(quán)重,具體包括根據(jù)詞頻表,分別確定選定關(guān)鍵詞在數(shù)據(jù)庫(kù)中每個(gè)文本中的出現(xiàn)次數(shù);以及確定數(shù)據(jù)庫(kù)中的存儲(chǔ)的文本與包含有選定關(guān)鍵詞的文本的數(shù)量比; 根據(jù)選定關(guān)鍵詞在每個(gè)文本中的出現(xiàn)次數(shù)和所述數(shù)量比,分別計(jì)算每個(gè)關(guān)鍵詞在每個(gè)文本中的權(quán)重。
4.如權(quán)利要求1所述的方法,其特征在于,所述計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中的各文本的相似度,或計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度,具體包括將待計(jì)算相似度的文本中的每個(gè)關(guān)鍵詞的權(quán)重組成權(quán)重向量; 針對(duì)每個(gè)新增文本,分別計(jì)算該新增文本的權(quán)重向量與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的權(quán)重向量的內(nèi)積,得到該新增文本與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相似度;或針對(duì)數(shù)據(jù)庫(kù)中存儲(chǔ)的每個(gè)文本,分別計(jì)算該文本的權(quán)重向量與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的權(quán)重向量的內(nèi)積,得到該文本與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相似度。
5.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本,具體包括針對(duì)待確定相關(guān)文本的每個(gè)文本,確定與該文本的相似度大于或大于等于設(shè)定閾值的至少一個(gè)數(shù)據(jù)庫(kù)中存儲(chǔ)的文本為該文本的相關(guān)文本;或針對(duì)待確定相關(guān)文本的每個(gè)文本,根據(jù)數(shù)據(jù)庫(kù)中各文本與待確定相關(guān)文本的文本的相似度大小排序,確定相似度較高的設(shè)定數(shù)量的數(shù)據(jù)庫(kù)中存儲(chǔ)的文本作為待確定相關(guān)文本的文本的相關(guān)文本。
6.如權(quán)利要求1-5任一所述的方法,其特征在于,所述根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本之前,還包括根據(jù)計(jì)算得到的每個(gè)新增文本與數(shù)據(jù)庫(kù)中的每個(gè)文本的相似度,或計(jì)算得到的數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度;對(duì)待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中存儲(chǔ)的文本相關(guān)的相似度數(shù)據(jù)進(jìn)行過(guò)濾,去除與待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中存儲(chǔ)的文本相似度小于設(shè)定閾值的文本,或去除與待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中存儲(chǔ)的文本相似度較低的設(shè)定數(shù)量的文本。
7.如權(quán)利要求1-5任一所述的方法,其特征在于,所述根據(jù)當(dāng)前周期內(nèi)收集的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本之前,還包括根據(jù)設(shè)定的輸入過(guò)濾規(guī)則,對(duì)當(dāng)前周期內(nèi)收集到用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾,根據(jù)過(guò)濾后內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本。
8.如權(quán)利要求7所述的方法,其特征在于,所述根據(jù)設(shè)定的輸入過(guò)濾規(guī)則,對(duì)當(dāng)前周期內(nèi)收集到用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾,具體包括根據(jù)內(nèi)容信息的質(zhì)量是否符合設(shè)定的質(zhì)量評(píng)估閾值和/或發(fā)布內(nèi)容信息的用戶是否是設(shè)定的合格用戶,對(duì)所述收集到的內(nèi)容信息進(jìn)行過(guò)濾。
9.一種文本匹配裝置,其特征在于,包括收集模塊,用于周期性收集用戶發(fā)布的內(nèi)容信息,根據(jù)當(dāng)前周期內(nèi)收集的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本并存儲(chǔ)到數(shù)據(jù)庫(kù)中;分詞模塊,用于對(duì)輸入的新增文本進(jìn)行分詞,并提取關(guān)鍵詞;權(quán)重確定模塊,用于根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重;詞頻更新模塊,用于根據(jù)各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的各文本中的出現(xiàn)頻率周期性更新詞頻表;數(shù)據(jù)庫(kù)中的文本包括當(dāng)前周期存儲(chǔ)的新增文本和之前存儲(chǔ)的原始文本;相似度確定模塊,用于根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重,計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中的各文本的相似度,或計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度;文本比較模塊,用于根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本。
10.如權(quán)利要求9所述的裝置,其特征在于,所述詞頻更新模塊,具體用于每次輸入新增文本后,統(tǒng)計(jì)各個(gè)詞語(yǔ)在輸入的新增文本和數(shù)據(jù)庫(kù)中存儲(chǔ)的原始文本中的出現(xiàn)的頻率,得到包含各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的每個(gè)文本中的出現(xiàn)頻率的的詞頻表;或每次輸入新增文本后,統(tǒng)計(jì)各個(gè)詞語(yǔ)在輸入的每個(gè)新增文本中的出現(xiàn)的頻率,根據(jù)統(tǒng)計(jì)得到的結(jié)果與詞頻表中存儲(chǔ)的各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的存儲(chǔ)的原始文本中的出現(xiàn)頻率,得到包含各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的每個(gè)文本中的出現(xiàn)頻率的的詞頻表。
11.如權(quán)利要求10所述的裝置,其特征在于,所述權(quán)重確定模塊,具體包括第一確定單元,用于根據(jù)詞頻表,分別確定選定關(guān)鍵詞在數(shù)據(jù)庫(kù)中每個(gè)文本中的出現(xiàn)次數(shù);第二確定單元,用于確定數(shù)據(jù)庫(kù)中存儲(chǔ)的文本與包含有選定關(guān)鍵詞的文本的數(shù)量比;權(quán)重計(jì)算單元,用于根據(jù)選定關(guān)鍵詞在每個(gè)文本中的出現(xiàn)次數(shù)和所述數(shù)量比,分別計(jì)算每個(gè)關(guān)鍵詞在每個(gè)文本中的權(quán)重。
12.如權(quán)利要求9所述的裝置,其特征在于,所述相似度確定模塊,具體包括向量生成單元,用于將待計(jì)算相似度的文本中的每個(gè)關(guān)鍵詞的權(quán)重組成權(quán)重向量;相似度計(jì)算單元,用于針對(duì)每個(gè)新增文本,分別計(jì)算該新增文本的權(quán)重向量與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的權(quán)重向量的內(nèi)積,得到該新增文本與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相似度; 或針對(duì)數(shù)據(jù)庫(kù)中存儲(chǔ)的每個(gè)文本,分別計(jì)算該文本的權(quán)重向量與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的權(quán)重向量的內(nèi)積,得到該文本與數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相似度。
13.如權(quán)利要求9所述的裝置,其特征在于,所述文本比較模塊,具體用于針對(duì)待確定相關(guān)文本的每個(gè)文本,確定與該文本的相似度大于或大于等于設(shè)定閾值的至少一個(gè)數(shù)據(jù)庫(kù)中存儲(chǔ)的文本的相關(guān)文本;或針對(duì)待確定相關(guān)文本的每個(gè)文本,根據(jù)數(shù)據(jù)庫(kù)中各文本與待確定相關(guān)文本的文本的相似度大小排序,確定相似度較高的設(shè)定數(shù)量的數(shù)據(jù)庫(kù)中存儲(chǔ)的文本作為待確定相關(guān)文本的文本的相關(guān)文本。
14.如權(quán)利要求9-13任一所述的裝置,其特征在于,還包括輸入過(guò)濾模塊,用于根據(jù)設(shè)定的輸入過(guò)濾規(guī)則,對(duì)當(dāng)前周期內(nèi)收集到用戶發(fā)布的內(nèi)容信息進(jìn)行過(guò)濾,根據(jù)過(guò)濾后內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本。
15.如權(quán)利要求9-13任一所述的裝置,其特征在于,還包括輸出過(guò)濾模塊,用于根據(jù)所述相似度確定模塊計(jì)算得到的每個(gè)新增文本與數(shù)據(jù)庫(kù)中的每個(gè)文本的相似度,或計(jì)算得到的數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度;對(duì)待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中存儲(chǔ)的文本相關(guān)的相似度數(shù)據(jù)進(jìn)行過(guò)濾,去除與待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中存儲(chǔ)的文本相似度小于設(shè)定閾值的文本,或去除與待確定相關(guān)文本的新增文本或數(shù)據(jù)庫(kù)中存儲(chǔ)的文本相似度較低的設(shè)定數(shù)量的文本;所述文本比較模塊具體用于根據(jù)過(guò)濾后的文本確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本。
全文摘要
本申請(qǐng)公開(kāi)了一種文本匹配方法及裝置,該方法包括根據(jù)當(dāng)前周期內(nèi)收集的內(nèi)容信息得到當(dāng)前周期內(nèi)的新增文本并存儲(chǔ)到數(shù)據(jù)庫(kù)中;對(duì)輸入的新增文本進(jìn)行分詞并提取關(guān)鍵詞;根據(jù)預(yù)先存儲(chǔ)的詞頻表計(jì)算提取的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重;所述詞頻表根據(jù)各個(gè)詞語(yǔ)在數(shù)據(jù)庫(kù)中的各文本中的出現(xiàn)頻率周期性更新;根據(jù)計(jì)算得到的每個(gè)關(guān)鍵詞在數(shù)據(jù)庫(kù)中的各文本中的權(quán)重,計(jì)算每個(gè)新增文本與數(shù)據(jù)庫(kù)中的各文本的相似度,或計(jì)算數(shù)據(jù)庫(kù)中任意兩個(gè)文本的相似度;根據(jù)計(jì)算得到的相似度確定數(shù)據(jù)庫(kù)中存儲(chǔ)的各文本的相關(guān)文本。通過(guò)建立和更新詞頻表的方式避免了現(xiàn)有技術(shù)中每次匹配都需要對(duì)所有文本進(jìn)行計(jì)算的問(wèn)題,減少了匹配運(yùn)算工作量,提高了系統(tǒng)性能。
文檔編號(hào)G06F17/27GK102411583SQ20101029069
公開(kāi)日2012年4月11日 申請(qǐng)日期2010年9月20日 優(yōu)先權(quán)日2010年9月20日
發(fā)明者張旭, 祁建程, 蘇寧軍, 顧海杰 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司