机器学习-期末复习

news2025/3/12 23:45:41

本文的内容按照作者的课程考试要求书写,仅供复习参考。🌷🌷🌷欢迎大家指正!

机器学习是一种人工智能(AI)的分支领域,它致力于开发能够通过数据学习和改进的算法和模型。简而言之,机器学习系统利用数据来识别模式、进行预测或者做出决策,而无需明确地编程规则。这些系统通过从数据中学习并自动调整其行为来提高性能,从而实现了自我改进和适应。
机器学习:通过算法使得机器能从大量数据中学习规律从而对新的样本做决策。

考点

  • 二分类线性模型的决策边界
  • KL散度和交叉熵损失
  • 感知器
  • 卷积神经网络
  • 序列建模
  • 注意力机制
  • 模型的优化和正则化
    • BN带来的好处
    • BN存在的问题

二分类线性模型的决策边界

在二分类问题中,由于输出目标 𝑦 是两个离散的标签,而 𝑓(𝒙; 𝒘, b) 的值域为实数,因此无法直接用 𝑓(𝒙; 𝒘) 来进行预测,需要引入一个非线性的激活函数(决策函数) 𝑔(⋅)来预测输出目标,决策函数(常用的是sigmoid函数)的作用是将模型的连续输出映射到两个离散标签中的一个。

在这里插入图片描述
证明:为什么决策平面与权重向量w正交
参考链接:csdn
在这里插入图片描述
Logistic Regression

将二分类问题看作条件概率估计问题
Logistic函数
在这里插入图片描述

Logistic回归
在这里插入图片描述

KL散度和交叉熵损失

在这里插入图片描述

KL散度(Kullback-Leibler Divergence)是衡量两个概率分布之间差异的一种方式。它表示的是两个概率分布P和Q之间的信息损失。当P和Q越接近时,KL散度越小;反之,当P和Q差异越大时,KL散度也越大。因此,KL散度可以用来量化模型预测的概率分布与实际概率分布之间的差异。
在这里插入图片描述

交叉熵损失(Cross-Entropy Loss)则是在机器学习和深度学习中常用的一个损失函数。它主要用来衡量模型预测的概率分布与真实标签之间的差异。在分类问题中,真实标签通常是一个one-hot编码的向量,而模型预测的是每个类别的概率。交叉熵损失通过计算预测概率与真实标签之间的差异,指导模型在训练过程中不断优化,以减小预测误差。
在这里插入图片描述

感知器

感知器学习算法也是一个经典的线性分类器的参数学习算法.感知器是一种二元分类器,它试图通过调整权重和阈值来根据给定的输入数据做出正确的分类决策。当感知器接收到一个错误样本,即其分类结果与预期不符时,它就知道当前的权重和阈值配置并不理想,因此需要进行调整。
这种调整的过程实际上是一种优化过程,感知器试图通过最小化分类错误来找到最佳的权重和阈值。具体来说,当感知器对某个样本的分类结果错误时,它会计算这个错误导致的损失(即交叉熵损失或其他类似的损失函数),然后根据这个损失来调整权重。这种调整通常是基于梯度下降或其变种算法进行的,目的是使损失函数最小化。

在这里插入图片描述

为什么要用错误样本来更新权重?
当感知器网络接收到一个错误分类的样本时,这意味着当前的网络权重未能正确地将该样本映射到其应属的类别。此时,网络就需要根据这个错误来调整其权重,以减小未来犯同样错误的可能性。具体来说,感知器网络会计算该错误样本的预测输出与实际输出之间的差异(即误差),然后根据这个误差来更新权重。这种更新通常是沿着误差的负梯度方向进行的,目的是使网络的输出更接近实际标签,从而提高分类的准确性。

卷积神经网络

首先明确一个概念,卷积核就是滤波器。
卷积核(或滤波器)是一个小的矩阵,通常具有较小的维度(如3x3或5x5),它会在输入数据(如图像)上滑动,执行卷积操作以提取特征。每个卷积核都会学习捕捉输入数据中的某种特定模式或特征。
在这里插入图片描述
滑动步长和零填充
步长(Stride)是指卷积核在滑动时的时间间隔
零填充(Zero Padding)是在输入向量两端进行补零

零填充的目的:
保持空间尺寸:当卷积核的大小大于输入图像的大小时,通过零填充可以避免卷积操作后图像尺寸的减小。这有助于确保卷积后的图像大小不变,方便后续的操作。
调整输出大小:零填充还可以用于调整输出的空间大小。通过补零,可以在保持输出空间大小不变的情况下将输出传入下一层。如果不进行零填充,每次卷积操作后输出的空间都可能缩小,当输出的大小变得过小(如大小为1)时,就无法再进行卷积操作了。
解决边界效应:在处理离散量时,卷积操作可能会产生边界效应,即相邻周期之间的干扰。这种干扰可以通过补零的方法来避免,确保空间和循环卷积给出相同的结果。

卷积运算的参数量
输出尺寸 = (输入尺寸 - 卷积核尺寸 + 2 * 零填充) / 步长 + 1
在这里插入图片描述
Inception网络
1x1卷积核的作用
在这里插入图片描述
补充:1x1卷积核实现升维/降维的原理

如果输入数据格式为MN10,MN为数据矩阵,10为通道数,如果希望输出数据格式为MN5,使用5个11*10的卷积核即可。
这个过程是先降维再升维,通道数都为10,可以理解为没办法在深度方向上进行滑动,所以卷积运算之后的通道数变为1。

序列建模

从机器学习的角度来看:语言模型是对语句的概率分布的建模。

N-gram模型:减少历史基元的个数
当 n=1 时,即出现在第 i 位上的基元 wi 独立于历史。 一元文法也被写为 uni-gram 或 monogram;
当 n=2 时,即出现在第 i 位上的基元 wi 仅依赖于wi -1,2-gram (bi-gram) 被称为1阶马尔可夫链;
当 n=3 时,即出现在第 i 位上的基元 wi 依赖于{wi -1、 wi -2},3-gram(tri-gram)被称为2阶马尔可夫链,依次类推。
例如,给定训练预料:
“John read Moby Dick”
“Mary read a different book”
“She read a book by Cher”
根据 2-gram文法求句子的概率?
句子:John read a book
计算的概率类似于条件概率,要注意所求句子和预料里面的单词的前后关系
注意: < BOS >是第一个单词前面的位置 < EOS >是最后一个单词后面的位置
计算过程为:
在这里插入图片描述

注意力机制

注意力,对于我们人来说可以理解为“关注度”,对于计算机来说其实就是赋予多少权重(比如0-1之间的小数),越重要的地方或者越相关的地方就赋予越高的权重。
在这里插入图片描述

注意力模型的基本实现过程如下:

1.计算注意力权重:对于每个输入序列中的元素,模型会计算一个与之对应的注意力权重。这个权重通常基于输入元素和当前要生成的输出元素之间的相关性或匹配程度。
2.加权求和:使用计算出的注意力权重对输入序列进行加权求和,得到一个上下文向量(context vector)。这个上下文向量包含了模型在生成当前输出时需要关注的信息。
3.生成输出:最后,模型使用上下文向量和其他相关信息来生成输出。

补充:softmax函数

softmax函数是一种将原始分数转换为归一化概率分布的方法。它通常用于多分类问题的输出层,以确保模型的输出是一个有效的概率分布。
softmax函数的实现过程如下:
1.计算原始分数:对于每个可能的类别,模型会计算一个原始分数(通常是模型最后一层的输出)。
2.应用Softmax函数:将每个原始分数转换为概率值。Softmax函数通过指数化原始分数并对其进行归一化来实现这一点。具体来说,对于每个原始分数xi,其对应的概率值pi是通过以下公式计算的:
pi = e^xi / Σj e^xj,其中,Σj e^xj是所有类别原始分数的指数和。
3.输出概率分布:最终,Softmax函数会输出一个概率分布,其中每个类别的概率值都在0和1之间,且所有类别的概率值之和为1。

模型的优化和正则化

BN的主要思想是在网络的每一层的激活函数之前,对激活函数的输入进行归一化处理,使其分布在均值为0、方差为1的范围内,然后再进行平移和缩放。

在这里插入图片描述

在这里插入图片描述

BN带来的好处

1.减轻了对参数初始化的依赖,有利于调参。
2.训练更快,可以使用更大的学习率。
3.BN一定程度上增加了泛化能力

BN存在的问题

BN依赖于批的大小,当批量很小时,估计的均值和方差不稳定。因此BN不适合如下场景:
批量非常小,比如训练资源有限无法设置较大的批量,也比如在线学习等使用单例进行模型参数更新的场景。
循环神经网络,因为它是一个动态的网络结构,同一个批中训练实例有长有短,导致每一个时间步长必须维持各自的统计量,这使得BN并不能正确的使用。

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

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

相关文章

深入学习Linux中的“文件系统与日志分析”

目录 1.文件系统的组成 1.1inode和block 1.2inode的内容 1.3inode的号码 ​1.4文件存储小结 ​1.5inode大小 1.6inode的特殊作用 2. 链接文件 3.文件恢复 3.1EXT类型文件恢复 3.2磁盘有空间&#xff0c;但是仍然无法写入新文件 3.3恢复XFS类型的文件 3.3.1xfsdump…

面试:JVM内存结构

一、Java代码的运行步骤 一段Java代码先会被反编译为Java字节码&#xff0c;当执行java命令时&#xff0c;JVM虚拟机会被创建出来&#xff0c;并会创建一个main主线程来执行主方法。 二、JVM的内存结构有哪些&#xff1f; 1、方法区&#xff1a;&#xff08;线程共享&#xff…

实验五 Spark SQL编程初级实践

Spark SQL编程初级实践 Spark SQL基本操作 将下列JSON格式数据复制到Linux系统中&#xff0c;并保存命名为employee.json。 { "id":1 , "name":" Ella" , "age":36 } { "id":2, "name":"Bob","a…

婴儿专用洗衣机有必要吗?四大宝藏婴儿洗衣机测评对比

对于有了宝宝的家庭来说&#xff0c;洗衣成为了一项重要的家务事。大家都知道&#xff0c;宝宝的皮肤比较娇嫩&#xff0c;容易受到各种细菌、病毒的侵扰。所以&#xff0c;宝宝的衣物应该与大人的分开洗。婴儿洗衣机作为一种专门为婴幼儿家庭设计的洗衣机&#xff0c;其具有除…

Ubuntu 20.04.6下载、安装

一、下载 下载地址&#xff1a;https://cn.ubuntu.com/download 下载版本&#xff1a;ubuntu-20.04.6-desktop-amd64.iso 二、安装 参考博客&#xff1a; https://blog.csdn.net/lhl_blog/article/details/123406322 https://www.cnblogs.com/fieldtianye/p/17879840.html…

根据当年节假日和非工作时间计算请假时间-获取每个月的节假日,计算每个月的工作日时间进度,节假日每年更新

根据需求请假时间要排除法定节假日和非工作时间 1.获取当年的节假日 节假日是每年更新的&#xff0c;没有固定接口&#xff0c;需要手动录入 个人根据官方的节假日整理了当年的所有节假日&#xff0c;可以根据个人需求进行修改 // 获取每个月的节假日&#xff0c;如果当月没…

【Qt 学习笔记】Qt常用控件 | 显示类控件 | LCD Number的使用及说明

博客主页&#xff1a;Duck Bro 博客主页系列专栏&#xff1a;Qt 专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ Qt常用控件 | 显示类控件 | LCD Number的使用及说明 文章编号&#xf…

ELK技术介绍:背景、功能及应用场景全面解析

一、ELK概述 ELK是由Elasticsearch、Logstash和Kibana三个开源软件组成的日志管理解决方案&#xff0c;这一组合在近年来得到了广泛的关注和应用。ELK的出现&#xff0c;源于大数据和云计算技术的快速发展&#xff0c;以及对高效日志管理的迫切需求。 随着企业信息化程度…

3dmax云渲染100插件怎么安装?渲染100邀请码1a12

3dmax云渲染插件能在设计师完成参数设置后&#xff0c; 通过点击插件的方式上传到云渲染平台进行渲染&#xff0c;那么3dmax云渲染插件怎么安装呢&#xff1f;以渲染100为例&#xff0c;我们来看下。 下载工具&#xff1a;渲染100客户端 1、设计师在渲染100官网(http://www.x…

淘宝扭蛋机小程序开发:开启购物新纪元,探索乐趣无穷的互动体验

随着科技的飞速发展&#xff0c;人们的购物方式也在不断革新。淘宝扭蛋机小程序应运而生&#xff0c;它巧妙地结合了线上购物与线下娱乐&#xff0c;为消费者带来了一种前所未有的互动体验。今天&#xff0c;就让我们一起走进淘宝扭蛋机小程序的开发世界&#xff0c;探索其背后…

DHCP原理和配置

1、DHCP原理 &#xff08;1&#xff09;什么是DHCP DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议)&#xff1a;给网络内的客户机自动分配IP地址由internet工作任务小组设计开发口专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议DHCP采用的是UDP作为传输…

【数字图像处理笔记】Matlab实现离散傅立叶变换 (二)

&#x1f48c; 所属专栏&#xff1a;【数字图像处理笔记】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x…

离线语音模块初步学习——LSYT201B(深圳雷龙发展)

一 、产品简介 首先简单介绍下该离线语音模块&#xff0c;官方给出的介绍是&#xff1a;YT2228 是根据智能语音交互市场需求及思必驰算法的发展方向定义开发的 “芯片算法”人工智能人机语音交互解决方案&#xff0c;具有高性能、低功耗等特点。该芯片通过软硬融合的方法&…

流量代理第一弹:入门使用

定义 “流量代理是一种网络通信技术&#xff0c;它充当网络通信的中间人&#xff0c;将流量从一个地方传递到另一个地方。通常用于实现网络隧道、网络加速、访问控制和隐私保护等功能。“ 上面是来自chatGPT的回答。从这个回答中&#xff0c;我们不难看出&#xff0c;流量代理…

专利视角下的量子竞赛:《2024全球专利格局白皮书》

2024年1月&#xff0c;欧洲量子产业联盟&#xff08;QuIC&#xff09;发布了题为《全球量子技术专利格局描述》的综合白皮书。 该文件以透明的视角展示了当今的知识产权格局&#xff0c;包括知识产权持有人的地理分布。该文件由 QuIC 知识产权&#xff08;IP&#xff09;与贸易…

【学习笔记】Python 使用 matplotlib 画图

文章目录 安装中文显示折线图、点线图柱状图、堆积柱状图坐标轴断点参考资料 本文将介绍如何使用 Python 的 matplotlib 库画图&#xff0c;记录一些常用的画图 demo 代码 安装 # 建议先切换到虚拟环境中 pip install matplotlib中文显示 新版的 matplotlib 已经支持字体回退…

Linux Docker下载镜像更改默认存储位置/usr/lib/docker

用于解决docker默认存储位置磁盘空间不足&#xff0c;切换存储位置 1、执行下面命令查看 现在docker的存储位置 docker info | grep "Docker Root Dir" 1.2、如果之前已经下载过镜像可以用mv命令把原来的镜像复制到新的地址 mv /var/lib/docker /data/docker 2、…

vue3中的ref、isRef、shallowRef、triggerRef和customRef

1.ref 接受一个参数值并返回一个响应式且可改变的 ref 对象。 ref 对象拥有一个指向内部值的单一属性 .value property &#xff0c;指向内部值。 例&#xff1a;此时&#xff0c;页面上的 str1 也跟着变化 <template><div><button click"handleClick&quo…

RK3588构建ubuntu22.04根文件系统

前言 RK系列的平台提供了buildroot和debian的系统&#xff0c;使用脚本可以直接构建出来&#xff0c;但是没有提供ubuntu的系统&#xff0c;很多厂商只提供一个rootfs.img的固件包&#xff0c;没有将方法开源出来。本文实现了从ubuntu官网开始构建一个ubuntu22.04根文件系统。…

python数字验证码自动识别

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在网络上&#xff0c;许多网站和应用程序使用验证码&#xff08;Completely Automated Publ…