最大熵模型概念VS最大熵模型在名著中的应用
0x01 背景概念
1.什么是熵?
熵的概念可以从几个角度来解释。
1.1 从物理角度理解熵
熵来自物理学。德国人物理学家·鲁道夫和克劳修斯首先提出了熵的概念,用来表示空间中能量分布的任何均匀性。能量分布越均匀,熵就越大。换句话说,熵是表示物质系统状态的度量,用来表征系统的无序程度。
- 熵越大,系统越无序,意味着系统的结构和运动是不确定的、不规则的;
- 熵越小,系统越有序,意味着系统具有确定的、有规律的运动状态。
1.2 从系统复杂性的角度理解熵
信息熵也可以用作系统复杂性的度量,即衡量物质系统的有序性、组织性和复杂性。
- 如果系统比较复杂,有多种不同情况,那么它的信息熵就比较大。
- 如果系统越简单,情况类型越少(极端情况是一种情况,那么对应的概率为1,对应的信息熵为0),那么信息熵就更小。
熵越大,系统的不确定性越大,系统未来发展的可能性也越大。
1.3 熵的推导和定义
熵的定义: ?(?) = −???(?(?????????(?)))
其中? (?)表示随机事件发生的概率H(X),称为随机变量x的熵。它是对随机变量不确定性的度量,也是对所有可能事件产生的信息量的期望。负号用于确保信息量为正或为零。
为什么基数为2?这是因为我们只需要信息内容,使得低概率事件 x 对应于高信息内容。那么对数的选择是任意的。只要遵循信息论的一般传统,使用2作为对数的底即可!
从公式中可以看出,随机变量取值越多,状态数就越多,信息熵就越大,混乱程度就越大。
当随机分布均匀时,熵最大。关于均匀分布的最大熵,这里有一个很好的例子:
我们以全班的测试结果为例。一般来说,我们知道全班的成绩服从高斯分布。经过测试,我们发现大家的分数都是一样的。在学校看来,这是一个不同寻常的新闻,因为这是一起极其低级的事件,但它却发生了,而且不符合常态。下一步应该是进行调查。 ?河南帮。假设陕西帮的2/3和河南帮的1/3是
那么具体的熵值:
- [1/3 * log(1/3) + 2/3 * log(2/3)] = 0.63
复制代码这次凉山的熵
是按照山顶来划分的。例如:
- 松江派(华荣、雷横、李逵、清风山、欧鹏、吕方、关胜、呼延灼...)
- 三山派(鲁智深、吴植、杨章青) 、曹政...)
- 曹盖派(林冲、刘唐、三阮、白胜...)
- 卢俊义大名府派(燕青、蔡氏兄弟...)
- 登州派系(孙莉、顾嫂……)
- 揭阳江派系(李军、童伟、童猛……)
- 无党派人士(肖让、金大建、安道全。 ..)
假设宋江派占1/3,其他派占1/9,那么具体的熵值为:
- [1/3 * log(1/3) + 6 * 1/9 * log(1/9)] = 1.83
复制代码从这个角度来看,梁山更多。他不稳定,所以招募选择是一个好主意,而闯军相对稳定,所以他可以通过沉浮杀死崇祯。
2。最大熵原理
最大熵原理意味着世界将普遍无序。无论是商业、生活、钢铁、政治,一切都会灭亡!
他描述的是自然事实,即基于目前已知的前提,即在限制条件下,未知事件发生的概率尽可能接近事物的自然规律。
整个宇宙的发展就是熵增加的过程。如果不施加外力,事情总是会朝着更加混乱的状态发展。如果施加外力,系统会在外力的限制内达到最混乱的状态。
比如,面对一个系统,你应该想到这个系统一定会自然地进入最无序的状态。可以说,我对系统施加外力,限制它,组织它。但实际上,系统在外力或约束的影响下,很容易出现最大无序状态 。比如,当你整理耳机的时候,不管你把耳机线整理得多么熟练,如果你把它收起来一段时间再拿出来,你会发现耳机还是有些乱七八糟的。
最大熵原理指出,在预测随机事件的概率分布时
- 不要对未知情况做出主观假设。
- 如果您对这个分布一无所知,请猜测具有最大熵的均匀分布。
- 如果您了解此分布,请猜测满足这些条件的最高熵分布(即预测必须满足所有已知约束)。
从风险预测的角度来看,熵越高越好。这意味着必须保留所有不确定性并将风险最小化。你不能把所有鸡蛋放在一个篮子里。当概率分布最均匀时,那么预测的风险最小,此时得到的概率分布的熵最大。
3。判别模型 vs 判别模型生成模型
分类问题是为数据x确定适当的标签y。分类模型有两种类型:判别模型和生成模型。
3.1 生成模型(生成)
生成模型之所以被称为生成模型是因为 x 是特征,y 是标签。什么标签生成什么功能。例如,如果标签是大象,可能的特征包括大耳朵、长鼻子等。该模型表示代际关系 ,这导致输出 Y 和输入 X。 生成模型必须学习观测数据x和隐藏类别y的联合概率分布P(x,y),然后我们得到贝叶斯的条件概率P(y|x) - 根据公式,预测y是最高的条件概率。换句话说,仅在训练阶段对P(X,Y)进行建模,并且必须确定该联合概率分布的所有信息参数。具体过程如下: 重做生成模型工作流程。 学习阶段,建模:P(X,Y)=P(X∣Y)P(Y)P(X,Y)=P(X|Y)P(Y)P(X,Y)= P (X∣Y)P(Y) 然后根据新的X推导Y: P(Y∣X)=P(X,Y)P(X)P(Y|X) = \frac{P ( X ,Y)}{P(X)}P(Y∣X)=P(X)P(X,Y) 生成模型的优点是包含非常完整的信息。我称之为“上帝信息”,所以它不仅可以用于输入标签,还可以用于其他事情。生成模型专注于取得结果。但生成模型需要非常充足的数据量才能保证采样到数据的原貌,因此速度相对较慢。换句话说,生成模型模拟了数据的真实分布。 生成模型示例:HMM/朴素贝叶斯。朴素贝叶斯必须同时对输入X和输出Y进行建模才能得到P(X,Y)的联合分布,因此它是一个生成模型。自 判别模型直接对条件概率P(Y|X)和特征直接基于Y模型进行建模。 X。一种流行的解释是,它们预测给定特征值的结果的概率。 判别模型根据给定的X(特征)直接学习数据的Y(或标签)。训练过程就是P(Y|X)模型中“复杂映射关系”参数的确定。 判别模型只为所有样本构建一个模型,并确认一般判别极限。观察输入特征后,我们预测最可能的标签,最终画出一个明显或相对明显的边界(具体来说,这可以通过复杂的函数映射、决策叠加等来实现)。 也就是说,判别模型是判别模型,因为去掉了独立性的假设,所以不能给出联合概率分布,只能求后验概率,所以是判别模型。 判别模型示例:逻辑回归/SVM/CRF。 判别模型的优点:对数据量的要求不像生成模型那么严格,速度会很快,而且数据量少,准确率也比较好。 从概率图的角度来看,有向图表达的是一种导数关系,即B是在A的前提下出现的。该模型也称为生成模型。 无向图表达的是“真”关系,即A和B同时存在是正确的。该模型也称为判别模型。 生成模型通常使用联合概率来计算(因为我们知道A的前提,所以我们可以计算联合概率)。 判别模型通常是用条件概率来计算的(由于我们不知道前提,所以只能“假设”条件A下B的概率)。 生成模型的目的是找到联合概率分布P(X,Y),然后利用条件公式找到条件概率分布P(Y|X)。即,P(Y|X) = P(X,Y) / P(X)。由于学习了联合分布,数据的分布也可以在统计上表示为,可以反映相似数据本身的相似度。但划分类别的分类边界在哪里并不重要。 判别模型直接从训练数据中得到决策函数Y=f(x)或条件概率分布P(Y|X)。你不需要担心X和Y之间的生成关系。您关心的是给定输入 X 应该得到什么输出 Y。您不需要先学习联合分布 P(X,Y)。 不能反映训练数据本身的特征。但它寻找不同类别之间的最优分类面,反映异构数据之间的差异。由于P(Y|?直接学习)统一模型提取这只羊的特征来预测这只羊是山羊的概率和它是绵羊的概率。我只需要了解绵羊和山羊之间的某些区别。 例如,山羊更擅长攀岩。根据岩面的坡度,山羊在45度以上的山坡上,绵羊在45度以下的山坡上。陡峭的山坡就像平地上一样,所以是山羊。 模型生成方法: 先根据山羊的特点(瘦身、三角角、镰刀)学习一个山羊模型形曲线,通常有粗而短的毛,多为白色,也有黑色)、青色、棕色或杂色,尾巴上翘,粗壮,以幼小灌木的枝条为食)。 根据羊的特征学习羊模型(全身,短头,公羊有大螺旋角,母羊无角或只有薄而小的角。皮毛细密,蜂蜜色,多为白色。羊的嘴唇薄而且灵活,适合吃很短的草,性情温顺,害羞,主要吃草)。 然后从这只羊身上提取各种特征,放入山羊模型中看看概率是多少,然后放入绵羊模型中看看概率是多少。以较大者为准。 在这个问题中,在第一个判别模型方法中,你只记得山羊和绵羊之间的差异。在第二个生成模型想法中,您实际上了解了什么是绵羊和什么是山羊。 2。例如:判断一个声音属于哪一种语言 例如,当有人过来对你说话时,你需要判断是中文、英语还是法语等。讲话。您可以通过两种方式实现此目标: 3。示例:跟踪算法 一般来说,生成模型需要非常充足的数据量才能保证对数据的原始端进行采样。判别模型对数据量的要求不如生成模型严格。但必须具体情况具体分析。 例如,根据贝叶斯公式 我们知道 现在我们使用公式 例如:X=吸烟者,Y=患肺癌的机会,建模 P(Y|X) 可能非常复杂。建模 P(X|Y) 更容易,因为建模 P(X|Y) 就像看看肺癌患者中吸烟者的情况我们都知道有数十亿人吸烟,但是肺癌患者的数量毕竟只是一个小数字,从肺癌患者开始建模比较容易,比如10万肺癌患者的1000个样本就足够了。 最大熵模型是直接计算条件熵的分类器的判别模型。经验知识,给定一个数据集,判别模型就是学习一个条件概率分布模型 P(y|x) 这样的分布有无数个,那么这无数个概率分布中哪个最好呢?这使用最大熵来构建模型。 我们对已知知识进行建模,并对未知知识不做任何假设。换句话说,给定一组事实(特征+输出),选择一个适合所有事实的模型,并且在其他方面尽可能接近统一。 我们的任务是创建一个准确表示随机过程行为的统计模型。模型的任务是预测上下文x中输出y的概率:p(y|x)。 分类模型的生成通常分为两个步骤: 经验知识是特征函数引入的极限。特征函数f(x,y)描述了x和y之间的某个事实(经验知识)。 优化推导过程:给定训练集,即给定约束(经验知识),可以得到满足约束的条件概率模型集合{P(y|X)}。 这里我们必须将 P(y|x) 视为一组无数概率分布,即每个 x 对应于给定的概率分布 P(y|x) 并且每个概率分布都有熵。 ,此时所谓的最大熵使所有此类概率分布的熵之和最大化。由于每个 x 都有一个经验概率 P~(x),因此我们还必须对这些熵进行加权求和,以表明哪种概率分布对于最大化其熵更重要。 然后利用特征函数的形式将训练数据整合成条件概率。最后,基于最大熵原理,选择所有可能的概率模型(概率分布)中条件熵最高的模型作为最终的分类模型。因此,学习最大熵模型就意味着解决约束优化问题。 最原始的最大熵模型训练方法是称为GIS(广义迭代缩放)的迭代算法。 GIS的原理并不复杂,我们利用第N次迭代的模型来估计训练数据中个体特征的分布。大致可以概括为以下步骤: 获得模型的参数值后,我们得到最大熵模型。 模型得到的结果是P(y|x)的概率,即输入x我们得到不同y对应的条件概率,并且x可以根据概率分为不同的y。 。这样就可以做出分类决策。 需要注意的是,这里的P(y|x)并不是像朴素贝叶斯那样从样本数据中得到然后计算出来的,而是通过最大化条件熵得到的。 我们从风险规避的角度来看。 水浒传中,宋江去江州降军,路过梁山。吴庸派人在各个路口等候。 由于吴学军不知道宋江能走哪条路,所以他就将兵力全部布署在这四条路上。等待兄弟的问候),这种预测风险最小。于是就等到了松江。 三人走了一天,晚上就到客栈休息了。他们生了火,煮了一些食物。买了酒肉招待两位先生。宋江对他说:“说实话,今天我们来的路上要经过梁山泊,村里有一些好人,听到我的名字,都不敢下山,得意忘形,吓唬人。”我们白费力气了。你和我,你们两个明天起得很早,只能从那条小路过去。你最好再走几里路。”两个人说:“王子,如果你不告诉我们,我们怎么知道。我们知道通往那里的那条小路,所以我们不会知道。打他们吧。”那天晚上我们讨论了计划,第二天我们五点钟就起床生火。二人与宋江出了客栈。就留在小路上吧。走了大约三十英里后,我看到一群人从山坡后面走出来。宋江见状,痛得大叫起来。来的王另有其人,为首的英雄却是红毛鬼刘唐。他率领三十到五十人,前来杀了这两人。这个钱,李纨,跪在了地上。宋江喝道:“兄弟!你要杀谁?”刘唐道:“兄弟,你不杀了这两男一女,还等什么!”宋江道:“我不想让你脏手,你把刀拿给我,我就杀了他们。”我只是觉得很痛苦。刘唐将刀递给宋江。宋江接过,问刘唐:“杀君子是什么意思?”刘唐道:“特派员奉我山兄之命,得知他受审的消息,想要来郓城县劫狱,但他知道他山兄不在监狱里,他受苦了。现在我已经打听我与江州那边的姻缘,恐怕是走错了路。我教教大小土司,在四路等候迎接我的兄弟,然后请上楼去。山。你不杀这两位先生怎么样? 这是三国演义中华容道的例子 因为诸葛先生不兵力不够,无法应用最大熵模型,所以为了规避风险,只能根据曹操的素质来制定相关方案,最终选择了华容道。 曹操是中国历史上的顶尖人物,而诸葛亮,“多智近魔”的人物,堪称中国历史上第一,多走两步就可以像常人一样数数,多走三步就可以比常人多数数。 但是我们普通人做不到这样的规划。我们普通人只能老老实实选择最大熵模型。 先生孔明的计划 史云昌就站在他旁边,但孔明完全不理睬他。云裳再也忍不住了,大声喝道:“关氏与兄长连年征战,从来不落下风,今日面对强敌,却未任命军师,这有道理吗? ”孔明笑道:“长云,你别怪我!我本来想去最重要的关隘,但有障碍,不敢去。”云裳道:“有什么障碍吗?希望能立即看到命令。”孔明道:“曹操从前对部下很好,我一定要报答他。今日曹操败了,他一定会去华容道,如果奉命下去,他就一定会报答他。” “会做的,一定放他走。” “所以我不敢教他走路。”云长道:“军师良苦用心多了!曹操那天很认真,等了某个人,我杀了颜良,惩罚了文丑,把他从白马的围困中解了出来,我报仇了。”为了他……我今天和他起了冲突……我怎么能放过你呢?”孔明曰:“我放你如何?”云裳道:“但愿。戒严!” ”孔明道:“这样吧,我们立个文件吧。云常随即将军事指挥权交给了他。 ”云长道:“曹操不是那里人怎么办? ”孔明道:“我也给你下一个军令状。云畅很高兴。孔明曰:“云长客在华容道高山上堆起柴火,放出一把烟雾来吸引曹操。” ”云长道:“曹操见烟,就知道是埋伏,怎么会来呢?孔明笑道。他说:“你没听过兵法虚实之论吗?曹操虽然能用兵,但只有这样才能瞒过他。他见了硝烟,就虚张声势,肯定会倒下。”这样,将军不会手下留情的。”云说道。领将接到将军命令后,率领关平、周仓等五百刀兵到华容道埋伏。”玄德曰:“吾兄义气深重,若曹操真往华容道,只怕会放过他。 ”孔明道:“明夜看千翔,曹操贼未及聚,便已死。你留着这份恩情,教云长如何,是啊,这是好事。玄德曰:“先生您的算计,世间罕见!我们应该去哪里?”曹问:“哪条路近?”军士道:“大路虽然有点平坦,但也有五十多里了。小路通向华容路,不过五十多里路。只是地窄,路险,障碍重。好。”操遣人上山观望,回禀道:“小路上,山边几处冒烟; ”操教前军走小道华容路。将士们说:“烽火升起的地方,必有兵马。你为什么这样走路?”曹曰:“君不见兵书中云:虚则实,实则虚。诸葛亮有很多打算,所以派人上山。远处燃烧的浓烟使我军无法沿着这条山路前进,他却将部队埋伏在大路上等待。我已经下了决心,只是没有告诉他他的计划!众将曰:“丞相之妙计,非他人所及。 ”遂令部下往华容道而去。此时,众人饥肠辘辘,马匹疲乏,有困难者搀扶而行,被箭矛击中者依依不舍,衣甲湿透,缺了。他们的兵器、旗帜、旗帜都乱七八糟,大都被赶到夷陵道上,只有光头马可以骑,马鞍辔头、衣服都被扔掉了。极冷,所以很难高估疼痛。 作者:罗西的想法3.2判别模型(判别)
3.3 比较
3.5 如何选择型号?
P(X,Y)=P(X|Y)P(Y)=P(Y|X)P(X ) ),因此生成模型也可以表示为:P(Y|X)=P(X|Y)P(Y)/P(X)。 P(Y|X)=P(X|Y)P(Y)/P(X)。必须首先求解解 P(X|Y),因此在某些地方也说 P(X|Y) 被建模为 GM(当然你需要 P(Y) 和 P(X) 和 P (Y ) |X) 直接建模为 DM;意思其实是一样的,我觉得建模后P(X | For GM.)。 4。最大熵模型概念
5。构建最大熵模型
5.1 目标
5.2 推导过程
5.3 应用
0x03 名著中最大熵模型的应用
1。应用最大熵
2。无效最大熵
来源:掘金
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网