第三次作业

本文介绍了如何使用给定的概率模型来确定特定序列的实值标签,并通过一个具体实例进行了详细解析。此外,还展示了如何对给定标签的序列进行解码的过程。

5.给定如表4-9所示的概率模型,求出序列a1a1a3a2a3a1的实值标签。

                    表4-9  习题5,习题6的概率模型


 

          字母                                              概率


 

           a1                                                 0.2

           a2                                                 0.3

           a3                                                  0.5


 

解:由题可知,映射a1<=>1,a2<=>2,a3<=>3

Fx(k)=0, k≤0, Fx(1)=0.2, Fx(2)=0.5, Fx(3)=1, k>3

下界:  l(0)=0,上界:u(0)=1

该序列的第1个元素为a1:

           l(1)= 0+(1- 0)Fx(0)=0

           u(1)=0+(1-0) Fx(1)=0.2

序列的第2个元素为a1

           l(2)= 0+(0.2- 0)Fx(0)=0

           u(2)=0+(0.2-0) Fx(1)=0.04

序列的第3个元素为a3

           l(3)= 0+(0.04- 0)Fx(2)=0.02

           u(3)=0+(0.04-0) Fx(3)=0.04

序列的第4个元素为a2  

         l(4)= 0.02+(0.04- 0.02)Fx(1)=0.024

           u(4)=0.02+(0.04-0.02) Fx(2)=0.03

序列的第5个元素为a3   

           l(5)= 0.024+(0.03- 0.024)Fx(2)=0.027

           u(5)=0.024+(0.03-0.024) Fx(3)=0.03

序列的第6个元素为a1   

           l(6)= 0.027+(0.03- 0.027)Fx(0)=0.027

           u(6)=0.027+(0.03-0.027) Fx(1)=0.0276

该序列a1a1a3a2a3a1的标签所在的区间为[0.027,0.0276)

可以生成序列a1a1a3a2a3a1的标签如下:

Tx(a1a1a3a2a3a1)= l(6)+u(6)/2

                       =(0.027+0.0276)/2

                       =0.0273

6、对于表4-9所示的概率模型,对于一个标签为0.63215699的长度为10的序列进行解码。

 

include

 

int main()
{
double tag=0.63215699;
double l[100],u[100];
double t;
l[0]=0;
u[0]=1;
double A0=0.0,A1=0.2,A2=0.5,A3=1.0;
int M[100];
for(int k=1;k<=10;k++)
{
t=(double)(tag-l[k-1])/(u[k-1]-l[k-1]);
if(t>=A0&&t<=A1)
{
u[k]=l[k-1]+(u[k-1]-l[k-1])A1;
l[k]=l[k-1]+(u[k-1]-l[k-1])A0;
M[k]=1;
}
else if(t>A1&&t<=A2)
{
u[k]=l[k-1]+(u[k-1]-l[k-1])A2;
l[k]=l[k-1]+(u[k-1]-l[k-1])A1;
M[k]=2;
}
else if(t>A2&&t<=A3)
{
u[k]=l[k-1]+(u[k-1]-l[k-1])A3;
l[k]=l[k-1]+(u[k-1]-l[k-1])A2;
M[k]=3;
}
printf("%d",M[k]);
}
return 0;
}

 

转载于:https://www.cnblogs.com/sunhonghong/p/4849302.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值