吴恩达2022机器学习专项课程(一) 7.1 逻辑回归的成本函数第三周课后实验:Lab4逻辑回归的损失函数

本文主要是介绍吴恩达2022机器学习专项课程(一) 7.1 逻辑回归的成本函数第三周课后实验:Lab4逻辑回归的损失函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题预览/关键词

  • 上节课回顾
  • 逻辑回归模型使用线性回归模型的平方误差成本函数
  • 单个训练样本的损失
  • 损失函数,成本函数,代价函数的区别
  • 线性回归损失函数和逻辑回归损失函数的区别
  • 逻辑回归模型的成本函数是什么?
  • 逻辑回归模型的损失函数
  • 实验
    • 逻辑回归模型使用平方误差成本函数
    • 可视化y=1和y=0时的损失函数
    • 逻辑回归模型的损失函数新形式
    • 可视化新损失函数的成本函数
  • 总结

上节课回顾

上节课的决策边界是通过w,b构建的,因此需通过成本函数,检测逻辑回归模型中的w,b是否为最优解。所以我们首先要直达逻辑回归模型的成本函数。

逻辑回归模型使用线性回归模型的平方误差成本函数

如右图所示,如果逻辑回归模型使用平方误差代价函数,则代价函数的值会呈现很多局部最小值,使用梯度下降算法会卡主,梯度下降算法无法找到全局最优解。
在这里插入图片描述

单个训练样本的损失

单个训练样本的损失,又叫损失函数,是衡量你在一个训练样本中的表现,也就是某一行训练样本的预测值和真实值的误差的大小。

损失函数,成本函数,代价函数的区别

  • 损失函数是衡量单个训练样本的损失,也就是一个样本的预测值与真实值之间的差异。
  • 成本函数和代价函数是一个意思,代表每个训练样本的损失的总和。

线性回归损失函数和逻辑回归损失函数的区别

  • 线性回归模型的损失函数是计算每组训练样本真实值和预测值的误差平方。
  • 逻辑回归模型的成本函数,是用来衡量每组训练样本的预测概率与真实标签之间的接近程度。在这里插入图片描述

逻辑回归模型的成本函数是什么?

使用对数损失函数计算成本函数,不同训练样本的标签对应不同的损失函数。
在这里插入图片描述

逻辑回归模型的损失函数

  • 当训练样本的真实y=1时,逻辑回归模型的预测f越接近1,代表预测为1的概率越大,损失越小。预测越接近0,代表预测为1的概率小,损失越大。
    在这里插入图片描述
    在这里插入图片描述
  • 当训练样本的真实y=0时,逻辑回归模型的预测f越接近0,代表预测为0的概率越大,损失越小。预测越接近1,代表预测为1的概率越小,损失越大。
    在这里插入图片描述
    在这里插入图片描述

实验

逻辑回归模型使用平方误差成本函数

逻辑回归使用此成本函数,不够平滑,不容易寻找全局最小值。在这里插入图片描述

可视化y=1和y=0时的损失函数

逻辑回归模型预测值f和损失值的走势。
在这里插入图片描述

逻辑回归模型的损失函数新形式

这个形式不用区分y=1和y=0,计算其中一项时,另一项的结果就会为0。(下节课会细说)在这里插入图片描述

可视化新损失函数的成本函数

新的成本函数以及其对数,对数为了让成本函数的轮廓和最小值(或最低点)更容易辨认。由此看出,逻辑回归模型选择此成本函数,没有高原,不连续,局部最小值。适合梯度下降。
在这里插入图片描述

总结

面对分类问题的训练集,需要对数损失函数来衡量每组训练样本的预测值和真实值的差异。差异的具体含义是y=1时,预测y为1的概率的大小。或者y=0时,预测y为0的概率的大小。损失函数是用于衡量单个训练样本,成本函数是衡量整个训练集,也就是累加损失函数的值,然后乘以m/1。如果逻辑回归模型使用平方误差成本函数计算,则成本函数会呈现局部最小值等特点,梯度下降算法可能无法有效地找到全局最优解。

这篇关于吴恩达2022机器学习专项课程(一) 7.1 逻辑回归的成本函数第三周课后实验:Lab4逻辑回归的损失函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/943816

相关文章

golang panic 函数用法示例详解

《golangpanic函数用法示例详解》在Go语言中,panic用于触发不可恢复的错误,终止函数执行并逐层向上触发defer,最终若未被recover捕获,程序会崩溃,recover用于在def... 目录1. panic 的作用2. 基本用法3. recover 的使用规则4. 错误处理建议5. 常见错

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意

Java function函数式接口的使用方法与实例

《Javafunction函数式接口的使用方法与实例》:本文主要介绍Javafunction函数式接口的使用方法与实例,函数式接口如一支未完成的诗篇,用Lambda表达式作韵脚,将代码的机械美感... 目录引言-当代码遇见诗性一、函数式接口的生物学解构1.1 函数式接口的基因密码1.2 六大核心接口的形态学

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

Oracle的to_date()函数详解

《Oracle的to_date()函数详解》Oracle的to_date()函数用于日期格式转换,需要注意Oracle中不区分大小写的MM和mm格式代码,应使用mi代替分钟,此外,Oracle还支持毫... 目录oracle的to_date()函数一.在使用Oracle的to_date函数来做日期转换二.日

C++11的函数包装器std::function使用示例

《C++11的函数包装器std::function使用示例》C++11引入的std::function是最常用的函数包装器,它可以存储任何可调用对象并提供统一的调用接口,以下是关于函数包装器的详细讲解... 目录一、std::function 的基本用法1. 基本语法二、如何使用 std::function

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert