分层神经网络(DNN)知多少?

news2024/9/22 12:35:56

分层神经网络作为深度学习的核心架构,已经彻底改变了我们处理复杂问题的方式。本文将带我们走进神经网络的基础知识,揭开GPT这些强大模型的神秘面纱。希望通过本文的介绍,我们不仅能够理解神经网络的基本构成,还能洞察到它们是如何通过一系列精心设计的层次结构来学习和模拟数据中的复杂模式。

从零开始构建简单人工神经网络:1个输入层和1个输出层_预测

神经网络由什么构成?

所有神经网络都由神经元网络组成,就像它们所模拟的大脑一样,但神经元是什么?

一个神经元由其输入、权重、偏差、激活函数和单一输出组成。它最初旨在复制生物神经元。

输入和权重之间存在一一对应的比例,当它们结合在一起时,会得到一系列加权输入,这些输入会被相加。在这个总和上加上一个偏差。

激活函数为什么重要?

具有单个输入的神经元是一个线性函数 ( y = ax + b ),因此只能形成简单的决策边界。即使增加神经网络中输入和神经元的数量,结果仍然是线性函数。这是因为多个线性函数结合在一起总是得到线性函数。

为了解决这个问题,并允许网络找到复杂的决策边界,我们需要使用激活函数,它们增加了非线性。

在下面的图表中,你可以看到这一点的例子,虚线代表具有单个加权输入的神经元,实线红线是三个的总和。看看在第一张图中红线仍然是一个线性函数。从数学上讲,这是因为 ( (4x + 2) + (-3x - 4) + (-2x + 1) ) 简化为 ( (-x - 1) )。

 

当将相同的神经元通过激活函数,在这个例子中是逻辑函数,非线性被添加到系统中。

以下是一些更知名的激活函数:

 

由于历史原因,这是最初的激活函数,20世纪50年代最初的感知机中使用了这个函数。这个函数将求和函数的输出转换为二进制值。

由于函数中阶梯的性质,权重和偏差的变化在输出越过阶梯边界之前不会有任何影响,一旦越过,它就会翻转二进制值。

步进函数

由于函数中步进的特性,权重和偏差的变化在输出越过步进边界之前没有影响,在这一点上它会翻转二进制值。

逻辑函数,也称Sigmoid函数

逻辑函数,即Sigmoid函数的一个变体,最初取代了阶梯函数。与阶梯函数一样,它将一个神经元的输出限制在0和1之间,但不会在零点附近出现同样的问题。这使得训练过程更加容易,因为除了在极端情况下,权重和偏差的变化始终会产生影响。

修正线性单元(ReLU)

修正线性单元(Rectified Linear Unit,简称ReLU)已经成为最受欢迎的激活函数,并且在大多数情况下,它是深度神经网络使用的默认激活函数。ReLU将输入的值与0进行比较,取两者中的较大值,这实际上会立即将任何负的输入值置为0。这种特性使得ReLU在处理正数时保持线性,而在处理负数时则输出0,从而加快了神经网络的训练速度,并有助于解决梯度消失问题。

SoftMax

SoftMax激活函数用于分类神经网络的最终输出层。它将输出值的向量转换为输出类别的概率分布。每个输出神经元将代表输入属于相应类别的概率。

神经网络的架构

在神经网络中,神经元可以以多种方式排列。对于基本神经网络,神经元被安排成几个不同的层次。

有三个类别:

  1. 输入层

  2. 隐藏层

  3. 输出层

1. 输入层

输入层纯粹是输入数据的值,不进行计算。对于图像分类神经网络,每个输入值都有一个神经元,对于灰度图像,每个像素都有一个神经元。

2. 隐藏层

隐藏层是神经网络的主力,它们负责识别特征或将输入转换为输出层可以使用的东西。

如果有单个隐藏层,那么神经网络是一个浅层神经网络。如果有两个或更多隐藏层,那么它是一个深度学习神经网络。神经网络越深,它可以学习的模式就越复杂,但这需要更多的计算能力来训练。

每个隐藏层中可以有任意数量的神经元,神经元数量的增加可以提高神经网络在输入中识别信息的能力。但神经元数量的增加可能导致对训练数据的过拟合。

3. 输出层

输出层给出了神经网络的输出。对于图像分类,将有一个神经元对应于要分类的每个类别,例如在手写数字识别中,将有10个神经元,每个数字一个。

层如何连接

对于基本的分层神经网络,每个神经元将前一层中每个神经元的输出作为其输入。第一个隐藏层直接接受神经网络的输入。

 

已经证明,具有两层并使用非线性激活函数的神经网络可以是一个通用函数逼近器,可以找到任何数学函数。

确定权重和偏差(参数)

那么每个神经元的权重和偏差是如何设置的?

权重和偏差,参数,可以手动更新,直到神经网络的输出正确。然而,神经网络可能包含数百万/数十亿个参数,因此需要自动化过程。

为了能够自动化这个过程,需要一种评估神经网络准确性的方法。为此,可以使用损失函数来给出一个值,显示当前神经网络离正确评估有多远。

损失函数

寻找神经网络误差的常用算法是均方误差函数。这会找到一个正值,显示网络离期望值有多远。

损失函数可以进行经验分析,看看参数的变化是否改善或恶化了神经网络的输出。目标是尽可能地改变参数以最小化损失。

梯度下降

假设一个具有单个输入的神经网络,有一个权重。如果我们绘制权重与损失的图表,可能会有像下面的图表。

 

假设红色标记是基于当前权重的当前误差值,绿色点是最小误差。目标是计算给我们最小值的权重值。

为了计算新的权重值,取权重误差的导数并从当前权重中减去该值。实际上,找到了沿着图表斜率向下走向局部或全局最小值的新值。

学习率用于控制对权重的更改量,如果权重变化的大小太大,则可能会跳过损失最小值,或者它可能永远不会在最小值的“山谷”中定居,并不断地从一边跳到另一边。如果太小,那么到达局部最小值将需要更长的时间。

反向传播

为了计算每个权重的调整,然后需要计算相对于每个权重变化的误差变化的梯度。对于最后一层来说很简单,但对于前几层则不是那么简单。

可以使用一种称为反向传播的数学概念来确定这一点,从最后一层开始,逐层向前一层计算导数。

反向传播中使用了称为链式法则的微积分概念,以计算相对于每层的输入、权重和偏差的误差函数的梯度。

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

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

相关文章

OpenCV图像处理——轮廓的面积与弧长计算(C++/Python)

概述 轮廓面积与轮廓周长是图像分析中的两项核心统计特征,它们为理解和量化图像中的形状提供了基础。 轮廓面积:这代表了轮廓所界定区域的像素数量,是衡量区域大小的直接指标。面积的计算结果以像素平方为单位,为我们提供了一个量…

Wireshark_DNS_v7.0

Wireshark_DNS_v7.0 一、 nslookup 前置 nslookup 是一个网络命令行工具,用于查询域名系统(DNS)中的域名解析记录。通过使用 nslookup,你可以获取某个域名的IP地址,或者获取与某个IP地址关联的域名信息。 查看域名…

学校医院NTP电子钟让时间管理更加智能

在学校和医院这样的重要场所,时间的精确管理至关重要。每一分每一秒都可能关系到教学的进度、医疗的效果以及师生和患者的体验。而 NTP 电子钟的出现,为学校和医院的时间管理带来了全新的智能化变革。 一、NTP 电子钟在学校应用 NTP 电子钟,…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第五篇 文件系统构建篇-第七十八章 离线构建Yocto系统

i.MX8MM处理器采用了先进的14LPCFinFET工艺,提供更快的速度和更高的电源效率;四核Cortex-A53,单核Cortex-M4,多达五个内核 ,主频高达1.8GHz,2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

【HarmonyOS】鸿蒙应用蓝牙功能实现 (一)

【HarmonyOS】鸿蒙应用蓝牙功能实现 前言 蓝牙技术是一种无线通信技术,可以在短距离内传输数据。它是由爱立信公司于1994年提出的,使用2.4 GHz的ISM频段,可以在10米左右的距离内进行通信。可以用于连接手机、耳机、音箱、键盘、鼠标、打印机…

工厂流水线MES报工一体机改善生产管理效率

作为智能制造的重要组成部分,MES系统(制造执行系统)在优化生产流程、提高生产效率、降低生产成本等方面发挥着不可替代的作用。而MES报工一体机作为MES系统的重要组成部分,更是帮助企业实现生产管理效率提升的利器。 一、MES报工一…

为何有了云计算,还需要边缘计算?EasyCVR视频平台助力数据高效汇聚与管理

在当今数字化的时代,云计算可谓是大名鼎鼎,它为我们的生活和工作带来了巨大的便利。但你有没有想过,既然有了强大的云计算,为什么还会出现边缘计算呢? 一、云计算与边缘计算:相辅相成的科技双雄 先来说说…

船员考证题库刷题

1、船舶主配电板系统,设有地气灯、配电板式兆欧表和低绝缘报警装置,及船舶照明分配电箱,当发生单相接地故障时而进行排查时,______设备是不能随意断电的。 A、厨房用电 B、卫星基站 C、起重机用电 答案:B 2、燃油…

修复或更换:螺杆机支撑座磨损后的处理选择

螺杆机后端支撑座磨损,主要是由于长期使用,润滑不足或使用劣质润滑油等原因导致的。当螺杆机支撑座出现磨损时,其承载能力会逐渐下降,加速磨损,导致设备运行不稳定,噪音增大,严重时还会导致设备…

老照片一键修复怎么做?6个软件帮助你快速进行老照片修复

老照片一键修复怎么做?6个软件帮助你快速进行老照片修复 老照片修复可以让陈旧、褪色或损坏的照片恢复到原有的光彩和清晰度。以下是六款方便好用的软件,能够帮助你快速进行老照片修复,且许多都支持一键操作。 智能修复老照片 这是一款专…

【Linux】守护进程:containerd的使用教程

这里写目录标题 前言一. ctr1.1 ctr CLI1.2 ctr 调试 二、 创建 container2.1 进入 NewContainer2.2 ContainerService().Create 前言 介绍了 kubelet 通过 cri 接口和 containerd 交互的过程,containerd 源码分析:启动注册流程 介绍了 containerd 作为…

屏幕防拍照技术:防止屏幕被拍照的方法有哪些?答案超乎想象!

“防身立命,安内攘外。” 在数字化时代,信息安全已成为企业乃至个人不可忽视的重要议题。 屏幕作为信息展示的主要窗口,其安全性尤为关键。 然而,随着拍照技术的日益普及与精进,屏幕内容被轻易捕捉并泄露的风险也随…

暗区突围辅助攻略:VMOS云手机硬核辅助!农场地图攻略大全!

在《暗区突围》中,了解地图和撤离点的分布对于游戏的胜利至关重要。使用VMOS云手机进行游戏辅助,可以为你带来显著的优势。VMOS云手机专门针对《暗区突围》进行了定制,内置游戏安装包,无需重新下载安装游戏。它能够实现24小时云端…

您看这篇就够了:ComfyUI 新手指南

欢迎来到 ComfyUI 的神奇世界,这是 Stable Diffusion 的一个强大而灵活的图形用户界面。无论你是数字艺术的新手,还是希望将你的图像创作提升到新高度的老手,ComfyUI 都能满足你的需求。在这篇全面的指南中,我们将带你穿越 ComfyU…

初识C++ · IO流

前言: IO流,启动!因笔者对于IO流的理解不是很深刻,所以这里进行简单的介绍即可。 1 IO流 IO流是我们从学习C开始就一直会使用的东西,我们先了解一下CIO流的一套继承体系: 整个IO体系的基类是ios_base&…

ArkTs基础语法

ArkTs基础语法 声明变量声明常量声明自动类型推断 类型基础类型NumberBooleanString 引用类型VoidObjectArrayEnumUnionAliases 语句if语句switch语句条件表达式 ?:for语句for of语句while语句do while语句breakcontinuethrow和try catch finally语句 函数函数声明可选参数Res…

MySQL中的锁事

一、概述 锁是计算机在执行多线程或线程时用于并发访问同一共享资源时的同步机制,MySQL中的锁是在服务器层或者存储引擎层实现的,保证了数据访问的一致性与有效性。 事务的隔离性是由的锁来实现。 二、MySQL并发事务访问的问题 我们已经知道事务并发…

day-39 矩阵中的最大得分

思路 动态规划。利用一个二维数组记录对应位置可以达到的最高得分(位置(0,0)不可能),然后找出最大值即可(如果除了(0,0)上的值其他值都一样,则返回任意一个即可&#xff…

Python 3 入门基础知识 之数据容器及用法【2】 推荐

前面关于python的下载安装、如何定义变量,基本的数据类型,以及if条件语句、for循环语句,部分运算都进行了梳理总结。参考:Python 3 入门基础知识【1】数据类型 安装下载 推荐-CSDN博客 这里回顾一下python的数据容器基础知识&…

智能换热:图扑智慧供热可视化管理平台

图扑搭建智慧供热可视化管理平台,通过实时监控和数据分析提升运营效率,实现智能化管理,保障系统稳定与高效运行。