文档章节

KL散度

AllenOR灵感
 AllenOR灵感
发布于 2017/09/10 01:24
字数 220
阅读 4
收藏 0

KL散度(Kullback-Leibler divergence)是描述两个概率分布 P 和 Q 差异的一种方法。在概率论或信息论中,又称相对熵(relative entropy)。它是非对称的,这意味着 D(P||Q) ≠ D(Q||P) 。特别的,在信息论中,D(P||Q) 表示当用概率分布 Q 来拟合真实分布 P 时,产生的信息损耗,其中 P 表示真实分布,Q 表示 P 的拟合分布。

对于一个离散型随机变量的两个概率分布 P 和 Q 来说,他们的 KL 散度定义为:


对于一个连续型的随机变量,可以定义为:


利用 Tensorflow 实现一个散列型的KL散度,代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import tensorflow as tf 

def KLD(p, q):
    return tf.reduce_sum(tf.mul(p, tf.log(tf.div(p,q))))

with tf.Session() as sess:
    p=tf.constant([1,2,3,4], tf.float32)
    q=tf.constant([1.0001,2.00009,2.999991,3.99998], tf.float32)
    print sess.run(KLD(p,q))

本文转载自:http://www.jianshu.com/p/0a4e82e164b2

共有 人打赏支持
AllenOR灵感
粉丝 10
博文 2634
码字总数 82983
作品 0
程序员
【机器学习基础】熵、KL散度、交叉熵

  熵(entropy)、KL 散度(Kullback-Leibler (KL) divergence)和交叉熵(cross-entropy)在机器学习的很多地方会用到。比如在决策树模型使用信息增益来选择一个最佳的划分,使得熵下降最...

wuliytTaotao
09/27
0
0
如何理解KL散度的不对称性?

     众所周知,多被用于量化分布间的差异的 KL 散度是不对称的。今天我们来聊一聊,两个分布的一对 KL 散度之间究竟有什么不同。      为了讨论这个知识点,我们需要掌握(或者暂且...

机器之心
03/01
0
0
教程 | 如何理解KL散度的不对称性

众所周知,多被用于量化分布间的差异的 KL 散度是不对称的。今天我们来聊一聊,两个分布的一对 KL 散度之间究竟有什么不同。 为了讨论这个知识点,我们需要掌握(或者暂且当做已知)的先决知...

机器之心
03/01
0
0
入门 | 初学机器学习:直观解读KL散度的数学概念

  选自thushv.com   作者:Thushan Ganegedara   机器之心编译   参与:Panda      机器学习是当前最重要的技术发展方向之一。近日,悉尼大学博士生 Thushan Ganegedara 开始撰写...

机器之心
05/29
0
0
从香农熵到手推KL散度:一文带你纵览机器学习中的信息论

信息论与信息熵是 AI 或机器学习中非常重要的概念,我们经常需要使用它的关键思想来描述概率分布或者量化概率分布之间的相似性。在本文中,我们从最基本的自信息和信息熵到交叉熵讨论了信息论...

机器之心
01/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

学习设计模式——中介者模式

1. 认识中介者模式 1. 定义:用一个中介对象来封装一系列的对象交互行为,中介者使得各对象不需要显式的互相引用,从而使其松散耦合,独立的改变他们之间的交互。 2. 结构: Mediator:中介者...

江左煤郎
34分钟前
0
0
深入理解Plasma(1):Plasma 框架

这一系列文章将围绕以太坊的二层扩容框架,介绍其基本运行原理,具体操作细节,安全性讨论以及未来研究方向等。本篇文章作为开篇,主要目的是理解 Plasma 框架。 Plasma 作为以太坊的二层扩容...

HiBlock
41分钟前
0
0
Java 8 日期 示例

Java 8 推出了全新的日期时间API。Java处理日期、日历和时间的方式一直为社区所诟病,将 java.util.Date设定为可变类型,以及SimpleDateFormat的非线程安全使其应用非常受限。Java也意识到需...

阿刚ABC
今天
1
0
RxJava操作符lift 笔记

在内部,每个Rx operator都做3件事: 它订阅源并观察值。 它根据操作员的目的转换观察到的序列。 它通过调用onNext,onError和onCompleted将修改后的序列推送到自己的订阅者。 compose运算符...

woshixin
今天
1
0
lnmp+coreseek实现站内全文检索(安装篇)

软件安装包 安装环境 系统环境 centos7.2 1核2G 软件环境 coreseek-3.2.14 lnmp1.5 安装mmseg 更新依赖包和安装编译环境 yum -y install m4 autoconf automake libtoolyum -y install gcc g...

毛毛雨rain
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部