阿里推出DeepInsight平臺:可視化理解深度神經網絡CTR預估模型

本論文已被 SIGIR 2018 接收
做者 | 郭霖 葉卉 蘇文博 劉賀歡 孫凱 向杭 侯俊
編輯 | Natalie
AI 前線導讀:因爲人類對於世界的認知和感覺主要來自於視覺,良好的可視化能夠有效的幫助人們理解深度神經網絡,並進行有效的評估、優化和調節。而可視化的前提是對模型進行相關數據透出,從而進行可視化分析評估,最終使得神經網絡從「黑盒」向「白盒」過渡。針對這些挑戰,阿里巴巴團隊搭建了一個面向工業級大規模深度學習應用的可視化分析平臺—DeepInsight。 AI 前線第 39 篇論文導讀將爲你解讀這個可視化平臺,並帶你瞭解阿里巴巴如何基於它可視化地理解深度神經網絡 CTR 預估模型。

更多優質內容請關注微信公衆號「AI 前線」(ID:ai-front)
背景

深度學習在研究和應用領域都已取得了重大的進展。但迄今爲止,深度學習算法仍不夠透明,多被作「黑盒」使用。近年來,人們開始致力於去更透徹地理解深度學習內部的複雜機理,從而確保算法安全可靠或達到進一步優化的目的。前端

儘管業界對於圖像處理和天然語言處理領域,在算法可解釋性方向上已經取得了一些進展,但對於電商與廣告領域,目前仍是空白。另外一方面,深度學習技術已經開始被大規模應用到廣告業務中。廣告是不少互聯網現金流的重要來源,是核心業務。深度神經網絡模型是核心業務中的核心模塊,有效理解和評估這一「黑盒」算法變得很是重要。算法

因爲人類對於世界的認知和感覺主要來自於視覺,良好的可視化能夠有效的幫助人們理解深度神經網絡,並進行有效的評估、優化和調節。而可視化的前提是對模型進行相關數據透出,從而進行可視化分析評估,最終使得神經網絡從「黑盒」向「白盒」過渡。針對這些挑戰,咱們搭建了一個面向工業級大規模深度學習應用的可視化分析平臺—DeepInsight。後端

咱們將針對電商場景下的廣告點擊率(CTR)預估,以一個簡單但具備表明性的深度神經網絡模型爲例,舉例介紹在幾個典型而重要的問題上模型可視化分析的應用:1. 泛化效果評估;2. 特徵設計;3. 模型結構設計。安全

大多數圖像或天然語言處理的研究着眼於從樣本粒度出發去可視化理解模型。區別於這些研究場景,工業界的 CTR 預估面對的是海量規模的數據與特徵、有偏的帶標籤數據、稀疏而複雜多樣的信號模式,而最終效果評估首要關注的是宏觀的商業指標。從業務特色出發,咱們以統計信號入手,探索理解模型在整個目標數據集上的宏觀表現。相關實驗工做的細節請參閱咱們的英文版論文(參見文末連接)。微信

平臺介紹

DeepInsight 平臺面向工業級深度學習算法研發與應用,提供完善的模型訓練任務生命週期管理,致力於提供高效全面的數據透出方式,並以深度學習數據的多維度可視化、大規模數據實時分析、數據再建模等方向做爲核心功能。網絡

平臺基於分佈式微服務集羣化部署,由前端 WEB 平臺 + 後端微服務 + 深度學習組件等三個子系統構成,各個微服務實例之間是隔離的,互不影響;目前已接入 Tensorflow 和 MXNet 兩個大規模並行訓練框架,支持多任務學習、遷移學習、強化學習、GAN、模型融合等複雜場景,旨在經過數據透出及可視化等手段,提升神經網絡的可解釋性,解決模型調試及問題定位分析等系列問題;以生命週期管理的方式執行訓練任務,從而提供一站式的可視化評測服務。平臺在賦能業務的同時,業務也會將後期處理過的數據反饋給平臺,從而構建以 DeepInsight 爲基礎數據核心的 AI 可視化生態圈。框架

算法實驗

不失表明性,模型採用簡單的 GwEN 式結構 [1]。對於每條輸入樣本,稀疏特徵 ID 被映射爲低維稠密的 Embedding 向量,而後以特徵組爲單位將每組的特徵 ID Embedding 進行 sum pooling 操做,獲得該特徵組的 Embedding 向量。各個特徵組的 Embedding 向量被鏈接在一塊兒,做爲輸入傳給後續的全鏈接層。模型總共有 4 個全鏈接隱層並以 Relu 爲激活函數。輸出層經過 sigmoid 操做輸出預估點擊率(PCTR)。分佈式

對於訓練至不一樣階段的模型,咱們經過動態透出的方式收集模型內部在不一樣數據集上的狀態數據,以此爲可視化分析的基礎。函數

泛化效果與神經元狀態波動

衆所周知,深度神經網絡有強大的擬合能力。隨着訓練進行,模型會不斷地去擬合訓練數據,對輸入信息中的微小差異愈來愈敏感。給定模型,每一個神經元的狀態由樣本輸入決定。數據集中不一樣樣本輸入的變化致使神經元狀態的波動,這一波動的程度反應了模型對於輸入信息的敏感程度。另外一方面,模型對訓練數據過於敏感會下降其泛化能力。咱們的可視化清晰地展示了模型泛化效果與神經元狀態波動程度之間的聯繫。微服務

下圖展現了模型第四隱層中每一個神經元狀態值的平均波動程度,對比了不一樣訓練階段的模型在訓練與測試集上的統計表現。在過擬合以前,神經元的波動程度保持相對穩定,訓練 / 測試集間較爲一致。過擬合時,波動程度顯著上升,而且訓練集明顯強於測試集。這正反映了過擬合狀態下的模型對訓練數據過分敏感。

咱們聚合出整個隱層的全部神經元的平均波動程度,發現該指標能夠與模型在不一樣數據集上的效果變化(AUC)相關聯。神經元的波動程度爲咱們提供了一種理解與檢測過擬合的手段。另外,這個指標計算不須要標籤,所以能夠幫助咱們在一批拿不到點擊反饋的數據集上的評估模型效果。

特徵影響力

比起傳統的邏輯迴歸模型,深度神經網絡的一個優勢是具備從輸入中自動挖掘非線性交叉特徵的能力。可是實踐發現,輸入特徵自己的質量好壞也極大地影響着模型的效果。

什麼特徵對模型比較重要?對於傳統的邏輯迴歸模型,咱們能夠經過特徵的權重來認識其重要性。可是,這對於深度神經網絡是不適用的。

咱們利用梯度信息來認識各個特徵組對模型的影響。將全鏈接網絡的輸入針對模型輸出(PCTR)求導。該梯度的強度表示了模型的輸出預估對於該輸入的微小變更的敏感度,從而能夠反映出該輸入對於模型的影響力。梯度越強,代表該輸入的對模型的影響越大。以每一個特徵組聚合各自 Embedding 所對應的梯度的平均強度,能夠描述該特徵組對模型的影響。

下圖對比了兩個不一樣狀態的模型(未過擬合 Vs 過擬合)中的各個特徵組的平均影響力。能夠清晰地看到兩個狀態的區別:過擬合時模型對少許幾組特徵過分敏感,尤爲是編號爲 1 和 11 的特徵組。事實上,這兩個都是具備海量 ID 取值的單個特徵如 user ID,所需參數空間極大,而自己攜帶的可泛化信息確實不多。

隱層的效用與其信息表徵

咱們經過可視化隱層的輸出向量,展現模型對輸入信息的綜合表徵,以幫助咱們瞭解模型的內在機制以及模型結構對於效果的影響。下圖將不一樣隱層的輸出向量通過 tsne 投影到 2 維平面。與 [2] 針對圖像分類的可視化結果不一樣,咱們沒有觀察到點擊與不點擊兩類樣本點的分離。這是由咱們場景下樣本信息的高噪聲所決定的。可是,能夠看到點擊樣本點有空間彙集。第三層比第二層有更明顯的彙集,代表第三層表徵的信息更有區分能力。可是第四層卻並無顯示出進一步提高。

反過來指導模型結構設計,咱們的實驗證實訓練沒有第四層的模型也能夠達到與四隱層模型相近的效果。

隱層的效用與其表徵再建模

上節介紹了了解每一個隱層對於模型分類效果帶來的收益。咱們的 DeepInsight 平臺可讓咱們很方便地對透出數據進行再建模,來進一步深化對模型結構的認識。

咱們使用 Alain 和 Bengio 提出的探測層方法 [3],將隱層對於樣本的表徵向量做爲輸入特徵,一樣以樣本的點擊反饋爲標籤,訓練邏輯迴歸 probe 模型。對比不一樣隱層所訓練出的 probe 模型的效果,能夠幫助咱們瞭解隱層結構對模型效果的做用。以下圖,能夠明顯的看到,從第一到第三層,隱層輸出信息對於點擊行爲的區分力逐層提高。第四層並沒帶來明顯收益,與上節的結論一致。

小結

咱們在電商廣告場景下探索深度學習可視化與可解釋性,經過分析深度神經網絡模型內部數據,打開這個「黑盒」,以求深刻理解模型的內部狀態與機制。這些探索被成功地落地到平臺服務,從而助力算法研發與業務應用。

論文原文地址:

https://arxiv.org/abs/1806.08541

參考文獻:

[1] Guorui Zhou, Chengru Song, Xiaoqiang Zhu, Ying Fan, Han Zhu, Xiao Ma, Yanghui Yan, Junqi Jin, Han Li, Kun Gai. 2017. Deep Interest Network for Click-Through Rate Prediction. arXiv preprint arXiv:1706.06978 (2017).

[2] Paulo Rauber, Samuel Fadel, Alexandre Falcao, and Alexandru Telea. 2017. Visualizing the hidden activity of artificial neural networks. IEEE transactions on visualization and computer graphics 23, 1 (2017), 101–110.

[3] Guillaume Alain and Yoshua Bengio. 2016. Understanding intermediate layers using linear 

相關文章
相關標籤/搜索