LinkedIn已實現(xiàn)了非常先進的體系結構,可大規(guī)模開發(fā)機器學習解決方案。
對于大多數(shù)組織而言,構建基礎結構來管理機器學習模型的生命周期仍然是一個挑戰(zhàn)。 盡管我們已經(jīng)看到了機器/深度學習框架的巨大進步,但對于大多數(shù)開始機器學習之旅的團隊來說,大規(guī)模開發(fā),部署和管理模型的架構最佳實踐仍然有些障礙。 為了掌握其中的一些架構最佳實踐,我們應該看看機器學習創(chuàng)新正在發(fā)生什么。 那是在大型技術公司內部。 微軟,谷歌,F(xiàn)acebook,優(yōu)步,LinkedIn和Netflix已經(jīng)開發(fā)了一些市場上最先進的機器學習基礎設施。 今天,我想在LinkedIn上探索支持某些關鍵任務機器學習工作流程的架構。
LinkedIn是將機器學習應用于大規(guī)模場景多年的公司之一,但對該軟件巨頭使用的特定方法和技術知之甚少。 最近,LinkedIn工程團隊發(fā)布了一系列博客文章,提供了有關其機器學習基礎結構和實踐的一些非常有趣的見解。 盡管許多情況都是特定于LinkedIn的,但是這些技術和最佳實踐適用于許多大規(guī)模的機器學習解決方案。
人與人之間的機器學習
LinkedIn機器學習架構最有趣的方面之一是他們如何利用人作為機器學習工作流程的一部分。 例如,假設一個場景發(fā)現(xiàn)了不同標題之間的關系,例如" 高級軟件工程師"或"首席開發(fā)人員"來改善搜索體驗。 LinkedIn使用人類分類學家來標記標題之間的關系,以便可以將它們用于機器學習模型(例如長時記憶網(wǎng)絡)中,以幫助發(fā)現(xiàn)標題之間的其他關系。 機器學習架構是LinkedIn知識圖的基礎。
大規(guī)模的機器學習基礎架構
LinkedIn機器學習基礎架構的核心是一個稱為Pro-ML的專有系統(tǒng)。 從概念上講,Pro-ML控制著機器學習模型從訓練到監(jiān)視的整個生命周期。 為了擴展Pro-ML,LinkedIn建立了一個架構,該架構將其一些開源技術(例如Kafka或Samza)與基礎結構構建塊(例如Spark或Hadoop YARN)相結合。
盡管LinkedIn機器學習堆棧中使用的大多數(shù)技術都是眾所周知的,但還有一些新的貢獻值得進一步探索:
·Ambry:LinkedIn的Ambry是一個分布式的不可變blob存儲系統(tǒng),具有高可用性,易于擴展,經(jīng)過優(yōu)化,可以以高吞吐量和低延遲為大小從幾個KB到多個GB的不可變對象提供服務,并能夠從客戶端進行端到端流傳輸?shù)酱鎯?,反之亦然?該系統(tǒng)旨在跨多個數(shù)據(jù)中心在主動-主動設置下工作,并提供非常便宜的存儲。
·TonY:YARN上的TensorFlow(TonY)是一個框架,可在Apache Hadoop上本地運行TensorFlow。 TonY支持將單個節(jié)點或分布式TensorFlow訓練作為Hadoop應用程序運行。
·PhotonML:PhotonML是基于Apache Spark的機器學習庫。 當前,Photon ML支持訓練不同類型的廣義線性模型(GLM)和廣義線性混合模型(GLMMs / GLMix模型):邏輯,線性和泊松。
Hadoop上的TensorFlow
上個月,LinkedIn工程團隊在YARN(TonY)框架上開源了其TensorFlow的第一版。 該版本的目標是使TensorFlow程序能夠在分布式YARN群集上運行。 盡管TensorFlow工作流在諸如Apache Spark之類的基礎架構上得到廣泛支持,但YARN在很大程度上仍被機器學習社區(qū)所忽略。 一流的支持,可通過處理諸如資源協(xié)商和容器環(huán)境設置之類的任務在Hadoop上運行TensorFlow作業(yè)。
TonY的核心是使用TensorFlow程序并將其拆分為可以在YARN集群上執(zhí)行的多個并行任務。 這樣做是在完全支持TensorFlow的計算圖的同時,這意味著TensorBoard之類的工具可以在TonY上使用,而無需進行任何修改。
TonY是對TensorFlow生態(tài)系統(tǒng)的有趣貢獻,可以改善TensorFlow應用程序大規(guī)模運行的體驗。 此外,TonY可以從YARN生態(tài)系統(tǒng)中可用的大量工具和庫中受益,從而為訓練和運行TensorFlow應用程序提供高度可擴展的運行時。
測試
LinkedIn運行著數(shù)以千計的并發(fā)機器學習模型,這些模型正在不斷發(fā)展和版本化。 在這些情況下,開發(fā)健壯的測試方法對于優(yōu)化運行時機器學習模型的性能至關重要。 就LinkedIn而言,工程團隊已將A / B測試作為其Pro-ML架構的一等公民,使機器學習工程師可以針對特定情況部署競爭算法并評估產(chǎn)生最佳結果的算法。
像LinkedIn這樣的互聯(lián)網(wǎng)巨頭站在大規(guī)模機器學習解決方案實施的最前沿,他們對這一主題的見解對于開始他們的機器學習之旅的公司來說具有不可思議的價值。 LinkedIn的工作清楚地表明,大規(guī)模開發(fā)機器學習是一項永無止境的練習,它將流行的開源庫和平臺與專有框架和方法相結合。
-
機器學習
+關注
關注
66文章
8353瀏覽量
132315 -
LinkedIn
+關注
關注
0文章
18瀏覽量
14459
發(fā)布評論請先 登錄
相關推薦
評論