跳到内容
← 全部问题

关于条件熵的 Matlab 练习是什么?

该练习要求学生实现一个 Matlab 函数 conditionalentropy(p),该函数从二维联合概率矩阵 p(x,y)p(x,y) 计算给定 Y 时 X 的条件熵。它包括特定的测试用例以验证正确性,例如确定性和均匀分布。

适用条件

  • 输入 p 被假定为二维联合概率数组 p(x,y)p(x,y)。
  • 学生可以重用现有的 entropy() 和 jointentropy() 例程。

理解与推导

  1. 定义接受二维矩阵 p 的函数 conditionalentropy(p)。
  2. 使用现有例程或直接从 p 计算联合熵 H(X,Y)H(X,Y) 和边缘熵 H(Y)H(Y)。
  3. 应用链式法则 H(X|Y) = H(X,Y)−H(Y)H(X,Y) - H(Y) 返回结果。
  4. 针对提供的测试用例验证函数:conditionalentropy([0.5,0;0,0.5]) 应等于 0,conditionalentropy([0.25,0.25;0.25,0.25]) 应等于 1。

例子

练习幻灯片指出:“编辑 Matlab 函数 conditionalentropy(p),以返回给定联合概率 p 时 X 关于 Y 的条件熵。”并附有打印的测试 conditionalentropy([0.5,0;0,0.5])=0 和 conditionalentropy([0.25,0.25;0.25,0.25])=1。

容易误解的地方

  • 假设输入 p 是边缘概率向量而不是二维联合概率矩阵。
  • 忘记条件熵不是对称的,正如比较 H(sex|earrings) 和 H(earrings|sex) 的 Guess Who! 例子所强调的那样。

观看对应讲解

相关概念

继续追问

相关问题

认识概念

↗
理解原因

↗

答案依据视频资料生成并经过独立核验。若有疑问,请核对原视频或联系原作者。