机器学习和深度学习--李宏毅(笔记与个人理解)Day9

news2025/5/25 7:58:01

Day9 Logistic Regression(内涵,熵和交叉熵的详解)

中间打了一天的gta5,图书馆闭馆正好+npy 不舒服那天+天气不好,哈哈哈哈哈总之各种理由吧,导致昨天没弄起来,今天补更!

image-20240409182446711

这里重点注意一下, 这个 output值是概率哈,也就是说式子整体表示的含义是 x 属于c1的概率是多大

image-20240409182807682

这个老师真的是讲到我的心坎子里区了,这个logistic Redression 和linear Regression 长得真的好像啊,我自己正有疑惑怎么区分,then……

image-20240409183100912

不知道你们看到这里在想什么哈,反正我的第一个反应就是,woc这logisticRegression不是长得和之前的全连接神经网络的神经元一毛一样吗?甚至还是加上了激活函数,sigmoid的

image-20240409183433730

这里就只有概率论的知识哈,这里为什么是1-f(x3 )? 我自己想的话是因为这个回归只回归 C1 的情况,或者说,对于不同的类要做一个处理后,再进行回归

image-20240409184056045

image-20240409184107397

比较巧妙的使用 01 关系来表示了不同的类的回归情况(注意这里不是做分类任务哈, 不要看见class1 啥的就说是分类任务, 敲黑板,看我们的title 是什么?!)

image-20240409184325069

cross Entropy

这里又出现了,cross Entropy的概念,逃不掉了……那就捡起来补一补:

**熵和交叉熵 **:

从信息传递的角度来看:

信息论中熵的概念首次被香农提出,目的是寻找一种高效/无损地编码信息的方法:以编码后数据的平均长度来衡量高效性,平均长度越小越高效;同时还需满足“无损”的条件,即编码后不能有原始信息的丢失。这样,香农提出了熵的定义:无损编码事件信息的最小平均编码长度。

so, how we get this coding length ?( more deeper :何来的最小,又何来的平均呢?)

eg: 假设我考研的地方有四种可能,然后我要把这个秘密的消息传递给我的亲人

编码方式/事件北京 60%四川 20%天津 15%其他 5%平均编码长度
方式10110111 * 0.6+1 * 0.2+ 2 * 0.15 +2* 0.05 = 1.2
方式201111110……
方式31110012 * 0.6+2 * 0.2+ 1 * 0.15 +1* 0.05 = 1.75

我们通过计算可以看到,方式1 的平均编码长度是最小的;(这里又想到学c的时候学到的 哈夫曼树,细节上还是有很大不同,由于它用到了树的结构,并不能完全灵活的得到最小编码举例: asdfgh 六个字母,编码出来的最长编码有1001 等,如果直接进行编码 则0 1 10 11 100 101 110,最长仅有3);那么最小编码长度就是,大于N(事件情况)的2的最小次方 ,然后按照出现概率递减依次递增编码;那么计算平均最小长度,(ps:我是真nb,这个小的推导过程我先自己想的,网上一验证发现还真的对了我去)也就是熵的公式为:image-20240409191234558

熵的直观解释:

那么熵的那些描述和解释(混乱程度,不确定性,惊奇程度,不可预测性,信息量等)代表了什么呢?

如果熵比较大(即平均编码长度较长),意味着这一信息有较多的可能状态,相应的每个状态的可能性比较低;因此每当来了一个新的信息,我们很难对其作出准确预测,即有着比较大的混乱程度/不确定性/不可预测性。

并且当一个罕见的信息到达时,比一个常见的信息有着更多的信息量,因为它排除了别的很多的可能性,告诉了我们一个确切的信息。在天气的例子中,Rainy发生的概率为12.5%,当接收到该信息时,我们减少了87.5%的不确定性(Fine,Cloudy,Snow);如果接收到Fine(50%)的消息,我们只减少了50%的不确定性。

交叉熵

卧槽我一下子就懂了,我tmd 简直就是个天才哈哈

这样想:熵的定义 是该分布下的最小长度;上面那个公式有两个部分我们现在确定不了,p(x)的分布和 需要编码的长度;其实我们做一个预测的时候是啥也不知道的,但是这样不就没法算了嘛,我们不妨假设P(x)是我们知道的,也就是真实的值,那么剩下的编码长度就是观测值咯log2(Q(x)),那么由于Entropy的定义, 是p(x)分布下的最小长度的编码,就不可能出现比这个编码更小的数,所以交叉熵越小,说明我们越接近p(x)分布下的最小长度的编码。(也就解释了,机器学习分类算法中,我们总是最小化交叉熵的之前的疑问)

定义这玩意儿的人也是个天才md

image-20240410081254930

image-20240410081354897 image-20240410081408143

感觉这里老师讲错一个东西, 当这两个函数一模一样的时候 得到的不应该是0 吧

image-20240410081622586

image-20240410081714292

之前我就 是这么做的笑死,直接被当反面教材

image-20240410081943986

image-20240410082017080

image-20240410082049718

image-20240410082155803

这里有一点小疑问,为什么不是 学习率×这里的w的变化率 ?

image-20240410082750053

NB chatgpt 上大分,这里就是✖ 那个求和符号管的是后面,这个应该就是见的比较少,所以才有疑问

image-20240410082943577

image-20240410083205551 image-20240410083433791

Discriminative VS Generative

image-20240410084025204 image-20240410084102572 image-20240410084241607 image-20240410084349960 image-20240410084444533

< 0.5

Generative 做了一些假设,脑补了一些数据;这个例子朴素贝叶斯 认为 没有产生11 是因为 sampling的不够多

image-20240410084953364

Multi-class classification

image-20240410085137525 image-20240410085149575 image-20240410085234753

概率或者信息论的角度可以解释

image-20240410085559275

这样编码为什么就没有 关于某几个类之间更近的问题了?

这是一个独热编码(one-hot encoding)的例子。例如,如果有三个类别,那么第一个类别表示为100,第二个类别表示为0,1,0,第三个类别表示为0,0,1。这种编码方式确保了每个类别之间的“距离”是相同的,因为它们在高维空间中是正交的。

Limitation of Logistic Regression

image-20240410090217984 image-20240410090259864 image-20240410090430101 image-20240410090546687 image-20240410091011927

image-20240410091113330

引出 类神经网络 deepLearning

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1593305.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python创建word文档并向word中写数据

一、docx库的安装方法 python创建word文档需要用到docx库&#xff0c;安装命令如下&#xff1a; pip install python-docx 注意&#xff0c;安装的是python-docx。 二、使用方法 使用方法有很多&#xff0c;这里只介绍创建文档并向文档中写入数据。 import docxmydocdocx.Do…

Re65:读论文 GPT-3 Language Models are Few-Shot Learners

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文全名&#xff1a;Language Models are Few-Shot Learners ArXiv网址&#xff1a;https://arxiv.org/abs/2005.14165 2020 NeurIPS&#xff1a;https://papers.nips.cc/paper/2020/hash/1457c0d6bfcb49674…

ELK企业级日志分析系统以及多种部署

目录 ELK简介 ELK简介 ELK平台是一套完整的日志集中处理解决方案&#xff0c;将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用&#xff0c; 完成更强大的用户对日志的查询、排序、统计需求。 ●ElasticSearch&#xff1a;是基于Lucene&#xff08;一个全文检索引…

74HC595引脚图时序图工作原理

74HC595和74hc164一样是在单片机系统中常用的芯片之一他的作用就是把串行的信号转为并行的信号&#xff0c;常用在各种数码管以及点阵屏的驱动芯片&#xff0c; 使用74HC595可以节约单片机mcu的io口资源&#xff0c;用3个io就可以控制8个数码管的引脚&#xff0c;他还具有一定的…

【算法基础2】前缀和与差分

目录 前缀和与差分1.综述2.前缀和&#xff08;1&#xff09;一维前缀和&#xff08;2&#xff09;二维前缀和&#xff08;子矩阵的和&#xff09; 3.差分&#xff08;1&#xff09;一维差分&#xff08;2&#xff09;二维差分&#xff08;差分矩阵&#xff09; 前缀和与差分 1…

[攻防世界]Reversing-x64Elf-100

1.查壳 无壳&#xff0c;ELF文件 2.用IDA64打开 找到关键部分 这里有坑&#xff0c;看清楚v3是长度为3数组&#xff0c;里面放三个字符串 3.脚本解密 v1"Dufhbmf" v2"pGimos" v3"ewUglpt" v4[v1,v2,v3] a1[0,0,0,0,0,0,0,0,0,0,0,0] for i …

GET与POST:详述HTTP两大请求方法的语义、数据处理机制、安全特性与适用场景

GET和POST方法在HTTP请求中具有明确的角色分工和特性差异。GET适用于读取操作和不敏感数据的传递&#xff0c;强调可缓存性和安全性&#xff0c;而POST适用于写入操作和敏感数据的提交&#xff0c;提供了更大的数据承载能力和更强的隐私保护。本文详细介绍了GET与POST请求方法的…

网格(mesh)生成算法

mesh网格生成算法 1. 简介2. Points clouds Vs Meshes3. 为什么要生成mesh网格以及生成mesh网格的难点4. 常见的mesh网格生成算法 1. 简介 基于 3D视觉的新兴应用场景蓬勃发展&#xff0c;3D点云越来越受到人们的广泛关注。点云有着广泛的应用领域包括机器人技术、3D图形、自动…

150个 HTML5 网站模版 量大慢选

HTML5 网站模版 No.1 HTML5 网站模版 No.1

SDK-0.7.8-Release-实体管理 - ApiHug-Release

&#x1f917; ApiHug {Postman|Swagger|Api...} 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: 有爱&#xff0c;有温度&#xff0c;有质量&#xff0c;有信任ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace 更多精彩…

数据结构:打造高效的通讯录项目

✨✨小新课堂开课了&#xff0c;欢迎欢迎~✨✨ &#x1f388;&#x1f388;养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属专栏&#xff1a;http://t.csdnimg.cn/oHJAK&#xff08;数据结构与算法&#xff09; 小新的主页&#xff1a;编程版小新-CSDN博客 …

windows应急中的快捷键

windows应急中的快捷键 应急的时候&#xff0c;快捷键很重要&#xff0c;记录一下windows主机排查需要用到的快捷键 windows快捷键 appwiz.cpl 是打开安装面板 程序和功能 控制面板程序和功能 搜索程序和功能 控制而板主页 卸载或更改程序 若要卸酸程序,请从列表中将其…

Python十大常用库:让你的Python编程更上一层楼

Python是一种功能强大的编程语言&#xff0c;拥有众多的第三方库和框架&#xff0c;使得开发者可以更加高效、便捷地进行编程工作。本文将介绍Python中最常用的十大库&#xff0c;这些库在数据科学、机器学习、Web开发等领域有着广泛的应用&#xff0c;可以帮助你更好地提升Pyt…

flask后端+网页前端:基于 socket.io 的双向通信和服务器部署

我想实现的效果是&#xff0c;我的服务器提供两个路由网址&#xff0c;网页A用于拍照、然后录音&#xff0c;把照片和录音传给服务器&#xff0c;服务器发射信号&#xff0c;通知另一个路由的网页B更新&#xff0c;把刚刚传来的照片和录音显示在网页上。 然后网页B用户根据这个…

分享 WebStorm 2024 激活的方案,支持JetBrains全家桶

大家好&#xff0c;欢迎来到金榜探云手&#xff01; WebStorm公司简介 JetBrains 是一家专注于开发工具的软件公司&#xff0c;总部位于捷克。他们以提供强大的集成开发环境&#xff08;IDE&#xff09;而闻名&#xff0c;如 IntelliJ IDEA、PyCharm、和 WebStorm等。这些工具…

K3 BOS插件实现作息时间的选择

要求做一个工时登记表&#xff0c;其中要扣减中午休息时间。公司夏令休息1.5个小时、冬令休息1个小时是不变的&#xff0c;基本思路是根据日期来判断&#xff0c;但在做表单时发现值更新事件中这个日期判断不好写&#xff0c;于是通过写BOS插件来实现这个功能。 首先新建的BOS…

【学习】软件信创测试中,如何做好兼容性适配

在软件信创测试的领域中&#xff0c;兼容性适配是至关重要的一环。如何确保软件在不同的操作系统、硬件设备和软件环境中稳定运行&#xff0c;是每个测试人员需要面对的挑战。本文将从几个方面探讨如何做好兼容性适配&#xff0c;以提高软件的稳定性和用户体验。 首先&#xf…

网页端HTML使用MQTTJs订阅RabbitMQ数据

最近在做一个公司的日志组件时有一个问题难住了我。今天问题终于解决了。由于在解决问题中&#xff0c;在网上也查了很多资料都没有一个完整的实例可以参考。所以本着无私分享的目的记录一下完整的解决过程和实例。 需求&#xff1a;做一个统一日志系统可以查看日志列表和一个可…

轻量化模块整理,即插即用

轻量化模块整理&#xff0c;即插即用&#xff08;持续更新&#xff09; 整理一些轻量化的结构&#xff0c;作为知识储备&#xff0c;可以用到后续的项目和研究中 Mobilenetv3 深度可分离卷积 MobileNetV3 是一个轻量级的深度学习模型&#xff0c;专为移动和边缘设备上的高效…

IntelliJ IDEA 2024 for Mac/Win:引领Java开发新纪元的高效集成环境

在日新月异的软件开发领域&#xff0c;一款高效、智能的集成开发环境&#xff08;IDE&#xff09;无疑是程序员们不可或缺的神兵利器。今天&#xff0c;我要为大家介绍的&#xff0c;正是这样一款集大成之作——IntelliJ IDEA 2024。无论是Mac用户还是Windows用户&#xff0c;只…