学习语言模型
发布日期:2021-06-29 02:31:38 浏览次数:3 分类:技术文章

本文共 756 字,大约阅读时间需要 2 分钟。

  • 文本处理

    建立模型需要用到大量的数据,根据要求首先需要先对数据格式先进行处理,Python提供了许多的简便操作供使用,比如去空格,去符号,大小写切换等,根据学习资料了解到,处理数据时自己调用函数处理可能会出现一些没有注意到的问题,如学习资料里提到的,它至少有以下几个缺点:
    标点符号通常可以提供语义信息,但是我们的方法直接将其丢弃了 类似“shouldn’t", “doesn’t"这样的词会被错误地处理 类似"Mr.”, "Dr."这样的词会被错误地处理。通过调用专业的包,处理数据就会变得很容易且合理,工具有spaCy和NLTK。

  • 一段自然语言文本可以看作是一个离散时间序列,给定一个长度为 T 的词的序列 w1,w2,…,wT,语言模型的目标就是评估该序列是否合理,即计算该序列的概率: P(w1,w2,…,wT).

  • 建立语言模型即对文件建立数据库,文本在这个数据库中出现的概率可以认为是P^(w1)=n(w1)/n,其中n(w1)是以w1开头的文本的数量,n为数据库中文本的总量,序列长度增加,计算和存储多个词共同出现的概率的复杂度会呈指数级增加。 n 元语法通过马尔可夫假设简化模型,马尔科夫假设是指一个词的出现只与前面 n 个词相关,即 n 阶马尔可夫链(Markov chain of order n ),如果 n=1 ,那么有P(w3∣w1,w2)=P(w3∣w2) 。基于 n−1 阶马尔可夫链,我们可以将语言模型改写为P(w1,w2,…,wT)=∏t=1TP(wt∣wt−(n−1),…,wt−1).当 n 较小时, n 元语法往往并不准确。例如,在一元语法中,由三个词组成的句子“你走先”和“你先走”的概率是一样的。然而,当 n 较大时, n 元语法需要计算并存储大量的词频和多词相邻频率。

转载地址:https://blog.csdn.net/YYYYYJY/article/details/104318722 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:cv基础组队学习
下一篇:线性回归

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月08日 23时56分50秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章