敏捷AI | NLP技术在宜信业务中的实践【背景篇】

2023-11-22 11:10

本文主要是介绍敏捷AI | NLP技术在宜信业务中的实践【背景篇】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章围绕基于机器学习的NLP技术在宜信内部各业务领域的应用实践展开,分享这一过程中的相关经验,包括智能机器人在业务支持、客户服务中的探索,基于文本语义分析的用户画像构建,以及NLP算法服务平台化实施思路等。本文为背景篇,敬请大家阅读~

作者:井玉欣。毕业于北京大学信息科学技术学院,获博士学位,研究方向包括计算机软件与理论、逻辑推理等,目前就职于宜信技术研发中心,从事人工智能、机器学习、自然语言处理以及知识工程等方面的研究。

业务背景

宜信公司于2006年成立于北京,经过12年的发展,目前围绕着普惠和财富两大业务板块,陆续推出了许多相关产品,如宜人贷、宜人财富、致诚信用、博城保险等等。

实际上在这些产品的背后,AI技术已广泛地应用其相关的各条业务线中。

从宜信所处的金融领域的各个子领域来划分,可以分为智能交易、智能信贷、金融信息、金融安全、个性化服务这五个方面,每个方面都有相关人工技术的辅助。

例如智能交易领域,有智能投研、量化分析、自动/辅助交易等技术;智能信贷领域,有能够进行身份识别、用户画像以及智能风控等相关的人工智能产品;金融信息领域,我们会进行知识工程、图谱分析、智能问答等;金融安全领域,要进行反欺诈分析;而个性化服务领域就更广泛了,我们有行为分析、智能营销、推荐与匹配以及智能理财顾问等等一系列比较成熟的AI产品。

让我们继续向下探究,在这些AI产品的背后,会发现都有一些NLP(Natural Language Processing, 自然语言处理)技术的影子。比如在智能交易领域,我们需要理解相当多的投研报告,这里就会用到报告理解方面的NLP技术;智能信贷领域,可能需要进行风控报告的生成和分析,也要用到相关的NLP技术;知识工程领域,要对金融信息进行知识提取,或者为了构建知识图谱进行关系提取、事件提取等;智能营销和智能理财顾问中,则需要智能聊天以及话术提取的处理技术。

可以说NLP技术贯穿了各个领域的AI产品,其直接原因就是因为我们的业务中存在着大量的自然语言数据,如电销通话数据、客户分析小结、客服沟通内容、内部交流信息以及其他各种文本报告等等,这些数据都是使用自然语言来进行存储的;而且用自然语言文本存储这些数据,还有着其他形式数据无法比拟的一些优点,如图1所示,自然语言数据来源丰富,信息表述多种多样,保留信息完整,并且符合用户习惯等等。

1.jpg

图1 自然语言的特点

但是,我们需要注意到相较于这些优点,自然语言数据也有着数据非结构化不易处理、存在可能的歧义性、语法不规则性、未知语言现象等缺点。另外,结合宜信所处的业务领域,这些自然语言又有一些独特的特点:更强的词汇专业性、更广泛的数据来源、多样的数据形式(录音数据,文字对话数据以及短/长文本的报告、小结等)、较大的数据量以及分布的不均衡性。

这些缺点使得自然语言数据并不容易处理,NLP技术实施起来难度也不小,但是为什么自然语言数据仍然越来越得到关注,NLP技术的实施也越来越广泛了呢?

实际上,近几年来,各企业、组织开始在业务中也越来越关注大量非结构化数据中蕴含的高价值信息。我们知道,结构化数据比较好处理,但是经过多年的发展,能够从中挖掘出的信息越来越有限;而我们平时接触到的非结构化数据,其数量级要比结构化数据多出好几倍,里面蕴含着非常多的高价值信息。

典型的非结构化数据包括图片、视频等,另外很重要的一部分就是自然语言文本数据。我们可以从这些自然语言文本中挖掘出大量有价值的内容,例如在前面所述的宜信自然语言数据中我们就可以得到客户信息、产品数据、舆论倾向、策略反馈等。

此外,自然语言处理给我们带来了新的会话交互方式,更确切的说,基于自然语言理解和自然语言生成所形成的对话式用户交互更加自然、高效、吸引人,更加符合用户习惯,这也就是我们所说的Conversational UI,新的交互方式越来越多的应用在各个领域。比如我们接触到的智能音箱小爱同学,她的表现就非常惊艳。

所以,越来越多的业务开始关注非结构化数据和自然语言数据这些高数量级的有价值信息,它具有的一些特点,提供的一些交互方式,带来了更多扩展的形式,这就导致了自然语言数据越来越重要,NLP技术越来越必要。

我们给NLP技术做一个简单的定位,即NLP技术承担了领域内自然语言数据的分类、提取、转换、生成任务,是业务领域内重要、基础的技术服务之一。

NLP技术在宜信

宜信拥有丰富的业务和产品线,这些产品线产生了大量的人工智能赋能需求。算法团队成立以来,一直面临着不小的项目压力。在整个项目的驱动过程中,团队也逐渐得到成长,结合金融领域的相关业务知识,磨练出从规则分析到统计学算法,再到更加复杂的神经网络,以及NLP领域专业技术等一系列技能。

2.jpg

图2 相关算法技术栈

具体来讲,我们从可以承担基本的处理任务(利用一些现有的规则分析、基本算法模型所进行的词性分析、句法分析)发展到可以利用相对复杂的神经网络模型对外提供文本分类、文本聚类、信息抽取等等一些模型服务,再到目前实施的智能聊天机器人(Chatbot)、用户画像、知识工程等高级场景,技术也随之转向了transformer、GAN、强化学习、深度学习网络等能力越来越强、结构越来越复杂的模型。这一过程可以看出来技术在不断的进步。

除了技术在不断的发展以外,我们也积攒了一批有价值的语料。在业务环节方面,我们积攒了如电销数据、客服数据、陪访数据、催收数据等语料;在业务领域方面,我们积攒了借贷(车、房、消费),理财(投资、保险、生活、传承、公益)等方面的语料;而在数据形式方面,我们收集了对话类(电话、文字沟通信息)、文章类(小结、新闻、报告)形式的语料。

这是一批比较有价值的语料信息,最终形成了公司内部的专业语料数据,包括公司的产品清单、业务术语表、业务实体表乃至财富领域的财富产品知识图谱等等。我们最终的目的是经过一定的扩充、抽象和加工之后,希望能够形成金融领域的、高价值的、专业数据集,来对外进行赋能输出。比如我们可以输出金融术语表、金融术语同义词林、金融领域相关本体以及各个子领域的知识库等。

此外,我们在服务模式上也有一个演化的过程。早期我们是以项目为驱动的服务模式,这个过程中存在着一些普遍的痛点:

  • 产品众多、业务需求繁杂;
  • 不同的业务相结合,需求不断发生变化;
  • 时效性要求,越快越好,上线稍晚就会影响到需求方;
  • 研发团队人力有限,偶尔还要兼顾环境部署、上线模型监控与维护等工作,整个过程中研发团队忙、压力大,没时间对模型进行有效调优。

那么如何解决这些痛点呢?反思过后,我们走出了重要的一步,即服务的平台化。通过构建一个统一的NLP模型平台,对外提供一个统一的NLP服务,其优点是:

  • 降低成本,提高效率;
  • 平台上的模型可以灵活组合,快速响应客户的需求;
  • 可以统一相关标准,方便对模型进行集中管理。
  • 通过平台化服务,使我们的工作摆脱了原有的粗放式服务模式,提高了AI团队的输出能力。

3.jpg

图3 服务的平台化

图3为我们平台的逻辑功能视图,自底向上分为资源层、预处理层、模型层及场景层。资源层主要包括一系列的语料、标签、预训练模型等资源;预处理层包含一些常用的NLP技术,如分词分句、词性分析、句法分析、主题分析、命名实体识别等;模型层则包括一些可以对外提供服务的算法模型,例如文本的聚类、分类、生成、复述等模型,情感分析模型等;最高的场景层则针对一些高级的、可以形成一定闭环能力的复杂场景进行解决方案的构建,例如对于智能机器人、用户画像等复杂场景,我们会形成一个包装好的解决方案,提供给用户使用。

4.jpg

图4 NLP平台架构

图4为NLP平台工程架构。我们构建了一个支持Python环境的多任务调度微服务架构,从图中可以看到我们利用Mongo、HDFS、ES、MQ等系统构建了相关的数据访问层、模型算法层,在这两层的基础上,在微服务层我们对算法模型进行任务调度管理;外部我们暴露出相关的Web接口和App接口。此外,纵向来看,我们集成了一些权限管理、多租户管理功能,可以对接企业内部的单点登录、身份认证、权限控制等系统。

NLP技术在宜信的实践背景暂且介绍到这里,接下来我们会为大家介绍NLP技术在宜信应用的两个场景:智能聊天机器人和构建客户画像。敬请大家期待~

这篇关于敏捷AI | NLP技术在宜信业务中的实践【背景篇】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/409711

相关文章

Java Optional的使用技巧与最佳实践

《JavaOptional的使用技巧与最佳实践》在Java中,Optional是用于优雅处理null的容器类,其核心目标是显式提醒开发者处理空值场景,避免NullPointerExce... 目录一、Optional 的核心用途二、使用技巧与最佳实践三、常见误区与反模式四、替代方案与扩展五、总结在 Java

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

Python 中的 with open文件操作的最佳实践

《Python中的withopen文件操作的最佳实践》在Python中,withopen()提供了一个简洁而安全的方式来处理文件操作,它不仅能确保文件在操作完成后自动关闭,还能处理文件操作中的异... 目录什么是 with open()?为什么使用 with open()?使用 with open() 进行

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1