螞蟻金服首屆ATEC開發者大賽人工智慧大賽圓滿落幕,一文詳解最佳解題方案

nomi孫發表於2018-10-15

螞蟻金服首屆ATEC開發者大賽人工智慧大賽圓滿落幕,一文詳解最佳解題方案

杭州·雲棲大會期間,首屆「ATEC 螞蟻開發者大賽人工智慧大賽」在 ATEC 展館落下帷幕。

此次大賽於今年 4 月 18 日預報名啟動,8 月 26 日複賽結束,持續時長 131 天。「不錯的業務場景」及「真實的資料集」吸引了來自來自全球 20 多個國家地區 1000 所院校及企業,近 1/3 海外高校, 共 5618 位選手參賽,是一場真正的國際化頂級比賽!

值得一提的是,參賽者中,擁有碩士及以上學歷的佔比 70%,行業界人士佔比 40%,這讓此次比賽更為激烈和貼近實戰。

此次大賽分為「風險大腦-支付風險識別」、「金融大腦-智慧客服 NLP 相似度計算」兩個賽道,兩個賽道各有五支隊伍進入決賽,進行現場演示和答辯。排名前三的團隊(共 6 支隊伍)共獲得 120 萬元現金獎勵,並獲得直通螞蟻金服集團技術崗的終面資格。

頒獎典禮上,螞蟻金服科學智囊團主席、加州大學伯克利分校教授 Michael I. Jordan,螞蟻金服副總裁、首席資料科學家漆遠等學術及行業嘉賓為獲獎團隊頒發了獲獎證書並簽名、合影留念。

螞蟻金服首屆ATEC開發者大賽人工智慧大賽圓滿落幕,一文詳解最佳解題方案

Michael I. Jordan 在獲獎證書上簽名

清華大學朱軍教授、哈爾濱工業大學劉挺教授也出席了頒獎典禮,他們是大賽評委。

朱軍教授是支付大腦的評委之一,他對比賽做出了這樣的點評:「AI 用到金融裡,現在不管是學術界或者是應用,都是大家比較關心的。但是 AI 要用到行業裡、想做出好的解決方案,需要對問題和場景有非常深入的理解。我覺得你們都非常了不起,能夠把機器學習演算法用到實際裡。雖然大家的思路都比較一致,但我覺得裡面有很多精細的工作,做得還非常漂亮。特別是看到除了特徵工程之外,大家對原理和方法有一些自己的思考,我覺得這個是特別值得鼓勵的。不管是從學術界還是從工業界來看,我希望能夠看到更多更有意思的例子和成果。」

金融大腦的比賽結束後,劉挺教授現場致辭:「現在這個時代真的是工業界領先的時代,搞 NLP 的人,我們的優勢是能夠和工業界結合,去拿到他們的真實資料。我們現在有機會和工業界合作,我希望大家更多去傾聽工業界的聲音,他們提煉出真實的問題、提供真實的資料。未來,希望大家能更深入地去分析,從原理上、從本源處去發明創造,去拐大彎兒。」

「優秀的資料集和場景」吸引了參賽經驗豐富的工程師應縝哲,他是金融大腦賽道亞軍 Skyhigh 的隊長。Skyhigh 是一支參賽經驗豐富的隊伍,共有三名成員,除了已經工作了的應縝哲,還有兩位研究生。自 2017 年認識以來,三人組團參加了五六次比賽,且都取得了不錯的成績。

應縝哲說,「這次比賽是國內一個非常好的中文的課題,這種賽題非常少。資料很真實,我們做了很多特徵工程,這是這個比賽我認為最有意思、也是我花時間最多的地方。如果下次比賽,賽題還這麼有趣,我還會來的。」

螞蟻金服這次精心呈上的兩個經典賽題究竟是什麼?兩支冠軍隊伍又分別給出了怎樣的解題方案?下文將作出詳細解答。

「風控老兵」來參賽,斬獲冠軍

移動網際網路的新金融業務在蓬勃發展的同時,黑產攻擊的能力也在不斷升級。資訊洩露導致過億的敏感資料被盜用、利用,給使用者和銀行帶來了巨大的經濟損失。保護消費者和風險識別,越來越成為金融行業和學術界關注的焦點。

在這一背景下,螞蟻金服設定了「支付風險識別」的賽題:用 2017 年 9 月到 10 月的交易資料構建演算法,識別 2018 年 2 月的交易欺詐行為。

這一賽題,吸引了多位金融科技領域的資深從業人士來參賽。斬獲冠軍的,也是「風控行業的老兵」,他們的解決方案兼具「創新性」和「實用性」。

「我們是一支來自上海的隊伍。」「謀殺電冰箱」的隊長熊文文說,團隊共有 4 人,平均年齡 27 歲,都來自網際網路金融行業,對風險控制和風險模型的開發有一定的瞭解。

「這個比賽提供了一個新場景——支付場景,大家就都想試一試。」熊文文說,他們之前在信貸場景下做風險控制,不同於支付場景中的風險控制,「信貸主要是刻畫一個人(賬戶)的資質情況,支付不是刻畫賬戶的資質、而是刻畫某單交易異常的情況。」

如何解題?他們的特徵工程以交易的賬戶(人)、交易賬戶所處的環境、與這個賬戶交易的商戶三個要素為核心,結合這三要素交叉時間維度,尋找靜/動態異常交易的特徵。

透過資料分析,他們發現,「盜刷交易存在一定的集中性」。比如,1% 的使用者覆蓋了 80% 的盜刷時間;某使用者在 3 天內被盜刷幾百次;某交易方(也即商戶)交易 1175 次,其中 80% 是盜刷。「如果之前的交易就是有風險的,如果能檢測到之前風險的話,那我就可以在判定這單交易時,把風險加進去。」於是,他們創新地提出了「先驗風險資訊」的概念,並設計了一個可以提煉先驗風險資訊的模型結構來強化識別效果。

他們將資料按照時間的先後分為第一個月的資料和第二個月的資料。首先,透過第一個月的資料訓練 3 個子模型(各有側重),這 3 個子模型的 AUC 停留在 0.986 左右,判定分數在 0.56-0.57 之間;再利用 3 個子模型對第二個月的資料進行預測,進而得到第二個月每單交易的三個風險分數(即先驗風險);最後透過風險分數及其衍生變數,加上第二個月資料的常規變數,訓練得到模型 D。模型 D 給出的結果即為最後的結果。最終,模型 D 線下的測試 AUC 可以達到 0.991,線下的判定分數能達到 0.7。

螞蟻金服首屆ATEC開發者大賽人工智慧大賽圓滿落幕,一文詳解最佳解題方案

此外,他們還挖掘了一些白名單的規則:如,使用者每月 3000 筆以後的交易可以直接定義為正常;裝置每月 400 筆之後,可以定義為正常。「透過白名單的規則,大概可以覆蓋 10% 的樣本,可以將判定分數提升幾個千分位。」

分時間段建模、將效果不好的早期資料化作變數、進行融合建模的做法以及策略+模型的解題思路,讓他們取得了第一名的成績(A 榜得分 0.627,B 榜得分 0.797),也斬獲了評委們的心。

逆襲:從第十一到第一,「有一種觸電的感覺」

「金融大腦」的賽題是問題相似度計算,即給定客服裡使用者描述的兩句話,用演算法來判斷是否表示了相同的語義。

「這個任務非常有實用價值。」「一支優秀的隊伍」是此賽道的冠軍,隊長段譽說:「想象你在做一個客服系統,事先會有一個問題-答案的表單,客服的工作其實就是在面對使用者的提問時,迅速找到與之最接近的問題,並整理出答案來給使用者。文字匹配系統一旦做的好了,可以直接解決第二個階段的問題,也是最需要人力的部分——找到最接近的問題,這能大大減輕客服的壓力,讓他們去解決真正困難的問題。」

最先獲知這個比賽的是研一師弟梁嘉輝,他剛開始接觸 NLP,「想透過這個比賽提高自己的能力」。因為一個人參賽難度太大,便找到「正處於學術空檔期」的段譽(研三),共同組隊參加比賽。一個關鍵 BUG 的解決讓他們從第十一逆襲到第一,「有一種觸電的感覺」。

與進入決賽的其他 4 支隊伍相比,他們在特徵工程上花費了很少的時間,主要立足於對模型的充分改進和探索,將單一模型的效果發揮到了極致。

他們的最佳成績是將三個模型 ensemble 後得來的,這三個模型結構大概相同,只在細節(例如模型輸入)上有細微差別。他們的最優模型如下:

首先,他們的模型輸入為五個層面的 char-level feature,除 exact match、idf 外,自動提取了幾個特徵:用 skip-gram 在本地訓練 300 維 char embedding,為了防止過擬合,訓練時是 fix 住的;為了彌補因 fix 而損失的模型能力,額外引入了 50 維可以訓練的 char embedding;利用其他文獻的方法分別提取了 1 維的句子間特徵以及 1 維的句子本身特徵。

透過輸入層後,引入 Noise+Dropout,用來提升模型魯棒性,再用 bi-GRU 當作 encoder,並引入 fuse gate 來加速資訊流通,然後用一層 mlp+殘差進一步整合資訊。之後對兩個句子進行對齊。對齊之後,透過正交分解,分別提取相關性和不相關性的資訊。

用 Multi-Head attention + Multi-Head pooling 對相關資訊、不相關資訊進行推斷後,再過一次一層 mlp+殘差,然後分別得到相關資訊表達、不相關資訊表達。用 fuse gate 對兩方面的資訊綜合考慮後,再經過 dropout 以及兩層 MLP,得出最終的結果。

螞蟻金服首屆ATEC開發者大賽人工智慧大賽圓滿落幕,一文詳解最佳解題方案

段譽在論壇裡分享了自己的經驗,他寫道:「從一開始我們就選擇了 ESIM 模型,相比現在動不動就好多層網路結構的 NLI 模型,ESIM 思路清晰、能說服我們、網路結構相對簡單、沒有用很多 trick、擴充套件性也強、效果很棒,所以就一眼相中了。」

「對於 NLP 語義相似度識別這個任務來講,模型的潛力是蠻大的,我們沒有做任何的預處理,完整地保留了每個句子的所有資訊(當然了 padding 和擷取是必須的)。我們沒有使用詞級別的向量,而是純用的字級別的向量,在做實驗的過程中發現基於詞級別的結果普遍要差一點,這和分詞質量不無關係,而且本人認為 GRU、LSTM 這樣的網路因為引入了 fuse gate,已經具備一定程度的分詞作用了。但是可以料想的是,如果經過了良好的分詞處理,結合 word 和 char 級別的 embedding,應該是有一定幫助的。」

梁嘉輝表示,透過參加這次大賽,他體驗到了深度學習的魅力,也明確了未來的研究方向,「就是 NLP(自然語言處理)」。

透過大賽解決實際問題,是螞蟻金服的初衷。「我們非常歡迎更多人參與進來,能夠去學習新技術、用技術解決實際問題。」螞蟻技術合作與發展部的柴文意是此次大賽的負責人,她表示,此次比賽結束後,螞蟻金服將會把賽題和資料開放出來,也會盡可能地將參賽者的策略、方案應用到螞蟻金服的真實場景中去。

漆遠表示,「這(此次比賽)只是一個開始,我們會把這個作為一個長期的機制——打榜機制,開放出平臺,讓更多朋友參加這個比賽。」

螞蟻金服首屆ATEC開發者大賽人工智慧大賽圓滿落幕,一文詳解最佳解題方案

螞蟻金服副總裁、首席資料科學家漆遠

「ATEC 大賽是一個非常好的連結生態的平臺,將會持續舉辦。」柴文意表示,接下來,他們會在不同領域推出不同賽題,把行業中一些通用的問題提煉出來,把一些脫敏過的資料開放給選手,「讓他們在這個過程中得到鍛鍊和學習」。

相關文章