【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

LinkedIn 的智能消息回复

  • 2017-11-09
  • 本文字数:1002 字

    阅读完需:约 3 分钟

LinkedIn 发布了一款新的自然语言处理(NLP)推荐引擎,该引擎用于向成员提供智能回复的推荐。工程团队在近期的一篇博客文章中详细地记录了该模型以及基础架构的开发过程

传统的生成消息回复的方法是一个 sequence-to-sequence 模型(在该方法中,回复是逐词计算出来的),但是 LinkedIn 的方法是从有限的库中选择出一个回复。他们的工程师解释说,这样做可以将问题视为多项分类而不是文本生成,从而带来以下优势:

  • 易于训练
  • 更快的进行训练,这是他们能够立即提出回复建议的关键所在
  • 降低不恰当回复的风险

为了创建一组候选回复,LinkedIn 首先将一组对话匿名化,用占位符替代合适的部分。例如,在私人信息中姓名这样的词汇会被替换成“RECIPIENT_FIRST_NAME”。他们还将消息进行标准化处理,该过程会把具有相同含义的消息进行处理成为等同意义的消息(例如“Yup”、“ok!!!”、“Yes, ok!”这样的词汇),并且将这些词汇的含义归为一组。

为了建立多项分类模型,LinkedIn 使用了他们自己的机器学习框架 Dagli。它应用了 Java API,使用有向无循环图来表示机器学习流程,并且该框架将来很可能会开源。

智能回复的一个要求是,仅用一种方式来表示相同意义的建议。例如,“yes”,“yep” 和“yeah”表示的意思全都是“yes”,因此提出这三个相同的回复建议是毫无意义的。工程师们通过只从相同语义组返回一条消息就解决了这个问题。例如,所有的类似“yes”的回复都属于肯定类型的回复组,因此其中只有一条回复会被推荐。

使用语义组来分类存储消息的另一个优点是易于评估。LinkedIn 只需要在预测和实际的回复组之间做一个对比,就可以了解它们的准确程度,其中关注的是含义,而不是具体的文本。

LinkedIn 还指出,由于用户在系统内发送消息的数量巨大,因此在迅速生成智能回复方面存在巨大的规模性挑战。LinkedIn 团队解决这个问题的方法是提前计算回复 (当它们被发送时),并将它们存储到 Expresso 中,Expresso 是 LinkedIn 内部的 NoSQL 数据库。这就避免了昂贵的即时计算,并且这使得在一瞬间就能够提供或多或少的智能回复。

LinkedIn 还建立了一套机制,以确保其成员的信息保持私密。首先,通过对消息进行匿名化,在训练数据中使用信息之前,任何用户的个人信息都应该被匿名化。其次,会有一个选择退出的选项,选择了该选项就意味着用户消息数据不会被系统所使用。

点击这里查看完整的架构的在线文档

查看英文原文: Smart Replies For Member Messages at LinkedIn

公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2017-11-09 18:001339

评论

发布
暂无评论
发现更多内容

给跨专业程序员的一些建议

Ryan Zheng

有内味了!阿里内部Tomcat高阶调优笔记成功刷新了我的认知

Java架构之路

Java 程序员 架构 面试 编程语言

中国工业的基础设施“重化工业”是怎么发展起来的

JiangX

供应链 工业 28天写作 制造

【函数计算实践】阿里云函数计算初探

程序员架构进阶

阿里云 架构 函数计算 28天写作 弹性扩容

现在就开始倒数2030了? 华为的这条线索不能错过

脑极体

第一周作业

Geek_72d5ab

GMT UTC CST ISO 夏令时 时间戳,都是些什么鬼?

YourBatman

ISO 时间戳 GMT UTC

案例集锦|科技赋能,华为云GaussDB助千行百业数字化转型

华为云开发者联盟

数据库 华为云 企业应用

新年Flag 中奖名单公布|如何科学的从55人中随机选出11个中奖名额

InfoQ写作社区官方

话题讨论 热门活动

Kubernetes安装篇(上):基于Minikube方式部署本地环境

xcbeyond

Kubernetes 安装 minikube 28天写作 Kubernetes从入门到精通

大厂必问Redis:肝完这份阿里出品“Redis神技”还说你不会Redis?

Java架构之路

Java 程序员 架构 面试 编程语言

没搞清楚网络I/O模型?那怎么入门Netty

Java 后端 io

中国区块链行业人才缺口将达75万以上

CECBC

区块链人才

运维数智化时代——京东数科AIOps落地实践(一)

京东科技开发者

运维自动化 AIOPS

SpringCloud 从入门到精通 12---Nacos配置中心

Felix

区块链农产品溯源--实现农产品全程溯源

CECBC

食品溯源

基础篇-http协议《http 简介、url详解、request》

清菡软件测试

测试

案例研究之聊聊 QLExpress 源码 (九)

小诚信驿站

聊聊架构 28天写作 QLExpress源码 聊聊源码

限量!腾讯高工用4部分讲清楚了Spring全家桶+微服务

996小迁

Java 架构 面试 springboot SpringCloud

面试官:如果让你设计一个高并发的消息中间件,你会怎么做?

冰河

并发编程 高并发 消息队列 消息中间件

给现实深情拥抱,向产业洪流奔跑:华为云AI的2020

脑极体

架构师训练营第八周作业

zamkai

基于gRPC的注册发现与负载均衡的原理和实战

万俊峰Kevin

微服务 go-zero Go 语言

一文带你学会AQS和并发工具类的关系2

伯阳

Java AQS 多线程 lock

安装Android系统 missing operating system

mengxn

android

「回血赠书」Python入门书单,新年全力扬帆

博文视点Broadview

CopyOnWriteArrayList 读写分离,弱一致性

叫练

弱一致性 读写分离; Vector; fail-fast; fail-safe

数字人民币支付新选择 没有网络时也能使用

CECBC

数字红包

限量!阿里甩出878页性能优化笔记阿里甩出878页性能优化笔记!

Java架构之路

Java 程序员 架构 面试 编程语言

[如果公司要招一个高级版你]给资深/晋升后的岗位写一个理想岗位模型(Job Model)

侠女马姑娘

产品经理训练营

量化交易自动炒币机器人系统开发搭建

薇電13242772558

策略模式 区块链+

LinkedIn的智能消息回复_AI&大模型_Andrew Morgan_InfoQ精选文章