一、背景
隨著不斷加快的國際化步伐,攜程逐漸開始在海外開展一系列的市場營銷布局。搜索引擎廣告作為海外營銷的重要組成部分,攜程也開始在海外各個搜索引擎上投放廣告。
一個搜索引擎廣告生態(tài),通常有三個參與方:廣告主、搜索用戶以及搜索引擎。搜索引擎廣告是指廣告主根據(jù)自己的產(chǎn)品或服務(wù)的內(nèi)容、特點等,確定相關(guān)的關(guān)鍵詞,撰寫廣告內(nèi)容并自主定價在搜索引擎端投放的廣告。當(dāng)用戶在搜索引擎上搜索到廣告主投放的關(guān)鍵詞時,相應(yīng)的廣告就會展示,并在用戶點擊后對廣告主進(jìn)行收費。
下圖為攜程在谷歌搜索引擎上購買“攜程”廣告關(guān)鍵詞后,在搜索結(jié)果會展現(xiàn)相關(guān)的廣告截屏。
許多 OTA( )都會投入大量資金進(jìn)行搜索引擎廣告的投放,來獲得旅游相關(guān)需求的搜索流量,以提高訂單量和公司收入,比如 在 18 年單季度在谷歌上投放廣告就達(dá) 10 億美元。
因此對于有搜索引擎投放需求的公司來說,提升搜索引擎廣告效果是一件重要的事情。搜索引擎效果提升主要是要選對合適的關(guān)鍵詞、選擇合適的廣告定價和設(shè)計好的廣告創(chuàng)意來吸引用戶。本文著眼于能自動化生成高質(zhì)量廣告關(guān)鍵詞來減少人力運營成本,提高搜索引擎流量的質(zhì)量,進(jìn)而提高投入產(chǎn)出比。
傳統(tǒng)的搜索引擎關(guān)鍵詞生成方法都以人工運營為主,比如有如下兩種:
(1)拓詞:人工頭腦風(fēng)暴思考整理出關(guān)鍵詞生成規(guī)則,然后基于這些關(guān)鍵詞生成規(guī)則來構(gòu)建關(guān)鍵詞。
(2)撈詞:從已有的搜索語句中,找到還未購買過的部分,人工與廣告主的產(chǎn)品/服務(wù)與落地頁進(jìn)行匹配,來構(gòu)建關(guān)鍵詞。
這些傳統(tǒng)方法的痛點在于:
(1)需要業(yè)務(wù)每日投入精力進(jìn)行固定操作,人力成本比較高。
(2)無法做到精細(xì)化地投放一些廣告關(guān)鍵詞。
因此,我們基于這兩種傳統(tǒng)方法的思路,并針對相關(guān)痛點,來構(gòu)建了廣告關(guān)鍵詞智能生成方法。接下來將對這個智能廣告關(guān)鍵詞生成方法進(jìn)行闡述,并就其中分詞與詞性標(biāo)注、搜索意圖識別等核心模塊用到的算法進(jìn)行介紹。最后還將介紹一些其他探索與嘗試過的廣告關(guān)鍵詞智能生成方法。
二、拓詞智能化
拓詞的智能化,也就是自動總結(jié)關(guān)鍵詞生成規(guī)則來構(gòu)建關(guān)鍵詞,能體現(xiàn)人主觀角度對用戶搜索習(xí)慣的理解與歸納。在對這種傳統(tǒng)方法智能化的過程中,一方面我們對歸納用戶搜索習(xí)慣進(jìn)行了自動化,同時為了能更精細(xì)化地生成符合用戶搜索習(xí)慣的關(guān)鍵詞,還增加了對產(chǎn)品名的解析模塊,并且添加了消除關(guān)鍵詞歧義的步驟,使得獲得的廣告流量用戶搜索意圖更加純粹,提高期望轉(zhuǎn)化率。
具體框架如下:
以下會闡述各個模塊的一些細(xì)節(jié):
2.1 產(chǎn)品信息供給模塊
產(chǎn)品信息供給模塊一方面負(fù)責(zé)存儲可以在搜索引擎上投放的產(chǎn)品或者服務(wù)的相關(guān)數(shù)據(jù)。具體對于 OTA,可以有城市住宿供給產(chǎn)品、酒店住宿供給產(chǎn)品、航線類機(jī)票供給產(chǎn)品等。同時,這個模塊也對產(chǎn)品名稱進(jìn)行了清洗、分詞與詞性標(biāo)注,方便后續(xù)結(jié)合關(guān)鍵詞生成規(guī)則進(jìn)行關(guān)鍵詞生成。以下以住宿產(chǎn)品為例搜索引擎關(guān)鍵字設(shè)置,闡述模塊的細(xì)節(jié)。
分詞與詞性標(biāo)注例子:
(1) 虹橋火車站 ——> {地理興趣點}
(2)青城山小天井客棧 ——> 青城山 + 小天井 + 客棧 ——> {地理興趣點} + {酒店名} + {住宿需求詞}
(3) by ——> by + ——> {酒店名} + {城市名}
針對分詞與詞性標(biāo)注的方法如下:
以酒店為例。首先,對于酒店名分詞這種細(xì)分分詞場景,類似于地址解析的場景,是一個詞性結(jié)構(gòu)一致性較強(qiáng)并且與地理實體強(qiáng)相關(guān)的場景,基于詞典的分詞與詞性標(biāo)注方法已經(jīng)有比較高的效果,但仍存在一些問題。這里針對兩種問題進(jìn)行了一定的處理來提高分詞與詞性標(biāo)注的準(zhǔn)確性。
(1)應(yīng)對地理歧義的問題,采用地理結(jié)構(gòu)化詞典的方法
華盛頓既可能是酒店連鎖品牌名稱,也可能有美國首都“華盛頓”的含義。虹橋既可能是一家酒店的酒店名,也可能有上海”虹橋“這個地理興趣點的含義。在英文產(chǎn)品名稱的詞性標(biāo)注中,這種情況存在更多,因為國外很多地方存在重名的現(xiàn)象,比如 (維多利亞)這個單詞,在幾十個國家都有相應(yīng)的建筑、街道或者酒店名包含單詞 ,因此很難正確地對類似存在歧義的詞語進(jìn)行詞性標(biāo)注。
針對這種地理實體的歧義性,采用基于 的地理結(jié)構(gòu)化詞典來處理這種問題。 的原理就是將一個地理位置的經(jīng)緯度,轉(zhuǎn)化為一個 Hash 值,從而達(dá)到一個地理分區(qū)域的效果。對地理實體進(jìn)行 后,地理實體被分到各個區(qū)域內(nèi),對酒店名進(jìn)行解析時,只使用關(guān)聯(lián)區(qū)域內(nèi)的詞典,從而大大減少了地理歧義性問題導(dǎo)致的錯誤。
(2)應(yīng)對詞典質(zhì)量不足的問題,采用數(shù)據(jù)增強(qiáng)+-CRF 的方法
基于詞典與規(guī)則的方法強(qiáng)依賴于詞典的質(zhì)量搜索引擎關(guān)鍵字設(shè)置,公司內(nèi)部的地理詞典基本涵蓋了基本的城市、地理興趣點信息,但仍有部分地理實體仍未包含,比如一些道路名稱、山名、村名等。針對這種情況,我們使用深度學(xué)習(xí)模型來處理這種情況,我們希望能讓模型學(xué)習(xí)到 xx 路,xx 山,xx 村,xx 學(xué)校等這樣的語言結(jié)構(gòu)是一個地理興趣點,從而彌補(bǔ)詞典質(zhì)量不足的問題。
具體的,采用了數(shù)據(jù)增強(qiáng)+-CRF 模型的方法來處理。
采用隨機(jī)生成拼接的方式,生成大量有效的正確標(biāo)注數(shù)據(jù),讓模型能學(xué)到更多信息。比如由于道路名的缺乏,導(dǎo)致“成都米果文創(chuàng)民宿東安南路店”、“佳木斯小時光民宿育新街分店”中的“東安南路”、“育新街” 無法被正確標(biāo)注,我們隨機(jī)生成各種包含 {城市名} + {酒店名} + {住宿需求}+xx 路/xx 街+店/分店/旗艦店/二店/三店等人造酒店名。
增加了這部分?jǐn)?shù)據(jù)后,開始進(jìn)行分詞與詞性標(biāo)注算法的訓(xùn)練。常見的分詞與詞性標(biāo)注算法,有 CRF、HMM、RNN、-CRF 等。-CRF 在多個自然語言序列標(biāo)注問題(NER、POS)上都表現(xiàn)優(yōu)秀。這里采用 -CRF 模型。
具體 -CRF 模型如下:
第一層為 層,輸入文本轉(zhuǎn)化為向量表示。第二層為 (雙向 LSTM)層,相比單向的 LSTM, 能同時學(xué)到句子從前到后,以及從后到前的信息。第三層為一個全連接層。第四層為一個 CRF 層。
通過以上一些方法,我們完成了對中英住宿產(chǎn)品名稱的解析,基于中英文解析結(jié)果,我們使用了翻譯、平行語料詞對齊算法實現(xiàn)跨語言的分詞與詞性標(biāo)注(Cross- NER)。
2.2 搜索習(xí)慣歸納模塊
這個模塊通過對用戶搜索語句進(jìn)行解析,歸納得到用戶搜索語句的常見搜索習(xí)慣。
具體搜索語句的解析方法有如下:
(1)基于命名實體識別的解析方法
對搜索語句進(jìn)行命名實體識別,從而得到搜索語句的解析結(jié)果。
例子:
具體方法為:
在搜索引擎搜索語句的場景,從搜索引擎廣告平臺拿到的用戶搜索語句是會與一個產(chǎn)品落地頁一一對應(yīng)的,因此直接基于廣告落地頁相關(guān)實體信息構(gòu)建命名實體識別規(guī)則就有比較好的效果,也免除了耗費大量的精力在構(gòu)建訓(xùn)練集上。
(2)基于分詞與詞性標(biāo)注的解析方法
對搜索語句進(jìn)行分詞與詞性標(biāo)注,從而得到搜索語句的詞性結(jié)構(gòu)。
例子:
具體方法為:基于詞典來進(jìn)行分詞與詞性標(biāo)注。
2.3 關(guān)鍵詞生成模塊
此模塊主要進(jìn)行關(guān)鍵詞生成。從產(chǎn)品供給模塊抽出需要進(jìn)行投放的產(chǎn)品,并基于一定規(guī)則從關(guān)鍵詞生成規(guī)則模塊中抽取相應(yīng)規(guī)則進(jìn)行關(guān)鍵詞生成,并匹配相應(yīng)的產(chǎn)品落地頁與廣告物料信息。
在生成關(guān)鍵詞之后,因為生成的關(guān)鍵詞的用戶意圖仍存在可能性會指向多個供給產(chǎn)品,因此會對生成后的關(guān)鍵詞進(jìn)行歧義性判斷,過過濾掉其中存在歧義性的關(guān)鍵詞。
消歧具體方法為:
(1)基于字符串匹配
如果不同產(chǎn)品生成相同關(guān)鍵詞或者關(guān)鍵詞存在不同產(chǎn)品名里,那么這個關(guān)鍵詞會被過濾。
(2)基于搜索點擊數(shù)據(jù)的分布結(jié)果
如果一個關(guān)鍵詞,在搜索點擊數(shù)據(jù)里,發(fā)現(xiàn)點擊分布在多個搜索結(jié)果上,那么這個關(guān)鍵詞會被過濾。
(3)基于搜索點擊數(shù)據(jù),構(gòu)建語義匹配模型
如果一個關(guān)鍵詞,與多個產(chǎn)品的語義匹配分?jǐn)?shù)夠高,那么這個關(guān)鍵詞會被過濾。這里我們采用了 DSSM 模型。DSSM 是一個 2013 年的一個 query/doc 的相似度計算模型,被廣泛運用于廣告召回、排序場景中。DSSM 的核心思想就是將不同對象映射到統(tǒng)一的語義空間中中,利用該空間中對象的距離計算相似度。
三、撈詞智能化
撈詞智能化,指自動從用戶住宿搜索語句中挖掘出能進(jìn)行廣告投放的搜索語句,并匹配相應(yīng)的產(chǎn)品與廣告落地頁來生成新的廣告關(guān)鍵詞。這個場景可以視為一個用戶意圖識別的場景,即能對收集到的用戶搜索語句的搜索意圖進(jìn)行識別并和廣告主的供給產(chǎn)品或服務(wù)進(jìn)行匹配,從而構(gòu)建搜索廣告關(guān)鍵詞。
從 OTA 的角度,無論是公司內(nèi)部收集的網(wǎng)頁端或者 APP 端收集到的用戶搜索語句還是搜索引擎廣告平臺拿到的用戶搜索語句,都是旅游領(lǐng)域的用戶搜索行為( )。
因此項目里對這樣的旅游領(lǐng)域的搜索意圖大致分為了如下四大類搜索意圖以及 12 小類搜索意圖:
以下闡述一下具體在酒店搜索方面,撈詞智能化的實現(xiàn)框架:
下面我們逐一地來看看模塊 A (是否住宿相關(guān)),模塊 B (酒店住宿意圖識別) 的內(nèi)部細(xì)節(jié)。
1)模塊 A (判斷是否住宿相關(guān))
我們將這個問題視為文本二分類的場景來處理,并基于 Bert 預(yù)訓(xùn)練做 fine- 來構(gòu)建分類模型。Bert 是 2018 年提出的一個 NLP 預(yù)訓(xùn)練模型,Bert 的預(yù)訓(xùn)練過程能學(xué)到強(qiáng)大的語義表征能力,同時 發(fā)布了中文的預(yù)訓(xùn)練模型,使得我們用有限的樣本,做 fine-tune 即可在一些場景獲得不錯的效果。
具體訓(xùn)練集我們使用了基于 OTA 平臺的搜索點擊數(shù)據(jù),如果一個搜索語句大概率點擊的是住宿相關(guān)的搜索結(jié)果,那么就生成一條住宿相關(guān)的搜索語句正樣本。相應(yīng)的,如果一個搜索語句大概率點擊的是非住宿相關(guān)的搜索結(jié)果,那么就生成一條非住宿相關(guān)的搜索語句正樣本。分類為住宿相關(guān),并且概率大于一定閾值的搜索語句會進(jìn)入住宿意圖識別模塊。
2)模塊 B (酒店住宿意圖識別)
我們將這個問題視為一個語義匹配的場景來處理,傳統(tǒng)的語義匹配場景有類似于 query-query 相似性算法、query- 相似性算法,這里我們可以視作為 query- 相似性算法。
具體數(shù)據(jù)集為:
如果一個關(guān)鍵詞,在搜索點擊數(shù)據(jù)里,發(fā)現(xiàn)大概率點擊在某一個搜索結(jié)果(某旅游產(chǎn)品)上,那么這個關(guān)鍵詞會被定義語義指向這個產(chǎn)品。反之,則說明這個關(guān)鍵詞不指向這個產(chǎn)品。
產(chǎn)品的別名與該產(chǎn)品的正式名稱會被視作是語義一致的。
但由于 OTA 搜索端和搜索引擎搜索端場景的不同,用戶的搜索習(xí)慣也會有很大的差異,比如搜索引擎端的搜索語句的長度通常要比 OTA 搜索端長度長很多,也更復(fù)雜。比如搜索引擎端,用戶可能會搜索“靜安寺 攜程住宿 優(yōu)惠券”,而在 OTA 搜索端,很難見到用戶有這樣的搜索行為。因此,我們構(gòu)建了一些同義改寫方法進(jìn)行 query ,使得訓(xùn)練集與真實場景更加貼合。
語義匹配采取的方案是基于 DSSM+BERT fine-。采用 DSSM+BERT 的組合,是因為 Bert 的語義匹配精度更高,DSSM 的語義匹配性能好。DSSM 可以離線計算好產(chǎn)品的向量表示,可以做到語義匹配快速粗召回。因此設(shè)計為基于 DSSM 作意圖語義召回,再針對召回的結(jié)果再用 Bert 進(jìn)行一一匹配,使得在保證方案性能的情況下提高匹配準(zhǔn)確率。
四、其他方法
除了以上兩種方法,我們也探索和嘗試了其他的廣告關(guān)鍵詞智能化生成思路,以下進(jìn)行簡單介紹:
4.1 基于搜索聯(lián)想(query )的廣告關(guān)鍵詞生成
當(dāng)我們在搜索引擎里進(jìn)行搜索時,搜索引擎通常會在下拉框或者搜索結(jié)果頁推薦給我們給我們一些搜索語句聯(lián)想(query )。
通過對搜索引擎搜索聯(lián)想一些方法的研究,我們可以得知搜索聯(lián)想背后的算法通常會考慮:
(1): 這個搜索聯(lián)想的結(jié)果搜索次數(shù)較多
(2): 這個搜索聯(lián)想的結(jié)果與原搜索語義相關(guān)
(3):在 的基礎(chǔ)上,搜索聯(lián)想會盡量考慮更多樣化的聯(lián)想結(jié)果,給用戶更好的搜索體驗。
和 的特性表示搜索聯(lián)想結(jié)果是一個優(yōu)質(zhì)的搜索廣告關(guān)鍵詞來源,因為搜索聯(lián)想的結(jié)果通常會有較高的流量并且語義相似性較高。 的特性則有利有弊,好的方面在于多樣化能帶來更多樣更長尾的流量(長尾的流量通常更便宜,因此 ROI 更高),然而多樣化也可能帶來不可控的劣質(zhì)流量。
4.2 基于同義改寫的廣告關(guān)鍵詞生成
對于一些有有優(yōu)異表現(xiàn)的廣告關(guān)鍵詞,對其進(jìn)行同義改寫可以得到更多相似的優(yōu)質(zhì)的廣告關(guān)鍵詞。具體的方法可以有:
(1)基于用戶搜索查詢重寫的同義改寫 (Query )
(2)基于用戶搜索點擊圖譜的同義改寫(Click Graph )
(3)基于同義語法替換的同義改寫
五、總結(jié)
以上闡述我們 SEM 搜索引擎廣告關(guān)鍵詞智能化生成的幾種方法,主要介紹了兩種傳統(tǒng)關(guān)鍵詞生成方法的智能化思路。
對于未來的規(guī)劃與展望可能主要有兩個方向:
(1)從中英日韓到更多小語種語言:現(xiàn)在主要做的還都是中英日韓廣告關(guān)鍵詞的相關(guān)工作,對小語種廣告關(guān)鍵詞進(jìn)行了一定的探索與開發(fā),以后會更多的往這方向拓展。
(2)從人的理解到機(jī)器理解:現(xiàn)在的方法生成的關(guān)鍵詞大多數(shù)都是人可理解的,比如分詞、詞性標(biāo)注等,都是從人的角度可解釋的,但沒有很多嘗試基于機(jī)器理解的思路。在 SEM 的框架內(nèi),都是程序在運行,因此可能存在一些語法無法解釋的關(guān)鍵詞卻會有更好的表現(xiàn)的情況,這可能是一個可以琢磨的方向。
作者介紹:
遙新,攜程高級數(shù)據(jù)分析師,熱愛用數(shù)據(jù)解決實際問題。
本文轉(zhuǎn)載自公眾號攜程技術(shù)(ID:)。
原文鏈接: