【数据挖掘】贝叶斯公式应用 拼写纠正示例分析 ( 先验概率 | 似然概率 | 后验概率 )
【摘要】
文章目录
I . 拼写纠正 简介II . 拼写纠正 案例需求III . 计算每个假设的概率IV . 引入 贝叶斯公式V . 使用贝叶斯公式计算每个假设的概率VI . 比较每个假设概率时
...
I . 拼写纠正 简介
1 . 拼写纠正 :
① 应用场景 : 用户输入错误的单词 , 会自动为用户纠正 ;
② 引入贝叶斯方法 : 这里就涉及到了贝叶斯公式的应用 ;
2 . 贝叶斯方法纠正单词 :
① 提出假设 : 首先要猜测用户想要输入的是哪个单词 , 给出几个猜测的可能项 ;
② 计算概率 : 然后计算出每个猜测正确的可能性是多少 ;
③ 选取结果 : 最后将可能性最大的单词确定为用户想要输入的单词 , 自动将错误单词纠正为该单词 ;
3 . 涉及到两个事件概率 :
① 事件 A A A : 用户实际输入的错误单词 ;
② 事件 B B B : 猜测用户想要输入某个单词单词 ;
③ 事件转化为公式变量 : 用户实际输入错误单词时 ( 事件 A A A ) , 猜测用户想要输入的是某个单词 的 概率 ( 事件 B B B ) ;
④ 计算公式为 :
P ( 猜 测 用 户 想 要 输 入 的 是 某 个 单 词 ∣ 用 户 实 际 输 入 单 词 ) P ( 猜测用户想要输入的是某个单词 | 用户实际输入单词 ) P(猜测用户想要输入的是某个单词∣用户实际输入单词)
即 :
P ( B ∣ A ) P ( B | A ) P(B∣A)
单词纠正准确率 : 很明显 ,用户量越大 , 收集的数据越多 , 单词纠正的准确率就越高 ;
II . 拼写纠正 案例需求
1 . 用户实际输入错误单词 : D D D ; ( 实际观测数据 Data )
2 . 猜测用户想要输入的单词 : H 1 , H 2 , ⋯ , H n H_1 , H_2 , \cdots , H_n H1,H2,⋯,Hn ; ( 假设 Hypothesis )
III . 计算每个假设的概率
计算每个假设的概率 :
① 用户输入错误单词 D D D 时 , 想要输入单词 H 1 H_1 H1 的概率 : P ( 用 户 想 要 输 入 单 词 H 1 ∣ 用 户 实 际 出 入 错 误 单 词 D ) P ( 用户想要输入单词 H_1 | 用户实际出入错误单词 D ) P(用户想要输入单词H1∣用户实际出入错误单词D) , 记做 P ( H 1 ∣ D ) P(H_1 | D) P(H1∣D) ;
② 用户输入错误单词 D D D 时 , 想要输入单词 H 2 H_2 H2 的概率 : P ( 用 户 想 要 输 入 单 词 H 2 ∣ 用 户 实 际 出 入 错 误 单 词 D ) P ( 用户想要输入单词 H_2 | 用户实际出入错误单词 D ) P(用户想要输入单词H2∣用户实际出入错误单词D) , 记做 P ( H 2 ∣ D ) P(H_2 | D) P(H2∣D) ;
⋮ \vdots ⋮
③ 用户输入错误单词 D D D 时 , 想要输入单词 H n H_n Hn 的概率 : P ( 用 户 想 要 输 入 单 词 H n ∣ 用 户 实 际 出 入 错 误 单 词 D ) P ( 用户想要输入单词 H_n | 用户实际出入错误单词 D ) P(用户想要输入单词Hn∣用户实际出入错误单词D) , 记做 P ( H n ∣ D ) P(H_n | D) P(Hn∣D) ;
IV . 引入 贝叶斯公式
引入 贝叶斯公式 计算单个猜测的概率 :
① 用户输入错误单词 D D D 时 , 想要输入单词 H 1 H_1 H1 的概率 : P ( 用 户 想 要 输 入 单 词 H 1 ∣ 用 户 实 际 出 入 错 误 单 词 D ) P ( 用户想要输入单词 H_1 | 用户实际出入错误单词 D ) P(用户想要输入单词H1∣用户实际出入错误单词D) , 记做 P ( H 1 ∣ D ) P(H_1 | D) P(H1∣D) ;
② 逆向概率引入 : P ( H 1 ∣ D ) P(H_1 | D) P(H1∣D) 不容易计算出来 , 这里通过其 逆向概率 计算该概率 ,
③ 引入 逆向概率 : P ( D ∣ H 1 ) P(D | H_1) P(D∣H1) , 即输入 H 1 H_1 H1 单词时 , 输错成 D D D 的概率 ;
④ 单个事件概率 ( 先验概率 ) : 其中需要知道输入 H 1 H_1 H1 单词的概率 P ( H 1 ) P (H_1) P(H1) , 和 输入错误单词 D D D 的概率 P ( D ) P ( D ) P(D) ;
⑤ 已知概率 : 上述逆向概率 ( 似然概率 ) 和 单个事件概率 ( 先验概率 ) , 都可以通过统计学方法得出 ;
P ( H 1 ∣ D ) = P ( H 1 ) × P ( D ∣ H 1 ) P ( D ) P(H_1 | D) = \frac{ P ( H_1 ) \times P ( D | H_1 ) }{ P( D ) } P(H1∣D)=P(D)P(H1)×P(D∣H1)
V . 使用贝叶斯公式计算每个假设的概率
使用贝叶斯公式计算每个假设的概率 :
① 用户输入错误单词 D D D 时 , 想要输入单词 H 1 H_1 H1 的概率 : P ( H 1 ∣ D ) = P ( H 1 ) × P ( D ∣ H 1 ) P ( D ) P(H_1 | D) = \frac{ P ( H_1 ) \times P ( D | H_1 ) }{ P( D ) } P(H1∣D)=P(D)P(H1)×P(D∣H1)
② 用户输入错误单词 D D D 时 , 想要输入单词 H 2 H_2 H2 的概率 : P ( H 2 ∣ D ) = P ( H 2 ) × P ( D ∣ H 2 ) P ( D ) P(H_2 | D) = \frac{ P ( H_2 ) \times P ( D | H_2 ) }{ P( D ) } P(H2∣D)=P(D)P(H2)×P(D∣H2)
⋮ \vdots ⋮
③ 用户输入错误单词 D D D 时 , 想要输入单词 H n H_n Hn 的概率 : P ( H n ∣ D ) = P ( H n ) × P ( D ∣ H n ) P ( D ) P(H_n | D) = \frac{ P ( H_n ) \times P ( D | H_n ) }{ P( D ) } P(Hn∣D)=P(D)P(Hn)×P(D∣Hn)
VI . 比较每个假设概率时 P ( D ) P(D) P(D) 分母可忽略
P ( D ) P(D) P(D) 分母可忽略 :
① 观察公式 : 比较上述 n n n 个概率值 , P ( H 1 ∣ D ) , P ( H 2 ∣ D ) , ⋯ , P ( H n ∣ D ) P(H_1 | D) , P(H_2 | D) , \cdots , P(H_n | D) P(H1∣D),P(H2∣D),⋯,P(Hn∣D) 之间比较 , 即 P ( H 1 ) × P ( D ∣ H 1 ) P ( D ) , P ( H 2 ) × P ( D ∣ H 2 ) P ( D ) , ⋯ , P ( H n ) × P ( D ∣ H n ) P ( D ) \frac{ P ( H_1 ) \times P ( D | H_1 ) }{ P( D ) } , \frac{ P ( H_2 ) \times P ( D | H_2 ) }{ P( D ) } , \cdots , \frac{ P ( H_n ) \times P ( D | H_n ) }{ P( D ) } P(D)P(H1)×P(D∣H1),P(D)P(H2)×P(D∣H2),⋯,P(D)P(Hn)×P(D∣Hn) 之间比较 , 其分母都是 P ( D ) P(D) P(D) , 比较时 , 可以忽略该变量 ;
② 忽略概率 : 即 输入错误单词 D D D 的概率可以不用考虑 ;
③ 比较概率 : 只比较公式中的分子即可 : P ( H 1 ) × P ( D ∣ H 1 ) , P ( H 2 ) × P ( D ∣ H 2 ) , ⋯ , P ( H n ) × P ( D ∣ H n ) P ( H_1 ) \times P ( D | H_1 ) , P ( H_2 ) \times P ( D | H_2 ) , \cdots ,P ( H_n ) \times P ( D | H_n ) P(H1)×P(D∣H1),P(H2)×P(D∣H2),⋯,P(Hn)×P(D∣Hn) 之间进行比较 ;
VII . P ( H n ) × P ( D ∣ H n ) P ( H_n ) \times P ( D | H_n ) P(Hn)×P(D∣Hn) 含义
1 . P ( H n ) × P ( D ∣ H n ) P ( H_n ) \times P ( D | H_n ) P(Hn)×P(D∣Hn) 含义 :
① P ( H n ) P ( H_n ) P(Hn) : 表示用户输入 H n H_n Hn 单词的概率 ; 这个值可以通过统计得出 ;
② P ( D ∣ H n ) P ( D | H_n ) P(D∣Hn) : 表示用户输入 H n H_n Hn 单词时 , 输错成 D D D 错误单词的概率 ;
2 . P ( H n , D ) P(H_n , D) P(Hn,D) : P ( H n ) × P ( D ∣ H n ) P ( H_n ) \times P ( D | H_n ) P(Hn)×P(D∣Hn) , 其结果是 同时 输入 H n H_n Hn 单词 和 输错成 D D D 单词的概率 , P ( H n , D ) P(H_n , D) P(Hn,D) ;
VIII . 先验概率 , 似然概率 与 后验概率
1 . 先验 ( Prior ) 概率 : 某个假设独立出现的概率 , 是一个单独事件的概率 , 这个概率是已知的 ;
① 已知条件 : 这个对应求解的已知条件 ;
② 示例对应 : 这里对应用户输入 H n H_n Hn 单词的概率 , 这可以通过统计得出来 ;
2 . 似然 ( Likelihood ) 概率 : 某个假设生成观测到的数据的概率 , 是一个联合概率事件 ;
① 示例对应 : 这里对应 : 用户输入 H n H_n Hn 单词时 , 输错成 D D D 错误单词的概率 ; 似然概率 又叫 条件概率 ;
3 . 后验概率 : 针对提出的多个假设 , 每个假设出现的概率取决于 先验概率 和 似然概率 的乘积大小 , 值越大 , 概率越大 ;
① 目标结果 : 这个对应贝叶斯公式的目标结果 ;
② 示例对应 : 这里对应用户实际想要输入的单词 , 即 H 1 , H 2 , ⋯ , H n H_1 , H_2 , \cdots , H_n H1,H2,⋯,Hn 中概率最大的那个单词 ;
文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。
原文链接:hanshuliang.blog.csdn.net/article/details/105622347
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)