如何 0 成本启动全员 AI 技能提升?戳> 了解详情
写点什么

Antonino Rau 谈 Condé Nast 的自然语言处理和内容分析引擎

  • 2019-04-09
  • 本文字数:1962 字

    阅读完需:约 6 分钟

Antonino Rau谈Condé Nast的自然语言处理和内容分析引擎

从 2015 年开始,Conde Nast 创建了一个自然语言处理和内容分析引擎,以改进与其 22 个品牌所创建的内容相关的元数据。新系统使点击率提高了 30%。Conde Nast US 的软件工程师和技术经理 Antonino Rau 最近在一篇分为两部分的博文“Conde Nast的自然语言处理和内容分析”中描述了这个项目背后的动机、系统架构以及他们的 NLP 即服务系统 HAL 的发展。据介绍,他们的目标是用一个系统来取代简单的分类和标记,“自动‘逆向工程’他们的世界级编辑们在其中输入的知识。”


HAL 以电影《2001 太空漫游》中的 HAL-9000 命名,它集成了一个名为 Copilot 的专有内容管理系统(CMS)。HAL 使用 Java 构建,使用预训练或定制训练的模型运行一组分析程序,包括 JVM 内和 JVM 外模型。


HAL 的处理引擎基于一个可并行的有向无环图构建,用来分析和注解内容。它分析了内容的不同方面,提取出各种特征。例如,通过分析内容,它可以提取已知的人,然后用有关个人的链接资源注解响应。其他功能包括主题和分类或者地点和新闻故事。所有这些都带有附加的相关信息。


分析结果的整理受到了Uber Michelangelo的启发,其目标是改进和训练模型,并重复向 HAL 请求静态内容。


InfoQ 联系了Rau,了解他所做的有关 HAL 的工作。


InfoQ:您在博文中写道,“几年前,2015 年,我们决定进入下一个阶段”。你们为什么要改变它的工作方式?编辑之前是否手动为他们的文章添加标签?


Antonino Rau: 主要的动力是对编辑在不同情况下生成的内容进行自动洞察(主题、实体等等)。然后,这种内容智能将结合用户行为,构建片段、推荐和其他功能。是的,以前的编辑会手动标记。后续,他们仍然可以删除自动标签或从受控词汇表中手动添加标签。


InfoQ:您决定在 HAL 中构建自己的自然语言处理系统。您考虑过第三方的选项吗?如果考虑过,是什么让您选择在公司内部进行开发?


Rau: 是的,我们那会考察了第三方,但我们决定搭配使用定制和开源模型,因为 HAL 最初只需要面向英语,而对于该语言,有很多开源的、预训练的模型,我们只针对一种语言建立了自定义模型,对于 OSS 模型不支持的特性也很容易。最近,2018 年 11 月,Conde 决定将Conde Nast US和Conde Nast International纳入一个全球性平台,因此需要支持其他 8 种语言。我们正在研究将第三方模型集成到 HAL 中,加快 HAL 在所有 Conde 市场上、所有那些语言区域的推广。HAL 的好处是它还充当了一个防护层,因此,即使我们集成了供应商,由于它的架构,我们也可以很容易地在混合了 OSS、定制和供应商模型/分析程序的环境中进行操作,并且仍然具有相同的抽象和标准化输出。


InfoQ:您为什么选择了 Java?


Rau:运行 NLP 模型非常消耗 CPU 和内存。此外,从我们的基准、最好的功能和性能方面来看,上述 OSS 模型 Java 均可提供。最后,从 CPU 和内存密集型应用程序的系统性能和鲁棒性方面来看,Java 对于我们似乎是最好的选择。


InfoQ:HAL 的设计,尤其是有向无环图被抽象出来泛化使用令人印象深刻。在您决定采用这种方法之前,是否进行了多次迭代?您还考虑过其他的方法吗?


Rau:最初,这直接是个“管道和过滤器(pipe and filter)”方法,它使用了注解模型,正如博文中提到的文献所说的那样。但后来,我们使用的 JVM 外分析器越来越多,我们也越来越注意到,我们可以建立一个分析器图,通过互相传递注解来加速和并行化处理。


InfoQ:你们开发的东西有开源供别人使用的吗?


Rau:目前还没有,也许将来会有。


InfoQ:您提到你们内部使用了名为 Copilot 的 CMS。有自己的 CMS 对于实现 HAL 有帮助吗?或者,您觉得可以使用任何 CMS 来做吗?


Rau: Copilot 是基于一组名为 Formation Platform 的 API。我们意识到,HAL 的恰当位置是在产生内容的管道中,这样,自动丰富就成为 API 所提供的内容类型和内容模型的组成部分。但反过来也一样,HAL 的其中一个组件 Copilot-linker 是Entity-linker的实例,它会挖掘 Copilot 每天的内容类型,像餐馆、人物、场所等,“学习”编辑们输入系统的知识,自动从文章中提取这些实体,提取它们之间的联系。所以,我认为,在 Conde Nast 的上下文中,更一般来说是出版商的上下文中,内容分析和 NLP 需要与 CMS 高度协同。如果 CMS 是专有的,则更容易使其成为内部流的一部分,从而可以简化下游对这种自动丰富功能的使用,但我想也可以增加 OSS CMS,如果有恰当的扩展点的话。


InfoQ:通过 HAL 的流量是多少?


Rau:每月大约 3000 万请求。我们处理所有文本有变化的修订,有时候也处理不是来自 Condé的内容。


InfoQ:除了点击率之外,您还测量了哪些指标?HAL 对于这些指标是否有任何改进?


Rau:HAL 主题特性拥有数据科学团队的预测模型中的大多数预测特性,都已用于目标受众和消费者订阅偏好。


查看英文原文Q&A on Condé Nast’s Natural Language Processor and Content Analysis


2019-04-09 08:002493
用户头像

发布了 871 篇内容, 共 611.7 次阅读, 收获喜欢 1616 次。

关注

评论

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

【FastDFS】SpringBoot整合FastDFS实战,我只看这一篇!!

冰河

springboot fastdfs

Java源码系列2——HashMap

超超不会飞

Java

Java源码系列4——HashMap扩容时究竟对链表和红黑树做了什么?

超超不会飞

Java

智能体的奇幻漂流之“成都折叠”篇

脑极体

Greenplum 性能优化之路 --(二)存储格式

腾讯云大数据

大数据

Greenplum 性能优化之路 --(三)ANALYZE

腾讯云大数据

大数据 数据仓库

传统网络缺失货币层,比特币是否能担此大任?

blockchain

比特币 区块链 数字货币 比特币数字货币 区块俩金融

一个好系统自我完善自我进化的方法

boshi

产品思维 系统工程 即时反馈 生态体系

FastDFS 分布式文件系统详解

哈喽沃德先生

文件系统 分布式文件存储 fastdfs 分布式文件

在 InfoQ 兼职做运营

邓瑞恒Ryan

创业 用户增长 创业心态 运营 产品运营

我一定是熬夜熬傻了,小程序后台获取用户信息居然发生了这件事

小Q

Java 小程序 学习 编程 架构

鲲鹏播种于时代,花开五色中原

脑极体

【架构笔记之设计模式】架构师训练营第1期第3周

业哥

极客大学架构师训练营

Java源码系列3——LinkedHashMap

超超不会飞

Java

烦人的Null,你可以走开点了

四猿外

Java 注解 空指针 Optional null

2020互联网公司中秋礼盒大比拼!(文末送福利)

Java架构师迁哥

优秀组织的5大表现

凌晞

团队管理 团队组织 组织

一个Hibernate的事务问题

YoungZY

hibernate

高中生写LOL外挂1年狂赚五百万,落网前刚买下120万保时捷

Java架构师迁哥

CSS语法与规则 — 重学CSS

三钻

CSS 大前端

基于 Flink + Hive 构建流批一体准实时数仓

Apache Flink

flink

Nexmark: 如何设计一个流计算基准测试?

Apache Flink

flink

架构师训练营第三周作业

邓昀垚

极客大学架构师训练营

架构师训练营第1期第3周作业

业哥

极客大学架构师训练营

经常使用的数据结构

hasWhere

Smartisan

Changing Lin

摄影

Dromara团队发布Hmily全新架构的2.1.1版本

猫大人

分布式事务 分布式柔性事务‘’

架构师训练营第 1 期第 3 周学习总结

好吃不贵

极客大学架构师训练营

太牛了,这份神仙级面试笔记把所有 Java 知识面试题都详解出来了

Java架构之路

Java 程序员 面试 编程语言

码住!Flink Contributor 速成指南

Apache Flink

flink 开源社区

架构师训练营 1 期 - 第三周 - 设计模式

三板斧

极客大学架构师训练营

Antonino Rau谈Condé Nast的自然语言处理和内容分析引擎_AI&大模型_Reda Hmeid_InfoQ精选文章