• <input id="mmiwo"><label id="mmiwo"></label></input>
  • <code id="mmiwo"><label id="mmiwo"></label></code>
  • 您正在使用IE低版瀏覽器,為了您的雷鋒網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
    人工智能 正文
    發私信給雷鋒字幕組
    發送

    0

    簡單介紹 TF-Ranking

    本文作者:雷鋒字幕組 2019-03-25 10:21
    導語:排序是機器學習場景中最常見的問題之一。

    簡單介紹 TF-Ranking

    本文為 AI 研習社編譯的技術博客,原標題 :

    Introducing TF-Ranking

    作者 | Jesus Rodriguez

    翻譯 | Lemon_Sophia         

    校對 | 鄧普斯?杰弗        審核 | 醬番梨       整理 | 立魚王

    原文鏈接:

    https://towardsdatascience.com/introducing-tf-ranking-f94433c33ff

    簡單介紹 TF-Ranking

    排序是機器學習場景中最常見的問題之一。從搜索到推薦系統,排名模型是許多主流機器學習體系結構的重要組成部分。在機器學習理論中,排序方法通常使用像learning-to-rank(LTR)或machine learning ranking機器學習排序(LTR)這樣的術語。盡管具有相關性,但是在大多數機器學習框架中,大規模開發LTR模型仍然是一個挑戰。最近,來自谷歌的人工智能(AI)工程師引入了TF-Ranking,這是一個基于TensorFlow的框架,用于構建高度可伸縮的LTR模型。幾周前發表的一篇研究論文詳細闡述了TF-Ranking背后的原則。

    從概念上講,排序問題定義為對一組樣本(或示例)進行排序的派生,這些示例可以最大化整個列表的效用。這個定義聽起來類似于分類和回歸問題,但排序問題從根本上是不同的。分類或回歸的目標是盡可能準確地預測每個示例的標簽或值,而排序的目標是對整個示例列表進行優化排序,以便最先顯示相關度最高的示例。為了推斷相關性,LTR方法嘗試學習一個評分函數(valued scores),該函數將示例特征向量映射到標記數據的實值評分(real-valued scores)。 

    簡單介紹 TF-Ranking

    這種簡單的體系結構已經成為大多數排名算法以及RankLib或LightGBM等庫的基礎。雖然這些庫提供了有效的排序方法,但它們是針對小型數據集實現的,這使得它們在依賴于大量訓練數據的實際場景中不切實際 。除此之外,現有的LTR庫還沒有為在深度學習場景中常見的稀疏和多維數據集而設計。 

    現有LTR stacks(LTR棧)的局限性使得LTR方法在深度學習場景中的實現越來越復雜。由于缺乏對主流深度學習框架(如TensorFlow、MxNet、PyTorch或Caffe2)中的排名模型的支持,這個問題變得愈加嚴峻。 


      進入 TF-Ranking

    TF-Ranking是一個基于tensorflow的框架,它支持在深度學習場景中實現TLR方法。該框架包括實現流行的TLR技術,如成對pairwise或列表listwise損失函數、多項目評分、排名指標優化和無偏學習排名。

    TF-Ranking的實現非常復雜,但使用起來也非常簡單。該實現的核心組件是一個model_fn函數,它接受特征和標簽作為輸入,并根據模式(TRAIN、EVAL、PREDICT)返回損失、預測、度量指標和訓練操作。使用TF-Ranking構建model_fn函數是基于兩個基本組件的組合: 評分函數(scoring function)和排名頭(ranking head)。

    簡單介紹 TF-Ranking

    • Scoring Function評分函數: TF-Ranking支持單項和多項評分功能。單項評分函數可以用函數F(X) = [F(x1);f (x2);:::;f(xn)],其中輸入表示單個示例的特征,并計算一個分數作為輸出。多項目評分函數擴展了一組示例的這種結構。TF-Ranking將每個示例列表分割成若干張量,張量的形狀為[batch_size, group_size, feature_size]。從上面的代碼示例中可以看到,評分函數是一個用戶指定的閉包,它傳遞給了這個排名model_fn構建器。

    • Ranking Head排名頭: TF-Ranking使用一個針對特定指標的排名頭和排名邏輯的損失。從概念上講,排名頭結構計算排名指標和排名損失,給出分數、標簽和可選的示例權重。通過編程的方式,排名頭通過工廠方法tf .head.create_ranking_head公開。


       使用TF-Ranking

    從編程的角度來看,TF-Ranking實現了TensorFlow Estimator接口,該接口抽象了機器學習應用程序生命周期的不同方面,比如訓練、評估、預測和模型服務。使用TF-Ranking的經驗如下面的代碼所示。

    簡單介紹 TF-Ranking

    除了編程簡單之外,TF-Ranking還集成了TensorFlow生態系統的其他部分。使用TF-Rankign開發的模型可以使用TensorBoard工具集進行可視化評估,如下圖所示。

    簡單介紹 TF-Ranking


       TF-Ranking在現實世界中的應用 

    谷歌在兩個關鍵任務場景中評估了 TF-Ranking: 對存儲在谷歌驅動器中的文檔進行Gmail搜索和推薦。在Gmail搜索場景中,使用TF-Ranking對匹配特定用戶查詢的五個結果進行排序。用戶點擊等指標被用作排名的相關標簽。不同排序模型的結果如下矩陣所示。

    簡單介紹 TF-Ranking

    在谷歌驅動器場景中,TF-Ranking用于實現一個推薦引擎,該引擎在用戶訪問驅動器主屏時顯示當前相關的文檔。與Gmail場景類似,推薦系統會考慮用戶點擊量來重新評估排名模型。結果如下矩陣所示。

    簡單介紹 TF-Ranking

    TF-Ranking是對TensorFlow堆棧的一個很好的補充。不同于它的前身。TF-Ranking針對需要大型數據集的模型進行了優化,并基于TensorFlow估計器提供了非常簡單的開發人員體驗。包含示例和教程的TF-Ranking代碼可以在GitHub上找到。

    想要繼續查看該篇文章相關鏈接和參考文獻?

    點擊【簡單介紹 TF-Ranking】或長按下方地址:雷鋒網(公眾號:雷鋒網)雷鋒網雷鋒網

    https://ai.yanxishe.com/page/TextTranslation/1342

    AI入門、大數據、機器學習免費教程

    35本世界頂級原本教程限時開放,這類書單由知名數據科學網站 KDnuggets 的副主編,同時也是資深的數據科學家、深度學習技術愛好者的Matthew Mayo推薦,他在機器學習和數據科學領域具有豐富的科研和從業經驗。

    點擊鏈接即可獲取:https://ai.yanxishe.com/page/resourceDetail/417


    雷鋒網原創文章,未經授權禁止轉載。詳情見轉載須知

    分享:
    相關文章

    文章點評:

    表情
    最新文章
    請填寫申請人資料
    姓名
    電話
    郵箱
    微信號
    作品鏈接
    個人簡介
    為了您的賬戶安全,請驗證郵箱
    您的郵箱還未驗證,完成可獲20積分喲!
    請驗證您的郵箱
    立即驗證
    完善賬號信息
    您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
    立即設置 以后再說
    11选5下期推算方法