文字是传递信息的高效途径,利用 OCR 技术提取文本信息是各行业向数字智能化转型的第一步。与此同时,针对 OCR 提取的海量文本信息,利用 NLP 技术进一步加工提取、分析理解后才能最大化发挥文本信息的价值。NLP 技术可以提升 OCR 准确率,并从文本中抽取关键信息、构建知识图谱,搭建检索、推荐、问答系统等。
虽然各行业智能化产业升级已经在如火如荼的开展中,但是在实际应用落地中却遇到诸多困难,比如:数据样本不够、模型精度不高、预测时延大等。为此,百度飞桨针对真实、高频的产业场景,提供了从数据准备、模型训练优化,到模型部署全流程的案例教程。
听说文档和代码已经开源了,来吧⬇️
GitHub - PaddlePaddle/awesome-DeepLearning: 深度学习入门课、资深课、特色课、学术案例、产业实践案例、深度学习知识百科及面试题库The course, case and knowledge of Deep Learning and AI
OCR+NLP 串联技术难点
市面上有不少开源的 OCR、NLP 产品,但是如果想直接利用这些工具,会面临底层框架不统一、串联难度高、效果无法保证等问题。PaddleOCR 和 PaddleNLP 是面向产业界的开发库,均基于飞桨开源框架最新版本,能够将 OCR 和 NLP 技术无缝结合。
今天我们针对金融行业研报、物流快递单,来看看 OCR + NLP 信息抽取技术的应用。
OCR+NLP 金融研报分析
当前,诸多投资机构都通过研报的形式给出对于股票、基金以及行业的判断,让大众了解热点方向、龙头公司等各类信息。然而,分析和学习研报往往花费大量时间,研报数量的与日俱增也使得研报智能分析诉求不断提高。这里我们采用命名实体识别技术,自动抽取研报中的关键信息,例如,“中国银行成立于1912年。”中包含了组织机构、场景事件、时间等实体信息。
▲ OCR+NLP Pipeline
针对研报数据的命名实体识别与词频统计整体流程如上图所示。首先将研报 pdf 数据使用 fitz 包拆分为图像格式,然后利用 PaddleOCR 套件在研报数据集上微调 PP-OCR[1]的检测模型,使用现有的识别模型获得文本信息。PP-OCR 是 PaddleOCR 中由百度自研的明星模型系列,由文本检测、文本方向分类器与文本识别模块串联而成。
▲ PP-OCR Pipeline
对 OCR 识别出的文本进行整理后,调用 PaddleNLP 中的 Taskflow API 抽取文本信息中的组织机构实体。最后对这些实体进行词频统计,就可初步判定当前研报分析的热点机构。
▲ Taskflow 使用示意图
目前,Taskflow API 支持自然语言理解(NLU)和生成(NLG)两大场景共八大任务,包括中文分词、词性标注、命名实体识别、句法分析、文本纠错、情感分析、生成式问答和智能写诗,均可一键调用。
物流快递单信息抽取
双十一要到了,想必很多人都预备了一个满满的购物车。去年双十一成交量4982亿元,全国快递企业共处理快件39亿件,这背后则是物流行业工作量的骤增。除了满负荷的长深高速公路,还有繁忙的快递小哥。无论是企业业务汇总,还是寄件信息填写,都少不了关键信息智能提取这一环节,这其中均采用了命名实体识别技术。
命名实体识别大体上有三种方案:字符串匹配、统计语言模型、序列标注。前两种方法需要预先构建词典、穷举所有实体,无法发现新词、变体等。本案例中采用了目前的主流方法——序列标注。
数据集包括1600条训练集,200条训练集和200条测试集,采用 BIO 体系进行标注。
▲ 实体定义和数据集标注示例
针对轻量化、高精度的需求,可以选用 RNN+CRF 方案。也可以采用预训练模型,通过模型压缩、动转静加速等方式满足精度和性能的要求。我们采用 Ernie-Gram[2] + CRF 获得了最佳效果。
此外,命名实体识别技术可以应用于各类关键信息的提取,例如电商评论中的商品名称、电子发票中的抬头信息、收入证明中的金额、法律文书中的犯罪地点等信息。结合关系抽取、事件抽取技术,还可以构建知识图谱、搭建问答系统等。
百度AI开发者社区https://ai.baidu.com/forum ,为全国各地开发者提供一个交流、分享、答疑解惑的平台,让开发者在研发路上不再“孤军奋战”,通过不断地交流与探讨找出更好的技术解决方案。如果你想尝试各种人工智能技术、开拓应用场景,赶快加入百度AI社区,你对 AI 的所有畅想,在这里都可以实现!
扫描下方二维码,添加小助手微信「京东卡、小度定制周边、神秘礼盒、行李箱」等更多福利你来拿~