当AI实现多任务学习,它究竟能做什么?

简介: 多任务学习,让AI更具实用价值

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!

编者按:本文来自微信公众号“脑极体”(ID:unity007),作者:海怪,36氪经授权发布。

提到AI领域的多任务学习,很多人可能一下子就想到通用人工智能那里了。通俗意义上的理解,就像《超能陆战队》里的大白这样一种护理机器人,既能进行医疗诊断,又能读懂人的情绪,还能像陪伴机器人一样完成各种复杂任务。

不过大白毕竟只是科幻电影当中的产物,现有的AI技术大多还处于单体智能的阶段,也就是一个机器智能只能完成一项简单任务。工业机器人中做喷漆的就只能用来喷漆,做搬运的只能用来搬运;识别人脸的智能摄像头只能进行人脸,一旦人类戴上口罩,那就要重新调整算法。

v2_33c1ed44f48a46e3952f67293791d89c_img_000_jpeg

当然,让单个智能体实现多种任务也是当前AI领域研究的热点。最近,在强化学习和多任务学习算法上成绩最好的是DeepMind公司的一款名为Agent57的智能体,该智能体在街机学习环境(ALE)数据集所有57个雅达利游戏中实现了超越人类的表现。

当然,多任务学习不止用在游戏策略上。相对于现阶段的AI,我们人类才是能够进行多任务学习的高手。我们既不需要学习成千上万的数据样本就可以认识某类事物,我们又不用针对每一类事物都从头学起,而是可以触类旁通地掌握相似的东西。

AI在单体智能上面确实可以轻松碾压人类,比如可以识别成千上万的人脸;但AI在多任务学习上面就要向人类的这种通用能力看齐了。

什么是多任务学习?

多任务学习(Multi-Task Learning,MTL),简单来说,就是一种让机器模仿人类学习行为的一种方法。人类的学习方式本身就是泛化的,也就是可以从学习一种任务的知识迁移到其他的相关的任务上,而且不同的任务的知识技能可以相互帮助提升。多任务学习涉及多个相关的任务同时并行学习,梯度同时反向传播,利用包含在相关任务训练信号中的特定领域的信息来改进泛化能力。

v2_fb8e8f8c3a0c4beeb4fface2fa729e17_img_000_jpeg

(单任务学习和多任务学习的模型对比示意)

做一个形象的类比。我们知道人类不如虎豹擅跑,不如猿猴擅爬,也不如鲸豚擅游,但是人类是唯独可以同时做到奔跑、攀援和游泳的。用在人工智能和人类智能上,我们通常认为AI更擅于在单一任务上表现优异并超越人类专家,如AlphaGo一样;而人类则可能在各种任务上都能胜任。

MTL正是要让人工智能来实现人类的这种能力。通过在多个任务的学习中,共享有用的信息来帮助每个任务的学习都得到提升的一个更为准确的学习模型。

这里需要注意的是多任务学习和迁移学习的区别。迁移学习的目标是将知识从一个任务迁移到另一个任务,其目的是使用一个或多个任务来帮助另一个目标任务提高,而 MTL 则是希望多个任务之间彼此能相互帮助提升。

这里我们就要搞清楚MTL的两个特征:

一、是任务具有相关性。任务的相关性是说几种任务的完成模式是存在一定的关联性的,比如,在人脸识别中,除了对人脸特征的识别,还可以进行性别、年龄的估算识别,或者,在不同的几类游戏中识别出共通的一些规则,这种相关性会被编码进 MTL 模型的设计当中。

二、是任务有不同的分类。MTL的任务分类主要包括监督学习任务、无监督学习任务、半监督学习任务、主动学习任务、强化学习任务、在线学习任务和多视角学习任务,因此不同的学习任务对应于不同的MTL设置。

共享表示和特征泛化,理解MTL 优势的两个关键

为什么在一个神经网络上同时训练多个任务的学习效果可能会更好?

我们知道,深度学习网络是具有多个隐层的神经网络,逐层将输入数据转化成非线性的、更抽象的特征表示。而各层的模型参数不是人为设定的,而是给定学习器的参数后在训练过程中学到的,这给了多任务学习施展拳脚的空间,具备足够的能力在训练过程中学习多个任务的共同特征。

v2_bb331b2d157749e9a332770b676ebbe6_img_000_jpeg

例如在上面的MTL的网络中,后向传播并行地作用于4个输出。由于4个输出共享底部的隐层,这些隐层中用于某个任务的特征表示也可以被其他任务利用,促使多个任务共同学习。多个任务并行训练并共享不同任务已学到的特征表示,这样多任务信息就有助于共享隐层学到更好的内部表示,这成为多任务学习的关键。

那么MTL是如何产生效果的?

MTL的方法中引入了归纳偏置(inductive bias)。归纳偏置有两个效果,一个是互相促进,可以把多任务模型之间的关系看作是互相先验知识,也称归纳迁移(inductive transfer),有了对模型的先验假设,可以更好的提升模型的效果;另外一个效果是约束作用,借助多任务间的噪声平衡以及表征偏置来实现更好的泛化性能。

首先,MTL的引入可以使得深度学习减少对大数据量的依赖。少量样本的任务可以从大样本量的任务中学习一些共享表示,以缓解任务数据的稀疏问题。

其次,多任务直接的相互促进,体现在:①多个模型特性互相弥补,比如在网页分析模型中,改善点击率预估模型也同时能促进转化模型学习更深层的特征;②注意力机制,MTL可以帮助训练模型专注在重要特征上面,不同的任务将为这种重要特征提供额外证据;③任务特征的“窃听”,也就是MTL可以允许不同任务之间相互“窃听”对方的特征,直接通过“提示”训练模型来预测最重要的特征。

再次,多任务的相互约束可以提高模型的泛化性。一方面多任务的噪声平衡。多任务模型的不同噪声模式可以让多个任务模型学到一般化的表征,避免单个任务的过度拟合,联合学习能够通过平均噪声模式获得更好的表征;另一方面,表征偏置。MTL的表征偏好会造成模型偏差。但这将有助于模型在将来泛化到新任务。在任务同源的前提下,可以通过学习足够大的假设空间,在未来某些新任务中得到更好的泛化表现。

行业场景落地,MTL如何解决现实问题

由于MTL具有减少大数据样本依赖和提高模型泛化表现的优势,MTL正被广泛应用到各类卷积神经网络的模型训练当中。

首先,多任务学习可以学到多个任务的共享表示,这个共享表示具有较强的抽象能力,能够适应多个不同但相关的目标,通常可以使主任务获得更好的泛化能力。

其次,由于使用共享表示,多个任务同时进行预测时,减少了数据来源的数量以及整体模型参数的规模,使预测更加高效。

我们以MTL在诸如目标识别、检测、分割等场景为主的计算机视觉的应用为例。

比如脸部特征点检测。因为脸部特征可能会受到遮挡和姿势变化等问题的影响。通过MTL能够提高检测健壮性,而不是把检测任务视为单一和独立的问题。

多任务学习希望把优化脸部特征点检测和一些不同但细微相关的任务结合起来,比如头部姿势估计和脸部属性推断。脸部特征点检测不是一个独立的问题,它的预测会被一些不同但细微相关的因素影响。比如一个正在笑的孩子会张开嘴,有效地发现和利用这个相关的脸部属性将帮助更准确地检测嘴角。

v2_034458bbfd6d4db998b7b3052e07829a_img_000

如上图人脸特征点检测(TCDCN)模型,除了检测特征点任务,还有识别眼镜、笑脸、性别和姿态这四个辅助任务,通过与其它网络的对比,可以看出辅助任务使主任务的检测更准确。

MTL在不同领域有不同应用,其模型各不相同,解决的应用问题也不尽相同,但在各自的领域都存在着一些特点,除上面介绍的计算机视觉领域,还有像生物信息学、健康信息学、语音、自然语言处理、网络垃圾邮件过滤、网页检索和普适计算在内的很多领域,都可以使用 MTL 来提升各自的应用的效果和性能。

比如,在生物信息学和健康信息学中,MTL被应用于识别治疗靶点反应的特征作用机制,通过多个群体的关联性分析来检测因果遗传标记,以及通过稀疏贝叶斯模型的自动相关性特征,来预测阿尔茨海默病的神经成像测量的认知结果。

在语音处理上的应用。2015年,有研究者在国际声学、语音与信号处理会议(ICASSP)上分享了一篇《基于多任务学习的深度神经网络语音合成》的论文,提出一种多任务叠层深层神经网络。它由多个神经网络组成,前一个神经网络将其最上层的输出作为下一个神经网络的输入,用于语音合成,每个神经网络有两个输出单元,通过共享两个任务之间的隐藏层,一个用于主任务,另一个用于辅助任务,从而更好地提升语音合成的准确度。

在网络Web应用程序中,MTL可以用于不同任务共享一个特征表示,学习web搜索中的排名提升;MTL可以通过可扩展分层多任务学习算法,用于找到广告中转换最大化的层次结构和结构稀疏性等问题。

总体上来说,在这些MTL的应用领域中,特征选择方法和深度特征转换方法得到研究者的普遍应用。因为前者可以降低数据维数并提供更好的可解释性,而后者通过学习强大的特征表示可以获得良好的性能。

v2_3f198afa0b48483ab3cfd19fdadbb8c0_img_000_jpeg

MTL正在越来越多的领域作为一种提高神经网络学习能力的手段被广泛应用。这其实正是AI在众多行业实际应用中的常态化场景。

我们可以最终溯源反思一下,人类之所以能够具有多任务学习的灵活应用的能力,恰恰是因为所处环境正是处在多特征、多噪声的状况之下,这样必然要求我们人类必须能够触类旁通地进行先验的学习能力的迁移。而如果人工智能仅仅停留在单体智能上面,为每一类知识或任务都建立一套单独的模型,最后可能仍然只是一套“人工智障”的机械系统,闹出“白马非马”这类的笑话来。

当AI未来真正既能在融会贯通的方面像人类一样熟练,又能克服人类认知带宽和一些认知偏见,那通向AGI的前路才可能迎来一丝曙光。当然这条路还相当遥远。

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/live

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-05-06
本文作者:脑极体
本文来自:“36Kr”,了解相关信息可以关注“36Kr

相关文章
|
5月前
|
人工智能 缓存 自然语言处理
全球首款开源通用型AI智能体上线!Suna:自动处理Excel/爬数据/写报告等复杂任务一句话搞定
Suna是由Kortix推出的开源通用型AI智能体项目,通过自然语言交互实现浏览器自动化、文件管理、数据分析等复杂任务处理,支持自托管部署,为研究分析和日常工作提供智能辅助。
1237 55
全球首款开源通用型AI智能体上线!Suna:自动处理Excel/爬数据/写报告等复杂任务一句话搞定
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
教育领域的AI进展:智能辅导与个性化学习的技术革新与挑战
随着人工智能技术的发展,AI Agent在教育领域的应用日益广泛,特别是在智能辅导与个性化学习方面展现出巨大潜力。通过自然语言处理、机器学习和数据分析等技术,AI可模拟个性化辅导员,根据学生的学习情况提供定制化资源与实时反馈。未来,AI Agent将更注重情感分析与跨学科培养,成为教师的有力助手,推动教育公平与效率提升。然而,数据隐私、个体差异及教育资源不平衡等问题仍需克服,以实现更智能化、全面化的教育生态。
304 10
教育领域的AI进展:智能辅导与个性化学习的技术革新与挑战
|
2月前
|
人工智能 自然语言处理 搜索推荐
学霸养成计划:AI如何打造你的专属“学习外挂”?
学霸养成计划:AI如何打造你的专属“学习外挂”?
98 0
|
2月前
|
机器学习/深度学习 人工智能 算法
面向工业4.0的AI Agent多任务协作与调度系统设计
随着人工智能(AI)技术的飞速发展,智能制造成为现代工业的核心驱动力。传统制造系统在面对多任务、高频次和动态变化的调度需求时,往往效率低下。而基于AI Agent的多任务协作与调度机制为解决这一问题提供了全新思路。本文聚焦于面向智能制造场景中,如何通过AI Agent实现多任务协作调度,并引入强化学习方法进行算法优化。
|
2月前
|
存储 人工智能 API
传统AI单点能力突出,为何面对复杂任务却远不及智能体?揭晓智能体的本质与核心优势
AI产品专家三桥君认为智能体作为新一代AI形态,正在重塑企业数字化运营模式。相比传统AI的单任务处理局限,智能体具备自主规划、工具调用、记忆存储和行动执行等核心能力,可完成从客户服务到订单处理的全流程业务自动化。作为企业IT技术演进的革命性突破,智能体通过智能编排微服务实现复杂流程调度,成为数字化转型的关键驱动力。未来,随着技术成熟,智能体将在更多领域释放降本增效价值,推动AI技术从单点突破走向系统化落地。
453 0
|
机器学习/深度学习 人工智能 编解码
AI虫子种类识别数据集(近3000张图片已划分、已标注)|适用于YOLO系列深度学习分类检测任务【数据集分享】
本数据集包含近3000张已划分、标注的虫子图像,适用于YOLO系列模型的目标检测与分类任务。涵盖7类常见虫子,标注采用YOLO格式,结构清晰,适合农业智能化、小样本学习及边缘部署研究。数据来源多样,标注精准,助力AI虫害识别落地应用。
|
4月前
|
人工智能 自然语言处理 安全
💻 Codex 来了:OpenAI 推出多任务软件工程 AI 代理,开发者工作方式将被重塑?
Codex 是 OpenAI 推出的一款云端智能开发代理,基于优化后的 Codex-1 模型,能够执行从代码编写、Bug 修复到 PR 提交的完整工程任务。通过 ChatGPT 的界面,用户可向 Codex 分配任务,它将在独立沙盒中运行并返回结果。Codex 支持多任务异步处理,遵循项目规范(AGENTS.md),并生成日志与测试报告以确保透明性。作为“AI 参与式开发”的里程碑,Codex 不仅提升效率,还可能重塑开发者角色,使他们从具体编码转向指导 AI 完成任务,推动软件工程进入意图驱动的新时代。
286 16
|
6月前
|
数据采集 人工智能 JavaScript
Browser Use:40.7K Star!一句话让AI完全接管浏览器!自动规划完成任务,多标签页同时管理
Browser Use 是一款专为大语言模型设计的智能浏览器自动化工具,支持多标签页管理、视觉识别、内容提取等功能,并能记录和重复执行特定动作,适用于多种应用场景。
1644 21
Browser Use:40.7K Star!一句话让AI完全接管浏览器!自动规划完成任务,多标签页同时管理
|
6月前
|
存储 人工智能 人机交互
Multi-Agent Orchestrator:亚马逊开源AI智能体自动协作黑科技!重构人机交互逻辑,1秒精准分配任务
Multi-Agent Orchestrator 是亚马逊开源的多智能体框架,能够动态分配代理、维护上下文、支持多种代理类型,适用于客户服务、智能交通、物流配送等复杂场景。
232 9
Multi-Agent Orchestrator:亚马逊开源AI智能体自动协作黑科技!重构人机交互逻辑,1秒精准分配任务

热门文章

最新文章