概率的基础性质及信息量和信息熵

性质1:

性质2:(有限可加性)当n个事件A1,…,An两两互不相容时: 

性质3:对于任意一个事件A:

性质4:当事件A,B满足B包含A(A包含于B)时:

性质5:对于任意一个事件A,

性质6:对任意两个事件A和B,

性质7:(加法公式)对任意两个事件A和B,

 

若AB互相独立,则AB同时发生的概率为:

期望:E

期望:或称均值,是实验中每次可能结果的概率乘以其结果的综合,反应随机变量平均取值的大小

 eg:

方差:随机变量X和期望E(X)之间的偏离程度

 正态分布:

:系统内在的混论程度

信息量:信息多少的量度,将消息数的对数定义为信息量,即log (a)X

信息量:指从N个相等可能事件中选出一个事件所需要的信息度量或含量,也就是辨识N个事件中特定的一个事件的过程中所需要提问“是或否”的最少次数

如果信源有m种消息,且每个消息是以相等可能产生的,则该信源的信息量可以表示为

哈特莱 : I(信息量)=log2 m(m种消息)

香农:信源的信息量是概率的函数,以信源的信息熵表示

 Pi表示信源不同种类符号的概率,i=1,2,....n

当一个连续信源被等概率量化为4层,则

香农:H(U)=- 1/4*log2(1/4)=2 bit

哈特莱: I=log2(4)=2 bit

哈特莱是等概率时的香农公式,即是香农公式的特例

在信息论中,认为信源输出的消息是随机的,通信的目的是使接收者在接收到消息后,尽可能多的解除接收者对信源所存在的疑义(不定度),这个被解除的不定度就是在通信中所要传送的信息量

信息熵:即信源的概率函数

实际信源多为有记忆序列信源,只有在掌握全部序列的概率特性,才能计算出该信源中平均一个符号的熵 H(L)(U)

(L为符号,如果序列信源简化为单一的一阶,齐次,遍历马氏链,则比较简单,根据符号的条件Pji(即前一符号位i条件下后一符号为j的概率),可以求出遍历信源的稳定概率Pi,再由Pi,Pji求出H(L)(U))

H (U|V)称为条件熵,即前一符号V已知时后一符号U的不确定度

信息量与信息熵在概念上是有区别的

在收到符号之前是不能肯定信源到底发送什么符号,通信的目的是使接收者在受到符号后,解除对信源存在的疑义(不确定度),使不确定度变为零,这说明接收者从发送者的信源中获得的信息量是一个相对的量(H(U)-0)

信息熵是描述信源本身统计特性的物理量,表示信源产生符号的平均不确定度,不管有无接收者,总是客观存在的量

从信源中一个符号中获取另一符号U的信息量可用互信息表示,即

I(U;V)=H(U)-H(U|V)

表示在收到V以后仍然存在对信源符号U的疑义(不确定度),一般情况下

I(U;V)<=H(U)

即获得的信息量比信源给出的信息熵要小

连续信源可有无限个取值,输出信息量是无限大,但互信息是两个熵值之差,是相对量,

不论连续或离散信源,接受者获取的信息量仍然保持信息的一切特性,且是有限值

自动连锁机制:评价者在评价他人他事他物的同时,不能不表现自身,不能不被评价

在利用显在的频数信息的同时,巧妙利用了潜在的泛序信息--权数,使模糊系统简便有效地转换成明晰的工程系统,其测度模式是:

F(I)=Ln(max{I}-l+2)/Ln(max{I}-1)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要根据离散数据和目标信息计算分布概率,可以使用Python代码。以下是一个示例代码: ```python from collections import Counter import math # 创建一个离散数据集 data = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4] # 计算每个元素出现的频率 value_counts = Counter(data) total_count = len(data) probabilities = [count / total_count for count in value_counts.values()] # 计算目标信息 target_entropy = 2.0 # 定义一个函数来计算信息 def entropy(probabilities): return -sum(p * math.log2(p) for p in probabilities) # 定义一个函数来计算分布概率 def calculate_probabilities(data, target_entropy): # 创建一个空的概率分布列表 probabilities = [] # 计算每个元素出现的频率 value_counts = Counter(data) total_count = len(data) # 遍历每个元素的频率,并计算概率 for count in value_counts.values(): p = count / total_count # 根据目标信息来调整概率 adjusted_p = p ** target_entropy probabilities.append(adjusted_p) # 归一化概率分布 sum_probabilities = sum(probabilities) normalized_probabilities = [p / sum_probabilities for p in probabilities] return normalized_probabilities # 计算分布概率 distribution_probabilities = calculate_probabilities(data, target_entropy) print("分布概率:", distribution_probabilities) ``` 在这个例子中,我们首先创建了一个离散数据集`data`,其中包含了一些整数值。 然后,我们使用`Counter`对象计算每个元素的频率,并将其转换为概率(即出现次数除以总数)。 接下来,我们定义了一个函数`entropy`来计算信息。这个函数使用了`math.log2`函数来以2为底求对数。 然后,我们定义了一个函数`calculate_probabilities`来计算分布概率。这个函数遍历了每个元素的频率,根据目标信息来调整概率,并将它们归一化。 最后,我们调用`calculate_probabilities`函数来计算分布概率,并打印结果。 希望对您有所帮助!如有任何疑问,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值