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 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 【深度学习】逻辑回归及其损失函数的理解 -> 正文阅读

[人工智能]【深度学习】逻辑回归及其损失函数的理解

一、什么是二分类与逻辑回归(Logistic Regression)?

二分类表示分类任务中有两个类别。比如有一个分类任务是预测一张图片中是否有猫,则结果只有(1)或没有(0)两种类别。
逻辑回归就是为解决二分类问题,建立模型,输入数据,最终输出一个0到1的数,用来预测 y y y的真实值。比如可以规定当模型输出值 y ^ \hat{y} y^?大于等于0.5时,我们便预测输出类别为1(对应上述例子,即图片中有猫)。

二、逻辑回归基本思路

有时我们使用线性回归预测连续的值。设 y ^ \hat{y} y^? 是预测值,则 y ^ \hat{y} y^? 可以表示为:

y ^ \hat{y} y^? = wTx + b

其中x为样本某一特征取值, wT及b为输入参数。

上式输出的值是可以小于0或者大于1的。但我们希望逻辑回归输出一个0到1的数。可以借助 S i g m o i d Sigmoid Sigmoid函数来将输出映射到0到1:

y ^ \hat{y} y^? = σ \sigma σ(wTx + b)
其中, σ ( z ) = 1 1 + e ? z \sigma(z) = {1\over 1+e^{-z}} σ(z)=1+e?z1?

σ ( z ) \sigma(z) σ(z)表示 S i g m o i d Sigmoid Sigmoid函数,其图像如下图所示:
在这里插入图片描述
二分类问题的最终结果 y y y 只可能取值0或1,我们通过某一模型计算得到 y ^ \hat{y} y^?, 用于对 y y y 的值进行预测。 y ^ \hat{y} y^? 通过 S i g m o i d Sigmoid Sigmoid函数可以映射到0到1中的某个具体的值,这个值可以理解为模型预测真实结果 y y y 为1的概率。比如 y ^ \hat{y} y^? = 0.8 就代表着在样本 x x x 的条件下,通过模型预测 y y y 真实值为0.8,但 y y y 只可能取值0或1,所以该模型认为 y y y 有着80%的概率取得1。

这样 y ^ \hat{y} y^? 就可以理解为在样本 x x x 条件下, y = 1 y=1 y=1 的概率,即

y ^ = P ( y = 1 ∣ x ) \hat{y} = P(y = 1 | x) y^?=P(y=1x)

三、定义损失函数(Loss Function)

损失函数用来描述真实值 y y y与预测值 y ^ \hat{y} y^?之间的差距,损失函数越小,代表预测值越接近真实值。
逻辑回归中损失函数定义如下:

L \mathcal{L} L( y ^ \hat{y} y^?, y y y) = ? - ? ( ( ( y l o g y ^ y log\hat{y} ylogy^? + + + ( 1 ? y ) l o g ( 1 ? y ^ ) (1 - y) log(1 - \hat{y}) (1?y)log(1?y^?) ) ) )

下文将给出解释过程。
上文中已说明 y ^ = P ( y = 1 ∣ x ) \hat{y} = P(y = 1 | x) y^?=P(y=1x) 。由于y只可能取值为0或1,所以这个式子可以变形为:

IF y = 1: P ( y ∣ x ) = y ^ P(y|x) = \hat{y} P(yx)=y^?
IF y = 0: P ( y ∣ x ) = 1 ? y ^ P(y|x) =1 - \hat{y} P(yx)=1?y^?

我们希望预测值 y ^ \hat{y} y^? 接近真实值 y y y
如果y = 1,让 y ^ \hat{y} y^? 接近 y y y, 即接近1,则根据上述第一个式子知 P ( y ∣ x ) P(y|x) P(yx)接近1。
如果y = 0,让 y ^ \hat{y} y^? 接近 y y y, 即接近0,则根据上述第二个式子知 P ( y ∣ x ) P(y|x) P(yx)接近1 - 0 = 1。
因此我们希望P(y|x)值越大越好,越大代表着预测值越接近真实值。
将上述两个式子合并:

P ( y ∣ x ) = y ^ y ( 1 ? y ^ ) 1 ? y P(y|x) = \hat{y} ^y (1 - \hat{y})^{1 - y} P(yx)=y^?y(1?y^?)1?y

通过取对数,简化式子,得:

l o g P ( y ∣ x ) = y l o g y ^ + ( 1 ? y ) l o g ( 1 ? y ^ ) = ? L ( y ^ , y ) logP(y|x) = ylog\hat{y} + (1 - y)log(1 - \hat{y}) = -\mathcal{L}(\hat{y}, y) logP(yx)=ylogy^?+(1?y)log(1?y^?)=?L(y^?,y)

因为对数是单调递增函数,且 P ( y ∣ x ) P(y|x) P(yx)值越大说明预测精度越高,也就是说 l o g P ( y ∣ x ) logP(y|x) logP(yx)越大越好。但损失函数描述的是真实值与预测值的差距,损失函数越小代表着预测精度越高,因此令 l o g P ( y ∣ x ) = ? L ( y ^ , y ) logP(y|x) = -\mathcal{L}(\hat{y}, y) logP(yx)=?L(y^?,y),损失函数最终便可以表示为:

L \mathcal{L} L( y ^ \hat{y} y^?, y y y) = ? - ? ( ( ( y l o g y ^ y log\hat{y} ylogy^? + + + ( 1 ? y ) l o g ( 1 ? y ^ ) (1 - y) log(1 - \hat{y}) (1?y)log(1?y^?) ) ) )

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-30 08:42:53  更:2022-04-30 08:45:53 
 
开发: 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 8:23:28-

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