Hugging Face:成為機器學習界的“GitHub”

語言: CN / TW / HK

來源|The Robot Brains Podcast\ 翻譯|程浩源、胡燕君、許涵如、董文文

五年前,AI領域的知名研究者Andrej Karpathy發文稱,傳統人工程式設計屬於“軟體1.0”,“軟體2.0”時代將以神經網路來程式設計,在這個過渡過程中,將湧現像GitHub這樣的重量級平臺。

AI屆網紅公司“抱抱臉(Hugging Face)”有志於成為“軟體2.0”時代的GitHub。在Hugging Face上,使用者可以託管機器學習模型和資料集等,對它們進行共享、協作和評價,最後將它們投入生產應用,這種模式有點像Github上的託管和協作模式。

如今,依靠明星專案Transformers庫走紅的Hugging Face的關注點不止於NLP庫。Hugging Face已經共享了超100,000個預訓練模型,10,000個數據集,涵蓋了 NLP、計算機視覺、語音、時間序列、生物學、強化學習等領域,以幫助科學家和相關從業者更好地構建模型,並將其用於產品或工作流程。

對於這些耀眼的成績,在此前的《一個GitHub史上增長最快的AI專案》一文中,Hugging Face的CEO兼聯合創始人Clément Delangue分析稱,主要是因為Hugging Face彌補了科學與生產之間的鴻溝,通過搭建平臺為開源界和科學界賦能,所產生的價值比通過搭建專有工具產生的價值要高上千倍,而很多開源軟體和公司都沒有做到這一點。

Hugging Face培育了一個龐大的開源社群,商業化似乎也順理成章。目前,已有超過10,000家公司在使用他們提供的產品和服務,其中付費使用者超過1000。在資本市場,Hugging Face也備受青睞,它於今年5月完成1億美元的C輪融資,估值達到20億美元。

在Pieter Abbeel近期主持的The Robot Brains Podcast節目中,Clement Delangue聊了聊Hugging Face的發展歷程,開源協作和商業化以及機器學習行業的發展。以下為對話內容,由OneFlow社群編譯。

1

從研發聊天機器人到開源平臺

Pieter:2016年當你們創業時,為什麼一開始決定開發聊天機器人?後來又是怎樣改變想法搭建了機器學習開源庫?

Clement: 我和Julien Chaumond、Thomas Wolf一起創辦了Hugging Face。我們非常熱愛機器學習,認為機器學習代表未來,是我們想為之奮鬥的事業。

我們希望挑戰機器學習領域最難的方向,所以決定開發一個娛樂型的開放域對話式AI,就像科幻電影《Her》裡面的AI那樣,可以跟人聊天氣、朋友、愛情和體育比賽等各種話題。市場上還沒有人很好地做出這樣的聊天機器人,當時的Siri和Alexa都是事務型AI,主要是為了幫助人類完成某些任務,缺乏趣味性和娛樂性。所以我們就定下了這個創業方向。

為了做好開放域的對話式AI,我們必須做好一系列不同的機器學習任務。我們需要從文字中提取資訊,理解文字意圖和情感,還要生成回答,對話中涉及圖片時還需要進行影象識別。我們還希望AI能夠駕馭多種聊天話題,所以需要多種資料集,比如聊體育比賽要有體育資料集,聊天氣要有天氣資料集等等。

剛開始的兩年我們都在做這件事,很幸運在創業初期就能夠把自己想做的事做好。

後來就搭建了Hugging Face平臺,上面有各種不同的模型和資料集,幾乎想到什麼就加進去,因為我們一直希望能為整個機器學習社群做貢獻。在我們決定開源後,就得到了熱烈反響,大家都踴躍地貢獻程式碼,很多公司也開始使用Hugging Face庫,讓我們覺得創造了巨大的價值。

雖然當時還不清楚這個平臺的具體意義是什麼,但既然有這麼多人感興趣,那它一定有比較大的作用。幾個月後,我們就決定從研發聊天機器人轉向搭建機器學習平臺,然後在這條路上一直走到今天。這是我們創業途中最正確的決定,我們對此非常開心。

Pieter:你們當初為什麼選擇開源模式?

Clement: 不同公司想法不同,有些公司認為其主要競爭力在於擁有其他公司所沒有的技術,而我們認為公司的競爭力在於技術是否創新,開發速度是否夠快,所以選擇了開源。

在機器學習這樣快速發展的領域,技術更迭日新月異。通過開源共享,既可以幫助他人,又可以為社群吸引到優秀人才,從而提高自己解決問題的能力。

儘管有些人可能不願意為社群做貢獻,但我認為開源是一個明智的決定,可以提高技術敏感度,保證公司永遠處於技術前沿。

現在很多AI公司已經失去了技術優勢,即使是盈利良好的公司也招不到AI領域的核心人才,這個問題很致命,因為沒有前沿技術人才,做出來的東西都是落後、過時的。

Pieter:我記得Hugging Face平臺一開始開源的是Transformer庫。2017年,Google在Attention is All You Need這篇論文中提出了Transformer模型,可以說是繼Geoffrey Hinton團隊的AlexNet後AI界最重大的突破之一。Transformer模型公佈時,你們有什麼想法?

Clement: 我們那時一直很關注行業動態,比如Jeremy Howard 和Sebastian Ruder發表的成果(http://arxiv.org/abs/1801.06146 )。我們也在實踐一些好的想法,比如表徵學習(representation learning)。我們讀了那篇Transformer論文,後來又試用了BERT模型,覺得非常震撼,決定做點什麼。我們的庫建起來後,很快就吸引了很多使用者,覺得可以在這方面發揮重大影響力。

Pieter:現在人們參與和使用機器學習的方式有很多,有人需要機器學習API,有人需要下載模型用以訓練,還有人可能只需要訓練模型的資料。在這麼多不同的需求中,Hugging Face如何找準定位?

Clement: Hugging Face的使用者所選擇的抽象層不僅取決於他們的公司型別,還取決於他們在機器學習開發週期中所處的階段,使用者在機器學習開發週期的不同階段需要不同的抽象層。

當他們處在構建新產品或者構建工作流新功能的初始階段,他們可能希望從最簡單的抽象級別開始,例如從API甚至是demo開始。他們可以在Hugging Face平臺上立即試用和測試所有的模型,無需編寫任何程式碼。

這樣他們就可以在專案初期非常方便地測試新模型、新用例和新功能。隨著新功能逐漸開發成熟,使用者會希望自己能夠操控更多內容,也願意投入更多資源,在自己的裝置上優化大規模推理、降低延遲。這時,他們可以逐漸接觸HuggingFace堆疊中更多的可擴充套件內容,例如可以使用幾乎囊括了市面上最受歡迎的開源庫。

Pieter:對使用者來說,Hugging Face是一個提供模型的平臺,但使用者也是Hugging Face平臺模型共享的貢獻者,你們如何引導使用者進行共享?

Clement: Hugging Face社群的發展是一個有機的過程,我們很樂意根據社群使用者的意見改進Hugging Face平臺。平臺創立初期,完全是社群驅動,我們先搞清楚研發人員想要什麼,然後去滿足他們的需求。比如研發人員最初想要的是一個託管模型的平臺,我們就構建了這樣的平臺。

後來吸引了一些非研發的使用者,他們也想要試用模型,但是執行不起來,所以我們就開始支援在web介面演示模型,比如之前收購的Gradio支援用Python演示機器學習模型。

也有研發人員提出來,是否可以提供途徑讓他們能就模型的偏差和侷限進行說明,所以我們就推出了模型卡(model card),這樣研發人員可以與想使用模型的公司進行溝通,這類似於一個迭代的過程。模型卡的提出者Margaret Mitchell博士也在幾個月後離開谷歌,加入了我們的團隊。

Pieter:Hugging Face提供的是平臺,那你們怎麼獲得收入?

Clement: 如果你看看過去十年市場上初創公司的創業歷程,會發現開源模式的商業可行性得到了有力印證。像MongoDB、Elastic、Confluent等是收入增長最快的開源公司,獲得了商業上的成功。

開源的目的是為整個行業創造更大的價值,通過開源,模型可以得到非常廣泛的使用。有一萬多家公司在使用Hugging Face的超過十萬個模型,其中一半的模型是公開的,任何人都可以使用。

在如此龐大的使用者群體中,總有一部分公司願意付費,例如一些大型公司希望付費獲得更多的企業功能,還有一些公司因為重度依賴Hugging Face平臺而產生了某些特定的需求,所以希望通過付費得到解決。

因為我們秉持做好機器學習和實現機器學習“平民化”的信念,所以我們一定不能成為閉源公司單打獨鬥,我們希望採取一種非常開放的協作方式,讓任何人都可以和我們一起做出貢獻。

2

“開放科學“推動機器學習的發展

Pieter:一年前,我一直認為Hugging Face是NLP開源的大本營,但最近Hugging Face中新增了很多視覺模型。

Clement: 目前在Hugging Face上語音模型和視覺模型都很熱門,語音模型的下載量是每月約30萬次,視覺模型的下載量每月超20萬次。像Vision Transformer這樣的Transformer模型在語音和視覺領域已經開始超過一些SOTA模型。

我們剛剛完成了C輪融資, 會持續加大對計算機視覺、語音強化學習、生物化學等方面的投入。我更期待看到不同領域之間的結合:比如將語音與NLP、計算機視覺結合,新增強化學習來做對齊。通過將機器學習的不同領域進行融合,我們可以探索如何提高傳統任務的精確度,讓研發人員和公司更易上手;同時可以探索建立新的用例,解決遺留難題。

Pieter:雖然現在Hugging Face已經不侷限於NLP,但你們一直處於NLP發展的中心。過去五年NLP的發展速度太瘋狂,你如何看待NLP的迅猛發展,以及它未來的發展前景。

Clement: NLP的發展速度確實很瘋狂,這種迅速發展的起點大概是Google在2017年發表的論文《Attention is All You Need》,接著2018年出現了BERT模型。

Transformer模型基本上在每一項NLP任務和每一個基準測試中擊敗所有的SOTA模型。自此,越來越多的預訓練模型出現,從BERT開始,然後是GPT,RoBERTa以及T5。

這些新一代的模型讓NLP變得更準確、易用。所以在這些模型釋出幾周後,許多公司藉助Hugging Face平臺和開源庫,開始將這些模型應用到生產中,例如搜尋功能、資訊提取功能、文字分類功能等。

然後就產生了一個良性迴圈:這些模型越來越完善,準確性越來越高,公司使用這些模型並且看到了其中的價值,然後在機器學習和NLP中加大投入,從而獲得更好的模型。這種良性迴圈徹底改變了NLP領域的格局,把NLP這個三四年前還很小眾的機器學習領域,變為當今最大的機器學習門類。

現在Transformer模型已經改變了NLP領域的格局,也開始應用在語音、視覺、強化學習等範疇。這得益於“開放科學”的推動,“開放科學”指的是,全世界頂尖研究實驗室的科學家都公開自己的研究論文,將自己的模型面向全世界開源。

我之所以提起這一點,是因為現在參與“開放科學”和開源的實驗室越來越少了。我希望喚起大家對開源和開放的重視,沒有這種精神就沒有Hugging Face今天的發展。如果大家不再公開分享自己的成果,未來我們的發展速度就會變慢。

Pieter:“開放科學”的力量非常強大,特別是在機器學習領域。我想,現在越來越多人選擇閉源是因為訓練模型的成本太高了。他們花了數百萬美元來處理海量資料、訓練模型,因此很難狠下心將模型公開提供給外界免費使用。

Clement: 是的。聘請機器學習人才的成本也非常高,不過縱觀整個模型生態,雖然初始訓練的成本略顯高昂,但一旦訓練完成,就可以直接用在很多用例中,模型利用率非常高。以往,我們必須針對每項任務、每個領域、每種語言和每個用例重新訓練模型,現在如果想讓模型執行新領域的新任務,甚至處理一種全新語言,後續對它們進行成本較低的微調就可以了。這就是遷移學習的美妙之處。

當然,大多數的模型訓練都是由科技巨頭或大公司完成,它們資金充裕,所以幾百萬美元的訓練成本對它們來說也只是九牛一毛。

如果綜合考慮各種因素,我認為現在選擇將模型開源共享依然十分划算,因為開源帶來的收益要比投入的訓練成本多得多。開源可以讓更多人接觸到你的模型,提高知名度,可以幫你培育生態,提升模型效能,減少模型偏差,還可以幫你吸引到更優秀的研究員,因為傑出的研究員會更希望為整個行業做貢獻,而不僅僅是為某一家公司服務,這也解釋了為什麼科學界一旦有了新研究成果,總要發表論文公開研究成果。

機器學習也是一個科學推動的領域,因此同樣適用這個道理。可惜目前大家分為涇渭分明的兩大陣營,有人關注模型的短期經濟效益,有人著重長遠的可持續效益。

Pieter:Transformer模型似乎比以往的模型更通用,似乎朝著人類大腦的通用性邁近了一步。你認為Transformer模型的通用性在程式碼上有所體現嗎?如果要用Transformer模型處理不同的任務,有多少程式碼可以共享?

Clement: 沒錯,程式碼共享是遷移學習的一大特性,而遷移學習是Transformer模型的基礎,也是機器學習中最令我感到振奮的發展方向,它可以提高通用性。

一開始Transformer模型只是應用於NLP和文字處理,但現在還可以應用於其他模態。於是現在誕生了更多的多模態模型,例如CLIP和DALL-E是“文字+影象”的混合,我相信,未來不同模態之間的界限會漸漸消失。

Andrej Karpathy 在Twitter上發表過一系列帖子,很好地解釋了為什麼不同模態之間的差別會漸漸縮小。我相信大概在三年後,我們不會再按照不同模態把機器學習細分為計算機視覺和NLP等領域,而只會整體談論Transformer模型、遷移學習和機器學習。因為區分多種模態已經沒有必要,不同模態僅意味著模型的輸入資料型別有所不同而已。

這種通用性也會給機器學習注入新活力。首先,原本分屬不同領域的研究者可以合作,促進科研發展;其次,不同的公司可以使用相同的抽象,這樣它們開發新功能時就會容易很多。例如,不同公司要研發的功能和使用的工作流有所不同,但它們都可以使用Hugging Face平臺上的資源,而不必單獨重新研發新系統。

很多公司一開始只是研發一個非常簡單的功能,例如資訊提取。完成了這個功能後,基於模型的通用性,他們又可以用同一個模型繼續研發文字分類功能,再到文字自動補全功能,繼而拓展到影象分類,可以一直不斷髮展下去。最終,更多公司可以開發更多機器學習功能——這就是實現機器學習的“平民化”。

3

Hugging Face的工作方式

Pieter:作為一個超級籃球迷,我發現NBA球星杜蘭特也投資了你們。

Clement: 我們認識的過程挺有意思。杜蘭特是天使投資人之一的Brian Pokorny推薦認識的,Brian在SV Angel工作,在公司成立早期,他給了我們很多幫助,大家都叫他“教練”。Brian把我介紹給杜蘭特和他的投資公司Thirty Five Ventures的經理人Rich Kleiman,我們就這樣認識了。

我是一個法國人,之前對NBA瞭解也不多。第一見他時不知道他的身份,就像和普通人說話一樣和他正常交流,也沒有像粉絲見到偶像一樣激動。儘管他沒有說,但我認為他還是很贊同這種溝通方式。

他非常看好機器學習這類技術工作的前景,而且整個溝通過程比較輕鬆,不像和其他公司溝通時那麼嚴肅,但對待自己的事業,我們都是認真負責的。

還有一個比較有意思的事,他投資我們時還在勇士隊,於是作為合作伙伴,我開始支援勇士隊,當時我住在紐約,但是帶著金州勇士隊的帽子。兩年後,他加入了離我一個街區遠的布魯克林籃網隊,當時我住在巴克萊中心(籃網隊主場)旁邊的格林堡。

然後我就犯難了。如果轉向支援籃網隊,我會被人說是“叛徒”;如果繼續支援勇士隊,但杜蘭特就在離我一個街區遠的球隊打球,我很為難,所以那時我選擇停止關注NBA。

Pieter:C輪融資完成後,團隊的規模也在逐步擴大吧?

Clement: 是的,Hugging Face開放了很多崗位。團隊從去年的30人擴大到了現在130多人,計劃在年底擴大到200人左右。我們的招聘方式和傳統的招聘方式不太一樣,我們想找一些和公司文化相符合,能夠擴大公司價值的人,所以沒有設定特定的崗位名稱和崗位職責。

我認為,不管處在什麼崗位,從事什麼樣的工作內容,只要員工認可我們的事業並且願意為之奮鬥,他們都可以找到自己的價值,在公司發光發熱。我們一直堅守”去中心化、開放協作、價值導向“的價值觀。

Pieter:你們的辦公地點散落在不同城市,日常工作方式是怎樣的?

Clement: Hugging Face在成立之初就在不同城市有辦公地點,我在紐約,Julien Chaumond在巴黎,Thomas Wolf在荷蘭。現在我們在巴黎和紐約有幾個大的辦公室,在帕洛阿爾託(位於美國加利福尼亞州聖克拉拉縣西北部)、瑞士、倫敦、法國南部各有一間小辦公室。

我目前主要在佛羅里達州邁阿密的辦公室工作,有時也會飛到另一個地方辦公。我們團隊約60%的成員都在世界各地遠端辦公,有時會飛到辦公室和團隊成員一起線下辦公。

在2016年公司創立早期,我們就開始遠端辦公,並且一直延續至今,這對去中心化的公司文化非常合適。去中心化的核心是非同步、公開和透明,比如我們的溝通都是在Twitter和Slack上進行。

新冠疫情爆發後,員工去辦公室受到了限制,而此時遠端辦公的工作方式優勢盡顯。

(本文經授權後編譯釋出。原影片: http://www.youtube.com/watch?v=db_ltgsCR54&list=PLwrcw5ryumgCwOvOsU7U5XIr7OHfjc1Ur&index=37)

歡迎下載體驗 OneFlow v0.8.0 最新版本: http://github.com/Oneflow-Inc/oneflow/