01
行業(yè)搜索的背景
1. 達(dá)摩院自然語言智能大圖
上圖是達(dá)摩院自然語言處理智能的技術(shù)框圖,從下到上包含:
NLP 數(shù)據(jù)、NLP 基礎(chǔ)的詞法、句法語義,分析的技術(shù),以及上層 NLP 技術(shù)
行業(yè)應(yīng)用:達(dá)摩院除了做基礎(chǔ)研究之外,還賦能阿里集團(tuán),以及結(jié)合阿里云去賦能行業(yè)產(chǎn)業(yè)。賦能的很多行業(yè)場景都是搜索。
2. 行業(yè)搜索本質(zhì)
面向產(chǎn)業(yè)和消費(fèi)互聯(lián)網(wǎng)的搜索本質(zhì)都是一樣的:用戶有信息獲取需求,同時(shí)有信息資源庫,通過搜索引擎把兩者橋接起來。
以電商場景來舉例說明。比如用戶在電商里面搜索 aj1 北卡藍(lán)新款球鞋。
為了更好地理解這樣一個(gè)用戶的 query,需要進(jìn)行一系列任務(wù):
查詢理解的分析:NLP 糾錯(cuò)、分詞類目預(yù)測、實(shí)體識別詞權(quán)重、 query 改寫等技術(shù)
(離線)文檔分析:NLP分析,質(zhì)量效率的分析
檢索排序:通過對 query 的分析以及文檔的分析,來結(jié)合搜索引擎本身一些檢索排序的機(jī)制,就能實(shí)現(xiàn)把兩者橋接的目標(biāo)。
3. 行業(yè)搜索鏈路
如果按搜索的范式來分,一般分為 sparse retrieval 及 dense retrieval。
sparse retrieval:傳統(tǒng)的基于字或基于詞去建立倒排索引,同時(shí)基于此去構(gòu)建很多查詢理解的一系列的能力,包括一些文本相關(guān)性排序等;
dense retrieval:隨著預(yù)訓(xùn)練語言模型的興起,基于預(yù)訓(xùn)練底座來實(shí)現(xiàn)單塔、雙塔模型,再結(jié)合向量引擎建立搜索機(jī)制。
? 一般將搜索做這樣一個(gè)鏈路性的劃分:召回、排序(粗排、精排、重排)。
召回階段:
傳統(tǒng) sparse retrieval 的關(guān)鍵詞召回
dense retrieval 向量召回,個(gè)性化召回
粗排階段:使用文本相關(guān)性(靜態(tài))分?jǐn)?shù)來做過濾
精排階段:相對復(fù)雜,會有相關(guān)性的模型,可能結(jié)合業(yè)務(wù)的效率模型(LTR)
?
從左到右,模型復(fù)雜度、效果精度變高。從右到左,處理 Doc 數(shù)變多。以淘寶電商為例,比如召回(幾十億),初排(幾十萬),到精排(幾百、上千),到重排(幾十)量級。
搜索生產(chǎn)鏈路是檢索效果跟工程效率 trade-off 的系統(tǒng)。隨著算力的增長,復(fù)雜模型開始往前置換。比如說精排的模型,現(xiàn)在慢慢會下沉到粗排、甚至召回這個(gè)階段。
搜索效果評估:
召回:recall 或無結(jié)果率
排序:相關(guān)性、轉(zhuǎn)化效率(貼近業(yè)務(wù))
相關(guān)性:NDCG、MRR
轉(zhuǎn)化效率:點(diǎn)擊率、轉(zhuǎn)化率
4. 消費(fèi)互聯(lián)網(wǎng)和產(chǎn)業(yè)互聯(lián)網(wǎng)的搜索
搜索在不同行業(yè)場景里區(qū)別是很大的,在此把它分為消費(fèi)互聯(lián)網(wǎng)搜索與產(chǎn)業(yè)互聯(lián)網(wǎng)搜索
用戶群體和 UV:消費(fèi)互聯(lián)網(wǎng)搜索 UV 非常大,產(chǎn)業(yè)互聯(lián)網(wǎng)面向政企內(nèi)部的員工;
搜索追求指標(biāo):消費(fèi)互聯(lián)網(wǎng),除了追求搜得到、搜得準(zhǔn)之外,還追求轉(zhuǎn)化率高。在產(chǎn)業(yè)互聯(lián)網(wǎng),它更多是信息匹配的需求,所以關(guān)注召回跟相關(guān)性;
工程系統(tǒng)要求:消費(fèi)互聯(lián)網(wǎng) QPS 的要求會很高,沉淀大量的用戶行為,需要有實(shí)時(shí)日志分析、實(shí)時(shí)模型訓(xùn)練。產(chǎn)業(yè)互聯(lián)網(wǎng)的要求會低一些;
算法方向:消費(fèi)互聯(lián)網(wǎng)會從 offline、nearline、online 的海量用戶行為分析建模獲得更大收益。產(chǎn)業(yè)互聯(lián)網(wǎng)的用戶行為稀疏,所以會更注重內(nèi)容理解,比如 NLP 或者視覺的理解,研究方向包括 low resource、transfer learning。
02
相關(guān)技術(shù)研究
搜索是跟系統(tǒng)框架緊密耦合的:包括離線數(shù)據(jù),搜索服務(wù)框架(綠色部分),搜索技術(shù)算法體系(藍(lán)色部分),其底座是 Alicemind 預(yù)訓(xùn)練語言模型體系,同樣會匯聚做文檔分析、query 理解、相關(guān)性等。
1. AliceMind 體系
AliceMind 是達(dá)摩院構(gòu)建的層次化預(yù)訓(xùn)練語言模型體系。包含了通用預(yù)訓(xùn)練模型,多語言、多模態(tài)、對話等,是 NLP 所有任務(wù)的底座。
2. 分詞
搜索的分詞(原子能力),決定了檢索索引粒度,同時(shí)也與后續(xù)相關(guān)性、BM25 粒度有關(guān)。針對 task specific 任務(wù),如果去定制一些預(yù)訓(xùn)練,能比通用的預(yù)訓(xùn)練效果更好。
比如最近研究希望在原生 BERT 預(yù)訓(xùn)練任務(wù)上增加無監(jiān)督的統(tǒng)計(jì)信息的任務(wù),比如統(tǒng)計(jì)字詞、Gram 粒度、或者邊界熵,然后以 mse-loss 增加到預(yù)訓(xùn)練。在 CWS/POS、NER上(右圖),的諸多任務(wù)都達(dá)到 SOTA。
另一個(gè)研究是跨領(lǐng)域。每次需要標(biāo)數(shù)據(jù)、構(gòu)建監(jiān)督任務(wù)的成本很高,所以需構(gòu)建跨領(lǐng)域無監(jiān)督分詞的機(jī)制。右下角的表格為例,電商分詞相比開源的分詞質(zhì)量有明顯改善,這套方法也發(fā)布到 ACL2020。
3. 命名實(shí)體識別
搜索命名實(shí)體識別主要是對 query 、Doc 進(jìn)行結(jié)構(gòu)化的理解,識別出關(guān)鍵短語及類型。同時(shí)搜索知識圖譜的構(gòu)建也依賴 NER 功能。 搜索 NER 也面臨一些挑戰(zhàn)。主要是比如 query 常常是比較短的,上下文不足。
比如說電商里面 query 實(shí)體的歧義性很高,知識性很強(qiáng)。所以這幾年在 NER 核心的優(yōu)化思路,就是通過上下文或者引入知識的方式來增強(qiáng) NER 的表征。
在 2020年、2021年做了隱式增強(qiáng)的工作 combo embedding。把已有 word extractor 或者 GLUE 的表征動態(tài)融合,能搭載在很多業(yè)務(wù)任務(wù)上面達(dá)到 SOTA。
2021年,研發(fā)基于顯式的檢索增強(qiáng),對一條文本會通過搜索引擎得到增強(qiáng)的上下文,融合到 transformer結(jié)構(gòu)。這個(gè)工作發(fā)表在 ACL 2021 上了。
基于這個(gè)工作,我們參加了 SemEval 2022 多語言 NER評測拿了 10 項(xiàng)冠軍,以及 best system paper 。
檢索增強(qiáng):輸入句子本身之外,檢索得到額外 context 并 concat 到輸入,結(jié)合 KL 的 loss 來幫助學(xué)習(xí)。在很多開源數(shù)據(jù)集拿到 SOTA。
4. 自適應(yīng)多任務(wù)訓(xùn)練
BERT 本身效果是很好的,但實(shí)際生產(chǎn)很少有 GPU 集群,每個(gè)任務(wù)都要去做 inference性能代價(jià)很大。我們思考能否只做一次 inference,在 encoder 之后每個(gè)任務(wù)自己再做適配,就能得到比較好的效果。
一個(gè)直觀的方法就是通過 meta-task 的框架納入 NLP query 分析任務(wù)。但傳統(tǒng)的 meta-task 是均勻采樣的分布。我們提出了 MOMETAS,一個(gè)自適應(yīng)基于元學(xué)習(xí)的方法,來自適應(yīng)不同任務(wù)的采樣。
在多個(gè)任務(wù)去學(xué)習(xí)的過程中,我們會階段性用 validation data 做測試看不同任務(wù)學(xué)習(xí)的效果。reward 反過來指導(dǎo)前面訓(xùn)練的采樣。(下方表格)在很多任務(wù)上結(jié)合這個(gè)機(jī)制,相比 UB(均勻分布)有不少提升。
把上述機(jī)制應(yīng)用在搜索很多行業(yè)的場景里去,帶來的收益是僅通過一次 BERT 的編碼并存儲,在很多的下游任務(wù)直接復(fù)用,能大幅提升性能。
5. 搜索召回預(yù)訓(xùn)練語言模型
深度檢索,無外乎是雙塔或單塔,通用的訓(xùn)練范式是有監(jiān)督信號以及預(yù)訓(xùn)練模型,進(jìn)行 finetune 獲得 embedding,對 query 和 doc 進(jìn)行表征。
近期的優(yōu)化路線主要是數(shù)據(jù)增強(qiáng)或難樣本挖掘,另外是優(yōu)化預(yù)訓(xùn)練語言模型。原生 BERT 不是特別適合搜索的文本表示,所以有針對搜索文本表示的預(yù)訓(xùn)練語言模型。其他優(yōu)化是在于做 multi-view 文本表示,以及特別的 loss 設(shè)計(jì)。
相比原生 BERT 的隨機(jī)采樣,我們結(jié)合搜索詞權(quán)重提升詞權(quán)重比較高的詞來提升采樣概率,學(xué)習(xí)到的表征更適合搜索召回。
除此之外,增加 sentence level 對比學(xué)習(xí)。結(jié)合這兩個(gè)機(jī)制,提出了 ROM 的預(yù)訓(xùn)練語言模型。
在 MS MARCO 做實(shí)驗(yàn),對比先前做法能夠達(dá)到最好的效果。在實(shí)際的場景搜索任務(wù)中,也能帶來較大的提升。同時(shí)該模型也參與了 MS 刷榜。
6. HLATR 重排模型
除了 ROM 這個(gè)召回階段之外,在精排、重排階段,提出了一套 list aware 的 Transformer reranking,即將精排很多分類器的結(jié)果通過 Transformer 有機(jī)的融合在一起,有比較大的提升。
結(jié)合 ROM 和 HLATR 兩個(gè)方案,3 月份至今(7 月份)仍舊是 SOTA 結(jié)果。
03
行業(yè)搜索應(yīng)用
1. 地址分析產(chǎn)品
達(dá)摩院研發(fā)的地址分析產(chǎn)品,背景是各行各業(yè)有很多通訊地址。中文的通訊地址有很多特點(diǎn),比如口語化表達(dá)有很多缺省。
同時(shí)地址本身是人事實(shí)物,是客觀世界很多實(shí)體橋接的一個(gè)重要實(shí)體單位。所以基于此建立了一套地址知識圖譜,提供解析、補(bǔ)齊、搜索、地址分析。
這是產(chǎn)品的技術(shù)框圖。從下到上包含了地址知識圖譜的構(gòu)建,以及地址預(yù)訓(xùn)練語言模型,包括基于搜索引擎的框架串接整個(gè)鏈路。上述提到的基準(zhǔn)能力,以 API 的方式提供出來包裝成行業(yè)方案。
這套技術(shù)里面比較重要的一個(gè)點(diǎn)是地理語義的預(yù)訓(xùn)練語言模型。一個(gè)地址在文本表示會是字符串,其實(shí)在空間里面它往往是表征成經(jīng)緯度,在地圖中還有對應(yīng)的圖片。所以這三種模態(tài)的信息是把它有機(jī)融合成一個(gè)多模態(tài)的地理語義的語言模型,以此來支持在定址里的任務(wù)。
上述提到需要做地址相關(guān)的很多基礎(chǔ)能力,比如分詞、糾錯(cuò)、結(jié)構(gòu)化等分析。
最核心的鏈路是將地理預(yù)訓(xùn)練語言模型、地址基礎(chǔ)任務(wù)、引發(fā)搜索引擎的方式將它們橋接起來。
比如說搜索浙一醫(yī)院,可能會對它去做結(jié)構(gòu)化、同義詞糾錯(cuò)、term weighting 做向量化、Geohash 的預(yù)測。基于分析結(jié)果做召回。這個(gè)鏈路是標(biāo)準(zhǔn)的搜索鏈路,進(jìn)行文本召回、拼音召回、向量召回,還增加地理召回。召回之后是多階段的排序,包括多粒度的 feature 融合。
地址搜索體系直觀的應(yīng)用,就是填地址后 suggestion 場景,或者高德地圖里面去做搜索,需要把它映射到空間一個(gè)點(diǎn)位上。
接下來介紹兩個(gè)比較行業(yè)化的應(yīng)用方案。第一個(gè)是新零售 Family ID,核心訴求是維護(hù)一套客戶的管理系統(tǒng),然而各個(gè)系統(tǒng)用戶信息沒有打通,無法實(shí)現(xiàn)有效的整合。
比如品牌廠商賣了一個(gè)空調(diào),家人由于購買、安裝、維修而登記了各種地址、手機(jī)號,但對應(yīng)的實(shí)際上是同一個(gè)地址。建立的地址搜索歸一技術(shù),把不同表示的地址進(jìn)行歸一,生成指紋,將不同用戶 ID 聚合到 Family 概念中。
通過家庭聚合的概念,可以做到更好的滲透分析、廣告投放觸達(dá)等新零售下的營銷活動。
另外一種應(yīng)用場景,是 119、129、應(yīng)急等智能接警應(yīng)用。因?yàn)樯婕暗嚼习傩盏娜松碡?cái)產(chǎn)安全,所以分秒必爭。希望結(jié)合語音識別、文本語義理解技術(shù)把這個(gè)效率提升。
(左邊例子)場景有很多特點(diǎn),比如 ASR 轉(zhuǎn)寫的錯(cuò)別字、不流暢、口語化等問題。目標(biāo)是希望基于自動語音轉(zhuǎn)寫分析推斷報(bào)警地點(diǎn)。
我們提出了一整套系統(tǒng)方案,包括對話理解的口語順滑糾錯(cuò)、意圖識別,以及結(jié)合一套搜索從召回粗排精排的機(jī)制來最終實(shí)現(xiàn)地址推薦。鏈路已經(jīng)比較成熟,在中國上百個(gè)城市的消防系統(tǒng)落地;消防從報(bào)警對話識別出具體的地點(diǎn),結(jié)合推薦、匹配、地址圍欄判斷具體地點(diǎn),對應(yīng)出警。
2. 教育拍照搜題
接下來介紹教育行業(yè)的拍照收集業(yè)務(wù),在 To C、面向老師端也有不少需求。
拍照搜題有幾個(gè)特點(diǎn),本身有增量更新的題庫,用戶群體較大。另外,不同學(xué)科、年齡段對應(yīng)的領(lǐng)域知識性很強(qiáng)。同時(shí)是一個(gè)多模態(tài)的算法,從 OCR 到后續(xù)語義理解、搜索等一套鏈路。
近幾年針對拍照收集構(gòu)建了一整套從算法到系統(tǒng)的鏈路。
比如,在手機(jī)拍照以及 OCR 識別后,會進(jìn)行拼寫糾錯(cuò)、學(xué)科預(yù)測、分詞、詞權(quán)重等一系列工作,幫助做到檢索。
由于 OCR 對英文識別沒有空格,訓(xùn)練了一套 K12 英文的預(yù)訓(xùn)練算法模型,進(jìn)行英文的切分。
同時(shí),學(xué)科、題目類型都是未知的,需要做一個(gè)提前預(yù)測。使用多模態(tài),結(jié)合圖片和文本進(jìn)行意圖理解。
拍照搜題跟普通的用戶搜索不太一樣,用戶搜索往往 query 是比較短,拍照搜題往往是一道完整的題目。題目里面很多詞是不重要的,需要做詞權(quán)重分析,丟棄不重要的詞或者排序予以降權(quán)。
在拍照搜題場景中優(yōu)化效果最明顯的是向量召回。性能上的要求不太能用 OR 的召回機(jī)制,需要用 AND 邏輯,對應(yīng)特點(diǎn)是召回比較少。
去提升 recall 的話,需要做 term weighting、糾錯(cuò)等較冗余的模塊。(右圖)通過文本加向量的多路召回效果,超過純 or 邏輯,在 latency 降低 10 倍。
拍照搜索的鏈路包括了圖像向量召回、公式召回、個(gè)性化召回。
提供兩個(gè)例子。第一個(gè)是純文本的 OCR 結(jié)果,(左列)舊結(jié)果是基于 ES,簡單的 OR 召回,加上 BM25 的結(jié)果,(右列)經(jīng)過多路召回以及相關(guān)性召回的鏈路有較大提升。 第二個(gè)是拍照含有圖形,多路中是必須結(jié)合圖片召回。
3. 電力知識庫統(tǒng)一搜索
在企業(yè)搜索中有很多半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù),提供統(tǒng)一搜索,幫助企業(yè)整合數(shù)據(jù)資源。不僅在電力,其他行業(yè)也有類似需求。這里的搜索不再是狹義的搜索,還包含了對文檔的預(yù)處理文檔的AI和知識圖譜的構(gòu)建,還包括后續(xù)橋接問答的能力。以上是在電力知識庫里,去做一套制度標(biāo)準(zhǔn)文本,從結(jié)構(gòu)化到檢索,到應(yīng)用端的示意圖。
審核編輯:劉清
-
QPS
+關(guān)注
關(guān)注
0文章
24瀏覽量
8800 -
SCWS
+關(guān)注
關(guān)注
0文章
2瀏覽量
5738 -
LMR
+關(guān)注
關(guān)注
0文章
5瀏覽量
6206 -
nlp
+關(guān)注
關(guān)注
1文章
488瀏覽量
22033
原文標(biāo)題:阿里達(dá)摩院:基于預(yù)訓(xùn)練語言模型的行業(yè)搜索的應(yīng)用和研究
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論