KDD 提前看 | KDD 里的技術實踐和突破
機器之心原創
作者:仵冀穎
編輯:Hao Wang
2019 年 KDD 將於 8 月 4 日至 8 日在美國阿拉斯加州安克雷奇市舉行。作為數據挖掘領域頂級的學術會議,KDD 今年的錄取依然非常嚴格,Research Track 的接受率為 14%。無論傳統的研究方向例如神經網路、知識發現等,還是近年火爆的圖神經網路、推薦系統等方向都有不少新的演算法出現。此外,相關技術結合具體應用領域的實踐和突破也是亮點之一,一些文章是該領域中相關技術的首次實踐。
數據挖掘、深度學習以及其他機器學習的模型、演算法在過去幾年一直保持快速發展,研究人員不斷提出了大量優秀的模型、演算法等,在實驗條件下,模型和演算法的準確度、處理速度等性能不斷提高。一些模型和演算法也被應用於實踐中,獲得了很好的效果。我們從 2019 年 KDD 的錄用論文中選取了幾篇重點闡述技術實踐和突破的文章進行分析和介紹。結合具體行業的特點,例如在線學習系統原始數據異構性強、醫療行業專業辭彙可理解性差、氣象數據穩定性差以及在線推薦系統智能化需求提升等,研究人員對經典的模型和演算法進行了改進和參數調整,以適應具體的場景、滿足應用的需要。
本文將對以下四篇論文進行介紹:
- QuesNet: A Unified Representation for Heterogeneous Test Questions
- Unsupervised Clinical Language Translation
- Deep Uncertainty Quantification: A Machine Learning Approach for Weather Forecasting
- Exact-K Recommendation via Maximal Clique Optimization
1.QuesNet: A Unified Representation for Heterogeneous Test Questions
原文地址:https://arxiv.org/pdf/1905.10949.pdf
本文是 Research Track 中 Machine Learning Themes 方向的一篇文章,主要是針對在線教育提出的基於表示學習的應用,本文作者來自中科大和科大訊飛。近年來在線學習系統,包括 Khan Academy、LeetCode 等,為不同年齡段的用戶提供在線學習場景,基於問題語料庫的智能分析,系統可為用戶提供個性化的學習服務。現有方法主要是利用自然語言處理技術將問題語句直接轉化為句法模式或語義編碼,之後利用監督學習方法優化模型,將編碼結果應用於後續數據分析加工處理。這些方法依賴於大量的手工標記數據,由於標註數據的缺乏和準確度不高,在線學習系統的個性化數據分析、推送性能受到很大影響。
問題描述
本文提出了一種直接利用大規模無標記問題語料庫的無監督學習模型。與傳統演算法相比本文工作的最大特點是直接利用無標記的問題語料庫進行智能分析,這就解決了標記數據缺乏的問題。然而,針對在線學習智能推送的無監督學習存在三個主要難點:第一,應用於教學系統的問題數據具有連貫異構的特點,如圖 1 所示,語料庫中的問題形式有文本(紅色)、圖像(綠色)以及邏輯先驗知識(黃色)等。第二,針對語料庫的分析不是簡單基於語言環境完成文本直譯(提取低層特徵),還需要考慮它所包含的邏輯信息(提取高層特徵)。第三,在實踐中無標記問題語料庫必須是簡單易獲取的,從而能夠支持後續數據加工處理,滿足在線應用的需求。
Figure 1: Two examples of heterogeneous questions.
本文提出一種基於統一特定域的理解性深度學習演算法 QuesNet。QuesNet 能夠將某一問題的異構數據聚合到統一的特定域,此外能夠提取語義信息和邏輯知識等。QuesNet 與多種不同的後續演算法組合使用,能夠有效提高數據分析結果、改進在線產品的應用效果。
QuesNet 模型構建
QuesNet 主要包括三個部分:嵌入層、內容層和語句層。其中,嵌入層中將異構的語料信息映射到統一域中,內容層中應用多層雙向 LSTM 提取低層語義特徵,而語句層遵循自注意力機制實現高層邏輯知識信息與低層語義特徵的融合。
Figure 2: QuesNet model architecture.
圖 2 給出 QuesNet 模型結構。圖 2(a) 為 QuesNet 的整體三層結構,其中圖 2(b) 為嵌入層,該層實現異構語料數據嵌入;圖 2(c) 為內容層,應用雙向 LTSM 提取特徵,雙向 LSTM 具體結構見圖 2(d);圖 2(e) 為語句層,基於全局自注意力機制實現。
預訓練
在預訓練階段,本文提出一個無監督兩層分級訓練演算法進一步從向量中提取問題信息。嵌入層中使用 Word2Vec 針對整個語料庫計算初始的詞-向量映射。針對低層特徵,提出一種孔語言模型(holed language model,HLM)從大規模語料庫中提取語義信息,其中 HLM 的目標函數同時考慮上下文的語義環境。針對高層特徵,提出一種特定域的目標函數提取針對每個問題的邏輯和知識理解。
Figure 3: Pre-training of QuesNet.
圖 3 給出 QuesNet 的預訓練過程。其中圖 3(a) 表示嵌入預訓練過程,圖 3(b) 為兩級目標函數,針對低層特徵利用 HLM 進行處理(中間),而針對高層特徵提出了特定域目標函數(右側)。
實驗分析
在實際應用中,在線學習的任務項種類繁多,針對特定的任務,需要對 QuesNet 進行精調處理,以便更好的滿足後續任務的要求。本文實驗中所有數據均來源於科大訊飛的在線學習系統智學網(http://www.zhixue.com),數據由在線應用直接產生,沒有經過其他預處理,具有較強的異構性。(http://www.zhixue.com),Zhixue 中的數據來源於真實應用系統,具有很好的異構性。本文選擇傳統的監督學習演算法、ELMo、BERT 和 H-BERT 作為實驗對比,同時針對三種任務進行實驗:知識映射、難度估計和學生表現預測。)
本文選擇的對比演算法包括:傳統的監督學習演算法、ELMo、BERT 和 H-BERT。(http://www.zhixue.com),Zhixue 中的數據來源於真實應用系統,具有很好的異構性。本文選擇傳統的監督學習演算法、ELMo、BERT 和 H-BERT 作為實驗對比,同時針對三種任務進行實驗:知識映射、難度估計和學生表現預測。)
實驗任務包括:知識映射、難度估計和學生表現預測。(http://www.zhixue.com),Zhixue 中的數據來源於真實應用系統,具有很好的異構性。本文選擇傳統的監督學習演算法、ELMo、BERT 和 H-BERT 作為實驗對比,同時針對三種任務進行實驗:知識映射、難度估計和學生表現預測。)
表 1 中給出不同演算法在完成不同任務時的實驗效果,由表 1 可知,針對在線學習系統問題語料庫分析的特定任務,本文提出的 QuesNet 效果最優。
Table 1: Performance of comparison methods on different tasks.
分析和思考
近年來,國內各類在線學習網站不斷湧現,新型的在線模式衝擊了原有的線下學習模式,使得學習不再受時間、地點的限制,使更多的人有公平學習、接受先進教育的機會。此外,在線學習模式依託大數據、人工智慧、深度學習等技術,能夠實現用戶精確定位、需求精準分析,使得學生接收到更好的課程推送、知識推送。本文是智學網問題語料庫分析的技術實踐,可推廣應用到類似的在線應用、問答推送、智能客服等領域。
2.Unsupervised Clinical Language Translation
原文地址:https://arxiv.org/pdf/1902.01177.pdf
本文是 Applied Data Science Track 中 Language Models and Text Mining 方向的一篇文章,主要是解決醫學文本的分析和處理問題,屬於表示學習中自然語言處理技術與醫學應用相結合的技術實踐,作者全部來自於 MIT。在醫療診斷過程中醫生往往使用專業的醫學術語描述病情和治療方案,而病人往往無法理解診斷報告,無法準確自行描述病史、接受的診療方式等。利用機器學習和自然語言處理技術輔助醫學文本的分析,由於醫學語言的專業性以及缺少有標記的醫療文檔數據,現有演算法的處理效果都不理想。本文針對醫生編製的治療文本和患者自述的病情文本翻譯問題,提出了一種無監督醫學語言翻譯模型,模型無需人工干預處理的語料庫作為輔助參考。
模型
應用於醫療行業的文本分析技術主要是基於詞典或基於模式的方法,這些傳統方法能夠完成單詞的翻譯但不能做整句翻譯,此外翻譯效果依賴於大規模已標註訓練集,無法在真實的醫療環境中推廣應用。本文提出了一個無監督醫學語言翻譯模型。首先,構建一個無監督的單詞翻譯系統將醫學專業辭彙翻譯為病人常用的語言。第二,利用一個統計機器翻譯系統 (Statistical Machine Translation, SMT)基於上下文相關辭彙和語法信息等進一步提升翻譯質量。模型整體結構見圖 1。
Figure 1: Overview of our framework.
如圖 1 所示模型主要包括兩步實現:(1)利用無監督詞表示學習和雙語詞典感應方法(Bilingual dictionary induction,BDI)實現單詞級別的翻譯;(2)基於第一階段 BDI 處理後對齊的詞嵌入空間,利用統計機器學習系統和反向傳遞優化演算法實現語句級別的翻譯。
第一步,構建一個無監督的單詞翻譯系統實現單詞級別的翻譯。
- 首先利用無監督跳躍圖演算法(skip-gram)分別學習醫學文本和病人文本的語料庫,提取語言嵌入空間,同時保持語義和語言屬性。skip-gram 演算法的原理是針對一條語料中的每個標誌,通過訓練過程使每個標誌在大小為 k 的窗口內的全部表示概率值為最大值。進一步,當考慮子字(sub-word)級別的特徵時,能夠有效捕獲語料中的辭彙和形態特徵,從而提升單詞級別的翻譯效果,本文使用字元級 n-gram 屬性作為這種子字級別的特徵。
- 使用 BDI 方法完成單詞級別的翻譯。BDI 的目的是使得原始語言和翻譯後語言對應的嵌入空間盡量相似。人類語言使用相似的語義表示相似文本表達,不同語言的詞嵌入空間計算得到的最近鄰圖是同態的。因此,理論上如果嵌入空間具有相似的分布形狀,則可以對由相同演算法訓練的嵌入空間進行對齊。本文使用兩種先進的 BDI 方法實現詞嵌入空間對齊:iterative Procrustes process(MUSE)和 self-learning(VecMap),使用特徵向量值對比嵌入空間相似度。詞嵌入空間對齊的目的是獲得線性映射矩陣 W。為了減少對齊過程中的監督,本文不使用任何映射字典,而是直接處理兩段英語語料特徵,利用兩段語料中的相同字元串構建合成種子字典。源語言和目標語言中的相同字元串可用作學習映射矩陣 W 的錨(anchor),本文介紹使用錨後 MUSE 的生鏽過程和 VecMap 的自學習過程。如不考慮錨信息,可使用對抗性學習方式計算 W。本文使用 CSLS 而不是簡單的最近鄰進行最近鄰詞檢索。
第二步,本文利用 SMT 實現語句級別的翻譯。
- 首先利用 KenLM 語言模型 (https://github.com/kpu/kenlm) 對單詞翻譯的結果初始化處理。本文用無監督詞表示學習和 BDI 演算法訓練的對齊嵌入空間來初始化語句級別的翻譯。使用的統計優化計算公式為:
- 其中,cos 表示計算的為源醫學專用語言 p 和目標病人語言 c 之間的餘弦距離。
- 利用初始化得到的短語表和語言模型建立 SMT 系統,將醫學專用語句轉化為病人可理解的簡單語句。
- 執行反向翻譯處理迭代地生成並行數據,從正向、反向兩個方向多次迭代不斷更新語句、短語表和語言模型,從而改進翻譯的效果。
實驗
本文使用 MIMIC-III 資料庫進行實驗分析,該庫數據來源於美國某大型三級醫療中心 58976 名 ICU 患者的病例,選取其中 59654 份病歷文本用於實驗。病例文本中通常包含多個章節,本文實驗中選擇「現病史」和「基本醫療情況」兩個章節,這兩個章節也是醫學專業辭彙應用比較多的部分。儘管醫生語料庫和病人語料庫都來源於 MIMIC-III,但二者的內容之間並沒有太多對應的部分。本文從中選擇了 4605 條重疊的英文欄位用於生成 BDI 中所使用的種子字典。此外,還選取了部分公開英文版本的 MedlinePlus 語料庫中的內容進行實驗,目的是驗證引入這部分語料庫是否能夠提高 BDI 的效果。數據預處理階段將語料庫中包含的病人個人健康信息全部刪除,應用 Stanford CoreNLP(https://stanfordnlp.github.io/CoreNLP/)和 NLTK(http://www.nltk.org/)兩個工具進行了文本分節和句子分片處理。本文使用 MIMIC-consumer 語料庫或通用語料庫構建句子翻譯的語言模型。
本文實驗從單詞翻譯和語句翻譯兩個角度驗證模型的有效性。針對單詞級別的翻譯,本文進行了大量實驗以論證應用子字級別特徵輔助翻譯的效果、MUSE 和 VecMap 兩種 BDI 方法的效果、利用第三方語料庫 MedlinePlus(https://medlineplus.gov/)輔助翻譯的效果以及詞嵌入空間維度的最優選擇等問題。表 1 給出實驗結果數據,實驗條件包括 MUSE、VecMap 以及是否應用增強語料(MedlinePlus)等情況,此外實驗基於臨床醫生設計的語句對以及消費者健康辭彙 (Consumer Health Vocabulary,CHV) 先驗語句對等。使用 fastText skip-gram 訓練詞嵌入空間。對於子字信息,本文考慮了 bi-gram 到 5-gram。本文選擇了一個 100 維參數化,這是研究 BDI 演算法和數據擴充的常見方法。實驗結果的精度為標準偏差 k(p@k)×100。標註為加粗的結果均為實驗結果最優值。
Table 1: Performance of nearest neighbors retrieval using CSLS.
針對語句級別的翻譯,本文使用 SMT 架構的模型驗證翻譯效果,主要指標包括:子字信息、BDI 的錨信息和在特定或普適性語料庫中訓練得到的語言模型的有效性。本文實驗階段使用的是 Moses 作為 SMT 引擎,利用有監督的基於字典的模型 CHV 作為實驗基線。本實驗中所使用的 SMT 具體配置如表 2。
Table 2: Configurations of statistical MT (SMT) for sentence translation.
表 3 給出使用我們的無監督 SMT 框架進行語句級別翻譯的實驗結果。這些值是關於翻譯句子正確性和可讀性的平均意見得分的平均值(標準差)。可讀性僅適用於正確性得分大於等於 4 的句子。基線採用監督的基於字典的模型 CHV (http://www.kdh-nlp.com/research/chv-project/)。本文根據臨床醫生判斷的正確性、臨床醫生和非臨床醫生的可讀性來評估翻譯效果。配置 F 在所有 SMT 配置中正確性最高,其配置為在 BDI 中使用帶錨的 300 維詞嵌入空間,並採用模擬用戶語料庫進行語言建模。接著是配置 E、D、C、B、A,然後是 N,實驗結果證明語句翻譯最關鍵的部分是使用相同的字元串作為 BDI 的錨定。如果沒有使用錨(配置 N),只能保證翻譯完的句子是正確的,無法達到可讀性評估的閾值(正確性得分≥4 才會進行可讀性評估)。
Table 3: Performance of sentence translation using our unsupervised SMT framework.
分析和思考
本文是機器學習、自然語言處理等在醫療領域的技術突破,首次提出了針對醫療文本的無監督學習模型。通過在優化過程中引入特定參考信息、語言特徵,例如醫學字典中的專業領域信息等,提升醫學專業性翻譯的效果。此外,引入一些上下文表示也能夠改正嵌入模型的效果。作者計劃後期將本文模型推廣為在線應用供公開使用。本文提出的模型推廣應用後,能夠大大提升病人衛生保健和個體化用藥的水平。
3.Deep Uncertainty Quantification: A Machine Learning Approach for Weather Forecasting
原文地址:https://arxiv.org/pdf/1812.09467.pdf
本文是 Applied Data Science Track 中 Environment and Sustainability 方向的一篇文章,主要目的是基於歷史數據進行天氣情況的預測。氣象數據,包括溫度、風力、濕度等,與人們的生產生活息息相關,同時影響社會生活的各個方面,例如交通擁堵情況、大氣污染情況以及電力供應情況等,因此對氣象數據的分析和預測至關重要。目前,氣象數據分析預測主要採用的是數值計算方式(Numerical Weather Prediction,NWP),模型一般基於大氣水熱動力學方程。由於氣象數據本身具備一定規律性,在初始解選擇較好的情況下,NWP 可以獲得較好的預測效果。NWP 的數值計算過程計算複雜度較高且計算穩定性較差。隨著大數據技術的不斷發展,數據驅動的機器學習模型逐步應用於處理複雜的分析預測問題。本文首次提出將深度學習方法應用於氣象數據預測問題,依託深度學習強大的處理能力,實現對多個不同地點未來不同天氣階段的多個氣象變數同時預測。
模型
近年來,數據的採集來源越來越多,氣象大數據可用性不斷提高,研究人員發現將數據驅動方法引入氣象學可以取得較好的分析預測效果。數據驅動方法的優點在於,通過快速學習和建模技術,無需求解複雜的微分方程即可預測。傳統的單點預測(即點估計)方法應用於氣象數據分析缺少可信度和靈活性。本文基於深度學習和不確定性量化提出了一種統一的深度學習方法,預測不同氣象站的多個氣象變數,該方法具有下述幾點貢獻:
第一,本文提出了一種深度學習和信息融合機制,能夠有效應用於氣象數據預測。該方法是首次將氣象歷史觀測數據與 NWP 結合用於處理氣象數據預測問題。
第二,本文使用 NLE(Negative log-likelihood)損失函數,與 MSE、MAE 等損失函數相比,使用 NLE 能夠提升點估計的一般化程度。此外,本文方法使用深不確定性量化機制(deep uncertainty quantification,DUQ)而不是傳統的貝葉斯深度學習(Bayesian deep learning,BDL),目的是更好的與當前主流的深度學習框架融合使用,例如 Tensorflow 和 PyTorch。此外,本文還引入反向傳播機制(BP)用於優化。
第三,除了簡單的點估計,DUQ 同時能夠實現連續區間預測。因此,本文的方法除了可以用於氣象數據預測外,也可用於解決其他時間序列回歸問題。
第四,本文提出了一種有效的深度集成策略,能夠大大提升預測的準確度。
本文提出的 DUQ 基於經典的序列對序列架構(seq2seq,即編碼-解碼架構),近年來根據不同任務針對該架構提出了很多改進手段,但大多數都側重於從結構角度進行改進,目的是使點估計更精確。本文首次將天氣預報的連續不確定性量化引入架構中,具體架構見圖 1。
Figure 1: DUQ for sequential point estimation and prediction interval.
編碼階段提取觀測到的氣象數據特徵序列(E(1)、E(2)...)的潛在表示 c 如下式:
潛在表示 c 能夠反映當前的氣象動態信息,之後轉換成解碼階段的初始狀態。解碼階段基於 c 能夠求解氣象預測相關的站點標識、預測時間標誌以及 NWP 預測。圖 1 中兩個嵌入層的目的是引入站點標識和時間預測標誌,並自動學習其嵌入表示。
學習階段,DUQ 針對每個時間步長預測兩個值:預測均值和方差參數化高斯分布。本文使用 NLE 作為損失函數,NLE 基於合理的假設計算高斯分布,計算公式如下:
整個學習階段的目標是最小化 NLE。然而深度模型的優化很容易導致訓練集的過度擬合,因此需要在驗證集上實現早期停止。
訓練後,可以針對任意輸入值計算統計推理如下:
本文採用一種簡單有效的集成機制:每個模型都是一個基於指定節點初始化的 DUQ 模型,集成的點估計是所有基於 DUQ 的模型的平均點估計,且具有可擴展性和易實現性。
實驗
本文基於中國氣象局公開數據進行實驗,應用不同的回歸模型、深度學習模型等驗證本文提出演算法的有效性,此外針對參數的選擇、損失函數的選擇,以及是否參考最近的氣象數據用於深度學習預測等都進行了大量的實驗。
Table 1: The SS performance of different methods on 9 days.
表 1 給出了基於相關技能得分(the associated skill score,SS)指標的實驗結果,最右側 P-value 列表示使用單尾配對 T 檢驗方法將性能最佳的方法 DUQEsb10 與其他方法進行比較的結果。由表 1 中實驗結果可知,基於深度學習的模型(DUQ 和 Seq2Seq)的預測效果優於非深度學習的模型(SARIMA,SVR,GBRT)。對於 DUQ 模型來說,使用不同的深度學習層數、節點數等對模型預測效果也有影響。DUQnoOBS 表示應用深度學習模型但不融合近期氣象數據動態變化情況的模型,由實驗結果可知,模型的效果不如融合了相關數據的 DUQ300-300。
Table 2: The RMSE performance of different methods on 9 days.
表 2 給出了基於 RMSE 的實驗結果,由於 RMSE 和 SS 的計算理念不同,表 1 和表 2 中不同模型的實驗效果不完全一致,但無論採用哪個指標,DUQEsb10 深度學習模型都能取得最優的效果。
由表 1 和表 2 可知,由於氣象數據每日的變化非常大,沒有任何一個模型能夠保證每天的預測效果都是最優。DUQEsb10 的總體表現最優,主要是得益於所應用的集成學習方法具有一定的穩定性。
分析和思考
本文是深度學習演算法技術實踐的探索,深度學習發展至今出現大量的模型以及參數選擇、組合模型等,在不同的實驗條件下用於解決不同的問題都取得了較好的效果,不少研究人員開始嘗試將成熟的深度學習演算法應用於解決實際問題。氣象數據具有穩定性差、單日突變可能性大等特點,本文針對氣象數據預測的問題具體選擇深度學習模型,並有針對性的調整損失函數、參數等的選擇,對於實踐應用有著很好的啟發意義。
4.Exact-K Recommendation via Maximal Clique Optimization
原文地址:https://arxiv.org/pdf/1905.07089.pdf
本文是 Research Track 中 Recommender Systems 方向的一篇文章,作者主要來自阿里巴巴。本文是互聯網應用中推薦問題的技術突破,提出了一種基於經典最大團優化(Maximal Clique Optimization)的推薦模型,即 exact-K 推薦。與傳統的 top-K 推薦問題(最優的 K 個選項)不同,exact-K 推薦的結果是一個包含有 K 個組成的卡片。
模型
文章首先證明 exact-K 推薦能夠表示為一個經典最大團優化問題。在推薦系統問題中,給定 N 個待選項目,exact-K 推薦求解目標是得到最優的 K 個選項且通過一個完整的卡片表示,該卡片是滿足用戶需求的最優選擇。表徵為約束最優化問題如下:
其中θ為生成模型的參數,A 為最終參與排序的卡片,S 為原始數據,r=1 表示相關/偏好。從圖角度分析,上述優化模型可以轉化為從一個圖中求解 K 個點的團,該團能夠滿足上式中的優化目標。而圖中每個節點的權重用點選率(click through rate,CTR)來計算。推薦問題可轉換為最大團優化問題如下:
其中 P 表示節點權重。直接求解該模型有三個問題:一是單個節點的 CTR 相互獨立,二是未考慮一個卡片中不同節點間的互相關性,三是該模型沒有全局最優解。
為了解決上述不足,本文提出一種圖注意力網路 Graph Attention Networks(GAttN)模型,GAttN 遵循注意力機制的編碼-解碼框架。GAttN 的基本框架見圖 1。
Figure 1: The key modules of Graph Attention Networks (GAttN).
輸入階段,針對圖 G(N, E) 的結點計算其輸入表示。給定候選集合 S 和用戶 u,任一節點的輸入 Xi 可使用具有非線性激活 ReLU 的簡單全連接神經網路表示為:
圖 1(b)為編碼階段計算圖示。編碼階段本文使用一個自注意力機制模型,它是注意力機制的一種特殊情況,只需要一個單獨的序列來計算其表示。到目前為止,自注意力機制已經成功地應用到許多自然語言處理任務中,我們利用它對圖進行編碼並生成節點表示。給定輸入特徵向量 Xi,編碼層首先計算圖節點表示 hi 為:
之後,通過 L 層自注意力機制更新節點嵌入表示,每一層由兩個子層組成:多頭自注意力(Multi-head self-attention,MHSA)子層,和前饋(feed-forward,FF)子層。MHSA 子層的基本組成部分是縮放點積注意力,它是點積(乘法)注意力的變體。縮放點積注意力根據以下公式計算自注意力分數:
FF 子層由兩個線性變換組成,中間有一個 ReLU 激活。
此外,每個子層還包含一個跳過連接和層規範化處理。
圖 1(c) 為解碼階段的處理過程。解碼階段參考了編碼過程中圖節點的嵌入表示信息,同時利用注意力機制選擇團。通過利用 RNN 和波束搜索技術(beam search),GAttN 的解碼處理能夠有效捕獲一個卡片中不同節點的互相關特徵。應用 RNN 架構解碼器計算解碼輸出節點 A={a1,...aK}。在解碼推理階段,採用了波束搜索技術。波束搜索技術用於擴展搜索空間,同時針對一個團內(一張卡片的項目中)多個節點的組合得到最優解。
此外,本文提出一種具有行為克隆和增強學習特性的強化學習方法(Reinforcement Learning from Demonstrations,RLfD)進行 GAttN 的訓練。RLfD 同時使用獎勵(Reward)和示範(Demonstration)兩種損失函數。其中獎勵損失函數為:
示範學習過程可以看做是行為克隆模仿學習,因此引入示範能夠提升學習的效率。示範的損失函數為:
RLfD 同時使用獎勵和示範的損失函數為:
實驗
本文在實驗部分給出了大量的實驗證明模型在處理 exact-K 推薦問題時的有效性,選用了實驗數據集 MovieLens(https://movielens.org/)以及實際應用場景中淘寶搜索推薦的數據集。傳統的推薦系統排名評估指標不適用於 exact-K 推薦問題,本文提出了命中率(Hit Ration,HR)和精確度(Precision,P)兩個指標。本文選擇經典的排序模型 Pointwise Model(DeepRank)、Pairwise Model(BPR)以及 Listwise Model(Listwise-GRU、Listwise-MHSA)作為對比。
Table 1: Overall performances respect to different methods on three datasets.
表 1 給出不同模型在三個資料庫中的實驗結果,在不同的實驗條件下,本文模型都取得最優的效果。此外,由表 1 可以看出針對同樣的模型架構(Listwise),使用自注意力機制的 MHSA 的效果優於 GRU。
Figure 2: An example of the attention mechanism in the encoder self-attention in layer 2.
圖 2 給出在淘寶中搜索帽子時的命中結果。在編碼階段的 MSHA 過程中考慮了自注意力機制,因此在搜索帽子時能夠有效命中與帽子相關的圍巾、手套等。
此外,本文還對比了解碼階段使用獎勵和示範兩個損失函數的影響。
Figure3: Performance of P@4 and HR@4 with different coefficients α(rewardor demonstration)in loss function
由圖 3 可知,當只考慮示範損失函數時(α=1),可以獲得局部最優解。而同時考慮示範和獎勵損失函數時,本文的方法可以獲得更好的效果。
分析和思考
本文是深度學習在實踐中的技術突破,應用需求來源於真實的互聯網搜索場景,所提出的模型能夠大大提高互聯網搜索的友好性。模型中的參數選擇、框架選擇等都是結合應用需求提出的,例如在 MSHA 過程中引入自注意力機制,能夠推送用戶可能感興趣的其它產品。演算法分析與應用實踐不是割裂的,應用實踐中的需求能夠推動演算法和技術的改進,而應用於實際則是科學研究和技術發展的重要目的。
作者介紹:仵冀穎,工學博士,畢業於北京交通大學,曾分別於香港中文大學和香港科技大學擔任助理研究員和研究助理,現從事電子政務領域信息化新技術研究工作。主要研究方向為模式識別、計算機視覺,愛好科研,希望能保持學習、不斷進步。


※系統探討「跨語言詞嵌入」,這是一本剛出爐新書
※文章太長不想看?ML 文本自動摘要了解一下
TAG:機器之心 |