当前位置: 首页 > news >正文

基于PaddleNLP的深度学习对文本自动添加标点符号(一)

前言

        目前以深度学习对文本自动添加标点符号研究很少,已知的开源项目并不多,详细的介绍就更少了,但对文本自动添加标点符号又在古文识别语音识别上有重大应用。

        基于此,本文开始讲解基于PaddleNLP的深度学习对文本自动添加标点符号的应用和研究,本文先讲解下,如何从PaddleSpeech提取通用的添加标点符号模型。

开始

一、PaddleSpeech的添加标点符号使用介绍
  • 1、命令行 (推荐使用)
  • paddlespeech text --input 今天的天气真不错啊你下午有空吗我想约你一起去吃饭

    使用方法:

  • paddlespeech text --help

    参数:

    • input(必须输入):原始文本。
    • task:子任务,默认值:punc
    • model:文本模型类型,默认值:ernie_linear_p7_wudao
    • lang:模型语言, 默认值:zh
    • config:文本任务的配置文件,若不设置则使用预训练模型中的默认配置,默认值:None
    • ckpt_path:模型参数文件, 若不设置则下载预训练模型使用,默认值:None
    • punc_vocab:标点恢复任务的标点词表文件,默认值:None
    • device:执行预测的设备,默认值:当前系统下 paddlepaddle 的默认 device。

    输出:

  • [2021-12-14 19:50:22,200] [ INFO] [log.py] [L57] - Text Result: 今天的天气真不错啊!你下午有空吗?我想约你一起去吃饭。

  • 2、Python API
    import paddle
    from paddlespeech.cli.text import TextExecutortext_executor = TextExecutor()
    result = text_executor(text='今天的天气真不错啊你下午有空吗我想约你一起去吃饭',task='punc',model='ernie_linear_p7_wudao',lang='zh',config=None,ckpt_path=None,punc_vocab=None,device=paddle.get_device())
    print('Text Result: \n{}'.format(result))

    输出:

  • Text Result: 今天的天气真不错啊!你下午有空吗?我想约你一起去吃饭。

根据上面介绍,必须要安装PaddleSpeech的依赖包才可实现,代码量虽然很少,但依赖包太大。

二、标点符号预测核心代码提取
1、核心代码位置

如下:

2、代码提取

找出下面的代码,并单独建立

3、模型文件

根据model_alias.py文件,内置了三个标点符号预测模型:

分别下载该三个模型,后面预测将用到,文章后面有下载链接。

4、提取后代码结构

提取之后核心代码就只有3个py文件,还需要对infer.py代码做一部分小小的改动,提取后的代码在文章最新可下载,可以对比PaddleSpeech源码进行查看。

5、测试提取后的代码

添加测试模型和测试代码,如下:

运行test.py文件,输出结果:

Text Result: 今天的天气真不错啊!你下午有空吗?我想约你一起去吃饭。​​​​​​​

完毕!!!

        本章讲解的已经完毕,主要是从PaddleSpeech中将添加标点符号的模型和代码提取出来,做单独处理,方便集成在其他第三方语言识别或项目中。

自动添加标点符号模型下载:

ernie_linear_p7_wudao-punc-zh​​​​​​​

ernie_linear_p3_wudao-punc-zh

ernie_linear_p3_wudao_fast-punc-zh

提取后的代码下载:

下载地址

http://www.lryc.cn/news/262481.html

相关文章:

  • “Java已死、前端已凉”?尊嘟假嘟?
  • 双向无线功率传输系统MATLAB仿真
  • 火山引擎DataLeap:助你实现从数据研发1.0到数据研发3.0的跨越
  • DevOps 和人工智能 – 天作之合
  • 基于主动安全的AIGC数据安全建设
  • Java 程序的命令行解释器
  • 从事开发近20年,经历过各种技术的转变和进步
  • unet v2学习笔记
  • MQ入门—centos 7安装RabbitMQ 安装
  • 虾皮Shopee商品详情API:电商实时数据获取的关键
  • VUE中的8种常规通信方式
  • overleaf 加载pdf格式的矢量图时,visio 图片保存为pdf格式,如何确保pdf页面大小和图片一致
  • 西南科技大学数字电子技术实验四(基本触发器逻辑功能测试及FPGA的实现)预习报告
  • “新程序员”必须学会的8个GPT提问技术 | 抢免费注册DevChat名额
  • Flink系列之:大状态与 Checkpoint 调优
  • 七轴开源协作机械臂myArm视觉跟踪技术!
  • etcd初探
  • 微信小程序如何实现WXML和js文件之间的数据交互
  • 计算机网络基础——以太网类型,常见标准和架构
  • HarmonyOS(二)—— 初识ArkTS开发语言(下)之ArkTS声明式语法和组件化基础
  • VUE篇之日历组件
  • 【selenium】自动化使用 chrome 的 user-data-dir
  • pythonUnitTest框架
  • 微服务最佳实践:构建可扩展且高效的系统
  • 源码赏析: 数据结构转换工具 configor (一)
  • 使用java调用python批处理将pdf转为图片
  • 机器学习——自领域适应作业
  • ValidatorUtil字段验证工具类
  • Python 自动化之处理图片(一)
  • Axure动态面板的应用与ERP系统登录界面、主页左侧菜单栏、公告栏的绘制