Python PaddleNLP开源实现快递单信息抽取

 更新时间:2022年06月10日 11:51:08   作者:Python全栈工程师  
这篇文章主要为大家介绍了Python PaddleNLP开源项目实现对快递单信息抽取,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

前言

近几年,制造业作为国民经济主体,是国家创造力、竞争力和综合国力的重要体现。作为制造强国建设的主攻方向,可以说,智能制造发展水平关乎我国未来制造业的全球地位。

制造业与物流结合紧密,随着制造业的高速发展,对自动化率、全产业链协同和生产效率再提高等方向均提出了更高的要求,需要物流仓储能够匹配相应的生产节奏。

同时,据统计,我国制造业生产成本中,物流占比高达三成,降低物流成本成为了制造业利润提升的关键一环。

今天,我将基于智能制造 - 精益物流场景,跟大家分享一下,从快递单信息抽取到智能立体库, 盘点两大通用的开源产业落地方案。

5 条标注数据,搞定物流快递单信息抽取

据统计,2021 年国内快递件数超 1000 亿件。作为劳动密集型产业,固有模式下出现的快递人员短缺、配送效率疲软、物流承载有限等问题,俨然成为物流行业面临的最直接挑战。利用智能化手段来提高工作效率、提升用户体验,是物流行业最强烈且迫切的需求。

在下单环节,“买卖东西一时爽,信息输入超麻烦”、“门牌号、手机号码,这输错一个数字就是千差万别”、“名字还有生僻字,找都找不到” 都道出了不少人的心声,特别是每天都需处理大量订单的商家和物流工作人员更是苦不堪言,而这个问题可以靠 NLP 信息抽取技术来解决。

基于此,飞桨自然语言处理模型库 PaddleNLP 开源了通用信息抽取技术 UIE,能够大大加快快递单信息结构化效率。 可轻松实现从用户提供的文字信息中快速抽取姓名、电话、省、市、区、详细地址等内容,形成结构化的信息,降低客户填单成本。

图 1:物流快递单信息抽取

信息抽取是一个行业应用价值很高的技术,却因为任务多样、领域多样、数据获取和标注成本高,导致落地成本居高不下。

因此,中科院软件所和百度共同提出了大一统诸多任务的通用信息抽取技术 UIE(Universal Information Extraction),在实体、关系、事件和情感等 4 个信息抽取任务、13 个数据集的全监督、低资源和少样本设置下,均取得了 SOTA 性能,这项成果发表在 ACL’22 [1]。

前阵子,百度飞桨的 PaddleNLP 结合文心大模型中的知识增强 NLP 大模型 ERNIE 3.0,发挥了 UIE 在中文任务上的强大潜力,开源了首个面向通用信息抽取的产业级技术方案,不需要标注数据(或仅需少量标注数据),即可快速完成各类信息抽取任务。

图 2:传统方案 vs UIE 统一建模方案

在物流快递单信息抽取任务中,仅标注了 5 条样本,F1 值即提升 18 个点,达到 93% 。相对于传统序列标注方案动辄标注几百条、几千条的高额标注成本。可以说,PaddleNLP 开源的通用信息抽取工具简直是国货之光!

这么酷炫的技术能力,如何快速应用到业务中呢?

通过调用 paddlenlp.Taskflow API 即可实现零样本(zero-shot)抽取多种类型的信息,话不多说,直接上代码,看效果:

# 快递单信息抽取
from paddlenlp import Taskflow
schema = ['姓名', '省份', '城市', '县区']
ie("北京市海淀区上地十街10号18888888888张三")
>>> [{'姓名': [{'text': '张三', 'start': 24, 'end': 26, 'probability': 0.97369767177317}],
   '城市': [{'text': '北京市', 'start': 0, 'end': 3, 'probability': 0.9992830142165161}],
   '县区': [{'text': '海淀区', 'start': 3, 'end': 6, 'probability': 0.9997933003097614}]}]

对于复杂目标,可以标注少量数据(Few-shot)进行模型训练,以进一步提升效果。PaddleNLP 打通了从数据标注 - 训练 - 部署全流程,不仅能够方便地进行定制化训练,在部署阶段我们也提供了基于 ONNXRuntime 引擎部署、半精度(FP16)推理等多种加速方案,满足 CPU、GPU 等不同场景下的部署需求。

所有源码及模型均已开源,大家可以尝鲜使用,star 鼓励。

此外,PaddleNLP 还开源了物流快递单信息抽取产业实践范例,通过完整的代码实现,提供从数据准备到模型调优的全过程解析,堪称产业落地的 “自动导航” 。 百度高工还将带来手把手进行全流程代码实践,轻松直达项目 POC 阶段。

智能立体库盘点

物流行业的货物存储库有从单一存储特性的立体库向多功能智能化物流仓转化的发展趋势,包括赋能智慧物流集收货、配送、分拣、客户化定制等功能一体的智能物流库,赋能智能制造集存储、线边自动补给、集成自动化生产工艺为一体的多功能物流库。

针对这一趋势下的多功能智能化物流仓进行智能盘点,相较传统物流仓而言,其难度也增加了不少,主要包括:前端工艺、安全管理制约、存储点动态监控、全流程多点监控等,如图 3 所示。

图 3:多功能智能化物流仓的智能盘点难度

飞桨零门槛 AI 开发平台 EasyDL 可从 0 到 1 快速构建针对多功能智能化物流仓的智能盘点的 AI 模型,最快 15 分钟即可完成模型训练。

使用流程下图所示。

 图 4: AI 模型训练及部署流程

无需关注模型细节,即便是没有任何 AI 基础,也能快速上手使用!使用 EasyDL - 图像分割任务进行模型训练,最终模型效果可以达到 99.9%,充分满足产业应用的需求。

图 5: 模型效果

物流行业自动化近年来蓬勃发展,智能化立体库、自动码垛、自动搬运、自动装车、智能分拣等相关设备在各行业应用广泛。在产品在途、在库信息查询、产品溯源等各个环节中,AI 技术都发挥了至关重要的作用,大大节约了物流成本,提高了物流效率和盘点效率。

即刻上手使用 EasyDL,快速构建属于你的 AI 盘点模型吧!

以上就是Python PaddleNLP信息抽取提取快递单信息的详细内容,更多关于Python PaddleNLP信息抽取的资料请关注脚本之家其它相关文章!

相关文章

  • Python自然语言处理之切分算法详解

    Python自然语言处理之切分算法详解

    这篇文章主要介绍了Python自然语言处理之切分算法详解,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Python实现指定范围内筛选并剔除Excel表格中的数据

    Python实现指定范围内筛选并剔除Excel表格中的数据

    这篇文章主要为大家详细介绍了Python如何实现在指定范围内筛选并剔除Excel表格中的数据,文中的示例代码讲解详细,感兴趣的可以了解一下
    2023-06-06
  • Python多进程写入同一文件的方法

    Python多进程写入同一文件的方法

    今天小编就为大家分享一篇Python多进程写入同一文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python Django中间件使用原理及流程分析

    Python Django中间件使用原理及流程分析

    这篇文章主要介绍了Python Django中间件使用原理及流程分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Python利用contextvars实现管理上下文变量

    Python利用contextvars实现管理上下文变量

    Python 在 3.7 的时候引入了一个模块:contextvars,从名字上很容易看出它指的是上下文变量。所以本文就来和大家详细讲讲如何使用contextvars实现管理上下文变量,需要的可以参考一下
    2022-07-07
  • python支持多继承吗

    python支持多继承吗

    在本篇文章里小编给大家整理的是关于python支持多继承的相关基础知识点,需要的朋友们跟着学习参考下。
    2020-06-06
  • Python大批量写入数据(百万级别)的方法

    Python大批量写入数据(百万级别)的方法

    这篇文章主要给大家介绍了关于Python大批量写入数据(百万级别)的相关资料,在日常处理数据的过程中,我们都有批量写入数据的需求,文中给出了详细的示例代码,需要的朋友可以参考下
    2023-07-07
  • 放弃 Python 转向 Go语言有人给出了 9 大理由

    放弃 Python 转向 Go语言有人给出了 9 大理由

    今年 Stream 团队的主要编程语言从 Python 转向了 Go。本文解释了其背后的九大原因以及如何做好这一转换。下面小编给大家分享放弃 Python 转向 Go语言有人给出了 9 大理由,一起看看吧
    2017-10-10
  • 19个Python Sklearn中超实用的隐藏功能分享

    19个Python Sklearn中超实用的隐藏功能分享

    今天跟大家介绍 19 个 Sklearn 中超级实用的隐藏的功能,这些功能虽然不常见,但非常实用,它们可以直接优雅地替代手动执行的常见操作
    2022-07-07
  • Python OpenCV实现视频追踪

    Python OpenCV实现视频追踪

    这篇文章主要为大家详细介绍了Python OpenCV实现视频追踪,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08

最新评论