1. 程式人生 > >Airbnb利用深度學習增強平臺的搜尋建議

Airbnb利用深度學習增強平臺的搜尋建議

Airbnb利用深度學習增強平臺的搜尋建議

線上預訂平臺Airbnb擁有超過500萬的房源,以及成千上萬的旅遊,徒步旅行和其他旅行體驗。這些需要大量的篩選,Airbnb公司認為AI可以伸出援助之手。

在論文“Applying Deep Learning To Airbnb Search”中,該公司的研究人員描述了在兩年的時間裡,他們實現了一個複雜的神經網路,在Airbnb的網路和移動應用程式中,以提高搜尋結果的相關性。

該報告緊隨Airbnb的內部AI系統,將設計草圖轉化為產品原始碼,以及機器學習驅動的語言系統,將列表評論翻譯成客人的母語。

“搜尋排名應用程式是Airbnb最大的機器學習成功案例之一。大多數初始收益都是由梯度提升的決策樹模型推動的,”他們寫道,“然而,隨著時間的推移,收益趨於穩定。本文討論了應用神經網路以試圖打破這一局面所做的工作。”

正如研究人員所解釋的那樣,大多數客人首先在Airbnb的網站上搜索特定地理區域的房屋。這些搜尋返回從Airbnb的數百萬中抽樣的有序列表。

最初,手動的評分功能確定哪些房屋和房間在前列。最終,一個梯度提升決策樹(GBDT),即一個識別和排列預測因素的模型取代了評分功能,研究人員稱這一轉變導致“Airbnb歷史上家庭預訂的最大改進之一”。

但隨著線上預訂的收益趨於平穩,該團隊將注意力轉向AI。

Airbnb不僅僅依賴一個AI系統。它採用了一種演算法的“生態系統”,可以預測主人接受客人預訂請求的可能性,以及客人對旅行或高度體驗的評價。他們接受了使用者互動訓練,記錄了搜尋,每個模型都可以訪問它們。一旦經過訓練,新模型將進行測試,以確定他們是否在預訂方面實現了統計上顯著的增長。

Airbnb的第一個AI搜尋系統為更復雜的搜尋系統奠定了基礎。第二個採用LambdaRank,一種應用有監督機器學習來解決排名問題的演算法,而最終模型深度神經網路(DNN),考慮了大約195個特徵,包括價格,設施和歷史預訂計數;啟用Airbnb智慧定價功能的商家資訊的價格;以及列表與最近檢視的客人的相似度。

當然,這並非完全順利的。模範訓練是一種反覆試驗的事情。團隊處理管道的第一次迭代,以逗號分隔值(CSV)格式向TensorFlow模型提供資料,僅使用了一小部分圖形卡處理能力,大約25%(優化帶來了17倍的加速,並將利用率提高到90%左右)。

Airbnb團隊測試的其中一個神經網路使用與列表相對應的唯一ID作為特徵。團隊的想法是將ID編入嵌入(對映到實數向量的特徵),這將嵌入每個列表的獨特屬性,就像Netflix和亞馬遜採用的推薦系統一樣。但正如研究人員解釋的那樣,事實證明這是不可行的,嵌入需要每個專案大量的資料,並且列表受到來自物理世界的“約束”。

他們寫道:“即使是最受歡迎的列表,也可以在一年中最多預訂365次,而且每個列表的典型預訂量要少得多。”

讓事情變得更具挑戰性,並非所有趨勢都是顯而易見的,至少,一開始並非如此。列表的長檢視似乎與測試中的預訂相關,但是當同時預測預訂概率和長檢視時間的模型線上部署時,它不會導致上升。該團隊推測,長期觀點可能受到各種因素的驅動,例如高階但價格高的列表,具有難以解析的長描述的列表,或者極其獨特且“有時幽默”的列表,以及其他原因。

在特色工程方面,該團隊的調查產生了一個先前未考慮的影響入住率的因素:列表具有不同的最低停留要求,有時延長到幾個月。他們發現了地理偏好,比如舊金山西海灣南部的位置比跨越橋樑的位置更受歡迎,後者往往交通擁堵頻發。

研究人員寫道:“在無處不在的深度學習成功故事中,我們開始處於樂觀的高峰期,認為深度學習將成為GBDT模型的替代品,併為我們帶來驚人的收益。很多初步的討論都圍繞著保持其他一切不變,並用神經網路取代現有的模型來看看我們可以獲得什麼樣的收益,隨著時間的推移,我們意識到轉向深度學習並不是替代模型,而是關於擴充套件系統。因此,它需要重新思考模型周圍的整個系統。”

論文:arxiv.org/pdf/1810.09591.pdf

原文連結:Airbnb利用深度學習增強平臺的搜尋建議

本文為ATYUN(www.atyun.com)編譯作品,ATYUN專注人工智慧

請掃碼或微信搜尋ATYUN訂閱號及時獲取最新內容