拉普拉斯平滑(Laplacian smoothing)
概念
- 零概率问题:在计算事件的概率时,如果某个事件在观察样本库(训练集)中没有出现过,会导致该事件的概率结果是 $0$ 。这是不合理的,不能因为一个事件没有观察到,就被认为该事件一定不可能发生(即该事件的概率为 $0$ )。
拉普拉斯平滑(Laplacian smoothing) 是为了解决零概率的问题。
- 法国数学家 拉普拉斯 最早提出用 加 $1$ 的方法,估计没有出现过的现象的概率。
- 理论假设:假定训练样本很大时,每个分量 $x$ 的计数加 $1$ 造成的估计概率变化可以忽略不计,但可以方便有效的避免零概率问题
具体公式
对于一个随机变量 $\mathrm{z} $ , 它的取值范围是 $\{1,2,3 \ldots, \mathrm{k}\} $, 对于 $\mathrm{m} $ 次试验后的观测 结果 $ \left\{\mathrm{z}^{(1)}, \mathrm{z}^{(2)}, \mathrm{z}^{(3)}, \ldots, \mathrm{z}^{(\mathrm{m})}\right\} $, 极大似然估计按照下式计算:
$\varphi_{j}=\frac{\sum_{i=1}^{m} I\left\{z^{(i)}=j\right\}}{m}$
使用 Laplace 平滑后, 计算公式变为:
$\varphi_{j}=\frac{\sum_{i=1}^{m} I\left\{z^{(i)}=j\right\}+1}{m+\mathrm{k}}$
即在分母上加上取值范围的大小, 在分子加 $1$ 。
总结: 分子加一,分母加 $K$,$K$ 代表类别数目。
应用场景举例
假设在文本分类中,有 $3$ 个类:$C_1$、$C_2$、$C_3$
在指定的训练样本中,某个词语 $K_1$ ,在各个类中观测计数分别为 $0$,$990$,$10$。
则对应 $K_1$ 的概率为 $0,0.99,0.01$。
显然 $C_1$ 类中概率为 $0$,不符合实际。
于是对这三个量使用拉普拉斯平滑的计算方法如下:
$1/1003 = 0.001$,$991/1003=0.988$,$11/1003=0.011$
在实际的使用中也经常使用加 $λ$($0≤λ≤1$)来代替简单加 $1$。如果对 $N$个计数都加上 $λ$,这时分母也要记得加上 $N*λ$。
拉普拉斯平滑(Laplacian smoothing)的更多相关文章
- 拉普拉斯平滑处理 Laplace Smoothing
背景:为什么要做平滑处理? 零概率问题,就是在计算实例的概率时,如果某个量x,在观察样本库(训练集)中没有出现过,会导致整个实例的概率结果是0.在文本分类的问题中,当一个词语没有在训练样本中出现,该词 ...
- 拉普拉斯矩阵(Laplacian Matrix) 及半正定性证明
摘自 https://blog.csdn.net/beiyangdashu/article/details/49300479 和 https://en.wikipedia.org/wiki/Lapla ...
- 深度学习面试题28:标签平滑(Label smoothing)
目录 产生背景 工作原理 参考资料 产生背景 假设选用softmax交叉熵训练一个三分类模型,某样本经过网络最后一层的输出为向量x=(1.0, 5.0, 4.0),对x进行softmax转换输出为: ...
- SC3聚类 | 拉普拉斯矩阵 | Laplacian matrix | 图论 | R代码
Laplacian和PCA貌似是同一种性质的方法,坐标系变换.只是拉普拉斯属于图论的范畴,术语更加专业了. 要看就把一篇文章看完整,再看其中有什么值得借鉴的,总结归纳理解后的东西才是属于你的. 问题: ...
- 统计学习1:朴素贝叶斯模型(Numpy实现)
模型 生成模型介绍 我们定义样本空间为\(\mathcal{X} \subseteq \mathbb{R}^n\),输出空间为\(\mathcal{Y} = \{c_1, c_2, ..., c_K\ ...
- AI人工智能专业词汇集
作为最早关注人工智能技术的媒体,机器之心在编译国外技术博客.论文.专家观点等内容上已经积累了超过两年多的经验.期间,从无到有,机器之心的编译团队一直在积累专业词汇.虽然有很多的文章因为专业性我们没能尽 ...
- NLP相关问题中文本数据特征表达初探
1. NLP问题简介 0x1:NLP问题都包括哪些内涵 人们对真实世界的感知被成为感知世界,而人们用语言表达出自己的感知视为文本数据.那么反过来,NLP,或者更精确地表达为文本挖掘,则是从文本数据出发 ...
- 一步步教你轻松学朴素贝叶斯模型算法Sklearn深度篇3
一步步教你轻松学朴素贝叶斯深度篇3(白宁超 2018年9月4日14:18:14) 导读:朴素贝叶斯模型是机器学习常用的模型算法之一,其在文本分类方面简单易行,且取得不错的分类效果.所以很受欢迎,对 ...
- 生成学习算法(Generative Learning algorithms)
一.引言 前面我们谈论到的算法都是在给定\(x\)的情况下直接对\(p(y|x;\theta)\)进行建模.例如,逻辑回归利用\(h_\theta(x)=g(\theta^T x)\)对\(p(y|x ...
随机推荐
- Python旋转魔方阵
[问题描述]输入一个自然数N(2≤N≤9),要求输出如下的魔方阵,即边长为N*N,元素取值为1至N*N,1在左上角,呈顺时针方向依次放置各元素. N=3时: 1 2 3 8 ...
- CF977B Two-gram 题解
Content 给定一个字符串 \(s\),请求出出现次数最多的长度为 \(2\) 的子串. 数据范围:\(2\leqslant |s|\leqslant 100\). Solution 直接求出所有 ...
- LuoguP7679 [COCI2008-2009#5] JABUKA 题解
Content Mirko 拥有 \(R\) 个红苹果和 \(G\) 个绿苹果,他想把他分给若干个朋友,使得所有朋友分得的红苹果个数和绿苹果个数都一样.现给定 \(R,G\),请你帮助 Mirko 找 ...
- 实时&离线皮肤渲染技术(Real-time&Offline Skin Rendering)
目录 现实皮肤模型 BSSRDF 渲染模型 [2001] Diffusion Profile(扩散剖面)[2001] 偶极子 [2002] 高斯和 [2007] Burley Normalized D ...
- win10修改Docker Desktop Installer的默认安装目录
Docker Desktop Installer软件默认安装会装在C:\Program Files\Docker的目录下,默认是不能修改的,但是我们可以通过设置软链接的方式把安装默认弄到其他盘 我们先 ...
- SpringBoot整合Light Security框架
官方git地址:https://gitee.com/itmuch/light-security/tree/master 引入maven <dependency> <groupId&g ...
- win10使用cmake配置fmt生成vs2015解决方案(fmt version 7.0.1)
!!版权声明:本文为博主原创文章,版权归原文作者和博客园共有,谢绝任何形式的 转载!! 作者:mohist 本文仅为参考,请以实际情况为准, fmt版本: 7.0.1 准备 下载源码fmt : htt ...
- Android 控件使用教程(三)—— NineGridImageView 九宫格展示图片
引子 上文降到RecyclerView的使用,确实非常方便易用,而且样式多样,很灵活.但在图像展示时,经常有朋友圈和微博等9张图以内的图片展示需求,这时候,不是一个可以无限下滑的RecyclerVew ...
- 【LeetCode】46. Permutations 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 解题方法 方法一:库函数 方法二:递归 方法三:回溯法 日期 题目地址:h ...
- 【LeetCode】525. Contiguous Array 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 累积和 日期 题目地址:https://leetco ...