写点什么

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:002403
用户头像

发布了 778 篇内容, 共 532.0 次阅读, 收获喜欢 1578 次。

关注

评论

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

一篇看懂Android与Flutter之间的通信,最新Android开发面试解答

android 程序员 移动开发

一线大厂大型APP性能优化系列-自定义启动器(三),2020-2021阿里巴巴安卓面试真题解析

android 程序员 移动开发

【面试必会】全网最具深度的三次握手,腾讯Android开发面试记录

android 程序员 移动开发

一个Android开发6年程序员的年终面试总结,2021无畏艰难险阻,迎风潇洒前行

android 程序员 移动开发

【议程公布】2021年MongoDB中文社区南京技术沙龙

MongoDB中文社区

mongodb

一文带你搞懂Android的-Binder-机制,flutterandroid最低版本

android 程序员 移动开发

一种有效管控APP隐私权限的解决方案,Android400道面试题通关宝典助你进大厂

android 程序员 移动开发

一线互联网技术总监的忠告:我们精通那么多技术为何还是做不好一个项目?

android 程序员 移动开发

一键登录已成大势所趋,Android端操作指南来啦!,handler机制的原理面试

android 程序员 移动开发

【透镜系列】看穿 _ 触摸事件分发 _,android界面开发框架

android 程序员 移动开发

一个非常好用的页面引导工具guideView,html5移动开发框架

android 程序员 移动开发

一封给Android开发者 UI 自动化测试上手指南,前方高能

android 程序员 移动开发

一文了解AndroidStudio3-4的全部更新,androidapp开发从入门到精通

android 程序员 移动开发

一种清晰, 便于扩展android项目架构方案,kotlin编程

android 程序员 移动开发

一篇文章让你彻底了解三次握手和四次挥手,轻松拿下offer

android 程序员 移动开发

一篇通俗易懂的Android视图系统设计与实现,精通android网络开发pdf

android 程序员 移动开发

一位Android程序员入坑Flutter后整理出一份超详细的学习笔记

android 程序员 移动开发

一场赛跑引起的并发知识,flutterrow换行

android 程序员 移动开发

【译】彻底理解 Android 中的阴影,三年经验Android开发面经总结

android 程序员 移动开发

一个8年Android 开发想转后端,还来得及嘛?,android开发菜鸟教程

android 程序员 移动开发

一个中专生的逆袭之旅(如何做到收到阿里、腾讯、滴滴等面试邀请)

android 程序员 移动开发

一款简单的消息防抖框架,安卓开发权威指南

android 程序员 移动开发

一篇文章,全面总结2020最新整理-Android-大厂高频面试知识点

android 程序员 移动开发

【阿里P8大牛教你Android入门之路(java篇,移动端开发工程师转型

android 程序员 移动开发

Cube 技术解读 | Cube 卡片技术栈详解

阿里巴巴终端技术

支付宝 客户端开发 卡片服务 cube 动态化

【面试准备】JavaWeb部分,android webview

android 程序员 移动开发

一个view事件分发,面试官6连问直击灵魂,我被虐的体无完肤

android 程序员 移动开发

一行代码解决安卓重复点击,稳进大厂

android 程序员 移动开发

恒源云(GpuShare)_未闻Prompt名(论文学习笔记)

恒源云

深度学习

一位普通Android程序员呕心沥血八次大小厂的面试复盘总结,收藏一波扩展知识体系!

android 程序员 移动开发

一起来看看 Android 官推 kotlin-first 的图片加载库(1)

android 程序员 移动开发

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