社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

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

AI科技大本营 • 1 年前 • 147 次点击  

来源|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社区编译。

从研发聊天机器人到开源平台

 
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平台而产生了某些特定的需求,所以希望通过付费得到解决。
 
因为我们秉持做好机器学习和实现机器学习“平民化”的信念,所以我们一定不能成为闭源公司单打独斗,我们希望采取一种非常开放的协作方式,让任何人都可以和我们一起做出贡献。

“开放科学“推动机器学习的发展

 
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平台上的资源,而不必单独重新研发新系统。
 
很多公司一开始只是研发一个非常简单的功能,例如信息提取。完成了这个功能后,基于模型的通用性,他们又可以用同一个模型继续研发文本分类功能,再到文本自动补全功能,继而拓展到图像分类,可以一直不断发展下去。最终,更多公司可以开发更多机器学习功能——这就是实现机器学习的“平民化”。
 

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)
— 推荐阅读 —



    
线下活动|中国智能汽车创新技术峰会
用Python轻松制作一个股票K线图网站
一个 Python Bug 干倒了估值 1.6 亿美元的公司
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/147027
 
147 次点击