初识最大熵原理

2023-11-15

一、概述

  在日常生活中或者科学试验中,很多的事情发生都具有一定的随机性,即最终产生的结果是随机发生的,我们不清楚这些结果是否服从什么规律,我们所拥有的只有一些实验样本,在这种情况下,我们如何根据现拥有的东西对结果产生一个合理的推断呢?最大熵方法就是解决这种问题的一个方法。 最大熵原理是有E.T.Jaynes在1957年提出的,其基本思想如下:在只掌握未知部分的部分知识时,我们应该选取符合这些知识并且熵值最大的概率分布。熵从定义上来说就是一个随机变量的不确定性,熵值最大即不确定性最大。从这方面来看,最大熵原理实质上就是在满足已知所有的知识前提下,对于未知的分布应该是自己最不能确定或者最随机的分布,因为只有这样,最终的分布才能代表一个最公平的选择,任何带有主观性的选择其实质上就是为模型加入了约束条件,而这些条件都是根据目前已知信息所无法得出的。 目前最大熵原理在自然语言处理上已经得到了极大的应用。由于最大熵模型可以将不同源的信息集中到一个框架下进行综合考虑,所以在解决一些复杂问题时体现出极大的优势。也因此,自Della Pietra在1992年首度用最大熵原理进行语言处理,现在越来越多的学者都用最大熵原理处理文本分类、短语识别和词性标注等问题,并且取得了比较满意的效果。 

  最大熵模型的基本思想是:当我们对一个随机事件的发生建立预测模型时,模型应当满足全部从训练样本中获取的已知特征信息,而对其他未知的信息不做任何主观假设,在这种情况下,条件概率分布最均匀,预测的风险最小,此时预测模型满足约束条件下的信息熵值最大,所以这种模型被称为“最大熵模型”。生活中所说的不要把所有的鸡蛋都放在同一个篮子里面,就是最大熵思想的一个很朴素的说法,当我们遇到不确定性事件时,就要尽量保留各种可能性,这一原则符合简单可取性。 

 二、条件最大熵模型

  由于目前很多最大熵模型都是应用在语言处理领域,那么我们就用处理语言举例来阐述最大熵模型。其实最大熵模型最终的任务就是概率估计,即估计目标类y,在实例x或者理解成条件x下出现的概率,即估计p(y|x)的值。x的集合表示成X,y的集合表示成Y。另外,我们用P表示所有条件概率分布的集合,则p(y|x)只是P中的一个元素。 在具体的语言处理中,产生一个y都是要受到x的影响,即假设随机输入一个“吃”字,那么它的上下文肯定是分布在“吃”字周边的一些汉字,即y肯定是集合{动词、名词}中的一个。那么最大熵方法就是基于一些具体的统计学方法,根据x,y之前的出现特征,可靠的估计p(y|x)这个概率模型。 其实最大熵方法在使用的时候并不局限于条件最大熵,最初是估计 p(x)的值,后来才逐渐演变成估计p(y|x),区别起见,通常把p(x,y)或者p(x)成为联合最大熵模型。在语言处理包括文中后来用到的基于内容处理中都是使用条件最大熵模型,在此特此说明。 

三、模型简介

  吃”周围的词语就是实例x,词性为y。这里的x实际上就是上下文信息对于“吃”周围词语的一种限制。而y在实际情况当中的可能性则非常巨大,有可能是“吃喝”、“吃苹果”、“好吃”等。由此,我们可以看出实例空间是非常巨大的。从训练样集中,我们可以得到像1 1 2 2 N N(x ,y ),(x ,y ),...,(x ,y ) z主要的经验概率分布,用出现的对数除以总对数表示概率,即最大熵模型先通过这些训练样例来训练模型,然后再顾及p(x,y)的概率分布。 模型框架中的应用系统是利用训练好的模型去估计实例 x’的概率分布p(y|x’),其中1<=y<=Y。最后通过概率的从大到小排列形成最后的推荐结果。 

四、协同过滤

  在一般的电子商务系统中,用户往往只会对很少的一部分商品进行评分,整个用户集合与项目集合相关联的是一个非常稀疏的评分矩阵。在计算相似度的方法中,用户或者项目间相关的评分信息非常不充分,反映为两个用户或者项目间共有评分非常有限,因此相似度计算结果非常不可靠,而实际计算出来的相似值往往不是太高,失去了线性相关本身的意义。由此,依靠相似度选择最近邻居的推荐方法在数据稀疏的情形下推荐结果受到严重的负面影响。 

五、参考文献

  [1]基于最大熵模鹜解决协同过滤稀  疏性问题研究 

  [2]融合用户属性和兴趣的最大熵 推荐算法研究 

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

初识最大熵原理 的相关文章

随机推荐

  • Scanner中nextInt()和nextLine()详解(秒懂)

    直接上代码 输出结果 结果分析 nextInt 和nextLine 顺序互换代码如下 输出结果 结果分析 解决方法 可以将nextLine 用next 替换 两者nextLine 执行之前再加一个空nextLine 让这个空的清楚掉回车符再
  • 【Xilinx Vivado时序分析/约束系列5】FPGA开发时序分析/约束-IO时序分析

    在之前介绍的是FPGA内部的时序分析 包括以下几种情况 寄存器与寄存器之间 输入PAD 输入时钟 与寄存器之间 寄存器与输出 PAD 输出时钟 之间 输入PAD 输入时钟 与输出PAD 输出时钟 现在就开始分析FPGA与外部的其他器件的连接
  • python numpy格式化打印

    1 问题描述 在使用numpy的时候 我们经常在debug的时候将numpy数组打印下来 但是有的时候数组里面都是小数 数组又比较大 打印下来的时候非常不适合观察 这里主要讲一下如何让numpy打印的结果更加简洁 2 问题解决 这里需要使用
  • matlab参数方程画曲线

    求x2 3x 1 0 x 5 0 1 5 y1 x x 3x 1 y2 zeros size x plot x y1 x y2 f x xx 3x 1 x1 fzero f 0 5 x2 fzero f 2 5 x 0 2 1 8 2 5
  • vue获取url中的参数值,this.$route.query

    如果有的参数可传可不传 可以使用 传参 例如 http 192 168 1 12 8080 detail id 123 获取的时候 let id this route query id 一 在vue组件单页面中获取页面参数 watch ro
  • devops(后端)

    1 前言 该devpos架构为gitlab jenkins harbor k8s 项目是java项目 流程为从gitlab拉取项目代码到jenkins jenkins通过maven将项目代码打成jar包 通过dockerfile构建jdk环
  • WINDBG 驱动调试命令

    windbg 符号加载 首先添加符号 打开 windbg 工具栏 file gt Symbol File Path 写入路径如下所示 SRV E tools win7 sp1 x86 然后勾选左下角的Reload 确定 执行下面执行强制加载
  • 新纪录学习创作1(@RequestMapping、HttpServletRequest)

    1 RequestMapping 用来处理请求地址映射的注解 可用于类或方法上 用于类上 表示类中的所有响应请求的方法都是以该地址作为父路径 用于方法上 表示在类的父路径下追加方法上注解中的地址将会访问到该方法 此处需注意 RequestM
  • 全国大学生算法设计与编程挑战赛 (秋季赛)——正式赛

    最大化 max Description 有一张NN个点的无向图 要求给每个点分配一个标号 使得任意一条边两端的点的标号差 绝对值 不能超过给出的常数 DD 要求在此基础上最大化标号的最大值减最小值 如果答案为 infin 则输出 1 Inp
  • DS二叉排序树之创建和插入

    题目描述 给出一个数据序列 建立二叉排序树 并实现插入功能 对二叉排序树进行中序遍历 可以得到有序的数据序列 输入 第一行输入t 表示有t个数据序列 第二行输入n 表示首个序列包含n个数据 第三行输入n个数据 都是自然数且互不相同 数据之间
  • 在Unity中 改变地形(Terrain),并加上水面、树、草地、材质(地板上色)

    在Unity中 如何使用地形 Terrain 并加上水面 树 草地 材质 地板上色 目录 在Unity中 如何使用地形 Terrain 并加上水面 树 草地 材质 地板上色 一 水面素材包 导入 二 地形 Terrain 地貌设置 地形上升
  • 对音频进行vad及降噪处理

    感觉有必要写一篇博客了 这几天在小组比赛中负责对语音进行处理 处理有两个 一个是用vad对音频进行端点确定 即把静音部分去掉 第二个是对音频进行降噪处理 之前在网上找了许多资料 才找到谷歌之前开发过一个叫webrtc的轮子 里面集成了许多有
  • LaTeX总结8(矩阵排版)

    1 首先矩阵排版要引入一个新的宏包 usepackage amsmath 2 首先就是格式的问题了 begin matrix 只是普通的矩阵 0 1 1 2 end matrix begin pmatrix 加括号的矩阵 0 1 1 2 e
  • 深度残差网络(Deep residual network, ResNet)

    文章目录 一 前言 二 深度网络的退化问题 三 残差学习 3 1 残差网络原理 3 2 ResNet结构为什么可以解决深度网络退化问题 3 3 残差单元 3 4 ResNet的网络结构 四 实验结果 ResNet 50 完整代码 参考资料
  • STM32F4——DAC

    DAC简介 DAC Digital to analog converter 即数字模拟转换器 它可以将数字信号转换为模拟信号 它的功能与ADC相反 在常见的数字信号系统中 大部分传感器信号被转化成电压信号 而 ADC 把电压模拟信号转换成易
  • 【内核驱动】Linux概述

    00 目录 文章目录 00 目录 01 Unix简介 02 Linux简介 03 Linux发展史 04 单内核与微内核区别 05 Linux内核 06 Linux内核组成 07 Linux官方网站 08 附录 01 Unix简介 UNIX
  • 【神经网络】(5) 卷积神经网络(ResNet50),案例:艺术画作10分类,附数据集

    各位同学好 今天和大家分享一下TensorFlow2 0中如何构建卷积神经网络ResNet 50 案例内容 现在收集了10位艺术大师的画作 采用卷积神经网络判断某一幅画是哪位大师画的 数据集 百度网盘 请输入提取码 提取码 2h5x 1 数
  • Banknote Dataset(钞票数据集)介绍

    Banknote Dataset 钞票数据集 这是从纸币鉴别过程中的图像里提取的数据 用来预测钞票的真伪的数据集 该数据集中含有1372个样本 每个样本由5个数值型变量构成 4个输入变量和1个输出变量 小波变换工具用于从图像中提取特征 这是
  • 【华为OD机试真题2023B卷 JS】MELON的难题

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 MELON的难题 知识点DFS搜索 时间限制 2s 空间限制 32MB 限定语言 不限 题目描述 MELON有一堆精美的雨花石 数量为n 重量各异 准备送给S和W MELON希望送给俩
  • 初识最大熵原理

    一 概述 在日常生活中或者科学试验中 很多的事情发生都具有一定的随机性 即最终产生的结果是随机发生的 我们不清楚这些结果是否服从什么规律 我们所拥有的只有一些实验样本 在这种情况下 我们如何根据现拥有的东西对结果产生一个合理的推断呢 最大熵