写点什么

Uber 开源 Plato 平台,用于开发和测试会话 AI

  • 2019-07-17
  • 本文字数:2428 字

    阅读完需:约 8 分钟

Uber开源Plato平台,用于开发和测试会话AI

在过去的几十年里,智能会话代理经历了重大变化,从以关键字为目标的交互式语音应答(IVR)系统到跨平台智能个人助理,都成为日常生活中不可或缺的一部分。伴随着这些变革和增长,需要一个直观、灵活、全面的研发平台,(它)可以作为一个开放的测试平台帮助评估新算法、快速创建原型并可靠地部署会话代理。在这种背景下,Uber 开发并开源了 Plato 研究对话系统。

Uber Plato 平台在 GitHub 开源

据外媒 Venture Beat 报道,Uber 开源了柏拉图研究对话系统(Plato Research Dialog System)。它是一个可用于在各种环境下创建、训练和部署会话 AI 代理的平台,让数据科学家和业余爱好者能够在会话 AI 中进行最先进的研究,并快速创建原型、演示系统及促进对话数据采集​​。该系统将与谷歌的 Dialogflow、微软的 Bot 框架和亚马逊的 Lex 等产品展开竞争。


Plato 的设计“干净”、“可理解”,并与现有的深度学习和模型调优优化框架(贝叶斯优化框架)集成,可减少编写代码的需要。


Plato(版本 0.1)的第一次迭代支持通过语音、文本或对话行为进行交互,每个会话代理可以与数据,人类用户或其他会话代理进行交互(在多代理设置中)。此外,Plato 可以为每个会话代理组件合并预训练的模型,且可以在交互的过程中或从数据中对每个组件进行训练。


Plato 通过模块化设计将数据处理分解为七个步骤:语音识别、语言理解、状态跟踪、API 调用、对话策略、语言生成、语音合成。Plato 支持一系列会话式 AI 架构,每个元素都可以使用主流的机器学习库进行训练,例如 Uber 的 Ludwig,Google 的 TensorFlow 和 Facebook 的 PyTorch。


为了证明它的可扩展性,Plato 用户可以定义自己的体系结构,或通过提供 Python 类名和模块的程序包路径及模型的初始化参数来插入自己的组件。只要模块按照(它)应该执行的顺序列出来,Plato 就会处理其余的部分,包括封装输入和输出、链接和执行模块(串行或并行),以及让对话变得更容易。


在数据记录方面,Plato 会在一个名为 Dialogue Episode Recorder 的结构中跟踪事件,该结构包含,先前对话状态,所采取的操作,当前对话状态等信息,甚至还有一个自定义字段可用于跟踪不属于已定义类别的任何内容。


Uber AI 研究团队表示 :“我们相信,Plato 能够在 Ludwig、TensorFlow、PyTorch、Keras 和其他开源项目的深度学习框架中更加无缝地训练会话代理,从而提升学术和行业应用中的对话 AI 技术。“

Plato 研究对话系统如何运作?

从概念上来讲,会话代理需要经过各种步骤来处理它接收到的“输入”内容,并输出合适的答案(如“有风但不太冷”)。与标准体系结构的主要组件(参见图 1)相对应的主要步骤是:


  • 语音识别(将语音转录为文本)

  • 语言理解(从该文本中提取意义)

  • 状态跟踪(到目前为止已经说过和完成的内容的汇总信息)

  • API 调用(搜索数据库,查询 API 等)

  • 对话政策(生成代理人回应的抽象含义)

  • 语言生成(将抽象意义转换为文本)

  • 语音合成(将文本转换为语音)


Plato 被设计的尽可能地模块化和灵活性; 它支持传统和自定义的会话 AI 体系架构,而且很重要地是,它支持多参与方交互,其中有不同角色的多个代理可以相互交互、同时训练并解决分布式问题。


下面的图 1 和图 2 描述了与人类用户和模拟用户交互时的示例 Plato 对话代理体系结构。与模拟用户交互是研究团体快速启动学习的一种常见做法(即,在与人类交互之前先学习一些基本行为)。因为 Plato 是一个通用框架,所以可以使用任何机器学习库(例如 Ludwig、TensorFlow、PyTorch 等)在线或离线训练每个独立的组件,Uber 的开源深度学习工具箱 Ludwig 是一个不错的选择,因为它不需要编写代码且完全兼容 Plato。



图 1:Plato 的模块化架构意味着任何组件都可以在线或离线进行训练,可以通过自定义或预先训练的模型进行替换。(此图中的灰色组件不是 Plato 核心组件。)



图 2:使用模拟用户而不是人类用户,如图 1 所示,我们可以预先训练 Plato 各种组件的统计模型。接下来,这些可以用于创建原型会话代理,该代理可以与人类用户交互来收集更多自然数据,随后,这些数据可用来训练更好的统计模型。(此图中的灰色组件不是 Plato 核心组件。)


除了单代理交互之外,Plato 还支持多代理对话,多个 Plato 代理可以相互交互并相互学习。具体来说,Plato 将生成会话代理,确保输入和输出(每个代理听到和说出的内容)被恰当地传递给每个代理,并跟踪对话。


这种设置可以促进多代理学习的研究,代理需要学习如何生成语言以执行任务,以及研究多方交互的子领域(对话状态跟踪、轮流等)。对话原则定义了每个代理可以理解的内容(实体或含义的存在论;如价格、位置、偏好、烹饪类型等)及它可以做什么(询问更多信息、提供一些信息、调用 API 等)。代理可以通过语音,文本或结构化信息(对话行为)进行沟通,每个代理都有自己的配置。下面的图 3 描述了这种架构,概述了两个代理和各种组件之间的沟通:



图 3:Plato 的架构允许对多个代理进行同时训练,每个代理具有潜在的不同角色和目标,并且可以促进多方交互和多代理学习等领域的研究。(此图中的灰色组件不是核心的 Plato 组件。)


最后,Plato 通过下面图 4 所示的通用代理体系结构来支持自定义体系结构(如,将 NLU 分成多个独立组件)和联合训练的组件(如文本到对话状态、文本到文本或任何其他组合。此模式脱离了标准会话代理体系结构,支持任何类型的体系结构(如使用联合组件、文本到文本或语音到语音组件、或任何其他设置)并允许加载现有或预先训练有素的模型进入 Plato。



图 4:Plato 的通用代理体系结构支持广泛的自定义,包括联合组件,语音到语音组件和文本到文本组件,所有这些组件都可以串行或并行执行。


Plato 还通过组合结构(BOCS)的贝叶斯优化为会话 AI 架构或单个模块参数的贝叶斯优化提供支持。


原文链接:


https://venturebeat.com/2019/07/16/researchers-create-tiny-beyond-5g-chip-for-100ghz-data-transmission/


https://github.com/uber-research/plato-research-dialogue-system


2019-07-17 16:126959
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 544.0 次阅读, 收获喜欢 1978 次。

关注

评论 1 条评论

发布
用户头像
这个神器支持中文么?
2019-07-17 16:30
回复
没有更多了
发现更多内容

身为程序员,这几款工具老少皆宜

高端章鱼哥

持续集成 单元测试 开发工具

「大模型摇摇乐」狂欢落幕!盘点那些让你意想不到的应用集锦

飞桨PaddlePaddle

开发者 大模型 AI应用 文心一言

低代码:万事俱备,就差一个程序员

互联网工科生

软件开发 低代码 JNPF

一行代码修复100vh bug

快乐非自愿限量之名

CSS 前端 代码

Perfectly Clear Workbench for mac v4.6.0.2625永久激活版

iMac小白

Aiseesoft Data Recovery for Mac(专业数据恢复软件)v1.8.6激活版

iMac小白

OmniReader Pro for mac(全能阅读器)v2.6.5激活版

iMac小白

云技术分享 | 使用快照和 AMI 镜像进行 Amazon EC2 的备份和恢复

亚马逊云科技 (Amazon Web Services)

Amazon EC2 Amazon S3 amazon-ebs backup

数据库系列:业内主流MySQL数据中间件梳理

不在线第一只蜗牛

MySQL 数据库 数据

身份管理如何提升中小企业生产力?

Authing

企业管理 中小企业 Authing 身份管理

诚邀报名|探索汽车智能化的开源未来

开放原子开源基金会

开源

速抢早鸟票|阿里云PolarDB开发者大会,高能来袭

阿里云瑶池数据库

阿里云 开发者大会 阿里云瑶池数据库 阿里云PolarDB

分享一些很优秀的URL设计

伤感汤姆布利柏

科普:多领域分布式协同仿真

DevOps和数字孪生

协同仿真

大模型微调方法总结:LoRA、Adapter、Prefix-tuning、P-tuning、Prompt-tuning

百度开发者中心

人工智能 深度学习 大模型

Axure RP 9 for Mac(交互式产品原型设计工具) v9.0.0.3682永久激活版

mac

Axure RP 9 苹果mac Windows软件 产品原型设计软件

BRC-20铭文代币合约质押挖矿系统开发丨详情开发

l8l259l3365

通过解析封装关键词搜索速卖通商品列表数据接口,速卖通API接口

tbapi

速卖通API接口 速卖通商品数据接口 关键词搜索速卖通接口 速卖通商品列表数据接口 速卖通商品列表接口

【第七在线】季节性商品计划:如何应对时尚行业的快速变化

第七在线

2023开放原子开发者大会全日程

开放原子开源基金会

开源

逻辑多租场景下,故障爆炸半径的控制实践

华为云开发者联盟

开发 华为云 华为云开发者联盟

大模型高效微调技术

百度开发者中心

人工智能 深度学习 大模型

从聚水潭开始,自动化您的电商工作流程

RestCloud

零代码 CRM APPlink 聚水潭

铸就安全可信的数字化「信息枢纽」—华为云ROMA Connect荣膺软件产品可信【卓越级】认证

华为云PaaS服务小智

云计算 华为云

每日一题:LeetCode-162. 寻找峰值

Geek_4z9ami

Go 算法 LeetCode 分治 搜索

Fine-tuning: 深度解析P-tuning v2在大模型上的应用

百度开发者中心

深度学习 nlp 大模型

胡润研究院首次发布“全球猎豹企业榜”,涛思数据榜上有名

TDengine

涛思数据 tdengine 时序数据库

大数据,领导者阵营!

腾讯云大数据

大数据

GM EPUB Reader Pro for mac(电子书阅读器)v2.6.0免激活版

iMac小白

字节跳动 Spark Shuffle 大规模云原生化演进实践

字节跳动云原生计算

大数据 spark 云原生

Uber开源Plato平台,用于开发和测试会话AI_AI&大模型_刘燕_InfoQ精选文章