新聞中心
網(wǎng)絡經(jīng)濟的發(fā)展使我們的消費渠道早已不止于實體場景。來自于用戶的線上評價,成為如今影響我們消費行為決策的重要因素。

超過十年行業(yè)經(jīng)驗,技術領先,服務至上的經(jīng)營模式,全靠網(wǎng)絡和口碑獲得客戶,為自己降低成本,也就是為客戶降低成本。到目前業(yè)務范圍包括了:成都網(wǎng)站設計、做網(wǎng)站,成都網(wǎng)站推廣,成都網(wǎng)站優(yōu)化,整體網(wǎng)絡托管,小程序設計,微信開發(fā),成都app軟件開發(fā)公司,同時也可以讓客戶的網(wǎng)站和網(wǎng)絡營銷和我們一樣獲得訂單和生意!
背景
在網(wǎng)上購物時,即使你已經(jīng)瀏覽了商家對于商品的描述,你還是不會立即決定購買它,因為你不確定這些描述是否準確。這時你會尋找其他購買過此商品的用戶評論,這些評論可能才會最終說服你。
購買旅行類產(chǎn)品也是一樣。每天都有大量用戶在馬蜂窩平臺用“評論”的方式,記錄和評價他們在旅行中的感受和體驗。而基于對評論內(nèi)容深度挖掘產(chǎn)生的標簽,則用一種更為簡潔、直觀的方式匯總評論信息中的重要內(nèi)容,展示給更多的用戶作為參考依據(jù)。
因此,如何在保證標簽內(nèi)容準確性的同時,體現(xiàn)出更符合用戶語言習慣、讓用戶更容易理解的標簽含義,對于提升用戶在馬蜂窩平臺的體驗,做出更符合自身需求的旅行決策,以及提升平臺轉(zhuǎn)化率、更好地監(jiān)管商家服務品質(zhì)等方面,都有很大價值。
從評價中提取標簽的方式有很多,但在實際應用中存在一些問題,比如:
1. 預設標簽
做法:預先定義好一些固定標簽,由用戶在發(fā)表點評時自主選擇。
不足:固定標簽數(shù)量受限,無法覆蓋用戶全部需求,并且標簽和用戶內(nèi)容可能不匹配。
2. 句法分析
做法:對用戶發(fā)布的點評內(nèi)容進行解構(gòu),提取主題詞和描述詞組合后作為標簽。
不足:在評價量非常大的時候,這種方法會產(chǎn)生大量標簽,對計算性能要求高,并且維護不便。
3.多層級標簽定義
做法:預先定義標簽大類,在逐級細分,然后產(chǎn)生具體標簽。
不足:產(chǎn)生大量維護工作。并且定義的層級靈活性欠佳,而且匹配的標簽是關鍵詞加指標詞,不能很好地表達用戶的言語習慣。
為了解決以上問題,馬蜂窩推薦和搜索研發(fā)團隊提出了一種通過匹配預設句式的模式,靈活、動態(tài)提取用戶評論標簽的方式,將每個預設句式歸宿到固定標簽分類,在分類顯示中動態(tài)地采用最大數(shù)標簽作為整個分類標簽的顯示方式,極大減少了固定標簽的數(shù)量,并且每個句式是任意的多個詞組聯(lián)合組成,使最終提取的標簽內(nèi)容在更符合用戶語言習慣的同時,更好地體現(xiàn)了不同評論內(nèi)容標簽的個性化和差異化。
基于匹配預設句式模板動態(tài)提取用戶評價標簽
首先和大家解釋幾個關鍵的概念。
- 標簽:標簽可以理解成對一個給定信息進行的具體描述。比如“離望京地鐵站近”、“步行到大望路地鐵站 1 分鐘”等;
- 句式:這里,我們可以先簡單理解成是對同一類型標簽的集合,可以理解成“評價方式”,比如上句關于標簽的舉例,都是對“離地鐵站近”的評價;
- 標簽類別:同樣,我們先簡單理解成是對同一類句式,也就是一類“評價”的集合,比如上述句式包含在“交通方便”這類評價里。
三者關系可以描述為,一個標簽類別包含了 m 個句式;一個句式會產(chǎn)生 n 個標簽,所以一個標簽類別最多會對應 m*n 個標簽。
標簽系統(tǒng)總體結(jié)構(gòu)
系統(tǒng)主要有兩部分內(nèi)容:標簽句式的定義和自動化的句式生成。今天主要介紹關于如何定義句式和產(chǎn)生標簽。
圖1 - 標簽系統(tǒng)結(jié)構(gòu)
具體做法和實施步驟
一、建立句式庫
顧名思義,句式庫是對所有預設句式的集合。接下來我們會具體講解如何定義句式和產(chǎn)生標簽。
圖2 - 句式庫示意
1. 建立詞庫
詞庫是由詞組以及其包含的詞語組成的。每個詞組和詞語分別具有僅有標識;詞組是對其包含的詞語的概括和匯總;詞語為表示該詞組的近義詞、俗語、舶來詞、英語、縮寫等。例如:
- 詞組:表示“班車”的名稱集合
- 詞語:班車,擺渡車,接泊車,shuttlebus 等是詞組中的詞語
詞組也可以表示一類描述信息,比如:
- 詞組:表示“距離近”的集合
- 詞語:近,不遠,很近,走路 1 分鐘等
圖3 - 詞庫示意
圖4 - 詞組示意
另外還會建立排除詞庫。排除詞庫中,以后不對這些詞進行處理,排除詞庫大部分是無具體意義詞,比如“我們”,“他們”之類的代詞、“呀”“耶”“哦”之類的語氣助詞,“之后”“然后”“所以”這樣沒有轉(zhuǎn)折意義的連詞等等。
2.對句式分類,得到標簽類別
標簽類別為用戶點評信息的概括和歸類,將同一類型的句式歸類為一個標簽類別,每個標簽類別代表了一類相近評價內(nèi)容。
比如“服務好”類,代表所有描述服務好的評價信息,該標簽類別由多個句式組成,例如“{老板}{熱情}”,“{前臺}{專業(yè)}”,表示的都是關于酒店和民宿服務這一類評價的句式,則這些句式產(chǎn)生的標簽都會歸屬到相同的類型上,但不同業(yè)務的 UGC 產(chǎn)生的具體標簽會各具特色。
圖5 - 句式分類示意
3.基于詞組進行句式組合
每個句式表示一種邏輯語義,通過詞組之間的組合定義句式,表達不同內(nèi)容,并具有僅有的一個標識。
每個句式的詞組中用具體的詞語組合得到的結(jié)果定義為其產(chǎn)生的標簽,如“距離牡丹園地鐵站近”“離牡丹園地鐵站很近”等均為{離}{地鐵站}{近}句式產(chǎn)生的標簽。
參與句式組合的詞組分為四類,分別是普通詞組、獨立詞組、POI、固定文字。構(gòu)建句式時,并列關系的詞組之間用 OR 表示,可減少句式的定義數(shù)量。例如:
- 句式:{提供}[{地鐵站}OR{碼頭}OR{公交站}OR{火車站}OR{機場}OR{市中心}]{班車}
- 普通詞組:“提供”、“班車”
- 獨立詞組:當匹配到該句式的獨立性詞組時,均需要單獨顯示,突出標簽的特色性。即“地鐵站”“碼頭”等。
當匹配到“提供-地鐵站-班車”以及“提供-碼頭-班車”時,其表示的是不同含義或者特別含義,雖然都在提供班車同一個標簽分類下,但需要單獨顯示。同理匹配到POI(感興趣點,為目的地下的一些景點、地點等,如故宮、泰山、火車站、公交站、醫(yī)院等)中的任意一條記錄,則該標簽均需要單獨顯示。
二.句式匹配,生成標簽
1. 生成標簽
從 UGC 內(nèi)容中提取一條評價文本,按照常用標點符號加用戶常用符號為拆分依據(jù),得到若干子句。
圖6 - UGC 評價原文
1). 依次匹配
標簽類別庫中的每個句式從一個詞組開始,用詞組中的每個詞語按長度排序后依次與子句進行匹配。
如果某一個句式中的詞語與子句中的相匹配,則記錄該詞語及這個詞語在子句中的位置,之后按句式的詞組順序,繼續(xù)匹配下一個詞組中的詞語,且匹配的開始位置是上次匹配詞語的結(jié)束位置的后一位,繼續(xù)逐個匹配詞組中的詞語信息,依此類推,不斷循環(huán)這個過程,直到這個句式的每個詞組中的一個詞語匹配成功,則記錄的每個詞組中的匹配詞語組合就是這個句式匹配的標簽。
比如句式{服務}{好},前面一個詞語 {服務}匹配到的詞語是詞組中的“酒店服務”,第二個詞組{好}匹配到的詞語是“不錯”,則生成標簽“酒店服務不錯”。在另外一個子句中可能匹配到的標簽是“酒店服務好”。雖然他們表現(xiàn)形式為不同的標簽,但都是由一個句式產(chǎn)生的同一類型的標簽。
2). 順序匹配
比如“機場有班車去酒店”,和“酒店有班車去機場”雖然包含的漢字完全一樣,但表達的卻是不同含義。
3). 詞距閾值
在匹配的過程中,如果相鄰兩個詞組距離大于一定的閾值,則認為不匹配。
例如句式是“{房間}{大}”,評價子句是“酒店房間里有一幅畫著藍天和大海的油畫”。如果沒有詞距的判斷,則該評價子句將匹配到“{房間}{大}”的參考句式,但是該評價子句的意思與“房間大”這一標簽表達的意思明顯不同。假設將第二預定閾值設置為三個字的詞距,評價子句中“房間”與“大”之間的詞距超過了三個字,就可以判斷參考句式與評價子句不相匹配,避免了錯誤匹配。
由于句式中的詞語之間可能有一定的位置相關性,通過判斷匹配詞之間的距離是否符合閾值,剔除那些子句中成功匹配到的詞語但是并不表示符合句式含義的內(nèi)容。
4).一“否”即否
當一個句式匹配到一個標簽時,則判斷該句子和句式是否存在否定關系,如果有則認為不匹配。比如飯菜不好吃,則匹配不到{包含飯菜的詞組}{包含好吃的詞組}這樣的句式上。
正確匹配之后,記錄這個子句和標簽的對應關系,并找到該句式在標簽類別庫中對應的標簽類別號,建立被匹配的子句與所屬的標簽類別之間的關系。如果子句沒有成功匹配到對應的句式,則保存到未匹配的子句存儲中,之后用來繼續(xù)挖掘可用標簽信息。
關于匹配方式這里,有一些經(jīng)驗和大家分享:
對于容易混淆的詞語,應首先建立好一個混淆詞語庫,比如“好”這個詞語,對應的混淆庫的詞語有“好像”,“好似”等等。在匹配到一個詞語時發(fā)現(xiàn)它是易混淆詞,則查看該詞語對應的混淆詞是否在這個詞語的位置上,如果成立則認為不匹配,比如飯菜好像是之前的。則匹配不到{包含飯菜的詞組}{包含好吃的詞組}這樣的句式上。
對于一些繁體字的點評先轉(zhuǎn)成簡體漢字,之后進行匹配。
之前,我們對一些其他匹配方式也進行了調(diào)研。比如子句先分詞,之后用每個詞去發(fā)現(xiàn)句式中的詞語是否存在,這樣的效率是比較高,因為用哈希方式查找。
但這樣要依賴分詞的準確性,也無法滿足用戶個性化的需求,尤其在評價語句中,有大量的不符合語法的,口語化的表達和網(wǎng)絡詞語使用,所以分詞很難做到非常準確,得到的標簽匹配效果也不理想。
圖7 - 產(chǎn)生的標簽
2. 確定顯示標簽
在不同的目標下,會有不同評價方式,展示出來的標簽也應該體現(xiàn)出相應的個性化和差異化。我們根據(jù)該目標所有評論對應的標簽類別號,統(tǒng)計每個標簽類別中所有句式產(chǎn)生的標簽出現(xiàn)頻次,將出現(xiàn)頻次最高的標簽作為該標簽類別的顯示名稱。
例如標簽類別“性價比好”有三個句式{性價比}{很好},{性價比}{高},{價格}{便宜},在某個目標下的評價統(tǒng)計中標簽“性價比不錯”“性價比高”“價格實惠”分別出現(xiàn)了 5 次,10 次,7 次,那么關于這個標簽類別顯示的標簽為“性價比高”。
這里有一種特殊情況:如果在同一個標簽類別下一個句式定義中,有需要獨立顯示的標簽,則該句式產(chǎn)生的標簽不會和其他句式標簽合并,而是獨立顯示該句式中頻次相對較高的標簽。
比如句式{提供}{去}[{火車站}OR{飛機場}]{班車},其中設定{火車站}和{飛機場}是需要獨立顯示的標簽,則后面兩個詞語對應產(chǎn)生的頻次相對較高的標簽的結(jié)果是“提供去車站班車”和“提供到機場的班車”,這兩個標簽不會和該類別(提供班車)下的其他頻次相對較高標簽合并,比如“去車站方便”,而是作為兩個標簽獨立顯示。
再如,標簽類別“位置好”中包含了兩個句式,{離}{POI}{近}和{POI}{步行}{3}{分鐘},因為POI是被設定需要獨立顯示的類別,若產(chǎn)生的標簽“離故宮近”的頻次為 10,“離景山近”的頻次是 15,“故宮步行 3 分鐘”的頻次是 17,則在“位置好”標簽類別下,分別顯示標簽“故宮步行 3 分鐘”和“離景山近”。
3. 對未匹配子句分詞處理
對于未被匹配的子句進行自動產(chǎn)生句式處理,使用內(nèi)容分類,句法分析,依存分析,詞義分析等方法自動產(chǎn)生標簽分類和每個分類下的句式,用戶可以對這些標簽句式審核和調(diào)整。并可對已有詞組推薦近義詞等,豐富詞組的詞語數(shù)量。
4.定位子句
因為之前已經(jīng)保存了標簽和被匹配子句之間的關系,當點擊標簽時,會高亮顯示對應的子句。
小結(jié)
本文介紹的關于預設句式模板定義,通過靈活的詞組的組合方式,可以動態(tài)的匹配大量標簽,很好的解決了標簽定義量大的問題。
由于句式的定義符合用戶對目標的評價習慣,所以能覆蓋更多的用戶點評,提高了召回率,且模板產(chǎn)生的標簽更符合評價語言的表達方式。
【本文是專欄作者馬蜂窩技術的原創(chuàng)文章,作者微信公眾號馬蜂窩技術(ID:mfwtech)】
戳這里,看該作者更多好文
文章題目:如何基于匹配預設句式,動態(tài)提取用戶評價標簽
文章URL:http://m.5511xx.com/article/ccehjhi.html


咨詢
建站咨詢
