深度学习-基础过关

        众所周知,机器学习是一门跨学科的学科,主要研究计算机如何通过学习人类的行为和思维模式,以实现某些特定的功能或目标。它涉及到概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科,使用计算机作为工具并致力于真实实时的模拟人类学习方式, 并将现有内容进行知识结构划分来有效提高学习效率。

        机器学习流程主要分为四步:1.数据获取--> 2.特征工程 -->3. 建立模型 --> 4.评估与应用。

        深度学习是机器学习的一个子集或一个重要分支。深度学习是机器学习的一种方法,通过模仿人类神经网络来实现学习。深度学习的目标是让计算机能够从大量数据中自动提取出有用的特征,并进行分类或回归等任务。深度学习的应用范围包括语音识别、图像识别、自然语言处理等。

        以上是官方对于深度学习的定义,实际上深度学习可以用一句话来总结:自动寻找特征的方法。深度学习是一个黑箱模型,他的内部各种参数其实比较缺乏解释性,但是他可以从样本数据中提取出机器能用的特征。因此,深度学习本质上就是一个特殊的特征工程,自动找出可以用来做分类或者预测的特征。数据特征决定了模型的上限,因此预处理和特征提取是最核心的,算法与参数选择决定了如何逼近这个上限。

1. 权重参数和偏置项参数

7bef798dfb39449a935e24ecb71e3a98.png

        对于图像而言,每张图片都是采用“宽度 x 高度 x 颜色通道”来进行表示,上图的图像数据32x32x3表示图像的宽度和高度都是32像素,而颜色通道为3,通常代表RGB颜色模式。这意味着图像是一个32x32像素的RGB图像,其中每个像素由三个值(R、G、B)表示,每个值的范围通常是0-255。这三个通道的数值可以组合成不同的颜色,从而实现彩色图像的表示。

        在最基本的神经网络中,对于图像数据而言,通过维度扩展,将32x32x3的图像直接拉成一个3072x1的一个向量,然后结合权重参数和偏执参数来进行学习。在神经网络中,权重参数和偏置参数都是重要的组成部分,它们分别具有以下作用:

权重参数:

  1. 决定每个神经元对输入的重要性。
  2. 通过不断调整权重,神经网络可以学习到适应任务的特征表示。
  3. 每个权重对应一个输入特征,可以理解为输入特征的系数,用于计算加权输入。

偏置参数:

  1. 偏置是一个常数项,用于为神经元引入一个偏移量。
  2. 它与神经元的输入加权求和相结合,并通过激活函数进行非线性变换。
  3. 偏置的作用是使得神经元能够更好地拟合数据和提取特征。
  4. 在前向传播过程中,偏置用于调整神经元的输入和输出。

8978404ef1a143beb23ee12629f38663.png

 

 

        在上图中,假设存在10个类别,因此权重参数是10x3072,偏置参数是10x1,每个类别都存在一个1x3072的权重参数,1x1的偏置参数。具体举例可以看下图:

933d27817a814e3d89529f1891da1e3b.png

        在得到神经网络的输出之后,我们既可以根据输出结果直接进行分类(输出得分),也可以衔接其他的分类器开进行进一步分类(输出特征)。

2. 损失函数

        损失函数(也称为代价函数)在神经网络中是一个非常重要的概念,主要用于衡量模型预测结果与真实值之间的差异或错误程度。在下图的距离中,我们利用每个样本在不正确的类别的得分与在正确类别得分的差值来评估模型。

bb77c73fd1dc49348f36526af8b7e485.png

        损失函数的选择取决于问题的类型和具体任务。

  • 在回归问题中,常见的损失函数是均方误差(Mean Squared Error,MSE),它计算预测值与真实值之间的平方差的均值。均方误差可以用于连续值的预测问题,并且具有收敛速度快等优点。
  • 在分类问题中,常见的损失函数是交叉熵损失(Cross-Entropy Loss)。对于多分类问题,通常使用多分类交叉熵损失;对于二分类问题,可以使用二分类交叉熵损失。交叉熵损失通过计算预测概率分布与真实标签之间的交叉熵来衡量模型的错误程度。

        此外,损失函数还有许多其他选择,如平均绝对误差(Mean Absolute Error,MAE)等。在实践中,选择适当的损失函数需要根据具体问题和数据集的特点来决定。除了选择适当的损失函数外,还需要注意损失函数的计算方式和优化方法。在神经网络的训练过程中,通常使用梯度下降等优化算法来最小化损失函数。通过计算损失函数的梯度,可以逐步更新神经网络的权重和偏置参数,以逐渐减小损失函数的值,提高模型的预测精度。

3. 正则化惩罚项

        对于损失函数相同的模型,我们可以使用正则化惩罚项项来优化损失函数。正则化惩罚项是用来调整权重参数的,一般是使得权重参数分布更加平滑。因此实际上使用的损失函数一般是:损失函数 = 数据损失 + 正则化惩罚项(R(W)) 

cf41e7bc438e4d0080268dce0a45cc64.png

        正则化惩罚项是在机器学习和统计学习领域中常用的一种方法,用于防止过拟合和提升模型的泛化能力。通过在目标函数中增加一个或多个正则化项,可以约束模型的复杂度,从而使得模型更加简洁、稳定和可靠。

        正则化惩罚项通常包括L1正则化、L2正则化等多种形式。这些正则化项的作用是增加模型复杂度的惩罚,使得模型更加倾向于选择简单的解,而不是过度拟合训练数据。具体来说,

  • L1正则化也称为Lasso回归,它通过对权重参数的绝对值之和进行惩罚,从而使得模型中的某些权重参数变得接近于零,达到简化模型的效果。
  • L2正则化也称为Ridge回归,它通过对权重参数的平方进行惩罚,使得模型中的权重参数变得较小,从而避免过拟合。

在实际应用中,正则化惩罚项的强度可以通过超参数进行调整。例如,在支持向量机(SVM)中,可以通过调整C参数来控制对错分样本的惩罚程度和模型的复杂度。在神经网络中,可以通过调整正则化强度的超参数来平衡模型的复杂度和拟合能力。

4. Softmax分类器

        Softmax分类器可以将获得的得分转换成概率。对于得分值,可以通过归一化,标准化的方式先预处理数据,如下图所示。

edc25c0e1c4b40e081ec884300a9410f.png 

        Softmax分类器是一种基于概率的分类模型,主要用于解决多分类问题。它通过构建一个softmax函数,将输入特征映射到各个类别的概率分布上,从而实现对未知样本的分类。具体来说,Softmax分类器通常使用神经网络或决策树等模型作为基础,通过训练学习得到每个类别的概率分布。在分类过程中,对于给定的输入样本,Softmax分类器计算其属于各个类别的概率,并将概率最大的类别作为预测结果。

        Softmax分类器的优点在于它可以处理多分类问题,并且能够给出每个类别的概率分布,从而提供更多的分类信息。此外,Softmax分类器还可以与其他机器学习算法结合使用,例如支持向量机、决策树等,以实现更精确和稳定的分类效果。

        然而,Softmax分类器也存在一些缺点,例如对于输入特征的选择和处理、模型的训练和调参等方面需要一定的技巧和经验。此外,对于大规模高维数据集,Softmax分类器的计算复杂度较高,需要进行高效的算法优化和并行处理。

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据信用报告在线查询平台哪个好?

随着大数据技术在金融风控的运用,大数据信用越来越被人熟知,由于线下没有查询大数据信用的地方,想要查询大数据信用报告只有在线上查询,那大数据信用报告在线查询平台哪个好呢?本文贷你一起去了解市面上比较好的三个平台。 大数据…

[自动驾驶算法][从0开始轨迹预测]:三、常用的轨迹预测数据集--Argoverse v2

文章目录 1. 轨迹数据集总览2. Argoverse v2数据集2.1 传感器布局与坐标系统2.2 轨迹预测数据集1. 数据集的下载和读取2. 场景文件的数据结构:3. 地图文件的数据结构 写在前面: “工欲善其事,必先利其器”! 在深度学习中&#xff…

x-shell安装、使用以及配置cuda、cudnn和conda

x-shell安装、使用以及安装最新版本conda x-shell安装远程连接服务器conda安装和环境配置 x-shell安装 x-shell是一款终端模拟软件,用于在Windows界面下远程访问和使用不同系统下的服务器。免费版本下载地址: https://www.xshell.com/zh/free-for-home-…

通过ETLCloud CDC构建高效数据管道解决方案

随着企业数据规模的快速增长和多样化的数据,如何高效地捕获、同步和处理数据成为了业务发展的关键。本文将介绍如何利用ETLCloud CDC技术,构建一套高效的CDC数据管道,实现实时数据同步和分析,助力企业实现数据驱动的业务发展。 一…

SpringBoot security 安全认证(一)——登录验证

本节内容:使用springboot自动security模块实现用户登录验证功能; 登录过程如下图: AuthenticationManager内容实现用户账号密码验证,还可以对用户状态(启用/禁用),逻辑删除,账号是否…

IPSec VPN与NQA联动实现主备对等体和主备链路快速切换案例

知识改变命运,技术就是要分享,有问题随时联系,免费答疑,欢迎联系! 厦门微思网络​​​​​​https://www.xmws.cn 华为认证\华为HCIA-Datacom\华为HCIP-Datacom\华为HCIE-Datacom Linux\RHCE\RHCE 9.0\RHCA\ Oracle OC…

java设计模式:策略模式

在平常的开发工作中,经常会用到不同的设计模式,合理的使用设计模式,可以提高开发效率,提高代码质量,提高代码的可拓展性和维护性。今天来聊聊策略模式。 策略模式是一种行为型设计模式,运行时可以根据需求动…

记录 arm 开发板上 nginx 配置 http 服务注意事项

1. 自定义项目,需要在 conf.d 目录中增加一个 .conf 配置文件: server {listen 9200; # 端口号server_name localhost; # 服务名称location / {root /home/imx6q/media; # 项目根目录(需要修改 n…

redis布隆过滤器(Bloom)详细使用教程

文章目录 布隆过滤器1. 原理2. 结构和操作3. 特点和应用场景4. 缺点和注意事项 应用-redis插件布隆过滤器使用详细过程安装以及配置springboot项目使用redis布隆过滤器下面是布隆过滤器的一些基础命令 扩展 布隆过滤器 Bloom 过滤器是一种概率型数据结构,用于快速判…

AcWing算法学习笔记:贪心(区间问题 + Huffman树 + 排序不等式 + 绝对值不等式 + 推公式)

贪心 一、区间问题①区间选点②最大不相交区间数量③区间分组④区间覆盖 二、Huffman树(合并果子)三、排序不等式(排队打水)四、绝对值不等式(货仓选址)五、推公式(耍杂技的牛) 一、…

常见API

文章目录 Math类1.1 概述1.2 常见方法 System类2.1 概述2.2 常见方法 Runtime3.1 概述3.2 常见方法 Object类4.1 概述4.2 常见方法 Objects类5.1 概述5.2 常见方法 BigInteger类6.1 引入6.2 概述6.3 常见方法6.4 底层存储方式: 7 BigDecimal类7.1 引入7.2 概述7.3 常…

leetcode 1.两数之和(C++)DAY1(待补充哈希表法)

文章目录 1.题目描述示例提示 2.解答思路3.实现代码结果4.总结 1.题目描述 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&…

猫用空气净化器真的能除菌吗?除毛可以用宠物空气净化器吗?

猫咪给我们带来了无尽的欢乐,但它们换毛时家里到处都是猫毛。我们会在地板、沙发上发现一大堆,甚至衣服也难逃其影响。这些浮毛中可能携带着微生物和尘螨等。对于免疫力较低的老年人、孩子和孕妇来说,他们更容易感染这些微生物。而对于鼻炎患…

openlayers加载天地图

申请天地图key 官方:https://www.tianditu.gov.cn/ 申请key:https://sso.tianditu.gov.cn/login?servicehttps%3A%2F%2Fconsole.tianditu.gov.cn%2F 进去之后,先登录,如果没账号先注册一个就行。 可以创建个应用,…

Unity制作随风摇摆的植物

今天记录一下如何实现随风摇摆的植物,之前项目里面的植物摇摆实现是使用骨骼动画实现的,这种方式太消耗性能,植物这种东西没必要,直接使用顶点动画即可。 准备 植物不需要使用标准的PBR流程,基础的颜色贴图加上法向贴…

153基于matlab的滚动轴承故障诊断

基于matlab的滚动轴承故障诊断,基于小波包分解,得到数据峭度值,以正常与故障数据峭度差值进行最大尺度重构,对重构信号进行包络谱分析。程序已调通,可直接运行。 153matlab 信号重构 包络谱分析 故障诊断 (xiaohongshu…

网络流数据集处理(深度学习数据处理基础)

一、数据集处理 处理数据集是一个文件夹 一个文件夹处理的,将原网络流数据集 放入一个文件夹 处理转换成 Json文件。(数据预处理)然后将这些文件处理成目标文件格式 再分割成训练集和测试集。每次运行只会处理一个文件夹。 运行train.py 导入…

html,css,js速成

准备&#xff1a;vscode配好c&#xff0c;python&#xff0c;vue环境&#xff0c;并下载live server插件。 1. html hypertext markup language(超文本标记语言) 1. 基础语法 一个html元素由开始标签&#xff0c;填充文本&#xff0c;结束标签构成。 常见标签说明<b>…

VC++中使用OpenCV绘制直线、矩形、圆和文字

VC中使用OpenCV绘制直线、矩形、圆和文字 在VC中使用OpenCV绘制直线、矩形、圆和文字非常简单&#xff0c;分别使用OpenCV中的line、rectangle、circle、putText这四个函数即可。具体可以参考OpenCV官方文档&#xff1a;https://docs.opencv.org/4.x/index.html 下面的代码展…

微信小程序实现时间轴效果

目录 引言时间轴效果的应用场景微信小程序的优势时间轴效果的设计思路时间轴界面布局数据结构设计实现时间轴效果WXML结构设计WXSS样式设计JavaScript逻辑实现说明引言 时间轴效果的应用场景 时间轴效果作为一种独特且直观的信息展示形式,已经被广泛应用于各种场景中,提供了…