【机器学习300问】69、为什么深层神经网络比浅层要好用?

        要回答这个问题,首先得知道神经网络都在计算些什么东西?之前我在迁移学习的文章中稍有提到,跳转链接在下面:

为什么其他任务预训练的模型参数,可以在我这个任务上起作用?icon-default.png?t=N7T8http://t.csdnimg.cn/FVAV8        本文我不光从机器视觉,还举例自然语言处理和语音识别来更为全面的解答这个问题。当你知晓了神经网络在学什么东西后,你就会明白为什么深层的往往比浅层的好用,但这也并不是说深层的就一定好。

一、深层神经网络在计算些什么?

(1)先用个例子来感性解释一下

① 浅层神经网络 

        假设你在教一个小朋友认识不同的动物,最开始孩子可能通过直观的特征来区分,比如:“有毛的是动物,有翅膀的是鸟”。这时候孩子还只能用这种非常简单且低级的特征来进行分类。这就好比浅层神经网络,它智能捕捉到数据中最基本、最表面的特征。

② 深层神经网络

        随着孩子的成长和学习的深入,开始理解更复杂的概念。比如:“鸟是脊椎动物,有羽毛,能飞行”。这种对动物本质属性的认知,相当于构建了一个更复杂,更抽象,更深层次的理解框架。这就像深层神经网络,每一层可以学习到更抽象、更高级的特征表示。

(2)以机器视觉为例

        以机器视觉识别人脸为例,浅层、中层和深层神经网络各层在学习过程中承担的任务和所关注的特征可以形象地描述如下:

① 浅层

  • 学习内容:浅层神经网络主要负责捕捉和学习图像的基本特征,这些特征通常是局部的、直观的且易于从原始像素中提取得到的。
  • 具体特征举例:边缘(如人类的轮廓、眉毛的边缘等等)、纹理(如皮肤的质感、头发的纹理、胡须的分布等等)、色彩分布(如肤色区域、口红颜色等等)、简单几何形状(如眼睛和鼻孔这些圆形形状、嘴巴和眉毛等弧度曲线等等)

        浅层就像一个初学绘画的学生,刚开始的时候只是绘画对象的基本线条和色彩,如画出人脸的大致轮廓、眉毛的位置、眼睛的形状等。

② 中层

  • 学习内容:中层神经网络在浅层特征的基础上进行更复杂的组合和抽象,学习到局部结构部件特征
  • 具体特征举例:部件(识别出构成人脸的关键部位,如眼睛、鼻子、嘴巴、耳朵等)、局部特征组合(如眼眉组合、鼻唇沟、面部对称性等,这些特征反映了人脸特定区域的相互作用和整体布局)、初步的不变性(对光照、表情、角度等变化有一定的鲁棒性,能够识别在一定变化下的相同人脸特征)

        中层就像已经有一定绘画功底的学生,开始注重描绘对象的细节和各部分的相互关系,如细致刻画眼睛的形状、睫毛的长短,以及鼻子与嘴唇的比例协调等。

③ 深层

  • 学习内容:深层神经网络致力于学习全局和高层次的抽象特征,这些特征代表了人脸的整体结构、身份特性和类别的本质属性。
  • 具体特征举例:全局布局(人脸各部件间的全局空间关系,如三庭五眼的比例、脸型特征、五官的整体朝向等)、独特特征(与个体身份紧密相关的独特特征,如额头形状、下巴轮廓、眉骨突出程度等,这些特征有助于区分不同个体)、类内变异性(同一人不同表情、姿态、光照条件下的不变特征,即尽管表情或角度发生变化,仍能识别出这是同一个人)、类间差异性(不同个体间的关键区分特征,使得模型能够准确地区分大量不同的人脸)

        深层就像是经验丰富的画家,不仅能精确描绘对象的所有细节,还能把握其精神气质和个性特征,使画作超越表象,传达出人物的身份特性和内在神韵。

(3)以自然语言处理为例

        在自然语言处理(NLP)中的文本分类任务,特别是情感分析,浅层、中层和深层神经网络各层同样承担着不同的学习任务,逐步构建起对文本特征的多层次理解。

① 浅层

  • 学习内容:主要关注文本的局部词汇特征基本语言结构
  • 具体特征举例:词汇(学习单个词汇的出现频率、词形及其在词汇表中的索引等基本信息)、语法(捕捉词汇的词性如名词、动词、形容词等等,以及一些简单形态变化如复数、过去式等)、短语(对于基于词的模型,可能学习相邻词语的组合,初步捕捉短语级别的信息)

        浅层如同初次阅读文本的学生,重点关注词汇的字面含义和基本语法结构,理解单个词汇和简单短语的意义。

② 中层

  • 学习内容:在浅层特征基础上,进一步学习局部语义上下文关联
  • 具体特征举例:局部语义(通过学习词汇在特定上下文中的含义,捕捉一词多义现象,如根据上下文识别出某个词的特定情感色彩或专业术语含义)、句法结构(理解更复杂的句法关系,如主谓宾结构、修饰关系、并列结构等,这有助于模型理解文本的逻辑层次)、上下文依赖(捕捉词汇之间的长期依赖关系,如动词与其宾语、形容词与其修饰对象之间的语义关联,以及词汇在句子中的情感连贯性)

        中层如同具有一定阅读理解能力的学生,不仅能理解词汇和短语,还能把握它们在句子中的确切意义和相互关系,理解句子的局部语义结构。

③ 深层

  • 学习内容:学习全局语义主题概念文本意图,并能够对整个文本进行抽象概括。
  • 具体特征举例:全局感情线索(整合整个文本的情感线索,识别出文本总体的情感极性如正面、负面、中性,和强度)、主题建模(提炼出文本的核心话题或主题,这有助于理解文本讨论的主要内容及其情感关联)、篇章结构(理解和捕捉文本内部段落之间的逻辑关系,以及整个文本的起承转合,这对于长文本的情感分析尤为重要。)、文本类型(识别文本所属的文体类别,如新闻报道、评论、对话等,和写作风格,这些因素可能影响情感表达的方式和强度)

        深层如同深度阅读并进行文本分析的专家,能够全面理解文本的主旨、情感基调、论述结构和整体风格,不仅知其言,更能解其意,把握文本的深层情感内涵和表达意图。

(4)以语音识别为例

        在语音识别任务中,浅层、中层和深层神经网络各层负责学习不同级别的声音特征和语音模式。以下是对各层学习内容的具体描述:

① 浅层

  • 学习内容:浅层神经网络主要关注基本声学特征短暂的声学事件
  • 具体特征举例:声谱特征(学习从语音信号中提取的基本声学参数,如梅尔频率倒谱系数、线性预测编码系数等,这些特征反映了声音的频谱分布和能量变化)短时模式(识别短暂的声学事件,如特定频率的共振峰、清浊音的区分、辅音的爆发特征、元音的持续特性等)局部时序关系(捕捉相邻帧之间声学特征的微小变化,如音调的细微波动、连续辅音的过渡等)

        浅层就像一位听觉敏锐的音乐家,专注于聆听音符的高低、强弱、长短,以及它们在短时间内如何交织成基本旋律片段。

② 中层

  • 学习内容:中层神经网络关注局部语音单元短期时序结构
  • 具体特征举例:音素特征(识别并区分构成语言的各个音素,如元音、辅音,以及它们在特定语言环境下的变体,如同音异义词的区分)音节与词边界(学习识别音节的起止位置和边界特征,以及词与词之间的间隔,这对于正确分割连续语音流至关重要)短语内部结构(理解短语内部的韵律特征,如重音、停顿、语速变化,这些特征有助于区分语义相关的词汇群组)

        中层就像一位语言学者,不仅能听出单个音素,还能辨析它们如何组成有意义的音节和词,以及这些词如何按照语言规则组合成短语。

③ 深层

  • 学习内容:于学习全局语言结构语义信息说话风格
  • 具体特征举例:语法结构(捕捉并理解语音中的句法信息,如主谓宾关系、从句嵌套、修饰成分等,这对于准确识别复杂的长句至关重要)、语义概念(通过学习词汇和短语在特定上下文中的含义,理解整句话的语义内容,这有助于减少多义词引起的歧义)、话语模式(识别并适应不同的话语类型,如陈述、疑问、命令。以及相应的语调模式,同时考虑说话人的语气、情绪和语境因素对语音识别的影响)、说话人及环境特征(学习说话人的个体特征,如性别、年龄、方言。以及录音环境因素,如背景噪声、回声、信道失真。以提高在各种实际场景下的识别性能)

        深层如同精通多国语言的翻译官,不仅能听懂每个单词和短语,还能解析复杂的句子结构,理解其深层语义,并适应不同的说话风格和环境背景,最终准确还原出完整的口头表达。

二、为什么要使用深层表示?

        深层的网络隐藏单元数量相对较少,隐藏层数目较多,如果浅层的网络想要达到同样的计算结果则需要指数级增长的单元数量才能达到。

        深层的网络这种由低级到高级、由局部到整体的多层次理解。使得模型能够有效捕捉多样性和复杂性。

三、不是所有神经网络任务都需要很深的层次

(1)任务本身就不复杂

        不同的机器学习任务对模型的复杂度需求各异。对于简单、线性可分或者特征与标签之间关系较为直接的问题,浅层神经网络或甚至传统的线性模型就足以胜任。

(2)过拟合风险

         随着网络深度的增加,模型的参数数量通常会显著增长,这可能导致模型对训练数据过度敏感,学习到过于复杂的模式,尤其是在数据量有限的情况下。过拟合时,模型在训练集上表现良好,但在未见过的新数据上性能急剧下降。对于数据规模较小或特征维度较低的任务,增加网络深度可能会引入不必要的复杂性,增加过拟合风险,而浅层或适度深度的网络反而能提供更稳健的泛化能力。

(3)浪费计算资源

         深度神经网络在训练和推断过程中通常需要更多的计算资源(如GPU时间、内存)和更长的训练时间。对响应速度和有严格要求的任务或者计算资源受限的场景,浅层或轻量级模型可能是更合适的选择。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

学习Rust的第三天:猜谜游戏

基于Steve Klabnik的《The Rust Programming Language》一书。今天我们在rust中建立一个猜谜游戏。 Introduction 介绍 We will build a game that will pick a random number between 1 to 100 and the user has to guess the number on a correct guess the user wins. 我们将…

AI音乐,8大变现方式——Suno:音乐版的ChatGPT - 第505篇

悟纤之歌 这是利用AI为自己制作的一首歌,如果你也感兴趣,可以花点时间阅读下本篇文章。 ​ 导读 随着新一代AI音乐创作工具Suno V3、Stable audio2.0、天工SkyMusic的发布,大家玩自创音乐歌曲,玩的不亦乐乎。而有创业头脑的朋友…

C语言 | Leetcode C语言题解之第32题最长有效括号

题目&#xff1a; 题解&#xff1a; int longestValidParentheses(char* s) {int n strlen(s);int left 0, right 0, maxlength 0;for (int i 0; i < n; i) {if (s[i] () {left;} else {right;}if (left right) {maxlength fmax(maxlength, 2 * right);} else if (…

HTML的超链接

前言&#xff1a; 如图&#xff0c;我们在浏览网页时经常可以看到这样的字体&#xff08;点击便跳转到了别的地方了&#xff09;&#xff0c;今日就和各位一起学习一下超链接的相关知识。 相关知识1&#xff1a; 超链接的标签为&#xff1a;a ~使用格式为&#xff1a; <a h…

SS3D翻译

SS3D AbstractIntroductionRelated WorkFully-Supervised 3D Object DetectionWeakly/Semi-Supervised 3D Object DetectionSparsely-Supervised 2D Object Detection MethodOverall FrameworkArchitecture of DetectorMissing-Annotated Instance Mining Module 缺失注释实例挖…

Kubernetes(k8s)集群搭建部署,master节点配置

目录 1.切换为root用户 2.关闭防火墙&#xff0c;关闭swap分区和禁用SElinux 3.安装docker 4.更改daemon.json文件&#xff0c;指定 Docker 守护进程使用的 cgroup 驱动程序 5.重启docker服务 6.配置kubernetes.repo 7.安装Kubelet、Kubeadm、Kubectl 8.设置开机自启 …

流量卡推广怎么申请一级代理

一、号卡推广的重要性 号卡推广对于通信运营商来说具有重要意义。首先&#xff0c;号卡推广是运营商获取新用户、扩大市场份额的重要手段。通过有效的推广策略&#xff0c;运营商可以吸引更多潜在用户&#xff0c;提高品牌知名度和用户黏性。其次&#xff0c;号卡推广有助于运…

java 读取xml文件

1、基本概念 &#xff08;1&#xff09;XML是EXtensible Markup Language 的缩写&#xff0c;翻译过来就是可扩展标记语言。所以很明显&#xff0c;XML和HTML一样都是标记语言&#xff0c;也就是说它们的基本语法都是标签。 &#xff08;2&#xff09;可扩展&#xff1a;XML允…

了解 RISC-V IOMMU

了解 RISC-V IOMMU 个人作为 IOMMU 初学者&#xff0c;从初学者的角度介绍我眼中 RISCV 的 IOMMU 如果有些描述不够专业&#xff0c;还请谅解&#xff0c;也欢迎讨论 部分内容来自 https://zhuanlan.zhihu.com/p/679957276&#xff08;对于 RISCV IOMMU 规范手册的翻译&#xf…

深入理解go语言中的切片

写在文章开头 从一个Java的开发角度来看&#xff0c;切片我们可以理解为Java中的ArrayList即一种动态数组的实现&#xff0c;本文会从源码的角度对切片进行深入剖析&#xff0c;希望对你有帮助。 Hi&#xff0c;我是 sharkChili &#xff0c;是个不断在硬核技术上作死的 java …

前端框架模板

前端框架模板 1、vue-element-admin vue-element-admin是基于element-ui 的一套后台管理系统集成方案。 **功能&#xff1a;**https://panjiachen.github.io/vue-element-admin-site/zh/guide/#功能 **GitHub地址&#xff1a;**GitHub - PanJiaChen/vue-element-admin: :t…

Win 运维 | Windows Server 系统事件日志浅析与日志审计实践

[ 重剑无锋&#xff0c;大巧不工。] 大家好&#xff0c;我是【WeiyiGeek/唯一极客】一个正在向全栈工程师(SecDevOps)前进的技术爱好者 作者微信&#xff1a;WeiyiGeeker 公众号/知识星球&#xff1a;全栈工程师修炼指南 主页博客: 【 https://weiyigeek.top 】- 为者常成&…

【Mamba】医学图像分割的Mamba评估指标参考(更新中...)

医学图像分割的Mamba评估指标参考 VM-UNet&VM-UNetV2LightM-UNetUltraLight-VM-UNetH-vmunetU-MambaLMa-UNetMamba-UNetVM-UNet&VM-UNetV2 DatasetModelmIoU(%)↑DSC(%)↑Acc(%)↑Spe(%)↑Sen(%)↑ISIC17UNet76.9886.9995.6597.4386.82ISIC17UTNetV277.3587.2395.8498.…

Java开发从入门到精通(十):Java常用的API编程接口:String

Java大数据开发和安全开发 (一)Java常用的API1.1 什么是API1.2 什么叫做包1.2.1 如何调用其他包的程序 1.3 JAVA的API&#xff1a;String1.3.1 创建String对象1.3.2 String提供的操作字符串数据的常用方法1.3.3 String练习案例 (一)Java常用的API 1.1 什么是API API(全称 App…

Ubuntu安装VMVare Workstation pro 17.5.1

由于需要装Kali&#xff0c;我电脑是Ubuntu单系统&#xff0c;所以只能使用linux版本的虚拟机&#xff0c;通过这种方式来安装虚拟机和Kali镜像。 参考CSDN博客资料&#xff1a;https://blog.csdn.net/xiaochong0302/article/details/127420124 github代码资料&#xff1a;vm…

2024 CKA 基础操作教程(十二)

题目内容 考点相关内容分析 Pods Pod 是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。 Pod 是 Kubernetes 中的原子单元&#xff0c;用于封装应用程序的一个或多个容器、存储资源、唯一的网络 IP&#xff0c;以及有关如何运行容器的选项。Pod 提供了一个共享的…

如何实现超大场景三维模型数据立体裁剪

如何实现超大场景三维模型数据立体裁剪 实现超大场景三维模型数据的立体裁剪可以采用如下方法&#xff1a; 数据预处理&#xff1a;将超大场景三维模型数据进行划分和分割&#xff0c;将其拆分成多个小块或网格。这样可以方便进行后续的裁剪操作。 裁剪算法选择&#xff1a;根据…

场景文本检测识别学习 day04(目标检测的基础概念)

经典的目标检测方法 one-stage 单阶段法&#xff1a;YOLO系列、SSD系列 one-stage方法&#xff1a;仅预测一次&#xff0c;直接在特征图上预测每个物体的类别和边界框输入图像之后&#xff0c;使用CNN网络提取特征图&#xff0c;不加入任何补充&#xff08;锚点、锚框&#x…

OpenHarmony轻量系统开发【2】源码下载和开发环境

2.1源码下载 关于源码下载的&#xff0c;读者可以直接查看官网&#xff1a; https://gitee.com/openharmony/docs/tree/master/zh-cn/release-notes 本文这里做下总结&#xff1a; &#xff08;1&#xff09;注册码云gitee账号。 &#xff08;2&#xff09;注册码云SSH公钥…

如何采集opc服务器数据上传云端

为了进一步提高生产效率&#xff0c;生产制造的不断朝着智能化发展和升级&#xff0c;传统的自动化生产系统已经不能满足需求。传统的SCADA系统一般是用于现场的数据采集与控制&#xff0c;但是本地控制已经无法满足整个工厂系统智能化数字化的需求&#xff0c;智能化数字化是需…