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

神经网络模型

释义:
与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,代表不同标点

  • 16
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值