近年來阿里不斷運用深度學習、強化學習等人工智能領域的相關知識優化自身電商平臺的搜索引擎和推薦系統,讓其從冷冰冰的系統不斷成長爲愈來愈懂用戶的智能購物助手。
日前,《盡在雙11》人工智能部分執筆人&阿里技術專家 樂田 與 仁重 就 「人工智能/機器學習技術在電商場景下的應用」 問題在OSCHINA與你們開展了問答活動。
本文整理了兩位老師在開源中國高手問答中的精彩問答。python
1 . 機器學習在電商方面除了廣告推薦之類的方面外,還有其餘的應用麼?謝謝,還有學習這方面須要哪些知識程序員
機器學習在電商領域的應用從外部產品來看主要涉及3個:搜索、廣告、推薦。從內部來看,從商品選品、流量生成機制、物流優化、物流機器人、智能客服、互聯網信用貸款等方面都會用到機器學習。 學習機器學習有以前傳統的統計學習例如《The Elements of Statistical Learning》,《支持向量機導論》、周老師的西瓜書等經典教材;如今最新的Deep Learning也出書了。算法
2 . 機器學習在阿里電商場景下的最經常使用算法有哪些?阿里對哪些算法作了有針對性的優化和改進呢?阿里目前推薦系統從用戶訪問到根據訪問記錄進行推薦的實時性是多久?編程
LR、GBDT、RNN有很多人在用了,還有獨創的MLR、ItemCF。。針對性的優化和改進主要是在適配阿里的計算平臺和大數據方面,這方面例子比較多,如對ItemCF 的Swing算法。架構
3 . 現階段的人工智能離傳統的應用程序員仍是很遠,請問有什麼辦法可以快速普及嗎?框架
是技術發展過程當中自己的分化致使的,技術發展就是要普惠更多的人,讓更多的人蔘與門檻持續下降,不管怎麼低,通曉基本原理和基本的訓練是必要的,跟學編程差很少。機器學習
4 . 深度學習算法在實際應用中是否比較曲折,對於數據的抽象工做特別難,中小型公司是否更加適合隨機森林這種非深度算法?分佈式
選擇團隊能駕馭的算法,對於新方法能夠培養團隊的駕馭能力。ide
5 . Tensorflow 這個框架主要應用在哪些方面場景?工具
用戶和商品的Embedding、Wide&Deep、GANs等。
6 . 阿里有計劃使用Tensorflow加入推薦系統裏嗎?
有較多的場景在用Tensorflow了。阿里推薦系統的邏輯架構在《盡在雙11》一書上有介紹,具體的基礎設施可能阿里特點較多一些。
7 . 目前推薦系統多數是使用標籤模式來給用戶推薦嗎?怎麼判斷用戶符合系統推薦的商品?除了機器推薦,後期會有人爲控制去跟進嗎?
部分推薦場景如「微淘」,是使用了標籤進行推薦的。使用標籤推薦的前提是這種推薦對象更適合標籤的方式來描述。推薦體驗分析相對搜索結果分析是個全新的問題,須要考慮個性化,還有選擇評估樣本的表明性。
8 . 讓機器自動學習怎樣去推薦,最後會不會連開發者都不知道系統是怎樣推薦的?若是這時候發現系統推薦的商品有問題,怎樣肯定問題出在哪裏?怎樣調整系統的算法?
這涉及到推薦系統的自省(reflection)能力,從實現上說,自省能力是推薦系統正向過程的逆過程,因爲涉及算法比較複雜,逆向過程只能在部分上反映推薦過程是怎樣的,必定程度上能夠debug推薦結果的問題。
9 . 統計用戶行爲須要蒐集並保留全部用戶的全部行爲,除了購買行爲外還包括瀏覽行爲、關注行爲、加入購物車行爲等,請問採用單元粒度的分佈式架構是否更爲合理?
單元化是在服務端(在線服務)進行的,對用戶數據彙總分析不是單元化的,而是把全部單元的數據彙總的結果。
10 . 外網的數據,如何整合到推薦系統裏,提升推薦的正確性?
外網的數據必需要能描述用戶或推薦對象才能使用,並且考慮到站內的數據的完整程度,外網的數據補充進來價值會不一樣。
11 . 小公司要作實時推薦有什麼框架可使用
選擇開源的工具和平臺,例如Spark、Storm等,結合HBase計算端存儲和LevelDB、Redis等在線端存儲應該是個可行的方案
12 . 阿里的推薦算法用的在線的多仍是離線的多?由於可供學習的數據不少,每次從頭來量應該很大。
部分場景是純在線的,部分場景是在線離線結合的,還有一部分是純離線的。離線處理數據從新計算是個問題,所以離線也不太可能處理很長時間的數據。
13 . 如今不少推薦算法是否是有問題?老是推薦我買過的東西,而且從品牌層次和商家都不匹配。
咱們針對用戶已經購買的商品進行了部分過濾,商品類目也是個比較複雜的事情,有時候看起來是一個品類的商品,其實是屬於不一樣的類目,好比運動鞋和男鞋就是不一樣的類目。這個問題已經比較久了,只能逐步解決。
14 . 算法程序建模以後,怎麼驗證代碼的準確性? 程序員之間互測? 算法調優有啥思路?
算法通常都會隱藏一些「bug」,只不過這些bug對結果的影響大小的問題,因此坊間也有經過修復bug來提升效果的。算法建模以後經過test數據集進行驗證。
15 . 像淘寶天天每週都有不少新加入的商品,請問算法團隊是如何作的?新加入的商品應該如何給排序值,肯定值大小?
冷啓動的商品會分配極小的流量進行探索性投放。
16 . 目前可使用算法編寫的語言不少,python嗎? 貴團隊是如何決策的?
底層的算法和工程系統使用C/C++開發,應用層適應多變的需求,使用Java開發,Python和Java的功能相似,在運行效率和庫的完備度方面弱一些,也有使用。
最後,安利一下這本著做——《盡在雙11》。本書以雙11爲着眼點,從技術的角度,展現了阿里巴巴的演進、變革與發展,系統地闡述了阿里巴巴重要階段的技術進步歷程。