写点什么

Hugging Face:成为机器学习界的“GitHub”

作者:OneFlow
  • 2022 年 9 月 07 日
    重庆
  • 本文字数:6758 字

    阅读完需:约 22 分钟

Hugging Face:成为机器学习界的“GitHub”

来源|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 发表的成果(https://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 上进行。

 

新冠疫情爆发后,员工去办公室受到了限制,而此时远程办公的工作方式优势尽显。

(本文经授权后编译发布。原视频:https://www.youtube.com/watch?v=db_ltgsCR54&list=PLwrcw5ryumgCwOvOsU7U5XIr7OHfjc1Ur&index=37


其他人都在看


欢迎下载体验 OneFlow v0.8.0 最新版本:https://github.com/Oneflow-Inc/oneflow/

发布于: 刚刚阅读数: 3
用户头像

OneFlow

关注

不至于成为世界上最快的深度学习框架。 2022.03.23 加入

★ OneFlow深度学习框架:github.com/Oneflow-Inc/oneflow ★ OF云平台:oneflow.cloud

评论

发布
暂无评论
Hugging Face:成为机器学习界的“GitHub”_神经网络_OneFlow_InfoQ写作社区