那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

機器學習算法那家強 因子分解機(FM算法)工業落地能力最強

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 作者:深度學習自然語言 ? 2020-12-31 00:01 ? 次閱讀

文 | 石塔西

源 | 夕小瑤的賣萌屋

盡管BERT為代表的預訓練模型大肆流行,但是身處工業界才會知道它落地有多難,尤其是QPS動輒幾百的在線推薦、搜索系統,哪怕在大廠也很難在線上系統見到它們。

今天就想反其道而行之,談談工業界搜索、推薦、廣告這類核心場景中落地能力最強的算法(之一):因子分解機(FM)。我不敢說它是最簡單的(FM的確很簡單),但是作為一個推薦算法調參工程師,掌握FM一定是性價比最高的。我推崇FM算法的原因,有以下三點:

功能齊全

眾所周知,推薦算法有三個應用領域:召回、粗排、精排。推薦算法千千萬,但是有的算法只能用于召回,有的算法只能用于排序。像FM這樣實現三個領域全覆蓋的多面手,目前為止,孤陋寡聞的我尚不知道有第二個。但是需要強調的是,我們不能只訓練一個FM排序模型 ,然后直接拿這個排序模型用于召回。盡管都是基于FM算法,但是FM召回與排序,有以下不同:

使用的特征不同

FM召回,由于未來要依賴Faiss進行線上檢索,所以不能使用user與doc的交叉特征。只有如此,我們才能獨立計算user embedding與doc embedding

FM排序,則沒有這方面的限制,可以使用user與doc的交叉特征。是的,你沒看錯。因為FM所實現自動二階交叉,僅能代表“共現”。但是user與doc之間還有其他形式的交叉,比如user tag與doc tag之間的重合度,喂入這樣的交叉,對于排序性能提升,仍然有很大幫助。

使用的樣本不同

訓練FM做排序時,必須使用“曝光未點擊”這樣的“真負”樣本。

訓練FM做召回時,起碼不能只使用“曝光未點擊”做負樣本。大部分的負樣本必須通過隨機采樣得到。個中原因見我的文章《負樣本為王:評Facebook的向量化召回算法》。

使用的Loss不同

FM排序時,由于負樣本是真實的,可以采用CTR預估那樣的point-wise loss

FM召回時,由于負樣本是隨機采樣得到的,存在一定的噪聲,最好采用BPR, hinge這樣的pair-wise loss。

性能優異

推薦系統的兩大永恒主題,“記憶”與“擴展”,FM也能實現全覆蓋。

FM存在一階項,實際就是LR,能夠“記憶”高頻、常見模式

FM存在feature embedding。如我在《無中生有:論推薦算法中的Embedding思想》據說,Embedding是提升推薦算法“擴展性”的法寶。FM通過feature embedding,能夠自動挖掘低頻、長尾模式。在這一點上,基于embedding的二階交叉,并不比DNN的高階交叉,遜色多少。

便于上線

現在深度學習是推薦領域的寵兒,LR/FM/GBDT這樣的傳統機器學習算法,不招人待見。

DNN雖然性能優異,但是它有一個致命缺點,就是上線困難。訓練的時候,各位調參俠,把各種酷炫的結構,什么attention, transformer, capsule,能加上的都給它加上,看著離線指標一路上漲,心里和臉上都樂開了花,卻全然無視旁邊的后端工程師恨得咬緊了牙根。模型越復雜,離線和線上指標未必就更好,但是線上的時間開銷肯定會增加,輕則影響算法與后端的同事關系(打工人何苦為難打工人),重則你那離線指標完美的模型壓根沒有上線的機會。雖說,目前已經有TF Serving這樣的線上serving框架,但是它也不是開箱即用的,也需要一系列的性能調優,才能滿足線上的實時性要求。

所以,如果你身處一個小團隊,后端工程人員的技術能力不強,DNN的線上實時預測,就會成為一個難題,這個時候,FM這樣的傳統機器學習算法,就凸顯出其優勢。

FM排序,雖然理論上需要所有特征進行二階交叉,但是通過公式化簡,可以在 O(n)的時間復雜度下完成。n是樣本中非零的特征數目,由于推薦系統中的特征非常稀疏,所以預測速度是非常快的。

召回,由于候選集巨大,對于實時性的要求更高。很多基于DNN的召回算法,由于無法滿足線上實時生成user embedding的需求,只能退而離線生成user embedding ,對于用戶實時興趣的捕捉大打折扣。FM召回,這時就顯現其巨大的優勢。事先把doc embedding計算好,存入Faiss建立索引,user embedding只需要把一系列的feature embedding相加就可以得到,再去faiss中進行top-k近鄰搜索。FM召回,可以實現基于用戶最新的實時興趣,從千萬量級候選doc中完成實時召回。

總結與參考

由于以上優點,我心目中,將FM視為推薦、搜索領域的"瑞士軍刀"。風頭上雖然不及DNN那么搶眼,但是論在推薦系統中發揮的作用,絲毫不比DNN遜色,有時還能更勝一籌。FM有如此眾多的優點,優秀的調參俠+打工人,還等什么,還不趕快學起來。想迅速掌握FM,我推薦如下參考文獻:

掌握FM原理,推薦讀美團的博客《深入FFM原理與實踐》。FFM的部分可以忽略,在我看來,FFM更像是為了Kaggle專門訓練的比賽型選手,損失了FM的很多優點。這就好比,奧運會上的射擊冠軍,未必能夠勝任當狙擊手一樣。

FM用于召回,推薦讀《推薦系統召回四模型之:全能的FM模型》。注意,如我所述,FM雖然萬能,但是FM排序與FM召回,在特征、樣本、Loss都存在不同,不可能訓練一個FM排序就能直接拿來做召回。這一點,《全能FM》一文沒有提到,需要讀者特別注意。

如果想親手實踐,可以嘗試alphaFM。該項目只不過是作者八小時之外的課外作品,卻被很多公司拿來投入線上實際生產環境,足見該項目性能之優異和作者功力之深厚,令人佩服。強烈建議不滿足只當“調參俠”的同學,通讀一遍alphaFM的源代碼,一定收獲滿滿。

[1] https://zhuanlan.zhihu.com/p/165064102

[2] https://zhuanlan.zhihu.com/p/320196402

[3] https://link.zhihu.com/?target=https%3A//tech.meituan.com/2016/03/03/deep-understanding-of-ffm-principles-and-practices.html

[4] https://zhuanlan.zhihu.com/p/58160982

[5] https://link.zhihu.com/?target=https%3A//github.com/CastellanZhang/alphaFM

原文標題:談談工業界落地能力最強的機器學習算法

文章出處:【微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 算法
    +關注

    關注

    23

    文章

    4630

    瀏覽量

    93360
  • FM
    FM
    +關注

    關注

    1

    文章

    183

    瀏覽量

    59299
  • 機器學習
    +關注

    關注

    66

    文章

    8441

    瀏覽量

    133087
  • dnn
    dnn
    +關注

    關注

    0

    文章

    60

    瀏覽量

    9089

原文標題:談談工業界落地能力最強的機器學習算法

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    華為云 Flexus X 實例部署安裝 Jupyter Notebook,學習 AI,機器學習算法

    前言 由于本人最近在學習一些機器算法,AI 算法的知識,需要搭建一個學習環境,所以就在最近購買的華為云 Flexus X 實例上安裝了
    的頭像 發表于 01-02 13:43 ?150次閱讀
    華為云 Flexus X 實例部署安裝 Jupyter Notebook,<b class='flag-5'>學習</b> AI,<b class='flag-5'>機器</b><b class='flag-5'>學習</b><b class='flag-5'>算法</b>

    傳統機器學習方法和應用指導

    在上一篇文章中,我們介紹了機器學習的關鍵概念術語。在本文中,我們會介紹傳統機器學習的基礎知識和多種算法特征,供各位老師選擇。 01 傳統
    的頭像 發表于 12-30 09:16 ?398次閱讀
    傳統<b class='flag-5'>機器</b><b class='flag-5'>學習</b>方法和應用指導

    NPU與機器學習算法的關系

    在人工智能領域,機器學習算法是實現智能系統的核心。隨著數據量的激增和算法復雜度的提升,對計算資源的需求也在不斷增長。NPU作為一種專門為深度學習
    的頭像 發表于 11-15 09:19 ?601次閱讀

    AIGC算法解析及其發展趨勢

    、AIGC算法解析 核心基礎 人工智能算法 :AIGC技術的基礎和靈魂,如深度學習機器學習算法
    的頭像 發表于 10-25 15:35 ?563次閱讀

    LIBS結合機器學習算法的江西名優春茶采收期鑒別

    以廬山云霧茶和狗牯腦茶的明前茶、雨前茶為對象,研究激光誘導擊穿光譜結合機器學習的茶葉鑒別方法。將茶葉茶,水數據融合可有效鑒別春茶采收期,且數據融合后表現出更好的穩定性和魯棒性,LIBS結合機器
    的頭像 發表于 10-22 18:05 ?305次閱讀
    LIBS結合<b class='flag-5'>機器</b><b class='flag-5'>學習</b><b class='flag-5'>算法</b>的江西名優春茶采收期鑒別

    深度學習算法在嵌入式平臺上的部署

    隨著人工智能技術的飛速發展,深度學習算法在各個領域的應用日益廣泛。然而,將深度學習算法部署到資源受限的嵌入式平臺上,仍然是一個具有挑戰性的任務。本文將從嵌入式平臺的特點、深度
    的頭像 發表于 07-15 10:03 ?1698次閱讀

    深度學習工業機器視覺檢測中的應用

    識別等任務。傳統的機器視覺檢測方法通常依賴于手工設計的特征和固定的算法,難以應對復雜多變的工業環境。而深度學習的引入,為工業
    的頭像 發表于 07-08 10:40 ?1231次閱讀

    深度學習的基本原理與核心算法

    隨著大數據時代的到來,傳統機器學習方法在處理復雜模式上的局限性日益凸顯。深度學習(Deep Learning)作為一種新興的人工智能技術,以其強大的非線性表達能力和自
    的頭像 發表于 07-04 11:44 ?2492次閱讀

    神經網絡反向傳播算法的優缺點有哪些

    神經網絡反向傳播算法(Backpropagation Algorithm)是一種廣泛應用于深度學習機器學習領域的優化算法,用于訓練多層前饋
    的頭像 發表于 07-03 11:24 ?1224次閱讀

    神經網絡算法的優缺點有哪些

    的優點 自學習能力:神經網絡算法具有強大的自學習能力,能夠從大量數據中自動提取特征,無需人工干預。這使得神經網絡
    的頭像 發表于 07-03 09:47 ?1652次閱讀

    機器學習算法原理詳解

    機器學習作為人工智能的一個重要分支,其目標是通過讓計算機自動從數據中學習并改進其性能,而無需進行明確的編程。本文將深入解讀幾種常見的機器學習
    的頭像 發表于 07-02 11:25 ?1363次閱讀

    機器學習的經典算法與應用

    關于數據機器學習就是喂入算法和數據,讓算法從數據中尋找一種相應的關系。Iris鳶尾花數據集是一個經典數據集,在統計學習
    的頭像 發表于 06-27 08:27 ?1729次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學習</b>的經典<b class='flag-5'>算法</b>與應用

    名單公布!【書籍評測活動NO.35】如何用「時間序列與機器學習」解鎖未來?

    應用,將理論基礎與實踐案例相結合,作者憑借扎實的數學功底及其在企業界的豐富實踐經驗,將機器學習與時間序列分析巧妙融合在書中。 全書書共分為8章,系統介紹時間序列的基礎知識、常用預測方法、異常檢測算法
    發表于 06-25 15:00

    運動控制算法有哪些

    。 應用 :廣泛應用于工業自動化、機器人控制、航空航天等領域。 模糊控制算法 (Fuzzy Logic Control) 原理 :模
    的頭像 發表于 06-13 09:17 ?2882次閱讀

    AI算法的本質是模擬人類智能,讓機器實現智能化

    視覺等領域。 ? AI 算法的核心是實現智能化的決策和行為 ? AI算法的本質在于模擬人類智能的能力,讓計算機能夠對現實世界進行模擬和模仿,從而達到智能化的目的。具體來說,AI算法可以
    的頭像 發表于 02-07 00:07 ?5990次閱讀
    百家乐如何买大小| 凌龙棋牌游戏大厅| 半圆百家乐官网桌布| 百家乐最新破| 百家乐官网视频无法显示| 赌场百家乐试玩| 伊金霍洛旗| 百家乐最佳投注法下载| 盐城市| 百家乐网站东方果博| 百家乐官网代理网址| 百家乐代打是真的吗| 立博博彩| 百家乐博彩通| 百家乐赌机厂家| 百家乐官网gamble| 大发888娱乐场and| 百家乐官网五星宏辉怎么玩| 乐天百家乐的玩法技巧和规则| 破解百家乐官网公式| 蓝盾百家乐代理| 678百家乐官网博彩娱乐场开户注册 | 伯爵百家乐官网娱乐场| 大发888在线娱乐城合营商| 百家乐官网操作技巧| 鸿胜娱乐城| 利来百家乐的玩法技巧和规则| 澳门百家乐官网线上娱乐城| 现金网开户送彩金| 大发888游戏平台 34| 网上百家乐作弊不| 狮威百家乐官网娱乐场| 抚州市| 大发888手机真钱游戏| 红9百家乐的玩法技巧和规则| 赌百家乐咋赢对方| 奇博网上娱乐| 二八杠筒子| 玩百家乐必赢的心法| 博乐百家乐游戏| 百家乐官网技巧平注常赢法|