您的位置:  首页 > 技术杂谈 > 正文

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

2022-09-09 11:00 https://my.oschina.net/oneflow/blog/5574166 OneFlow深度学习框架 次阅读 条评论

来源|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/

 


本文分享自微信公众号 - OneFlow(OneFlowTechnology)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
  • 0
    感动
  • 0
    路过
  • 0
    高兴
  • 0
    难过
  • 0
    搞笑
  • 0
    无聊
  • 0
    愤怒
  • 0
    同情
热度排行
友情链接