最大熵原理

2023-11-16

最近看到一位高手,说了最大熵原理应用在排名!让我倍感发抖!网上有个人连研究基本步骤都写完了,着实让蛋疼了一小下,就引用一下吧
       最大熵原理在1957 年由E.T.Jaynes 提出的
       主要思想是,在只掌握关于未知分布的部分知识时,应该选取符合这些知识但熵值最大的概率分布。因为在这种情况下,符合已知知识的概率分布可能不止一个。熵定义的实际上是一个随机变量的不确定性,熵最大时,表示随机变量最不确定,也就是随机变量最随机,对其行为做准确预测最困难。最大熵原理的实质就是,在已知部分知识的前提下,关于未知分布最合理的推断就是符合已知知识最不确定或最随机的推断,这是我们可以作出的唯一不偏不倚的选择,任何其它的选择都意味着我们增加了其它的约束和假设,这些约束和假设根据我们掌握的信息无法作出。
可查看《浅谈最大熵原理和统计物理学》——曾致远(Richard Chih-Yuan Tseng)

信息论研究发现利用信息熵最大再附加上一些约束,就可以得到例如著名的统计学中的高斯分布(即正态分布)。这件事提示我们高斯分布又多了一种论证的方法,也提示了把信息熵最大化是认识客观事物的规律性的新角度。

(我记得用聚类的方法能证明为什么高斯分布状态下分类情况是最好的!这里论证高斯分布是什么意思我不明白)

      最大熵(maximum entropy)模型相当于行星运动的椭圆模型。原理很简单,就是要保留全部的不确定性,将风险降到最小。让我们来看一个实际例子,一个色子。每个面朝上的概率分别是多少,各面的概率均为1/6。假它每一个朝上概率均等的。从投资的角度看,就是风险最小的做法。从信息论的角度讲,就是保留了最大的不确定性,也就是说让熵达到最大。当对一个随机事件的概率分布进行预测时,预测应当满足全部已知的条件,而对未知情况不做任何主观假设。这种情况下,概率分布最均匀,预测的风险最小。这时概率分布的信息熵最大,所以称这种模型叫“最大熵模型”。不要把所有的鸡蛋放在一个篮子里,其实就是最大熵原理的一个朴素的说法,因为当我们遇到不确定性时,就要保留各种可能性。

如何用最大熵      

这个最大熵方法的特点是在研究的问题中,尽量把问题与信息熵联系起来,再把信息熵最大做为一个有益的假设(原理),用于所研究的问题中。由于这个方法得到的结果或者公式往往(更)符合实际。

把最复杂原理与信息论中的最大熵方法联系起来,既是自然的逻辑推论也显示最复杂原理并不孤立。这样,最大熵方法过去取得的一切成就都在帮助人们理解最复杂原理的合理性。而最复杂原理的引入也使人们摆脱对神秘的熵概念和熵原理的敬畏。在理解了最复杂原理来源于概率公理以后,我们终于明白,神秘的熵原理本质上仅是“高概率的事物容易出现”这个再朴素不过的公理的一个推论。
 
网上有个写很全面,非常适合菜鸟入门!
 
一、熵
物理学概念
宏观上:热力学定律——体系的熵变等于可逆过程吸收或耗散的热量除以它的绝对温度(克劳修斯,1865)
微观上:熵是大量微观粒子的位置和速度的分布概率的函数,是描述系统中大量微观粒子的无序性的宏观参数(波尔兹曼,1872)
结论:熵是描述事物无序性的参数,熵越大则无序。
二、熵在自然界的变化规律——熵增原理
一个孤立系统的熵,自发性地趋于极大,随着熵的增加,有序状态逐步变为混沌状态,不可能自发地产生新的有序结构。
当熵处于最小值, 即能量集中程度最高、有效能量处于最大值时, 那么整个系统也处于最有序的状态,相反为最无序状态。
熵增原理预示着自然界越变越无序
三、信息熵
(1)和熵的联系——熵是描述客观事物无序性的参数。香农认为信息是人们对事物了解的不确定性的消除或减少,他把不确定的程度称为信息熵(香农,1948 )。
随机事件的信息熵:设随机变量ξ,它有A1,A2,A3,A4,……,An共n种可能的结局,每个结局出现的概率分别为p1,p2,p3,p4,……,pn,则其不确定程度,即信息熵为
最大熵理论及其应用

(2)信息熵是数学方法和语言文字学的结合。一个系统的熵就是它的无组织程度的度量。熵越大,事件越不确定。熵等于0,事件是确定的。
举例:抛硬币,
p(head)=0.5,p(tail)=0.5
H(p)=-0.5log 2(0.5)+(-0.5log 2(0.5) )=1
说明:熵值最大,正反面的概率相等,事件最不确定。
四、最大熵理论
在无外力作用下,事物总是朝着最混乱的方向发展。事物是约束和自由的统一体。事物总是在约束下争取最大的自由权,这其实也是自然界的根本原则。在已知条件下,熵最大的事物,最可能接近它的真实状态。
五、基于最大熵的统计建模:建模理论
以最大熵理论为基础的统计建模。
为什么可以基于最大熵建模?
Jaynes证明:对随机事件的所有相容的预测中,熵最大的预测出现的概率占绝对优势。
Tribus证明,正态分布、伽马分布、指数分布等,都是最大熵原理的特殊情况。
结论:最大熵统计建模是以最大熵理论为基础的方法,即从符合条件的分布中选择熵最大的分布作为最优秀的分布。
最大熵统计模型需要解决的问题:
(1)特征空间的确定——问题域
(2)特征选择——寻找约束条件
(3)建立统计模型——基于最大熵理论建立熵最大的模型
六、基于最大熵的统计模型:数学描述
(1)问题描述:设最终输出值构成的语言学类别有限集为Y,对于每个y∈Y,其生成均受上下文信息x的影响和约束。已知与y有关的所有上下文信息组成的集合为X,则模型的目标是:给定上下文x∈X,计算输出为y∈Y的条件概率p(y|x)。
(2)训练样例
例子:我们的任务是为词“打”的词性标注过程建立模型,标注模型为p,每个可能的词性为p(t)。
“打”的可能词性:{动词,量词,介词}。
由此,模型p的第一个约束:p(动词)+p(量词)+(介词)=1
在训练最大熵模型时,任务选连系统通过数据转换程序或者模式识别中通常所说的特征抽取器,把真实世界的,原始训练数据通过特定的方法或者算法转化为多特征或属性表示的训练样例。
条件最大熵方法是一种有监督的机器学习方法,所以每个训练样例由一个实例x以及他的目标概念类y组成。
七、基于最大熵的统计建模:数学推导
(1)模型输入:从人工标注的训练数据中抽取的训练样本集T={(x1,y1),(x2,y2),...,(xn,yn)},(xi,yi)表示在语料库中出现yi时其上下文信息为xi。
(2)从训练样例中得到经验概率分布:其中Count(x,y)是语料中出现的次数,N为总词数。则
最大熵理论及其应用
(3)特征f是指x与y之间存在的某种特定的关系,用二值函数表示:
最大熵理论及其应用

(4)特征的经验概率期望值是所有满足特征要求的经验概率之和,即:
最大熵理论及其应用
引入1个特征:
最大熵理论及其应用
(5)特征的期望概率是特征在所学习的随机事件中的真实分布为:

最大熵理论及其应用
其中, 最大熵理论及其应用是指x出现的情况下,y的经验概率。 最大熵理论及其应用是指x出现的情况下,y的真实概率。
(6)特征的经验概率与期望概率应该一致,即: 最大熵理论及其应用
即: 最大熵理论及其应用
上面的式子即成为约束等式。
(7)设存在k个特征f i(i=1,2,...,k),多个约束等式构成的集合叫做约束集,可表示为:
最大熵理论及其应用
(8)最大熵模型,是满足约束条件的所有模型中熵最大的模型,即:
最大熵理论及其应用
其中p为满足约束集C条件下的某一统计模型。argmax表示寻找具有最大评分的参量。
(9)于是我们可以把这个最大熵模型表示为:在满足约束条件中选择熵最大的那个。
这是一个有约束的优化问题
最大熵理论及其应用
最大熵理论及其应用
我们可以用拉格朗日乘数法来解决这个优化问题。
具体步骤如下:
为每一个特征f i引入一个参数λ i(称为拉格朗日算子),另外由于p(y|x)是条件概率,所以有 最大熵理论及其应用,所以也要为每个实例x引入一个参数k(x)。那么拉格朗日函数可定义为:
最大熵理论及其应用
然后对它求导,就可以求出 最大熵理论及其应用最大时 最大熵理论及其应用
(10)特征f i的权重用相对应的参数λ i表示,则满足最大熵条件p(y|x)用指数形式表示为:
最大熵理论及其应用

其中: 最大熵理论及其应用称为归一化因子。
(11)此时,最大值 最大熵理论及其应用
(12) 最大熵理论及其应用称为归一化因子,它的引入是为了保证 最大熵理论及其应用的概率。
(13)这样我们就把一个有约束的优化问题转化为一个没有约束优化的问题。

八、最大熵模型的求解
许多自然语言处理问题都可以归结为分类问题,其任务是估计目标概念类y在实例或上下文或条件x的概率,即
p(y|x)。
最大熵模型有两个基本的任务:特征选择和模型选择。
特征选择:选择一个能表达随机过程的统计特征的特征集合。
模型选择:即模型估计或者参数估计,就是为每个入选的特征估计权重λ。九、基于最大熵的统计建模:参数估计 Input:特征函数集合{f},特征经验分布 最大熵理论及其应用
Output:最优参数值集合{λ},最优模型 最大熵理论及其应用
GIS算法、IIS算法、SCGIS算法
十、基于最大熵的统计建模:特征选择
在所有的特征中选择最有代表性的特征,构造约束集合。
数据稀疏的问题。
特征选择的步骤:特征模板—>候选特征->选择特征
特征选择的方法:(1)增量式特征选择算法,基本算法和近似算法。(2)基于频数阈值的特征选择算法。
十一、最大熵模型的优缺点
优点:
(1)建模时,试验者只需集中精力选择特征,而不需要花费精力考虑如何使用这些特征。
(2)特征选择灵活,且不需要额外的独立假定或者内在约束。
(3)模型应用在不同领域时的可移植性强。
(4)可结合更丰富的信息。
缺点:
(1)时空开销大
(2)数据稀疏问题严重
(3)对语料库的依赖性较强
十二、最大熵模型的应用
词性标注、短语识别、指代消解、语法分析、机器翻译、文本分类、问题回答、语言模型......

转载于:https://www.cnblogs.com/cl1024cl/archive/2013/03/20/6205728.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最大熵原理 的相关文章

  • Kotlin Lazy vs Lateinit 属性. 何时使用哪个属性?

    原文链接 Kotlin提供了许多很棒的特性 我们可以利用这些功能 快速构建高质量的应用程序 在所有这些特性中 lateinit 和 lazy 是重要的初始化属性 有必要知道何时使用 lateinit 以及何时使用 lazy 初始化 late
  • 【搜索和回溯】剑指 Offer 28. 对称的二叉树

    题目描述 请实现一个函数 用来判断一棵二叉树是不是对称的 如果一棵二叉树和它的镜像一样 那么它是对称的 示例 输入 root 1 2 2 3 4 4 3 输出 true 题解 运用DFS遍历 递归 求解 Definition for a b
  • mysql索引基础

    1 创建索引 alter table table name add index index name column list alter table table name add unique index name column list
  • Spring框架入门之HelloWorld

    一 什么是框架 框架 即framework 其实就是某种应用的半成品 就是一组组件 供你选用完成你自己的系统 简单说就是使用别人搭好的舞台 你来做表演 而且 框架一般是成熟的 不断升级的软件 框架是对特定应用领域中的应用系统的部分设计和实现
  • 常见的无参考图像质量评价指标汇总

    进一步学习https www csdn net gather 22 MtzaIgxsMzQwLWJsb2cO0O0O html 一 基于空间分布的角度 1 直观的方法 直方图 看灰阶数和灰阶分辨率 2 方差或者标准差 方差是指图像像素灰度值
  • 语言学句法分析树形图怎么画_哇,好大一棵树! 如何优雅地画句法树形图 丨语言学午餐...

    原标题 哇 好大一棵树 如何优雅地画句法树形图 丨语言学午餐 相信很多语言学 非语言学学生 在看到句法学的书上 论文上 试卷上出现这样的东西 你想的第一个问题可能是 这XX是什么 当你知道这是句法树形图之后 你想的第二个问题可能是 教科书上
  • Vue3 <script setup>中局部引入组件,动态组[Vue warn]: Vue received a Component which was made a reactive object.

    vue3 动态组件使用报错 Vue 提示如果动态组件绑定的是一个ref 的响应式对象会造成不必要的性能问题 建议用 markRaw 或者 shallowRef 代替 ref 由于Vue3中动态组件绑定的是组件实力并不是组件名称 所以用sha
  • Py之fvcore:fvcore库的使用方法之详细攻略

    Configs from fvcore common config import CfgNode Config definition C CfgNode
  • Android——ContentProvider详解

    1 简介 ContentProvider 内容提供者属于Android的四大组件之一 用于进程间 进行数据交互 共享 即跨进程通信 原理 使用binder机制 后续再进行介绍 统一资源标识符 URI MIME数据类型 全称Multipurp
  • Linux下破解root用户密码

    目录 一 密码破解 Centos7 二 grub2引导菜单加密 linux下破解root密码 一 密码破解 Centos7 通过进入单用户模式修改内核参数来进行修改密码 步骤 官方推荐方法 rd break 以只读的方式 终止 以可读写的方
  • mysql建立索引

    1 添加PRIMARY KEY 主键索引 mysql gt ALTER TABLE table name ADD PRIMARY KEY column 2 添加UNIQUE 唯一索引 mysql gt ALTER TABLE table n
  • JSON格式数据示例操作

    json示例数据 test1 wx9fdb8ble7ce3c68f test2 123456789 testData1 testdatason1 97895455 testdatason2 3 testData2 testshuzu1 12
  • windows 下 文件多服务器同步工具cwRsync使用配置教程

    1 cwRsync安装 首先 准备好服务端cwRsyncServer 4 0 5 Installer exe和客户端的安装包cwRsync 4 0 5 Installer exe 这里说明一下cwRsync的服务端和客户端 cwRsync的
  • IMU+激光雷达实现大规模动作捕捉

    VR技术的兴起 使得动作捕捉这门让人们可以使用肢体语言在虚拟世界中进行互动和交流的技术逐渐成为热门 随着科技的进步 如今的动作捕捉技术已经十分成熟 但在大规模场景中准确地捕捉人体运动仍然具有挑战性 它对于体育大型赛事 舞台表演 人群互动等的
  • synchronized 与 Lock 的异同

    最近在做一个监控系统 该系统主要包括对数据实时分析和存储两个部分 由于并发量比较高 所以不可避免的使用到了一些并发的知识 为了实现这些要求 后台使用一个队列作为缓存 对于请求只管往缓存里写数据 同时启动一个线程监听该队列 检测到数据 立即请
  • linux下安装和使用mongo

    1 下载和安装 1 1版本匹配 Linux下运行 uname a 查看Linux系统的版本 root VM 0 7 centos bin uname a Linux VM 0 7 centos 3 10 0 514 26 2 el7 x86
  • 【其它】关于size_t与int之间的比较

    void SeqListInsertByPos SeqList pList size t pos DateType x assert pList NULL pos lt pList gt size if IsFull pList print
  • 华为OD机试真题-预定酒店【2023.Q1】

    题目描述 放暑假了 小明决定到某旅游景点游玩 他在网上搜索到了各种价位的酒店 长度为n的 数组A 他的心理价位是x元 请帮他筛选出k个最接近x元的酒店 n gt k gt 0 并由低到高打印酒店的价格 输入描述 第一行 n k x 第二行
  • Java操作MongoDB采用MongoRepository仓库进行条件查询

    1 实体类 public class Person implements Serializable private static final long serialVersionUID 8288372263395673353L privat
  • ResNet50及其Keras实现

    如果原理你已经了解 请直接到跳转ResNet50实现 卷积神经网络 第三周作业 Residual Networks v1 你或许看过这篇访问量过12万的博客ResNet解析 但该博客的第一小节ResNet和吴恩达的叙述完全不同 因此博主对这

随机推荐

  • 如何参与Linux内核开发

    如何参与Linux内核开发 这是一篇将如何参与Linux内核开发的相关问题一网打尽的终极秘笈 它将指导你 成为一名Linux内核开发者 并且学会如何同Linux内核开发社区合作 它尽可能不包括任何关于内核编程的技术细节 但会给你指引一条获得
  • 一文搞懂ChatGPT 和 AIGC 到底是什么?【最强科普】

    目录 1 AIGC是什么 2 ChatGPT是什么 3 ChatGPT发展的几个阶段 4 ChatGPT能做什么 5 ChatGPT的应用场景 一 AIGC是什么 GC Generated Content 内容生成 PGC Professi
  • LeetCode 18. 四数之和 4Sum(C语言)

    题目描述 给定一个包含 n 个整数的数组 nums 和一个目标值 target 判断 nums 中是否存在四个元素 a b c 和 d 使得 a b c d 的值与 target 相等 找出所有满足条件且不重复的四元组 注意 答案中不可以包
  • 处理糊涂工具包 和easyexcle jar报poi冲突问题

    项目中使用的糊涂工具包是高版本的 使用的easyexcle 是2 x版本 导致出现问题 同时引用hutool和easyExcel会导致其中一者功能不可用 因为poi版本不兼容 easyExcel依赖了poi 3 17版本 Hutool文档说
  • 计算机算法基础总结(借鉴、整理)

    作者 Jerry4me 链接 https www jianshu com p f6e35db6bc51 排序算法 算法 最优复杂度 最差复杂度 平均复杂度 稳定性 选择排序 O n O n O n 不稳定 冒泡排序 O n O n O n
  • Spring原理-IoC容器初始化过程

    IoC容器初始化过程 IoC容器的两个核心接口BeanFactory和ApplicationContext大概功能都讲解了一些 接下来我们讲解一下IoC容器的初始化过程 让大家有一个深一点的理解 讲解还是以FileSystemXmlAppl
  • 卷积神经网络CNN在自然语言处理中的应用

    卷积神经网络 Convolution Neural Network CNN 在数字图像处理领域取得了巨大的成功 从而掀起了深度学习在自然语言处理领域 Natural Language Processing NLP 的狂潮 2015年以来 有
  • 【vulnhub靶机】DC-3

    原知识星球老文搬运 拿到靶机之后导入到virtualBOX里面 1 nmap扫描主机存活 192 168 56 104 有个80端口 不放心的话可以用masscan 2 直接访问看下 这里提示只有一个flag 直接拿到root权限 3 习惯
  • uniapp开发的h5网页如何去掉网址里的#号

    在manifest json里配置history模式 这里特别注意下面的 运行的基础路径 里不要写 因为这个默认会强制hash模式 如图 然后再服务器端配置下规则 history模式下配置nginx location try files u
  • GPL和MIT开源协议

    GPL GNU通用公共许可证简称为GPL 是由发行的用于计算机软件的协议证书 使用该证书的软件被称为自由软件 大多数的GNU程序和超过半数的自由软件使用它 GPL的出发点是代码的开源 免费使用和引用 修改 衍生代码的开源 免费使用 但不允许
  • char码值对应列表大全

    Char 0 为0的字符 Char 1 Char 2 Char 3 Char 4 Char 5 Char 6 Char 7 响铃 Char 8 回格 Char 9 tab 水平制表符 Char 10 换行 Char 11 tab 垂直制表符
  • Dump文件的生成以及使用WinDbg静态分析

    前言 本文章主要介绍了如何生成Dump文件 包括两种方式 通过代码生成和通过注册表生成 并且介绍了WinDbg工具的下载和使用 以及如何使用WinDbg工具去静态分析Dump文件 从而找到程序的崩溃位置 生成Dump文件 通过调用WinAP
  • cas 编译安装依赖时提示: Failure to find net.shibboleth.tool:xmlsectool:jar:2.0.0

    错误信息 Could not resolve dependencies for project org apereo cas cas overlay war 1 0 Failure to find net shibboleth tool x
  • 本地 Django 部署 Heroku的时候某个 / 某些数据库显示总是无法创建成功 relation “nnsh_backend_new_userinfo“ does not exist LINE

    文章目录 情景 原因 操作 手动 自动 情景 假设你有一个项目 A 你之前部署了项目 A 里面包含了两个数据库的表 table1 和 table2 他们都顺利部署 然后你相加一些功能 于是又创建了一张表 table3 于是再部署的时候发现
  • glBindFragDataLocation

    异构计算GLSL学习笔记 1 原文地址 http blog csdn net hjimce article details 51475644 作者 hjimce 最近开始学习深度学习的一些gpu编程 大体学了cuda后 感觉要在手机上跑深度
  • python-查看帮助

    help 一 不同的环境下 1 交互模式下 命令行 查看模块的帮助信息 import pickle help pickle 可以看到详细信息 More 上回车 滚动信息 q 退出帮助 2 ide里 需要做一个输出 import pickle
  • unity基础编程(一)

    以此来记录系统学习使用unity的知识方便以后复习使用 如果能得到监督和指导 不胜感激 unity常用使用快捷键 1 Q 抓手工具 W 移动工具 E 旋转工具 R 缩放工具 T 横切面工具 就在键盘一排试一试就会很清楚了 2 Z 轴点模式切
  • 自动在图片上添加页码

    在一次工作中 需要对几百GB的图片文件添加页码 也就是在图片添加一定的流水号 那么 在图片上添加页码 总的需要四个步骤 1 图片重命名 批量修改原图片名 设置流水号作为图片文件名 如 0001 gt 0036 2 添加页码 通iSee软件批
  • Docker赋能物联网:探索软件供应链的优势、挑战和安全性

    作者 JFrog大中华区总经理董任远 随着联网设备硬件性能的日益提升及价格愈发低廉 物联网应用的复杂性随之提升 常用的容器化平台Docker能够帮助精简流程 助力开发人员更轻松地创建和维护物联网应用 本文将探讨Docker为物联网开发带来的
  • 最大熵原理

    最近看到一位高手 说了最大熵原理应用在排名 让我倍感发抖 网上有个人连研究基本步骤都写完了 着实让蛋疼了一小下 就引用一下吧 最大熵原理在1957 年由E T Jaynes 提出的 主要思想是 在只掌握关于未知分布的部分知识时 应该选取符合