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

news/2024/5/22 10:29:06

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.mrgr.cn/p/38313616

相关文章

如何使用KPI评估研发项目

在本文中,我们将讨论一些关键绩效指标(KPI),这些指标可以帮助您评估您的研发项目的价值和进展。研发项目对于创新至关重要,但同时也面临不确定性、风险和复杂性。那么该如何衡量和评估它们的表现和影响呢? 在本文中,我们将讨论一些关键绩效指标(KPI),这些指标可以帮助…

SAP ERP出海解决方案提供商【工博科技】,为中国企业“出海”护航

当今高质量发展成为主题,中国企业正积极将创新成果、产品、服务“走出去”。然而出海企业面临着充满不确定性的国际环境带来的风险管控挑战和全球化经营带来的竞争挑战,必须要不断提升风险管控能力和综合竞争实力。其中,成熟的数字化能力可以在保护企业数字安全的同时提供发…

创建一个javascript公共方法的npm包,js-tool-big-box,发布到npm上,一劳永逸

前端javascript的公共方法太多了&#xff0c;时间日期的&#xff0c;数值的&#xff0c;字符串的&#xff0c;搞复制的&#xff0c;搞网络请求的&#xff0c;搞数据转换的&#xff0c;几乎就是每个新项目&#xff0c;有的拷一拷&#xff0c;没有的继续写&#xff0c;放个utils目…

java多渠道消息推送-(微信公众号、钉钉、邮箱、系统内部、短信等)

1. 消息对象定义 1.1 通用消息对象定义package com.yj.notice.message; import com.yj.commons.tools.utils.DateUtils; import com.yj.commons.tools.utils.StringUtil; import com.yj.notice.costant.NoticeMethodEnum; import lombok.AllArgsConstructor; import lombok.Bu…

【2024蓝桥B组】 R格式

R格式 题目 题目分析 1.看似是x*2n,实际上可以看为x对自身的累加,例如: x*21=x*2=2x x*22=(x+x)+(x+x)=4x x*23=((x+x)+(x+x))+((x+x)+(x+x))=8x ... 所以,我们可以自己调用一个函数:在该函数实现对s自身的累加,由于我们需要进行多次对自身的累加,所以我们采用指针void …

从 0 搭建公司Jenkins服务 Centos7

从 0 搭建公司Jenkins服务 Centos7 安装 (运维人员) 安装环境 配置DNS安装JDK17安装Jenkins安装Docker安装GIT安装Ansible启动Jenkins安装插件配置凭据配置共享库配置 (开发经理)使用 (开发、测试人员) 安装 (运维人员) 安装环境 配置DNS 新安装系统的服务器无法解析域名&a…

shell脚本中的运算符和条件判断

shell脚本中的运算符和条件判断: 一、算术运算符 在Shell脚本中,你可以使用各种运算符来执行数学运算、比较和逻辑操作。 计算方式:$[ ] $(( ))例: a=$[(9+5)90] 打印输出结果 ==> echo $a 二、条件判断 判断方式:test $a = 90 [ $a = 90 ]注意事项: 判断处理中间空格…

研究表明,全球互联网流量竟有一半来自机器人

据Cyber News消息&#xff0c;Thales Imperva Bad Bot近期做了一份报告&#xff0c;显示在2023年有49.6%的互联网流量竟来自机器人&#xff0c;比上一年增长 2%&#xff0c;达到自2013年以来观察到的最高水平。 报告称&#xff0c;这一趋势正对企业组织产生负面影响&#xff0c…

流程表单平台优点全介绍

针对流程表单平台的优点和特点,本文将做一个详细介绍。在数字化转型时期,借助低代码技术平台的发展优势,可以为企业提质增效、创造高质量的发展前景。流辰信息坚持自主研发创新,提供流程表单平台、低代码技术平台产品,助力企业做好数据治理工作,实现流程化管理。针对流程…

WEB3.0:互联网的下一阶段

随着互联网的发展&#xff0c;WEB3.0时代正在逐步到来。本文将深入探讨WEB3.0的定义、特点、技术应用以及未来展望&#xff0c;为读者带来全新的思考。 一、什么是WEB3.0&#xff1f; WEB3.0可以被理解为互联网发展的下一阶段&#xff0c;是当前WEB2.0的升级版。相较于2.0时代…

直方图与核密度估计

核密度估计(KDE)方法,相当于用多个波包的组合形式来近似一个真实的概率密度,以获得一个连续可微分的概率密度函数。本文通过一些简单的概率分布的示例,演示了一下KDE的使用方法。其实KDE的思想在很多领域都会以不同的形式出现,是一个比较基础的概率分布近似手段。技术背景…

ADB的基本语法及常用命令

学习网址 ADB命令的基本语法如下&#xff1a; adb [-d|-e|-s <serialNumber>] <command> 如果有多个设备/模拟器连接&#xff0c;则需要为命令指定目标设备。 参数及含义如下&#xff1a; 常用命令如下&#xff1a; 1. 启动ADB服务 adb start-server 2. 停止…

AI智能分析视频质量诊断系统解决方案建设思路与设计

一、建设背景 随着安防视频覆盖日趋完善&#xff0c;视频在安全管理等方面发挥了不可替代的作用&#xff0c;但在使用过程中仍然存在视频掉线、视频人为遮挡、视频录像存储时长不足等问题&#xff0c;存在较大的安全隐患。 1&#xff09;视频在安全生产管理上作用日趋凸显&am…

电梯会议+原型展示

视频效果展示:原型展示PPT:

Docker+Uwsgi+Nginx部署Django项目保姆式教程

之前&#xff0c;我和大家分享了在docker中使用uwsgi部署django项目的教程。这次&#xff0c;为大家带来的是使用DockerUwsgiNginx部署Django项目。废话不多说&#xff0c;我们开干。 步骤1&#xff1a;使用命令创建一个django项目 我这里python版本使用的是3.9.x 首先&#…

Go 单元测试之HTTP请求与API测试

目录一、httptest1.1 前置代码准备1.2 介绍1.3 基本用法二、gock2.1介绍2.2 安装2.3 基本使用2.4 举个例子2.4.1 前置代码2.4.2 测试用例 一、httptest 1.1 前置代码准备 假设我们的业务逻辑是搭建一个http server端,对外提供HTTP服务。用来处理用户登录请求,用户需要输入邮箱…

10_QT系统移植之在开发板上部署QT运行环境

QT系统移植之在开发板上部署QT运行环境 一.开始部署 1.我们在Ubuntu新创建一个文件夹,然后把我们用busybox做好的文件系统拷贝到这个文件下。如下图所示:2.然后我们解压这个根文件系统到当前所在的路径下。3.我们在这个解压出来的根文件系统下新创建一个opt的文件夹,如下图所…

09_QT系统移植之交叉编译QT源码和触摸源码

QT系统移植之交叉编译QT源码和触摸源码 交叉编译QT源码 一.源码下载 ​ QT官网下载: http://download.qt.io/new_archive/qt/5.7/5.7.1/ 二.编译环境 开发环境:Ubuntu16 编译器:arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 三.编译触摸 触摸源码…

【Textin.com】智能文档处理系列 - 电子文档解析技术全格式解析

一、引言 在当今的数字化时代&#xff0c;电子文档已成为信息存储和交流的基石。从简单的文本文件到复杂的演示文档&#xff0c;各种格式的电子文档承载着丰富的知识与信息&#xff0c;支撑着教育、科研、商业和日常生活的各个方面。随着信息量的爆炸性增长&#xff0c;如何高效…

Midjourney常见玩法及prompt关键词技巧

今天系统给大家讲讲Midjourney的常见玩法和prompt关键词的一些注意事项&#xff0c;带大家入门&#xff5e;&#xff08;多图预警&#xff0c;建议收藏&#xff5e;&#xff09; 一、入门及常见玩法 1、注册并添加服务器&#xff08;会的童鞋可跳过&#xff5e;&#xff09; …