天天看點

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

作者 | 沉雨

一、引言

服飾搭配的生成與推薦在時尚前沿扮演着越來越重要的角色。一套服飾搭配通常由多件時尚的單品組成,它們需要在視覺上看上去和諧,且在邏輯上看起來合理。和傳統商品推薦不同,搭配推薦的前提是需要先産出搭配,這個過程充滿挑戰。是以,搭配的生成往往需要時尚達人的介入。截止到2018年3月,有150萬的内容創造達人入駐淘寶。但是,創造出來的搭配總量和淘寶頻道需要的搭配數量之間,仍然存在巨大的差距。本文的重點就在解決此人力問題,旨在為淘寶的每位使用者生成個性化的搭配。

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

服飾搭配的生成與推薦存在兩個要求:1、搭配生成要符合視覺美觀;2、搭配推薦要做到個性化。第一個要求往往用合理性(Compatibility)名額來衡量。早期的研究計算兩兩單品之間的搭配合理性,近期的工作用深度網絡解決搭配合理性問題。第二個要求是看推薦的搭配是否符合使用者的個性化品味(Personalization)。之前的工作中,需要使用者顯示地提供一個問詢,比如一件衣服的圖檔,進而推薦與之配套的其他衣服。我們的工作着力于不需要使用者的顯示輸入,而是通過學習使用者的曆史行為,自動生成個性化的搭配。

在以往的研究中,這兩個要求通常是分開解決的。我們希望在搭配生成和搭配推薦之間建立一個橋梁,能夠用一套架構實作兩個需求。具體來說,我們通過使用者的曆史行為捕捉使用者的偏好,在此基礎上生成個性化的、合理的搭配。對于合理性要求,我們提出了FOM模型,用self-attention學習每件商品和其他所有商品的關聯性。我們設計了一個掩碼任務,即每次在搭配中掩住一個商品,讓模型根據其他商品預測出這個掩住的商品應該是什麼。對于個性化要求,我們提出了POG模型,利用Transformer的encoder-decoder架構,模組化使用者的曆史行為和搭配合理性。最後,我們搭建了一個叫“滴搭”的平台,以POG模型為核心,幫助淘寶中iFashion頻道搭配的個性化生産。

我們有以下四點貢獻:

提出POG模型:一個能生成個性化搭配的encoder-decoder結構的模型,同時考慮了搭配的合理性和使用者的個性化。

我們的模型在離線評測中相比于其他方法有顯著提升,将FITB(Fill In The Blank)提升到68.79%(相對提升5.98%),CP(Compatibility Prediction)提升到86.32%(相對提升25.81%)。

我們将POG模型部署到實際線上平台“滴搭”。通過線上實驗觀察,我們發現POG相對于傳統CF的方法,CTR(Click-Through-Rate)提升了70%。

我們提供了實驗中所有的資料集,包含101萬搭配,58.3萬搭配單品,357萬使用者累計2.8億點選行為。

二、資料集

淘寶的達人每天都會産出數以千計的搭配。所有這些搭配都會在上線前被人工稽核。截止到論文完稿時,共有143萬條搭配被創造且稽核。我們選取了80個最常見的服飾葉子類目(比如毛衣、大衣、T恤、靴子、耳環),其他低頻的葉子類目商品被移除。重新計算搭配中商品的個數,低于4件商品的搭配被移除。這樣,共有101萬套搭配留下,包含58.3萬商品。

此外,我們還統計了使用者在iFashion頻道近3個月,對于時尚單品和搭配的點選行為。共357萬使用者浏覽過超過40件搭配,定義為活躍使用者。在每個使用者的點選行為中,以搭配的點選為節點,若在此之前有超過10次的單品點選,則被記錄下來。訓練資料由此次搭配點選和在此之前的最近50次單品點選共同組成。最終,我們獲得了1920萬訓練資料,包含446萬商品,12.7萬搭配。資料集中的每件單品都包含白底圖、标題、和葉子類目資訊。

據我們所知,我們的資料集是目前公開的、包含詳細資料資訊的最大服飾搭配類資料集。同時也是第一個提供使用者在搭配上行為資料的資料集。資料集已提供(

https://github.com/wenyuer/POG

),具體資料見下表:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

三、模型

3.1多模态模組化

對于每個單品f,我們都會計算一個非線性的embedding表達其特征。特征的來源主要是視覺上和文字上。本文中運用了三個來源的資訊:1)用CNN模型從商品白底圖中抽取的向量;2)用TextCNN從商品标題中抽取的向量;3)從阿裡巴巴Behemoth平台抽取的商品Graph Embedding向量。

我們希望在embedding空間中,相似的商品距離相近,而不同的商品距離拉開。是以,我們将從商品圖檔、文本和協同過濾中得到的向量結合起來,經過一層全連接配接後,用triplet loss來學習embedding。對于每個商品,我們定義相同葉子類目的商品為其正例,不同葉子類目的商品為負例,是以triplet loss的計算如下:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

通過最小化loss,商品和其正例的距離被要求小于和其負例的距離。

3.2 FOM模型

服飾搭配由一組時尚單品組成,其中每件單品對于其他單品有不同的關系權重。為了捕捉到商品之間的關聯,我們基于雙向的Transformer encoder的結構,設計了一個掩碼任務。每次掩住搭配中的一件單品,我們讓模型從幾個候選單品選項中填空,進而學習到被掩住的商品和其他單品之間的關系。由于搭配中的每件單品都被強制學習其上下文商品,兩兩單品間的搭配合理性就會被self-attention機制學習到。

給定一套搭配F,F={f1,…,ft,…fn}。用一個特殊的标記[MASK]表示被掩住商品的表達,其他未被掩住的商品用其multi-modal embedding表達。整個搭配的輸入表示為Fmask,是以FOM模型的loss表示為:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

Pr(.)表示模型選擇到正确的被掩住的商品的機率。

模型的架構圖如下。模型基于Transformer encoder,但沒有用position embedding,這是因為我們将搭配中的商品看做一個集合,而不是一個有序序列。首先,Fmask經過了兩層全連接配接網絡(我們定義為轉換層)得到H0,然後連接配接到一個Transformer encoder的結構中。Transformer encoder包含多層,在每一層中,都包含一個Multi-Head self-attention(MH)的子層,和一個Position-wise Feed-Forward Network(PFFN)的子層。

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

經過l個子層之後,令gmask表示對應于輸入[MASK]的輸出,在gmask之上增加一個softmax層計算得到被掩住商品真實值的機率:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

其中,hmask是從轉換層得到的被掩住商品的embedding。我們可以用全部的商品來做softmax,但實際中這樣的計算太過龐大,是以,我們随機在商品池中選擇了3個未在此搭配中出現的商品,同時加上被掩住商品的真實值,構成了softmax的打分集合。

3.3 POG模型

在學習到商品間搭配合理性之後,我們開始思考如何同時加上使用者個性化的資訊,生成個性化的、合理的搭配。我們利用了翻譯問題中常見的encoder-decoder結構,将使用者的曆史行為“翻譯”成一套個性化的搭配。用使用者點選過的商品序列U={u1,…ui,…um}去表示一個使用者,使用者點選過的搭配表示為F={f1,…ft,…fn}。在每一步,我們根據之前産出的搭配商品,聯合使用者點選過的商品序列,去預測下一個應該産出的搭配商品。是以,對于每一個(U,F)對,POG的目标函數可以寫為:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

Pr(.)表示在之前搭配商品和使用者行為的情況下,産出第t+1個搭配商品的機率。

模型的架構圖如下。在POG中,encoder将使用者點選過的商品作為輸入。給定一個特殊的符号[START],decoder開始每一步産出一個搭配商品。在每一步中,模型會自循環地将前一步的輸出作為輸入。整個生成過程在遇到特殊符号[END]時停止。我們将encoder命名為Per網絡,将decoder命名為Gen網絡。Per網絡提供了使用者個性化的資訊,而Gen網絡同時考慮了從Per傳遞過來的個性化資訊,和其本身的搭配合理性資訊。

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

在Per網絡中,經過兩層全連接配接(轉換層)之後,接上了一個p層的Transformer encoder的結構。Gen網絡首先會被初始化為pre-trained的FOM。在Gen網絡中,經過轉換層之後,接上一個q層的Transformer decoder的結構。每層Transformer decoder包含三個子層,第一個為Masked Multi-Head self-attention(MMH)子層,這個mask的設計能夠保證目前産出的商品隻會收集在此之前産出的商品的資訊。第二個為MH子層,将使用者的個性化資訊引入到Per網絡。第三個為PFFN子層。

在一條訓練日志中,我們将使用者點選過的商品作為Per的輸入,而使用者點選過的搭配中的商品作為Gen的ground truth。定義ht+1為第t+1步ground truth的轉換層向量,則預測出第t+1個商品的機率為:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

同樣,這裡我們選擇3個随機選出的商品和正确商品組成softmax的作用對象。

在預測階段,對于每一步的輸出vt,我們從候選池中向量檢索到一個最近的商品作為輸出。當[END]标記出現時,生成過程結束。

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

3.4 滴搭平台

我們将POG部署到線上平台上,取名滴搭。滴搭平台包含選品、搭配生成、合圖、個性化推薦等多個功能,支援百萬級别的商品池。論文截稿時,已有超過100萬阿裡的營運在平台上生成過搭配,每天約600萬搭配被智能化生成,約540萬使用者看到了他們個性化生成的搭配。

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

四、實驗

4.1搭配合理性

在以往搭配合理性評判的工作中,往往用FITB和CP兩個名額來衡量:

FITB:從多個選項中選出正确答案,能夠和其他商品組成一套合理的搭配。

CP:達人産出的搭配為正例,随機選擇商品組成的搭配為負例。模型做判斷是否為正确搭配。

4.1.1 多模态對比

我們發現,在FITB和CP實驗中,單獨的模态,文本都是表現最好的。增加圖像模态和CF模态,都對結果有正向效果。

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

4.1.2 多模型對比

我們和之前的一些模型:F-LSTM、Bi-LSTM、SetNN進行了對比。需注意的是,F-LSTM和Bi-LSTM是基于序列的模型,它們都将輸入當做一個有序序列。SetNN和FOM是基于集合的模型,它們不要特别指定輸入的順序。我們分别做了有序輸入和無序輸入兩組實驗:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

在FITB實驗中,基于序列的模型對于輸入順序是敏感的,而基于集合的模型不會。F-LSTM和Bi-LSTM都在有序輸入的情況下表現更好。無論是有序輸入還是無序輸入,FOM在所有模型中表現最好。在無序情況下,它比第二名Bi-LSTM提升了18.04%;在有序情況下,它比第二名Bi-LSTM提升了5.98%。

在CP實驗中,基于序列的模型仍然對于輸入順序敏感。在無序輸入中,FOM比第二名Bi-LSTM提升了34.90%;在有序輸入中,FOM比第二名Bi-LSTM提升了25.81%。

4.2 個性化推薦

我們通過線上實驗驗證個性化推薦的效果。對比的模型有F-LSTM和Bi-LSTM,SetNN沒有生成能力,不在考慮中。生成的搭配會被随機投放給使用者,我們稱為RR。為了和傳統的單品推薦方法進行比較,我們設計了一種方法,即先以每件商品為trigger生成一套搭配,然後用CF的方法計算每個使用者最偏好的商品,則以最偏好商品為trigger的搭配将投放給該使用者。我們稱此方法為CF。我們連續記錄了7天各方法線上CTR的情況,如下:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

從圖中可以看出,無論用什麼模型,CF方法的點選率都高于RR,而POG方法的點選率都高于CF。線上的部分例子展示如下:

為什麼說阿裡工程師最懂時尚?一、引言二、資料集三、模型四、實驗

聯系我們:在猜你喜歡團隊工作,你将要解決的問題域涉及對上億使用者在幾十億商品池中的推薦問題,不僅僅要考慮CTR、成交金額等業務名額,還需要系統化的解決上千萬賣家流量博弈的機制設計,以及推薦系統與使用者的互動體驗。團隊内的算法工程師和科學家将與你一起解決世界上規模最大電商平台上最困難的業務技術難題。在過去的幾年間,猜你喜歡團隊所負責的場景核心使用者名額一直保持非常高的增長速度,目前組内成員多來自國内外知名院校和研究所,近年在SIGKDD、AAAI、CIKM、WWW等學術會議上發表多篇論文。歡迎加入我們!郵箱:[email protected]

本文被KDD 2019收錄,《POG: Personalized Outfit Generation for Fashion Recommendation at Alibaba iFashion 》,點選文末“閱讀原文”即可閱讀。

參考文獻:

[1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2018. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805 (2018).

[2] Xintong Han, Zuxuan Wu, Yu-Gang Jiang, and Larry S Davis. 2017. Learning fashion compatibility with bidirectional lstms. In Proceedings of the 2017 ACM on Multimedia Conference. ACM, 1078-1086.

[3] Yuncheng Li, Liangliang Cao, Jiang Zhu, and Jiebo Luo. 2017. Mining fashion outfit composition using an end-to-end deep learning approach on set data. IEEE Transactions on Multimedia 19, 8 (2017), 1946-1955.

[4] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Łukasz Kaiser, and Illia Polosukhin. 2017. Attention is all you need. In Advances in Neural Information Processing Systems. 5998-6008.

繼續閱讀