IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 信息量与交叉熵损失的关系 -> 正文阅读

[人工智能]信息量与交叉熵损失的关系

目录

1、信息量

2、信息熵

3、相对熵(KL散度)

4、交叉熵(cross entropy)

5、二值交叉熵(binary cross entropy)


在机器学习领域,交叉熵是一种常用的 loss 函数,但是交叉熵是怎么来的?跟信息量又有什么联系?为什么计算公式长这样?这么写有什么意义?下面将逐一介绍

1、信息量

信息量反映了事件的不确定性或者说发生的概率。概率越小不确定性越大,则其蕴含的信息量越大。

如果一件一定会发生的事件发生了,呢么从这件事中我们获取的信息量是0,因为我们事前已经知道他一定会发生,反而如果某事件的发生概率如果不是1,则其是否发生还需要我们去联想去猜测他是否会发生,这里的联想或猜测就是这件事所蕴含的信息。

也就是说信息量的大小和事件x发生的概率p(x)成反比,可以定义如下:

信息量的 log 一般是以 2 为底。试想一个8位二进制数,假如我们确定这个数为 1101 0101 的话,那么这个8位二进制数的信息量就是 0,因为数已经确定了,但是如果这 8 位数是未知的呢?么一共有? ??????种可能,因此每种数出现的概率就是? ??????? ,因此信息量就是? ???????。

2、信息熵

信息熵定义为信源信息量的期望,即该信源所有可能发生事件的信息量的期望,可表示为:

信息熵用来衡量信源不确定性,信息熵越大表示信源越具不确定性,信源就越复杂。

3、相对熵(KL散度)

相对熵又称KL(Kullback-Leibler divergence)散度,如果对于同一个随机变量 x 有两个独立的概率分布 p(x) 和 q(x),则可以用 KL 散度来衡量这两个分布的差异。KL 散度定义如下:

公式左边p和q的位置是有先后关系的,p在前面表示是以p为基准,去考虑p和q相差多少,如果p、q分布相同则?? ?等于0,否则可以理解为计算两者之间相差多少信息量。n 为时间的所有可能性,KL散度的值越小表示q分布和p分布越接近。

在机器学习中,p往往用来表示样本的真实分布,比如[0,1,0]表示当前样本输入2类,q用来表示模型预测的分布,比如[0.1,0.8,0.1]。直观的理解就是机器学习中一般都是学习如何用q来描述样本,? ?就是计算q与真实样本之分布p之间差距的一种方式,即q还需要多少“信息增量”才能达到跟q一样完美。

?公式展开来看:

???????由 ?展开的结果可以看出, ?由两部分组成: ?的信息熵 ?以及 ?。这里的 ?就是交叉熵的计算公式。

4、交叉熵(cross entropy)

由 3 中的推导可以看出,交叉熵的定义式如下:

一般在机器学习模型中,p 代表真实分布 ,q 代表预测分布 ?。

在模型训练过程中,我么你需要评估 labels 与 predicts 之间的差距,使用 KL 散度其实刚刚好,但为什么一般都会使用交叉熵呢?这是由于可以把信息熵 ?看作固定值不变,只关注交叉熵即可,因此一般在机器学习中直接使用交叉熵作为 loss。

5、二值交叉熵(binary cross entropy)

对于分类问题中的每个类别,机器学习模型都是将其转换为一个[0,1]的概率来表示,我们都会取最大的那个作为最终的结果,比如如果判断一张图片中的类别是猫的概率为0.7,则反过来不是猫的概率就是 1-0.7=0.3 ,我们的目标就是将模型预判的是猫的概率尽量接近1,不是猫的概率尽量逼近0,这就产生了二值交叉熵损失:

注意看这个公式, 为我们的 label,只能为 0 或 1,因此在实际计算过程中二值交叉熵 loss 只能有一项参与计算:当 ?时代表是正样本, ,此时 ?越小 loss 越大,促使模型往 ?更大的地方更新;当 ?时代表是正样本, ,此时 ?越大 loss 越大,促使模型往 ?更小的方向更新。这就是二值交叉熵的意义。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-03-08 22:28:33  更:2022-03-08 22:30:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 16:33:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码