這家中國AI公司,1個月拿了兩個世界第一
7月收官,8月開局。回顧整個火熱的7月,除了商湯股東變動、科大訊飛的定向增發這類資本事件,在技術賽事方面,筆者還關注到有一家AI公司在7月的兩場國際頂級會議競賽中,都獲得了第一。這家公司就是總部位於上海的深蘭科技。
月初,第17屆IEEE ISI會議公佈了IEEE ISI 2019國際大資料分析競賽結果,深蘭科技分別取得了一項冠軍和一項季軍的優異成績,尤其在奪冠的企業投資價值評估賽題中戰勝了來自中科院自動化所的團隊。
而上週,SIGIR 2019 eBay資料挑戰賽結果出爐,深蘭科技又斬獲冠軍,在SIGIR這場國際資訊檢索領域頂級會議的電子商務研討會組織的挑戰賽中,戰勝了京東和Mercari這兩家以電商為主營的上市公司。
深蘭科技在業界一直以落地應用著稱,從早期的新零售TakeGo自販櫃、quiXmart快貓智慧零售平臺,到近期在智慧駕駛領域的表現,如熊貓智慧公交車以及AI智慧掃路機等,都可圈可點。技術方面一直較為低調的深蘭科技,7月份連拿兩個國際技術賽事的第一,不禁令人重新審視。
就此,我們聯絡到深蘭科技董事副總裁、深蘭科學院院長王昕磊博士。他表示,深蘭科技成立之初即完整地規劃了深蘭科學院的架構,並陸續成立了五大研究院,致力於人工智慧基礎研究和應用開發。在核心技術的基礎研究方面,深蘭科技矢志不渝,不但為自身的商業化應用落地持續注入強勁能量,更希望賦能更多行業,將"人工智慧,服務民生"的理念落實到底。
同時,我們也有幸邀約到深蘭科技DeepBlueAI團隊,對上週SIGIR上新近取得的優異成績進行了技術解析,一探冠軍團隊的實力。該方案不僅可以應用在電子商務的召回任務中,也可以應用在智慧客服,文章推薦等需要做文字匹配的場景中。
賽題介紹
本次比賽是由eBay搜尋組組織的高精度召回任務,挑戰針對的是電子商務搜尋中的常見問題:展示非相關性排序時要顯示的專案。使用者通常按非相關性的維度進行排序,例如流行度、評論得分、價格等。本次比賽的重點在於:使用非相關性排序時找到應該召回的內容。比賽資料集包括大約90萬條來自eBay收藏類別中的特定欄位,以及與收藏類別相關的150個熱門搜尋查詢短語。每條資料帶有商品標題,價格,分類目錄和相應影像網址的URL。參賽選手要合理運用資料集材料,來判斷查詢短語和文件是否相關。
評測指標
使用150個查詢短語的平均F1-score作為本次競賽的主要效能指標。得分越高代表模型效能越好。
題目特點
在這次比賽中,主要有以下難點:
1. 資料量大
原始資料集共約90萬欄位,150個查詢短語,兩兩組合即要預測約1億3千萬個(document, query)對是否相關。
2. 匹配難度大
給定的query長度短,一般為2-3個專業性英文單詞,最長的不超過6個詞,匹配難度較大,對建模挑戰較大。
3. 訓練集小,調優難
在約1億3千萬條(document, query)中只有6萬餘條資料作為訓練集,其餘部分全部需要給出預測結果。此外,150個query中每個query的訓練集資料量差異很大,需要對average-f1指標進行最佳化處理。
特徵工程
我們透過LightGBM模型來驗證特徵效果。特徵分三部分構成,第一部分是對query做基礎屬性特徵;第二部分是對商品做基礎屬性特徵;第三部分就是對query與商品做組合特徵。在所有的特徵當中,query與title的句向量以及在句向量的基礎上再做的特徵對效果影響較大。我們針對這點嘗試了不同的文字,單詞處理方法與不同的詞向量訓練方法去生成query與title的句向量。
· query基礎屬性特徵
a. query單詞的個數,query數字的個數;
b. query的形容詞佔比與名詞佔比;
c. query的語義向量。
· 商品基礎屬性特徵
a. title單詞的個數,title數字的個數;
b. title的形容詞佔比與名詞佔比;
c. 商品類別的hash值(5列),商品類別是逐級遞減的,最多5級,下一個類別是上一個的子集;
d. 最後一列商品類別的hash值;
e. 最後一列商品類別的value_counts;
f. 價格分箱,一個查詢可能搜尋出價格差異較大的兩個商品,價格分箱能體現出這兩個商品的差異;相比直接把價格做特徵,價格分箱能把兩個價格相近的商品歸為一類。下圖是商品的價格分佈,可以看出價格分佈差異較大,而做完價格分箱後,能弱化這種差異,價格分佈都很集中。
· 查詢關鍵詞與商品組合特徵
a. title句向量與query句向量的差值與點積;
b. title句向量與query句向量的相似度,相似度計算包括cosine, cityblock, canberra;
c. query單詞與cate單詞相同的個數,query單詞與title單詞相同的個數;
d. 使用fuzzywuzzy計算字元的編輯距離;使用fuzzywuzzy計算單詞的編輯距離;
e. title單詞數與query單詞數的差值與比值;
f. 價格分箱針對query,與直接用價格分箱相比,對每個query分別做分箱,能使每個query的價格分箱互不干擾;
g. BM25計算query與title的相關性分數,BM25演算法通常用來作搜尋相關性評分。其主要思想為:對query進行語素解析,生成語素qi;然後,對於每個商品title D,計算每個語素qi與D的相關性得分,最後,將qi相對於D的相關性得分進行加權求和,從而得到Query與D的相關性得分。
BM25演算法的一般性公式如下:
· 不同的單詞文字預處理方法
a. 把句子裡的標點與分隔符去掉,並轉成小寫;
b. 把句子裡的標點與分隔符去掉,提取詞幹並轉成小寫;
c. 不去特殊字元,直接用空格分隔,轉成小寫。
· 句向量的生成
a. 用預處理好的title與query訓練使用word2vec來生成詞向量,然後生成句向量,雖然總語料庫資料量小 ,但是使用它們訓練得出的詞向量更能體現出該資料的特性,同時也能覆蓋到更多的詞;
b. 用google已經預訓練好的詞向量來生成句向量。
實驗模型
在本次比賽中,我們實驗了幾種經典的文字相似度匹配、自然語言推理模型,包括CNN, BiGRU, decomposable attention, ESIM等,其中效果最好的是ESIM。
我們最好的單模型是在ESIM中引入我們構造的特徵,這部分特徵我們稱作 dense feature。在實驗中發現把 dense feature 和 nn 模型某一層直接 concat 的效果並不好,我們參考了 product neural network 概念以及 LSTM 中的 Gate 設計,我們把 dense feature 作為 gate 來使用,使用中我們把 dense feature 經過全連線層得到和子模型維度一樣的表示向量,然後加上 sigmoid 啟用函式,再進行 element-wise-multiplication,這樣 dense feature 就可以控制子模型的資訊流通,透過實驗發現這樣的結構在各個子模型上都能夠得到較大提升。最佳化後的Gate-ESIM模型結構如下:
效果最佳化
考慮到不同的query的訓練資料量和分佈都有些不同,並不一定都使用0.5作為正負例的劃分閾值。所以我們可以調整每個query預測出來機率的正負例劃分閾值,來最佳化Average F1-Score。
相對於測試集,訓練集的數量較少,為了讓調整閾值後的結果更穩定,我們選擇對訓練集進行10折交叉驗證,每折用10個不同的種子分別訓練得到10個模型,然後把預測結果取平均。同樣,對測試集預測時,全量訓練集用10個不同的種子分別訓練得到10個模型,然後預測結果取平均。
在搜尋閾值時,我們以最佳化10折交叉驗證結果上的得分為目標。之後將10折交叉驗證上搜到的閾值用於測試集。並且考慮到訓練集中有些query數量較少,二分類的閾值微調後對驗證集的分數會影響很大,所以我們選擇只對訓練集中樣例數大於120的query調整閾值,數量約為整體的81.3%。這種最佳化方法雖然會在本地資料集上出現輕微的過擬合,但線上測試集也得到的較大提升,對我們後期的提分也是至關重要的。
實驗結果
*注: loca最好的結果E沒有來得及提交。
從實驗結果來看基於我們構造的特徵的LightGBM模型在Ave-F1指標上也取得了0.7521的成績,也能在榜單中排名前列,證明我們在特徵工程上做了很多有效的特徵。經過引數調優的ESIM[1]模型在Ave-F1指標上也取得了非常好的效果,同時我們透過初始化預訓練詞向量和採用門限機制的Gate-ESIM的效果得到進一步提升。
我們使用多種子10折交叉驗證的方法在local搜尋閾值對Ave-F1進行調優,經過這一步最佳化後的結果,線上成績達到0.7731,提升非常明顯。最後我們對Decomposable Attention Model[2]模型也進行了最佳化,最後和最佳化後的Gate-ESIM模型進行融合,在local效果上再次提升了千分之5左右,因結束時間理解有誤未能提交到線上。
工作總結
· 提出了一種用 dense feature 做 gate 的網路結構,使得原有的模型得到較大提升。
· 對正負例劃分閾值進行最佳化來提升評測指標效果。我們採用在local結果上進行閾值搜尋的方式來最佳化評測指標,為了使得搜尋到的閾值更穩定可靠,我們採用10折交叉驗證並結合多seed的方式獲取local預測結果,並且只在那些有不低於120個樣本的query下進行閾值搜尋。
· 構造豐富的基於query,商品以及query-商品對的特徵。
· 使用不同的預處理方法構造特徵,加強了特徵表達。
進一步工作
· 嘗試利用商品的影像資訊
· 對query和doc進行資料增強,增加更多訓練樣本
· 對query進行擴充套件
· 使用BERT進行Fine-tune
參考文獻
[1] Chen, Qian, et al. "Enhanced LSTM for Natural Language Inference." ACL. 2017.
[2] Parikh, Ankur, et al. "A Decomposable Attention Model for Natural Language Inference." EMNLP. 2016.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2652290/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 這個企業家兩次創辦年營收額逾1億美元的創業公司營收創業
- 一家公司為什麼要做資料庫和AI兩個賽道?資料庫AI
- 刷了兩遍LeetCode之後,我拿了9個offerLeetCode
- 這家中國AI公司,正在打入新加坡AI“腹地”AI
- 【個人成長】在家學習的這兩個月
- 36家日本遊戲公司1-3月業績:25家實現增收,兩家大廠陷入虧損遊戲
- 醫療AI水深坑多,這兩家重要公司都走到哪一步了?AI
- 「大部分公司做AI教育思路是反的」,做好教育需要這兩個關鍵條件AI
- 中國量子技術創造多個世界第一,又創造世界首個
- 上個月26到這個月25號 SQLSQL
- 世界第一個機器人機器人
- ChatGPT釋出至今 中國已有近8萬家AI公司消失ChatGPTAI
- Swift自習室招募:兩個月30個DemoSwift
- 8月書訊 | 一個量子物理學家是怎樣研究 AI 的?AI
- 我從過去八個月的AI公司面試中學到了什麼?AI面試
- 每個遊戲公司都需要達到的兩個目標:產品成功&公司成功遊戲
- 1月29日雲棲精選夜讀|拿下兩個世界第一,阿里人機對話模型成人工智慧國際通用標準阿里模型人工智慧
- 全球AI晶片企業排行:英偉達第1,華為第12(七家中國公司入圍Top24)AI晶片
- 18個月自學AI,2年寫就三萬字長文,過來人教你如何掌握這幾個AI基礎概念AI
- 《程式人生》系列-這個程式設計師只用了20行程式碼就拿了冠軍程式設計師行程
- 蘋果16個月收購23家公司蘋果
- 這款AI神器一個月更新3次,我們用它搞了個動漫風《玫瑰的故事》AI
- 這七家BAT公司,誰家資料科學家更多BAT資料科學
- 學兩個月前端後做了個這樣的網站前端網站
- 遠端工作兩個月後的體會
- 兩年時間做出爆款!這個團隊的兩大秘訣:錯位競爭+專家助力
- 初學 golang 選擇這兩個框架Golang框架
- 這兩個願望我實現了
- 中國遊戲的希望之光:這是一家不走尋常路的中國遊戲公司遊戲
- 【質數判斷】給定兩個數,判斷這兩個數是否互質?
- NHK:71個領域中國科學論文被引用次數世界第一
- 北漂求職的這幾個月薦求職
- "AI先生"李彥宏除了"人工智慧",談得最多的是這兩個字AI人工智慧
- 首批開源超300個頂尖模型:這幾家中國「AI主力軍」,合力打造了一個AI模型社群「魔搭」模型AI
- 嚴守工期,確保質量,這家AI資料標註公司做到了!AI
- 他研究了5000家AI公司,說人工智慧應用該這麼做!AI人工智慧
- AI實戰派,這家公司如何做到AI應用的從1到NAI
- 谷歌用這5個方法助力初創公司谷歌