如何去擴大機器學(xué)習(xí)規(guī)模
推特和臉書可以教會我們很多和高效的人工智能有關(guān)的東西。
Gartner最近的一項調(diào)查顯示,很多公司才剛剛開始機器學(xué)習(xí)之旅,而37%的組織已經(jīng)實施了人工智能。如果你已經(jīng)準(zhǔn)備好接受機器學(xué)習(xí),你可能先要評估十個問題或評估人工智能、機器學(xué)習(xí)和深度學(xué)習(xí)的完整指南,然后才能對機器學(xué)習(xí)進行概念驗證。
機器學(xué)習(xí)正在不斷發(fā)展,新的商業(yè)突破、科學(xué)進步、框架改進和最佳實踐常常見諸各大媒體。
我們可以從實施了大規(guī)模機器學(xué)習(xí)計劃并將人工智能視為業(yè)務(wù)核心的組織中學(xué)到很多東西。在紐約召開的O‘Reilly人工智能會議上,我看到了臉書和推特的機器學(xué)習(xí)計劃之間的幾股常見趨勢。
了解業(yè)務(wù)需求和競爭因素
臉書將機器學(xué)習(xí)用于很多領(lǐng)域。在臉書主頁上,機器學(xué)習(xí)可以搜索內(nèi)容,翻譯語言,掃描動態(tài)消息并識別用戶上傳的照片中的面孔,以及查廣告展示的內(nèi)容。在幕后,機器學(xué)習(xí)則用于內(nèi)容理解、語音識別、內(nèi)容完整性、情感分析、檢測令人反感的內(nèi)容和欺詐性賬戶。
同樣,推文排名、廣告選擇、搜索功能和用戶推薦等一系列活動證實推特的機器學(xué)習(xí)正在發(fā)揮作用。機器學(xué)習(xí)還用來標(biāo)記有污言穢語的推文、垃圾郵件和不適合在工作中使用的圖片。
每次機器學(xué)習(xí)操作的規(guī)模有多大,這兩家公司以什么方式投資于差異化能力,這不太明顯。
臉書每天為26億用戶執(zhí)行200多萬億次預(yù)測。它的用戶遍布全球(這些用戶在帶寬上受到一定的限制),而且大量的互動是由手機完成的。
這帶來了一些難題,因為全球有61%的用戶還在用六年前的手機,甚至更老;只有不到10%的用戶使用最先進的智能手機。臉書的戰(zhàn)略的一部分是將更多的神經(jīng)網(wǎng)絡(luò)計算轉(zhuǎn)移到邊緣設(shè)備,以擴大規(guī)模,降低延遲并提供更個性化的機器學(xué)習(xí)模型。臉書的機器學(xué)習(xí)技術(shù)棧體現(xiàn)了這樣的目標(biāo),即可以輕松地研究新模型,同時大規(guī)模提供推理結(jié)果并將一些計算轉(zhuǎn)移到邊緣設(shè)備。
推特根據(jù)規(guī)模和延遲方面的要求對模型進行優(yōu)化。它每秒執(zhí)行數(shù)千萬次預(yù)測,每天以數(shù)十太字節(jié)的數(shù)據(jù)來訓(xùn)練模型。它專注于優(yōu)化延遲(模型做出響應(yīng)所需的時間)并明確了預(yù)測延遲方面的預(yù)算,即預(yù)測延遲數(shù)十毫秒所需要的預(yù)算。
為了擴大規(guī)模而將平臺標(biāo)準(zhǔn)化
臉書和推特很早就開展了機器學(xué)習(xí)計劃。它們從非結(jié)構(gòu)化方法開始,但它們現(xiàn)在正在采取措施將平臺,框架和管道標(biāo)準(zhǔn)化。推特旨在更輕松地共享模型并希望減少重復(fù)勞動。臉書正在解決各種痛點,即可靠性、可擴展性、運行模型的效率以及科學(xué)家和工程師的開發(fā)體驗方面的痛點。
這兩家公司的平臺都根據(jù)類似的數(shù)據(jù)管道處理原則得到了優(yōu)化,它們都有處理數(shù)據(jù),提取特征,訓(xùn)練模型以及將模型部署到生產(chǎn)環(huán)境的平臺。
兩大社交媒體巨頭正在采取措施對選定的機器學(xué)習(xí)框架進行標(biāo)準(zhǔn)化。臉書正在使用PyTorch使研究變得更輕松,使用Caffe2大規(guī)模運行生產(chǎn)推理模型。它已將Caffe2整合到PyTorch 1.0中,PyTorch 1.0結(jié)合了這兩種功能,并使用Caffe2Go來運行移動神經(jīng)網(wǎng)絡(luò)。推特使用的是Lua Torch、TensorFlow、Scikit、PyTorch和其它平臺。它現(xiàn)在正在將Scalding、PySpark、Tensorflow和Apache Airflow標(biāo)準(zhǔn)化。
使科學(xué)家、開發(fā)人員和工程師能夠進行協(xié)作
推特和臉書勾勒了各種不同的工作,以實現(xiàn)生產(chǎn)力,知識共享,以及數(shù)據(jù)科學(xué)家、開發(fā)人員和工程師之間的代碼可重用性。
許多數(shù)據(jù)團隊將數(shù)據(jù)目錄和詞典作為其數(shù)據(jù)治理計劃的一部分。這些工具使每個人在使用數(shù)據(jù)進行分析或機器學(xué)習(xí)實驗時更容易理解基礎(chǔ)數(shù)據(jù)模型,字段定義和質(zhì)量約束。
推特則更進一步,它通過將機器學(xué)習(xí)實驗中使用的功能標(biāo)準(zhǔn)化并在功能目錄中獲取這些功能。這大大減少了重復(fù)并幫助科學(xué)家訓(xùn)練新模型,而不必花大量精力將數(shù)據(jù)處理成功能。
臉書還對自身的功能進行編目和標(biāo)準(zhǔn)化,將訓(xùn)練自動化并開發(fā)用于管理和部署模型的工具。FBLearner是支持這些功能的標(biāo)準(zhǔn)平臺。
此外,臉書正在對自身所使用的機器學(xué)習(xí)類型進行標(biāo)準(zhǔn)化。例如,動態(tài)消息、廣告、搜索和異常檢測的排名使用了多層感知器。臉書還利用卷積神經(jīng)網(wǎng)絡(luò)和支持向量機(support vector machine)進行面部識別,并利用循環(huán)神經(jīng)網(wǎng)絡(luò)進行語言翻譯。
將機器學(xué)習(xí)模型的持續(xù)訓(xùn)練自動化
和軟件應(yīng)用程序一樣,機器學(xué)習(xí)模型必須持續(xù)得到培訓(xùn)和修改。臉書和推特都對這種培訓(xùn)進行了自動化,以便模型根據(jù)新數(shù)據(jù)進行重新調(diào)整。
推特認識到,將模型推向生產(chǎn)將產(chǎn)生新的要求,即不斷用最新數(shù)據(jù)來訓(xùn)練模型,并在數(shù)據(jù)科學(xué)家進行模型改進時對其進行更新。Apache Airflow能將訓(xùn)練和部署管道自動化。
臉書專注于其戰(zhàn)略。經(jīng)常改變的模型(例如新聞源)每小時或更少地重新訓(xùn)練,而語言翻譯和面部識別模型在數(shù)周至數(shù)月的循環(huán)中訓(xùn)練。
計算成本的高低和計算資源的多少也決定了模型重新接受訓(xùn)練的頻率。臉書也許具備戰(zhàn)略計算優(yōu)勢,因為它開發(fā)了各種硬件棧,這些硬件棧對不同的機器學(xué)習(xí)工作負載進行優(yōu)化。因為全球的計算資源并未得到充分利用,所以推特專注于優(yōu)化算法性能并在非高峰時段安排訓(xùn)練。
制定長期規(guī)劃
與大多數(shù)組織相比,推特和臉書在應(yīng)用和擴展機器學(xué)習(xí)方面遙遙領(lǐng)先。你能從他們的成功中學(xué)到什么?
從小事做起,對模型進行培訓(xùn)并在使其在生產(chǎn)中運行,從而證明其商業(yè)價值,然后努力擴大實踐規(guī)模并使其更成熟。要使實踐成熟,與應(yīng)用程序開發(fā)類似的規(guī)則是必不可少的,包括將框架標(biāo)準(zhǔn)化、定義體系結(jié)構(gòu)、選擇維護周期、優(yōu)化性能以及將部署管道自動化。
你會發(fā)現(xiàn),機器學(xué)習(xí)帶來了重要價值,但它也需要根據(jù)性能和投資展開持續(xù)研究,以進行改進。各種模型經(jīng)過培訓(xùn)、部署、優(yōu)化,然后被更好的模型替代。機器學(xué)習(xí)是一種新的工具和技能,但對于必須改善用戶體驗或必須通過數(shù)據(jù)提高競爭價值的組織來說,它們將變得越來越重要。