【NLP碎碎念】关于口语文本的一点想法

(很久没在csdn写文章了,一直在知乎,现在慢慢搬过来,原创在https://blog.csdn.net/weixin_38100489哈)

看了https://zhuanlan.zhihu.com/p/142168215有一点思考。

之前做对话系统时,看实际的对话记录,发现口语文本有如下特点:

一是大量的口语词汇;二是打错字;三是语序错乱。

1、处理错字

很自然有两种思路:一是把错字纠正;二是就把训练集也刻意弄出错字。

1.1、错字纠正

1.1.1、针对应用场景和实际历史记录,做常见错字的规则。(实际上没有想象的那么复杂。比例类似二八定律。)

1.1.2、把原文本和正确文本当做seq2seq去做。(但是训练集从哪里来呢?标不如构造,构造方式见下面的1.2部分)

1.2、向训练集中加入错字

不妨先想想错字是怎么来的,然后再说怎么做。

1.2.1、如果是用本来就含有错字的真实数据做标注,且量足够大,那就不存在这个问题了。(但实际上,多大的量才算大呢?后面的方法还是能提升的)

1.2.2、(英文中的拼写错误对应中文)在按对按键后,在输入法中选择了错误的字词。

(比如,上面这句话,我最初就输入成了“在按对‘案件’后”,无语。。)

可以在训练样本中,分词后选一个词,出拼音,用拼音出候选词列表,选择除了真实词汇之外的第一个候选词,作为替换。

1.2.3、(QWERTY键盘错误注入)按错按键了。

可以在训练样本中,分词后选一个词,出拼音,选拼音中的1~2个按键,换成相邻的按键,得到新的拼音,进而得到替换词。(需要注意应用场景是9键环境下,还是26键环境下,又或是二者都有。)

2、语序错乱

2.1、(最暴力的方式)一个样本分词后,全部词随机打乱。

2.2、(比较暴力,但是还算合理)一个样本分词后,挑出1~2个词随机插入分词后的样本中。

2.3、(根本上)通过对真实样本的观察和统计,得到规律,如“最常见的语序错乱是将某些词拿出放在句尾”“哪些词性的词容易放到句尾”(这两个是我真实遇到的情况,常说完后再用一个词作为补充,而这个词常常是名词。)根据得到的规律做训练集的改写。

2.4、(补充)句与句乱序。(在我的口语化样本中绝大多数是一句,故略。)

3、口语词汇

(我还没想好。。)


如果觉得有用,请点赞~

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值