拼写校正与动态规划的小故事

喵喵喵,细心的你有没有发现小夕已经将卧室和书房精装修了呢~

可以输入口令【ho】,或者点击主页的“旧的故事”标签进入哦。

一个小现象

小夕今天给大家讲一个自然语言处理/信息检索领域的小现象~

细心的同学可能发现啦,每当你在使用某度进行搜索时,一旦打了错别字,往往不会影响你的搜索结果,它会帮你自动校正。如下图所示~小夕把“搜狗”打成了“馊狗”

可以看到某度自动将馊狗给校正成搜狗了。

 

同样的现象还会发生在输入法、word等一系列自然语言文本输入的场合中。那么看起来如此不可思议的事情是怎么做到的呢?

小原理

 

可能有机智的喵喵会想到,只要将用户输入的词在字典里查一下不就好咯~查不到的词就是错词呀~

 

说的很对哦,但是更详细的说:

 

  1. 分词

    在汉语纠错的时候还会有一个“分词”的过程,就是将用户输入的一串文本切分成一个个的词语。


    比如用户输入了“搜狗搜索厉害吗”,那么负责分词的代码就会将其分成“搜狗|搜索|厉害|吗”。


    如何分的呢?小夕以后讲哦~为了缩小本文规模,小夕以此处不需要分词的英文为例来讲解一下拼写校正技术。

  2. 纠正

    首先在词典中查找,确认该词是否为错词。但注意,在不同的应用中,词典的定义可能不一样呐。


    比如在输入法中,词典是拼音词典,只要合乎拼音语法,基本就可以确定该词就是好词(除非有更智能的优化)。但在web搜索引擎中,词典是搜索热度词典,也就是记录用户输入某个词可能性的词典。比如上文中,“馊狗”的搜索热度很低,即罕见词。而与之相近的“搜狗”的热度会比“馊狗”的热度大很多,此时就可以将“馊狗”看作是错词,而实际上“馊狗”这个词语完全可能存在。

 

小夕为了缩小本文规模,不讨论分词过程哦,因此以英文单词为例讲解。(英文中的空格自带分词属性,2333)

小难点

 

而第二步的关键点,或者说难点在哪里呢?显然,查找某个词是否是罕见词很容易,就去词典里翻一翻就好了。但是如何确定与该错词的正确形式呢?或者说如何确定用户心里真正想输入的那个词呢?这就是关键啦。

 

一个很简单的例子是计算该错词与其他正常词的相似度,这个相似度叫编辑距离。然后我们得到编辑距离最小,也就是相似度最大的词,就是该错词的正确形式啦~

 

编辑距离有多种计算方法,其中最常用的是计算Levenshtein距离。

Levenshtein

 

这Levenshtein距离怎么计算呢?首先了解一下编辑操作:

1、    将一个字符插入字符串

2、    从字符串中去除一个字符

3、    将字符串中的一个字符替换成另外一个字符。

 

令上述操作的每一步的代价都为1,则一个单词变换成另一个单词的最小代价,也就是最少编辑操作次数,就为这两个单词的Levenshtein距离。

 

那么如何用算法实现两个单词之间的Levenshtein距离计算呢?

小算法

 

还记不记得小夕在上一篇文章中教给你的方法吖?要从算法问题中提炼算法思想哦,然后将算法思想再用于新的算法问题!

 

假如我们要计算paris和alice的Levenshtein距离,利用上一节提炼出来的枚举法、分治法等思想,是不是很轻松就出来思路啦?但是呢,小夕在这里不用这么low的算法啦,小夕要用动态规划(DP)思想来解决这个问题!

 

DP思想呢,小夕的解释就是DP会记忆你之前已经走过的道路,因此不会像枚举法+分治一样来来回回的对同一种情况反复计算。之前完全不了解DP的喵喵,小夕强烈建议你去看《算法导论》上的讲解哦,炒鸡清晰!

 

好,在开始之前,我们先画一张表格,用来记录走过的路~

这张表的每个元素都代表着两个串的编辑距离。比如上图中的元素N就代表着“pa”到“al”的编辑距离,最右下角的元素就代表着“paris”到“alice”的编辑距离,最左上角的元素代表着null到null的编辑距离。

 

显然呀,要从左上角按照某种轨迹走到右下角呢~(想不明白的请面壁,喵喵喵)

 

null到null的距离当然是0啦。所以第一个元素填0。

然后我们从左往右走,一行走完就从下一行的最左边开始走,直到走到右下角。

 

显然第二个元素代表从null到p的距离,我们只需要在它左边的元素的基础是,也就是null到null的基础上,将第二个null添加一个字符p(回忆一下前面的三种编辑操作)。所以代价增加1,所以第二个元素等于0+1=1。同理写出第一行的其他元素值。

第二行的第一个元素,只需要在它头上的元素的基础上加个a,所以是0+1。


而第二个元素开始就复杂些了,它(1)可以在左边元素的基础上修改,(2)也可以在上边元素的基础上修改。(3)万一遇到两个字符串末尾元素相同的情况,则编辑距离要等于左上角元素。比如pred到had的编辑距离与pre到ha的编辑距离相等!所以我们额外定义一下,如果两串末尾的元素不相等,则编辑距离还可以等于左上角元素的值+1。

 

然后我们计算出这三种情况后,取最小值为该元素的最终值。如图

该格子的左上角的1是基于左上角元素+1得到;右上角的2是基于上边的元素+1得到;左下角的2是基于左边的元素+1得到;右下角为前面这三种情况的最小值。

 

于是按照这种思路,整个表格就画成啦~

所以呀,前面讲过了,最右下角元素的右下角的值,就是paris与alice的最小编辑距离啦~即为4。

 

有人觉得,诶?计算量看起来也蛮大的嘛。好咯,你可以用蛮力法+分治画一张图试试,你就知道这张表格多小啦!

 

Completed!

 

看吧~人工智能大领域中的NLP领域的一个任务,最核心的就是你们算法课上学的动态规划啦~千万不要书到用时方恨少哦,跟小夕一起学算法吧,喵喵喵~

 

所以,要不要考虑给小夕买好吃的呀o(≧v≦)o

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

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

相关文章

《物理世界》公布2022年度十大突破

来源:科技日报近日,英国《物理世界》杂志公布了2022年度十大突破,涵盖从量子、医学物理学、天文学到凝聚态物质等各个方面。这十项突破是由《物理世界》编辑小组从今年在该杂志网站上发布的涵盖物理学所有领域的数百项研究中精选出来的。开创…

飞行器真的是计算机!

小夕在一边默默的玩弄心爱的小四轴(飞行器)。路人丁:“小夕,你不是学计算机的吗?怎么玩起飞机来了?”小夕:“对呀,小四轴也是计算机呀”。路人丁:诶?会不会有…

谷歌员工担心自家 AI 敌不过 ChatGPT,高管回应:其过快发展可能损害公司

来源:AI前线整理:冬梅、核子可乐谷歌的 Jeff Dean 表示,一旦提供错误信息、大企业所面临的“声誉风险”要比小公司更严重,所以谷歌自然“比小型初创公司更加保守”。自 11 月底以来,AI 聊天机器人 ChatGPT 正式向公众发…

深入浅出不可思议的中文分词技术

亲爱的喵喵们,明天小夕就正式开学啦。开学后每周有几天的课比较多,小夕为了保证每篇文章的质量,可能做不到每天一更啦。但是小夕也会尽量挤出时间来写文章,尽量保证两三天更一篇。希望不要责怪小夕哦...分词,也叫切词&…

史上最萌最认真的机器学习/深度学习/模式识别入门指导手册(三)

能够坚持走到阶段三的喵一定是很有毅力的喵!也是很合格的机器学习/人工智能研究者啦~但是走到这里,也意味着您不满足于使用看似孤立的机器学习模型来生硬的完成一些任务,那么,大一统的理论体系就在这一阶段建立吧~前言完成这一阶段…

专访中国工程院院士杜祥琬,可控核聚变美国成了吗?

凤凰网科技 出品作者|蒋浇微信编辑|李金洋12月13日,美国能源部宣布,在加利福尼亚州的劳伦斯利弗莫尔国家实验室(LLNL),研究人员首次在核聚变反应中产生“净能量增益”,即聚变反应产生…

一个问题就可以辨别真假NLP(自然语言处理)研究者

╮(╯▽╰)╭哎,自从人工智能火了以后,最近自称NLP研究者的人越来越多了,然而这其中的大忽悠有多少小夕就不想多说了。如果连自己在哪个领域、哪个学科搞研究都不懂的话,你相信他真的是这个领域的研究者喵?反正小夕不信…

2023年十大数字科技前沿应用趋势

来源:腾讯研究院编辑:蒲蒲继21年的“变量”、22年的“融合”,2023年数字科技的发展呈现出明显的“升维”特征。近日,腾讯研究院联合百位内部科学家、技术专家和外部院士专家,发布《升维 - 2023年十大数字科技前沿应用趋…

绕开数学,讲讲信息论

看到文章的标题,肯定有人想说“诶?小夕你不是做人工智能吗?怎么又捣鼓起通信里面的信息论了?”小夕肯定会很开心的揪住你,然后说“哈哈哈~发现一只外行!”学过机器学习的喵喵肯定知道很多决策树的核心就是计…

大数据时代的机器学习有什么不同?

小夕昨晚没有发文章&#xff0c;却收到了一个大红包和好多晚安&#xff0c;好受之有愧..>_<...谢谢你们喵。路人戊&#xff1a;小夕&#xff0c;我们身处大数据时代了&#xff0c;好厉害呢。小夕&#xff1a;嗯嗯&#xff0c;哪里厉害了呢&#xff1f;路人戊&#xff1a;…

Science Bulletin | 阿尔茨海默病的现状与未来

目前全球人口老龄化进展严重&#xff0c;中国已成为世界上老龄化最快的国家之一。随着人口老龄化&#xff0c;痴呆患者的数目急剧增加&#xff0c;阿尔茨海默病&#xff08;Alzheimers disease, AD&#xff09;作为痴呆的主要原因&#xff0c;已成为当今社会最为热点的话题之一…

Science年度十大科学突破出炉:韦伯望远镜高居榜首,AIGC、NASA主动撞击小行星紧随其后...

来源&#xff1a;FUTURE远见选编&#xff1a;FUTURE | 远见 闵青云 文&#xff1a;量子位 前脚韦伯望远镜运维科学家刚获得Nature年度十大人物&#xff1b;紧接着&#xff0c;Science也将韦伯望远镜评为年度最大科学突破&#xff01;今天&#xff0c;Science重磅发布2022年度科…

词袋、独热与词向量

亲爱的读者喵喵&#xff0c;由于一些事情&#xff0c;小夕最近情绪欠佳&#xff0c;导致昨天又失约没有更新文章...而且文章中萌气散失...小夕会尽快调整好哦&#xff0c;小夕依然萌萌嗒我们知道&#xff0c;传统的数据挖掘任务面向的是结构化数据。结构化数据很好理解&#xf…

人工智能会“偷走”潜艇的隐身能力吗?

更好的探测技术 不仅能使海洋变得透明&#xff0c;也许还会削弱核威慑力。潜艇的价值主要在于其隐蔽性。有一种名为“相互确保摧毁”的威慑战略&#xff0c;其关键在于尽量确保潜艇在核战争的第一次导弹打击中幸存下来&#xff0c;从而在第二次打击时发射导弹回击。因此&#x…

人工智能大地图之分布式人工智能篇

前言人工智能大地图系列文章更新啦&#xff01;大地图系列的文章是为了帮助即将入门和初步入门人工智能相关领域的喵喵从上帝视角看清整个人工智能学科的全貌&#xff08;好长的句子&#xff09;&#xff0c;小夕可不希望小夕的粉丝在研究了一年的人工智能某方向后&#xff0c;…

符合人类创作过程的AIGC:自动生成长故事的模型出现了

来源&#xff1a;机器之心报道编辑&#xff1a;小舟、蛋酱AI写文章还是得模仿人类的创作方法。在今天的人工智能领域&#xff0c;AI 写作神器层出不穷&#xff0c;技术和产品可谓日新月异。如果说 OpenAI 两年前发布的 GPT-3 在文笔上还稍欠火候&#xff0c;那么前段时间的 Cha…

Science:挑战传统理论,重塑联想学习概念

来源&#xff1a;brainnews编译作者&#xff1a;Young&#xff08;brainnews创作团队&#xff09;校审&#xff1a;Simon&#xff08;brainnews编辑部&#xff09;学会根据环境线索预测奖赏对生存至关重要。人们认为&#xff0c;动物通过在结果偏离预期时更新预测来学习预测奖赏…

【完结】史上最萌最认真的机器学习/深度学习/模式识别入门指导手册(四)

小夕再次感谢大家的关心&#xff0c;你们的小夕已经满血复活啦&#xff01;小夕会坚持为大家带来独一无二的干货和故事哦。前言有读者反映&#xff0c;ta若能完成这个系列的阶段三&#xff0c;就在他们实验室被奉为神了。因为他们实验室每个人人手一本《模式分类》&#xff0c;…

文本相似度

《统计学习方法》-李航 损失函数总结 概要 <div id"post_detail">NLP点滴——文本相似度 目录 前言字面距离common lang库相同字符数莱文斯坦距离(编辑距离)定义实现方式Jaro距离定义实现方式应用SimHash定义基本流程相似性度量存储索引实现应用语义相似性背…

「可解释知识图谱推理」最新方法综述

来源&#xff1a;图灵人工智能近年来&#xff0c;以深度学习模型为基础的人工智能研究不断取得突破性进展&#xff0c;但其大多具有黑盒性&#xff0c;不 利于人类认知推理过程&#xff0c;导致高性能的复杂算法、模型及系统普遍缺乏决策的透明度和可解释性。在国 防、医疗、网…