good-turning算法(例题)

image.png
解答:
合并训练集与测试集,计算合并之后的数据集集合在训练集中出现的次数:

张三 喜欢 外出 旅行 李四 登山 王五 不喜欢
1 2 2 1 1 1 0 0

那么:

r 0 1 2
N(r) 2 4 2

根据公式\({r^*} = {{(r + 1)({N_{r + 1}})} \over {{N_r}}}\)计算可以得到:

r* r(0)=2 r(1)=1 r(2)=2
N(r*) 2 4 2(最高次数的N(r*)不变就是N(r)

那么\(N = \sum\limits_{{r^*}} {{r^*}N({r^*})}\),得到N=2*2+4*1+2*2=12
现在开始求概率,概率公式\(P(r) = {{(r + 1)({N_{r + 1}})} \over {{N_r}N}} = {{{r^*}} \over N}\)
P(0)=2/12=1/6
P(1)=1/12
P(2)=2/12=1/6
验证归一性:\(P(0)*N(0) + P(1)*N(1)+P(2)*N(2) = {1 \over 6}*2 + {1 \over {12}}*4 + {1 \over 6}*2 = 1\),为1因此正确
s1=“王五 不喜欢 登山"
\(P\left( {s1} \right) = P\left( {王五} \right)*P\left( {不喜欢} \right)*P\left( {登山} \right) = P\left( 0 \right)*P\left( 0 \right)*P\left( 1 \right) = {1 \over 6}*{1 \over 6}*{1 \over {12}} = 0.00231481\)
s2=“王五 喜欢 外出 旅行”
\(P\left( {s2} \right) = P\left( {王五} \right)*P\left( {喜欢} \right)*P\left( {外出} \right)*P\left( {旅行} \right)\)
\(= P\left( 0 \right)*P\left( 2 \right)*P\left( 2 \right)*P\left( 1 \right) = {1 \over 6}*{1 \over 6}*{1 \over 6}*{1 \over {12}} = 0.0003858\)

posted @ 2024-04-18 17:57  夏muer  阅读(197)  评论(0)    收藏  举报