语言模型-神经网络模型(二)

神经网络模型语言模型

  • 神经网络模型
    • 神经网络的分类
    • 神经网络模型和Ngram对比
    • 应用一-话者分离
      • 对比优劣
    • 应用二-数字归一化
    • 应用三-文本打标

神经网络模型

释义:
与ngram模型相似使用,前n个词预测下一个词,输出在字表上的概率分布;过程中得到了词向量这一副产品

神经网络语言模型开篇作
在这里插入图片描述

神经网络的分类

自回归语言模型:

用前n个字预测下一个字
单向,从左向右预测,或反向使用
有利于生成式任务

自编码语言模型:

用整段文本,预测文本中的某一个字(完形填空)
双向,更好的利用文本信息
引入了[mask],在fine-tune中不出现

神经网络模型和Ngram对比

优点:
1.对于输入长度的要求更低,更能适用;因为Ngram的参数和长度有非常大的关系,多一个字就会新增相当的参数;而神经网络模型不会
2.神经网络模型能够计算词之间的相似性,而Ngram则不行,无法识别词之间的相似性
3.神经网络模型自带平滑,即使是未出现的组合和词,计算的概率也不会为零

缺点:
1.在运算的效率上,ngram比神经网络模型要高很多;ngram计算时,只需要遍历找到概率值计算即可;神经网络模型对于每一个词都需要计算一次。

在这里插入图片描述

应用一-话者分离

释义: 根据说话内容判断说话人,常用于语言识别系统中,判断录音对话中角色,如客服对话录音,判断坐席或客户;本质上为文本分类任务。

步骤

1.对于每个类别,使用类别语料训练语言模型
2.对于一个新输入的文本,用所有语言模型计算成句概率
3.选取概率最高的类别为预测类别

在这里插入图片描述

对比优劣

相比一般文本分类模型,如贝叶斯,rf,神经网络等
优势:
1.每个类别模型互相独立,样本不均衡或样本有错误对其他模型没有影响
2.可以随时增加新的类别,而不影响旧的类别的效果

劣势:
1.效果上讲:一般不会有显著优势
2.效率上讲:一般会低于统一的分类模型

应用二-数字归一化

释义: 将一个文本中的数字部分转化成对读者友好的样式,常见于语言识别系统后,展示文本时使用。

下面举例:

1.秦皇岛港煤炭库存量在十一月初突然激增,从四百五十四点九万吨增加到七百七十三点四万吨,打破了一九九九年以来的记录
2.十一届三中全会、“十二五”规划、一贫如洗、二龙戏珠
解释: 由上面的例子,我们知道有些汉语数字是适合转阿拉伯数字的,有的情况不适合,我们需要用语言模型,去判断或者计算使用那种数字的概率高

步骤:

  1. 找到数字形式符合规范的文本作为原始语料
  2. 用正则表达式找到数字部分(任意形式)
  3. 将数字部分依照其格式替换为<阿拉伯数字><汉字数字><汉字连读>等token
  4. 使用带token文本训练语言模型
  5. 对于新输入的文本,同样使用正则表达式找到数字部分,之后分别带入各个token,使用语言模型计算概率
  6. 选取概率最高的token最为最终数字格式,按照规则转化后填入原文本

示例

中国共产党第十五次全国代表大会于一九九七年九月十二日召开,各地方代表一一发言
中国共产党第<汉字数字>次全国代表大会于<阿拉伯数字>年<阿拉伯数字>月<阿拉伯数字>日召开,各地方代表<汉字连续>发言

训练时,将当成一个字训练语言模型
预测时,中国共产党第十五次全国代表 <- 原句
中国共产党第<汉字数字>次全国代表
中国共产党第<阿拉伯数字>次全国代表 语言模型判断最高概率
中国共产党第<汉字连续>次全国代表
若需要转化格式则通过规则完成,模型只起到判断作用

应用三-文本打标

释义: 给文本添加标点或语气停顿等,可以理解为一种粗粒度的分词,常用于语音合成任务中,辅助做出发音的停顿。语言模型都能够实现。

示例:

我最近抽了点时间读了一本关于马尔可夫生平的书
停顿: 我最近 抽了点时间 读了一本 关于 马尔可夫生平 的书
标点: 我最近抽了点时间,读了一本关于马尔可夫生平的书。

实现逻辑:

  1. 需要有标注数据,在停顿处添加token:
    如:

  2. 我最近 < s > 抽了点时间 < s > 读了一本 < s > 关于 < s > 马尔可夫生平 < s > 的书
    3.带token训练语言模型

4.预测过程:
选定一个窗口长度,首先预测第一次停顿位置
我< s >最近抽了点时间 ppl:10
我最< s >近抽了点时间 ppl:20
我最近< s >抽了点时间 ppl:5 <- 选择此处作为第一次停顿
….
之后从“抽了点时间”开始向后重复此过程;就可以获得分好的句子。

总结:
本质为序列标注任务;可以依照类似方式,处理分词、文本加标点、文本段落切分等任务;分词或切分段落只需要一种token;打标点时,可以用多种分隔token,代表不同标点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/395998.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何设置 Visual Studio Code 的滚轮缩放功能

Visual Studio Code (VSCode) 是一个强大的代码编辑器&#xff0c;提供了许多便捷的功能来提高开发效率。其中之一就是通过滚轮缩放字体大小。以下是详细的设置步骤&#xff1a; 步骤 1&#xff1a;打开设置页面 首先&#xff0c;启动 Visual Studio Code。在左上角点击 “文…

【机器学习基础】线性回归

【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈Python机器学习 ⌋ ⌋ ⌋ 机器学习是一门人工智能的分支学科&#xff0c;通过算法和模型让计算机从数据中学习&#xff0c;进行模型训练和优化&#xff0c;做出预测、分类和决策支持。Python成为机器学习的首选语言&#xff0c;…

集成视触觉传感器的机器人操作学习

强化学习是一种仿人学习的方法&#xff0c;其在不断与环境交互试错的过程中进行学习&#xff0c;提高自身的认知。其具有如下的优点&#xff0c;首先是数据依赖性低&#xff0c;强化学习通过与环境的交互来学习&#xff0c;减少了对标记数据的依赖性&#xff0c;可以大量的减少…

Linux 系统框架分析(一)

一、linux内核结构框图 对内核结构框图有个总体的把握&#xff0c;有助于理解为什么驱动要这样写&#xff0c;为什么写的应用程序所用的C库接口能够产生这么多的事情。 框图可以看出来&#xff0c;linux系统&#xff0c;包括五个系统 一、Linux内核结构介绍 Linux 内核是操作…

Spring及相关框架的重要的问题

Java框架 问题一&#xff1a;Spring框架中的单例bean是线程安全的吗&#xff1f; 看下图&#xff0c;不能被修改的成员变量就是无状态的类&#xff0c;无状态的类没有线程安全问题&#xff0c;所以在开发中尽量避免可修改的成员变量。 回答&#xff1a;不是线程安全的&#xf…

Oracle一对多(一主多备)的DG环境如何进行switchover切换?

本文主要分享Oracle一对多(一主多备)的DG环境的switchover切换&#xff0c;如何进行主从切换&#xff0c;切换后怎么恢复正常同步&#xff1f; 1、环境说明 本文的环境为一主两备&#xff0c;数据库版本为11.2.0.4&#xff0c;主要信息如下&#xff1a; 数据库IPdb_unique_n…

Github 2024-08-09 开源项目日报 Top10

根据Github Trendings的统计,今日(2024-08-09统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目6TypeScript项目4Jupyter Notebook项目1Cuda项目1Sentry:开发者优先的错误跟踪和性能监控平台 创建周期:5093 天开发语言:Python,…

android系统中data下的xml乱码无法查看问题剖析及解决方法

背景&#xff1a; Android12高版本以后系统生成的很多data路径下的xml都变成了二进制类型&#xff0c;根本没办法看xml的内容具体如下&#xff1a; 比如想要看当前系统的widget的相关数据 ./system/users/0/appwidgets.xml 以前老版本都是可以直接看的&#xff0c;这些syste…

旅游出行必备商城小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;新闻类型管理&#xff0c;新闻资讯管理&#xff0c;商品类型管理&#xff0c;旅游商品管理&#xff0c;旅游景点&#xff0c;景点分类&#xff0c;系统管理 微信端账号功能包括&am…

GitHub的常用操作

目录 GitHub GitHub加速 克隆GitHub上的项目到本地 克隆GitHub上指定分支的项目 把本地项目上传到GitHub上管理 删除分支里的内容 单个仓库管理多个项目 上传项目到新建的分支 目前正在逐步熟悉GitHub&#xff0c;打算把整理好的代码上传到GitHub上&#xff0c;建立属…

C++ 类与对象

面向对象程序设计基本特点 特点&#xff1a; 抽象&#xff08;数据抽象&#xff0c;行为抽象&#xff09; 数据抽象&#xff1a;int hour,int minute.....,车&#xff1a;长&#xff0c;宽&#xff0c;高.... 功能抽象&#xff1a;showTime(),setTime() .....车&#xff1a;刹车…

使用Cisco进行模拟配置OSPF路由协议

OSPF路由协议 1.实验目的 1&#xff09;理解OSPF 2&#xff09;掌握OSPF的配置方法 3&#xff09;掌握查看OSPF的相关信息 2.实验流程 开始 → 布置拓扑 → 配置IP地址 → 配置OSPF路由并验证PC路由的连通性 → 查看路由器路由信息 → 查看路由协议配置与统计信息 → 查看O…

【从零开始一步步学习VSOA开发】VSOA命令行工具vcx

VSOA命令行工具vcx vcx 介绍 vcx 是一个使用 VSOA RPC 客户端功能执行器&#xff0c;支持 RPC SET/GET 调用。 [rootsylixos:/root]# [rootsylixos:/root]# vcx -help USAGE: vcx [options] url -h : Show help message. -v : Show vcx version. -z …

[MRCTF2020]PYWebsite-1

打开以后查看源码信息 看到flag.php试着打开 提示看到&#xff0c;需要后端审计代码&#xff0c;而且应该要改ip&#xff0c;改成自己本地&#xff0c;burp抓包看一下 改X-Forwarded-For:127.0.0.1 得到flag flag{74242eb7-844f-4638-8aae-9ec37870d585}

通过LLM大模型将「白雪公主的故事」转为图数据存储

&#x1f4a1; 本次将使用LLM大模型将「白雪公主的故事」转为图数据存储于neo4j数据库中&#xff0c;并展示图数据部分的效果 故事内容 很久很久以前&#xff0c;在一个遥远的王国里&#xff0c;有一位美丽的**王后**生下了一个皮肤像雪一样白皙、嘴唇像血一样鲜红的**女儿**…

网页设计模板范例

随着互联网的发展&#xff0c;网页设计变得越来越重要。一个吸引人的网页设计可以吸引更多的用户&#xff0c;提升用户体验&#xff0c;并且使网站内容更加易于浏览和理解。在这篇文章中&#xff0c;我将为大家介绍一个网页设计模板范例。 1. 选择合适的颜色和字体&#xff1a;…

golang for range time.Ticker 和 time.Timer时间通道使用示例 - 每隔指定时间执行一次,执行指定时长后退出执行

golang中的 ticker和timer时间通道除了可以使用for select case语句来执行外&#xff0c; 还可以使用 for range语句来执行ticker或者timer时间通道。 for range time.Ticker 和 time.Timer时间通道使用示例 下面的示例演示了time.Ticker 和 time.Timer的区别和使用演示。 Ti…

JAVA分布式CAP原则

分布式CAP原则主要是使用SpringCloud框架的时候会涉及到该部分知识点 CAP原则指的是在一个分布式系统中&#xff0c;一致性&#xff0c;可用性&#xff0c;分区容错性 实际的项目开发中&#xff0c;这三者往往是不可兼顾的。 AP&#xff1a;牺牲一致性&#xff0c;保证可用性…

【学习笔记】Matlab和python双语言的学习(动态规划)

文章目录 前言一、动态规划动态规划的基本步骤示例1示例2 三、代码实现----Matlab1.示例12.示例2 四、代码实现----python1.示例12.示例2 总结 前言 通过模型算法&#xff0c;熟练对Matlab和python的应用。 学习视频链接&#xff1a; https://www.bilibili.com/video/BV1EK411…

Linux驱动开发—平台总线模型详解

文章目录 1.平台总线介绍1.1平台总线模型的组成部分1.2平台总线模型的优势 2.使用平台总线模型开发驱动2.1注册platform设备2.2注册platform驱动2.3效果演示 1.平台总线介绍 Linux 平台总线模型&#xff08;Platform Bus Model&#xff09;是一种设备驱动框架&#xff0c;用于…