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

翻译|程浩源、胡燕君、许涵如、董文文

五年前,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、计算机视觉、语音、时间序列、生物学、强化学习等领域,以帮助科学家和相关从业者更好地构建模型,并将其用于产品或工作流程。

03ab3e7d499c029d300247b0f3c9d829.png

对于这些耀眼的成绩,在此前的《一个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模型在语