每天给你送来NLP技术干货!


来自:李rumor

前段时间分享过开放域问答的研究进展,虽然这些榜单的分数都在不断提升,但真要提到应用的话,实验室产品和工业级产品还是有很大差距的。我在公众号后台放了一个机器人,基本90%以上的同学都是两轮内识破,虽然每单句话拿出来都还行,但放到上下文里就显得很突兀。

那怎么样才能做一个真正的、应用级别的对话系统呢?现在大模型效果这么好,能否帮助我们告别繁琐的pipeline,实现端到端问答呢?

看了最近谷歌放出的LaMDA方案,我觉得稍微有点那么个意思了。

在最近两年的谷歌大会上,都有对话技术上的迭代,前年是当场跟Google Assistant打了个电话、推出了Meena,去年是推出了LaMDA模型,展示了一段关于冥王星的知识型对话,直到最近才放出具体论文。

LaMDA: Language Models for Dialog Applications
https://arxiv.org/abs/2201.08239

工业级的对话产品?

要打造实际能用的对话产品,我们的思维就要先转换一下:

不再是我要用什么方法解决这个问题,而是:我要解决什么问题?

这跟我们做模型的思路是一样的,先把objective定好,然后只要用差不多的网络结构去拟合就完了。在实际落地时更要定好这个目标,而现在的一些benchmark和对话系统,评估维度都太单一了,大部分问答里都是准确率/F1这种,直接忽略掉机器人的人性化部分。

要往更智能的对话系统走,首先要想清楚怎么样才算是「智能的对话系统」,我们还差在哪里

(翻回去看了18年小冰的论文,发现它对机器人EQ、IQ、Personality的定义也很多维度,只可惜当时的我太年轻眼里只有复杂的模型,希望看到这篇文章的同学能意识到这个问题)

再去看谷歌的Meena和LaMDA,前面很大一部分篇幅都在讲评估指标的定义,分为三个维度:

  • Sensibleness, Specificity, Interestingness:是否合理、符合上下文、有创造力

  • Safety:是否有风险、不公正

  • Groundedness、Informativeness:在知识型问答中,是否包含真实的信息、并引用相关链接

定义完指标后,第二步是评估一下baseline和天花板,看到差距在哪里,从Meena的评估结果来看,各个机器人比起人类还是相差甚远:

LaMDA的结果:

差这么多怎么办?没事,最难的问题定义已经搞完了,剩下的标数据就完了!

在优化过程中,谷歌并没有用什么高端的技术,只是把Sensibleness、Specificity、Interestingness、Safety分别当成分类任务去标0/1,把知识问答当作生成任务让标注同学去编辑答案,然后精调就完了。可以看到精调之后的LaMDA比纯在对话数据上预训练的PT有提升了不少。

对话+大模型+知识?

除了上面提到的指标定义外,LaMDA还可以给我们一些小启示,就是怎么更好地在对话任务中利用大模型。

首先是模型的选型,LaMDA用的是纯自回归预训练,这里我还是有些疑惑的,因为Meena用的是Seq2Seq结构(虽然不是相同的作者),作者也没有明说原因,但我认为模型结构的选择还是很重要的,T5和GPT还是有些diff的。

第二点,是个比较巧妙的地方。在业界目前的对话系统中,都是跟搜索一样召回+排序的逻辑,这就需要两个模型。而LaMDA做到了单模型同时生成+排序,而且由于语言模型的任务形式,这个排序分数是直接在生成结果后面加prompt完成的。也就是生成完结果的最后一个字后,直接继续预测分数,一气呵成。

从输入上看就是:<context> <sentinel> <response> <attribute-name> <rating>

第三点,也是LaMDA在Meena上的大改进:融入知识。作者们为了让大模型学会答知识类问题,设计了两个任务:

  1. 输入对话上下文,输出知识查询语句:这个查询语句是主要是TS, Query的形式,作者开发了一套检索系统用来囊括各类知识

  2. 输入知识查询语句,输出生成的最终结果:通过标注同学编辑的文本进行精调,让模型学会整合知识

经过上述两个任务的训练,模型就会判断什么时候该去查询数据知识,并且返回整合的结果了:

总结

总结来说,LaMDA的文章虽然在技术上没什么新突破,但却给我们提供了很有价值的落地方案参考:

  1. 首先指标一定要定义清楚,然后向着指标优化就完了

  2. 如何用单个大模型实现整个端到端的问答

  3. 纯粹依靠模型记忆知识是不行的,知识型问答还需要其他系统辅助

以上就是我的收获了,希望同学们不光只关注纯技术,也多往应用方便去思考,毕竟技术的价值最终还是体现在应用上。


下载一:中文版!学习TensorFlow、PyTorch、机器学习、深度学习和数据结构五件套!  后台回复【五件套】
下载二:南大模式识别PPT  后台回复【南大模式识别】

投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。

记得备注呦

整理不易,还望给个在看!

谷歌LaMDA|工业级端到端预训练对话模型相关推荐

  1. 《预训练周刊》第20期:EVA:包含28亿参数的中文预训练对话模型、基于知识融入提示词的文本分类...

    No.20 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 超大规模预训练模型是当前人工智能领域研究的热点,为了帮助研究与工程人员了解这一领域的进展和资讯,智源社区整理了第20期&l ...

  2. 干货!半监督预训练对话模型 SPACE

    点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 如何将人类先验知识低成本地融入到预训练模型中一直是个NLP的难题.在本工作中,达摩院对话智能团队提出了一种基于半监督预训练的新训练范式, ...

  3. SIGIR 2022 | 集理解、策略、生成一体的半监督预训练对话模型

    ©作者 | 社媒派SMP 来源 | 社媒派SMP 中国科学院深圳先进技术研究院自然语言处理团队(SIAT-NLP)联合阿里巴巴达摩院云小蜜智能对话团队提出了一篇针对于任务型对话预训练的工作SPACE, ...

  4. 经典论文解读 — 端到端的VL预训练网络SOHO

    来源:投稿 作者:摩卡 编辑:学姐 论文标题: Seeing Out of tHe bOx :End-to-End Pre-training for Visual-Language Represent ...

  5. 超越谷歌BERT!依图推出预训练语言理解模型ConvBERT,入选NeurIPS 2020

    机器之心发布 机器之心编辑部 在本文中,本土独角兽依图科技提出了一个小而美的方案--ConvBERT,通过全新的注意力模块,仅用 1/10 的训练时间和 1/6 的参数就获得了跟 BERT 模型一样的 ...

  6. 超越谷歌BERT!依图推出预训练语言理解模型ConvBERT

    来源|机器之心 在本文中,本土独角兽依图科技提出了一个小而美的方案--ConvBERT,通过全新的注意力模块,仅用 1/10 的训练时间和 1/6 的参数就获得了跟 BERT 模型一样的精度.相比费钱 ...

  7. 是时候“抛弃”谷歌 BERT 模型了!新型预训练语言模型问世

    作者 | XLNet Team 译者 | 孙薇 责编 | Jane 出品 | AI科技大本营(ID: rgznai100) 近日,XLNet 团队发布了新型预训练语言模型 XLNet,这个新模型在各项 ...

  8. 扔掉目标检测器,实现真正的端到端多模态预训练!阿里提出E2E-VLP(ACL2021)...

    关注公众号,发现CV技术之美 ▊ 写在前面 基于大规模图文对的视觉-语言预训练(VLP)已经让许多跨模态的下游任务取得了巨大的性能提升.现有的大多数预训练方法主要采用两步 训练过程,即首先使用预训练的 ...

  9. 基于深度学习的端到端人脸识别技术:全面调研

    44页,共计371篇参考文献.本文全面介绍了端到端深度学习人脸识别技术,包括人脸检测,人脸预处理和人脸表征等方向,详细介绍了最新的算法设计,评估指标,数据集,性能比较等. The Elements o ...

  10. Jarvis:一个值得关注的多模态端到端人机对话框架,针对所有行业适配

    说到应用级的人机对话框架,很多人可能首先想到的是RASA开源项目.不过,今天跟大家简要分享一个功能更为丰富.性能更为强劲的多模对话框架--Jarvis,非常值得对话系统从业者关注一下. Jarvis是 ...

最新文章

  1. java 数据反射_基本操作--反射填充数据
  2. JavaScript字符串的单引号和双引号问题
  3. 关于JQuery简单介绍
  4. Android开发之fragment之replace用法
  5. 快放弃你的管家软件吧! Part 2 强制删除
  6. 阿里的26款大神级的Java开源项目
  7. Android之给控件添加水纹波效果
  8. ASP.NET中禁止继承IIS中web.config根目录的配置
  9. jQuery中map方法
  10. SQL SERVER的字段类型说明
  11. 为什么eolinker发送老是等待_eolinker之初体验
  12. 医疗数据分析——过高费用的异常检测
  13. 案例研究:浮动静态路由
  14. 免费福利 Unity3D 项目资源分享链接(消消乐、斗地主、AR等)
  15. springboot集成Swagger3.0
  16. python冒号排序教程
  17. Unreal中的Cross Product(向量积)方向定义
  18. 敏涵控股集团刘敏:一个85后创业者的民族使命
  19. P528 List接口常用实现类的对比及源码分析
  20. 《约会专家》拖车【约会宝典】总结

热门文章

  1. hadoop 3.x 配置历史服务器
  2. UI 假死的可能性和处理方法总结
  3. CentOS 5.8/6.7若干优化
  4. 2010-04-02
  5. java day27【DQL:查询语句、约束 、多表之间的关系 、范式 、数据库的备份和还原】...
  6. form表单中的name属性
  7. 安装MySQL和出现的问题解决
  8. Feature selection using SelectFromModel
  9. 9.2NOIP模拟题
  10. CSS 部分知识点 总结