一文搞懂深度学习:最全神经网络介绍

 

本文是深度学习系列文章的第二篇,我们将深入探讨各种类型的人工神经网络,探索它们独特的特性和应用。

01 神经网络介绍

人工神经网络已经彻底改变了机器学习领域,并成为人工智能的基石,它的设计目的是模仿人类大脑的结构和功能,使计算机能够学习并做出类似人类思维的决策。

 

人工神经网络首次由神经生理学家沃伦·麦卡洛克和数学家沃尔特·皮茨于1943年提出,之后经历了起起落落,1960年后,随着支持向量机和其他强大的机器学习技术的进步,研究人员对神经网络的兴趣和激情有所下降,这些技术提供了更高的准确性,并具有更坚实的理论基础;神经网络复杂,需要巨大的计算能力和时间来训练,1990年后,计算领域的进步(参考摩尔定律)以及强大的GPU的生产重新引起了一些兴趣。

人工神经网络具有多功能性,适应性和可扩展性,使它们适用于处理大数据集和高度复杂的机器学习任务,如图像分类,语音识别,视频推荐或分析客户情绪等。

TOP10神经网络分类:

 

02 麦卡洛-皮茨神经元

麦卡洛-皮茨神经元是第一个数学神经元模型,由Warren McCulloch和Walter Pitts在1943年提出,它是神经科学和数学的结合,尝试通过数学和逻辑来解释神经元的行为,并为后来的人工智能和神经网络研究奠定了基础。

麦卡洛-皮茨神经元采用二进制输出方式,这意味着其输出非0即1,即神经元要么完全激活,要么完全不激活;这种设计灵感来源于生物神经元的“全或无”放电特性,是早期尝试用简化模型理解神经元行为的一种方式。

 

从数学上讲,可以将这个神经元写成如下形式:

 

虽然McCulloch-Pitts模型在处理现实世界的连续和复杂数据方面存在限制,但它在理论上非常重要,因为它证明了使用简单的数学模型可以模拟神经活动,并进行逻辑决策;这个模型为后续更复杂的人工神经网络模型,如感知机和多层前馈网络,提供了理论基础;同时,它还启发了对神经网络学习算法和计算机科学中并行计算概念的探索。

03 感知机

感知机模型1958年由Minsky-Papert提出,是最简单也是最早的神经元模型之一;它作为神经网络的基本单元,主要通过执行计算任务来识别输入数据的特征。

感知机接受实数值作为输入,每个输入都与一个权重相乘;如果加权输入的总和大于阈值,则神经元输出1,否则输出0。

从数学上讲,可以将这个神经元写成如下形式:

 

 

 

04 前馈神经网络

FNN是神经网络的最简单形式,信息单向流动,从输入到输出,没有任何循环;它们由一个输入层,一个或多个隐藏层和一个输出层组成;一般用于分类和回归等任务。

 

05 人工神经网络

ANNs的架构受到人类大脑生物神经网络的启发,由相互连接的层组成,包括输入层,隐藏层和输出层;每一层包含多个神经元,这些神经元与相邻层中的每个神经元相连。

当数据在网络中传输时,每个连接都会应用一个权重,每个神经元都会应用一个激活函数,如ReLU,Sigmoid或Tanh;这些函数引入了非线性,使得网络能够从错误中学习并做出复杂的决策。

在训练过程中,使用一种称为反向传播的技术来调整这些权重,这种技术使用梯度下降来最小化预定义的损失函数,旨在使网络的预测尽可能准确;ANNs使用案例包括客户流失预测,销售预测等。

06 卷积神经网络

CNNs专门用于处理类似网格的数据,如图像和视频,它使用称为卷积层的专门层将一系列滤波器应用于输入图像,生成一组特征图。

然后,这些特征图通过池化层传递,降低它们的维度,使网络在计算上更有效率;最后,一个或多个全连接层执行分类。

训练过程涉及反向传播,类似于人工神经网络,但专门设计了用于保留特征的空间层次结构。

CNNs广泛应用于计算机视觉任务,如图像分类,目标检测和图像分割。

 

07 循环神经网络

RNNs专为处理序列数据设计,输入的顺序对结果影响重大;这类网络特有的循环连接结构,能够将信息从一个时间点传递至下一个,因此非常适合处理时间序列数据;在这一过程中,每个神经元都能通过其内部状态,记忆并利用之前时间点的信息。

在处理数据时,网络能够同时处理当前和之前的输入,这为其提供了一种短期记忆的功能;然而,RNNs面临着梯度弥散和梯度爆炸的问题,这些问题使得网络难以学习数据中的长期相关性。

为了解决这些问题,人们开发了更先进的模型,例如长短期记忆网络(LSTM)和门控循环单元(GRU)。

RNNs广泛应用于自然语言处理、语音识别和时间序列分析等领域。

 

08 长短期记忆网络

长短期记忆网络(LSTM)属于循环神经网络(RNN)的一种,它有效地解决了梯度消失的问题,使得网络能够更好地处理序列数据中的长期依赖性;LSTM尤其适合于处理那些需要识别和预测时间序列中复杂模式的任务。

09 门控循环单元

门控循环单元(GRU)与长短时记忆网络(LSTM)一样,是一种循环神经网络;它有效地解决了梯度消失的问题,并且能更好地学习长期依赖关系;由于GRU结构相对简单,当计算效率成为重要考虑因素时,它通常会被优先选择。

10 深度信念网络

深度信念网络(DBNs)是一种神经网络,它由多层受限玻尔兹曼机(RBMs)构成;受限玻尔兹曼机属于概率神经网络,主要功能是学习和模拟给定数据集的概率分布;深度信念网络广泛应用于图像分类和自然语言处理等任务。

11 生成对抗网络

生成对抗网络(GANs)是由两个神经网络构成的系统,包括一个生成器和一个鉴别器;这两个网络在一种竞争式的训练环境中相互对抗;生成器的任务是创造出难以与真实数据区分的数据,而鉴别器的任务则是尽可能准确地识别出哪些是真实数据,哪些是生成器产生的数据。

生成对抗网络广泛应用于图像生成、风格转换和数据增强等领域。

12 自编码器

自编码器主要应用于无监督学习和特征提取;它由编码器和解码器组成;编码器负责将输入数据转换为低维的潜在表示,而解码器则从这种潜在表示中重构出原始数据。

自编码器广泛用于降维,异常检测等多种任务。

13 自组织映射

自组织映射(SOMs)是一种用于处理高维数据的技术,它可以将这些数据在低维空间中进行聚类和可视化;这种方法属于无监督学习,通过将输入数据映射到一个低维的网格上,能够有效地保持数据点之间的相对位置和连通性,即保留了它们的拓扑结构。

14 径向基函数网络

径向基函数网络(RBFNs)是一种常用于模式识别和函数逼近的神经网络;这种网络的隐藏层神经元使用径向基函数作为激活函数;当输入与输出之间的关系呈非线性时,径向基函数网络尤其有效。

15 Transformers

Transformers采用了一种全新的方法,摒弃了递归结构,完全依赖注意力机制来学习序列元素之间的关系,这些关系是基于元素的整体重要性来确定的;研究人员已经将Transformers应用于自然语言处理领域,通过开发像谷歌的BERT和OpenAI的GPT-3这样的模型,在机器翻译、文本分类和语言建模等方面取得了突破性的成果;Transformers对于提升深度学习模型处理语言数据的能力做出了显著贡献。

 

16 图神经网络

许多神经网络主要处理的是像图像或文本这样的欧几里得数据,而图神经网络则是为了处理图数据而特别设计的,这种数据包含了复杂的元素间关系;图神经网络扩展了传统卷积网络的技术,比如将滤波方法应用于图结构数据,并能够根据图的结构和节点的特性来学习节点的表示。

图神经网络在链接预测,节点分类和社区检测等多种网络任务中表现出了极高的准确性;这些网络在处理密切相关数据的应用场景中展现了巨大的潜力。

17 深度Q网络

深度Q网络(DQNs)在深度强化学习领域,尤其是在掌握复杂游戏方面,取得了重大突破;DQNs通过使用神经网络来近似函数,估算出决定最优行动的Q函数的价值,从而最大化预期的奖励;Nvidia的研究团队将卷积神经网络(CNNs)与Q学习相结合,应用于DQNs,成功地在多款Atari 2600游戏中达到了人类水平的表现;随后,DeepMind利用DQNs在3D游戏中超越了人类的表现,并且还精通了围棋;在深度强化学习领域,DQNs的应用仍然非常广泛。

18 高斯过程

大多数深度学习方法通过判别学习来建立输入与输出之间的条件概率模型,而高斯过程则通过概率回归来直接预测连续变量;这种方法依据一组观测数据来建模函数的分布,并能提供对预测结果不确定性的估计。

高斯过程在黑箱优化和模型不确定性可视化方面展现出了极高的灵活性;当高斯过程与神经网络结合使用时,可以显著提升预测的准确性。

19 总结

本文综述了人工神经网络的多种类型及其应用;从最初的麦卡洛-皮茨神经元到复杂的Transformers,每种神经网络都有其独特之处;感知机作为早期模型,前馈神经网络处理直接信息流,而卷积神经网络则擅长图像处理;循环神经网络和LSTM适合序列数据,而生成对抗网络在数据生成方面表现出色;自编码器用于特征提取,自组织映射处理高维数据可视化,径向基函数网络适用于模式识别;图神经网络处理非欧几里得数据,深度Q网络在强化学习中取得突破,高斯过程则提供连续变量预测;这些神经网络共同推动了机器学习领域的发展,解决了各种复杂问题。

推荐阅读:

深度学习系列:

一文搞懂深度学习:神经网络基础​

Transformers系列:

ChatGPT背后强大而神秘的力量:用最简单的语言讲解Transformer架构之概览​

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

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

相关文章

测试平台开发:Django开发实战之注册界面实现(下)

1、 评论和用户建立关联 1)修改model: 软关联还是硬关联默认值是什么关联方被删除怎么办如何根据评论找到用户如何根据用户找到评论 然后执行命令: pdm run M pdm run init 这样在表里面就会多一个user_id的字段 2)修改视图&#xf…

一个故事就能够教会你看懂各种锁

我是一个线程,一个卖票程序的线程。 自从我们线程诞生以来,同一个进程地址空间里允许有多个执行流一起执行,效率提升的同时,也引来了很多麻烦。 我们卖票线程的工作很简单,比如票的总数是100,每卖一张就减…

LabelImg下载及目标检测数据标注

为什么这一部分内容这么少会单独拎出来呢,因为后期会接着介绍YOLOv8中的其他任务,会使用其他软件进行标注,所以就单独区分开来每一个任务的标注方式了。 这一部分就介绍目标检测任务的标注,数据集是我从COCO2017Val中抽出来两类&a…

H5视频付费点播打赏影视系统程序全开源运营版

这是一款视频打赏源码,勿做非法用途,由用户亲测功能完善,源码仅用于学习使用,分享链接是用户云盘,具有时效性,感兴趣的可以去学习。 thinkphp开发,前后端分离设计,支持游客登陆、VIP…

经典的设计模式和Python示例(一)

目录 一、工厂模式(Factory Pattern) 二、单例模式(Singleton Pattern) 三、观察者模式(Observer Pattern) 一、工厂模式(Factory Pattern) 工厂模式(Factory Pattern…

牛客网刷题 | BC79 小乐乐求和

目前主要分为三个专栏,后续还会添加: 专栏如下: C语言刷题解析 C语言系列文章 我的成长经历 感谢阅读! 初来乍到,如有错误请指出,感谢! 描述 小乐乐最近接触了求…

java-springboot项目添加swagger2/Knife4j,附注解

文章目录 添加依赖config工作包中新增SwaggerConfig报错注解 环境&#xff1a; jdk1.8 java8 springboot2.6.13 swagger2.9.2 添加依赖 pom.xml <!-- 添加swagger2--><dependency><groupId>io.springfox</groupId><artifactId>springfo…

函数编辑器调研及设计开发

前言&#xff1a;在产品研发中需要一款可嵌入web开发的代码及函数编辑器&#xff0c;本文从功能&#xff0c;扩展&#xff0c;外观/交互&#xff0c;维护/社区&#xff0c;兼容性&#xff0c;开源与否等方面考虑&#xff0c;进行对比筛选 1、编辑器统计数据 市面上编辑器有很…

【管理篇】如何提升管理中的沟通效率?

目录标题 管理沟通那些事如何提升沟通效率?&#x1f525;如何提升沟通技能&#xff1f; 向上沟通、员工激励和团队凝聚力提升 是管理沟通上比较难得问题 管理沟通那些事 管理沟通让技术管理者们痛苦的主因是确定性和规则性的减弱&#xff0c;不确定性的大幅度上升&#xff0c…

微软正在自主构建一个名为 MAI-1 的大型语言模型(不依赖 OpenAI)

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

IDEA中向Data Sources导入sql文件

IDEA中向Data Sources导入sql文件 开篇 在学习黑马的课程时&#xff0c;时常需要向数据库中导入sql文件生成数据库表&#xff0c;每次都会忘记导入步骤&#xff0c;折腾许久&#xff0c;于是将过程记录下来。 步骤 在Database中选择你要导入的数据库源&#xff0c;如图我想…

Matlab图像中加入脉冲噪声、高斯噪声并用均值滤波、中值滤波进行滤波处理

一、脉冲噪声和高斯噪声简介 脉冲噪声和高斯噪声是两种常见的信号干扰类型&#xff0c;它们的特性和影响各不相同&#xff1a; 脉冲噪声&#xff08;Impulse Noise&#xff09;&#xff1a; 在图像中&#xff0c;脉冲噪声表现为随机出现的亮点或暗点&#xff0c;这些噪声点通常…

[开发|鸿蒙] DevEco Studio编译构建(笔记,持续更新)

构建体系 编译构建是将应用/服务的源代码、资源、第三方库等&#xff0c;通过编译工具转换为可直接在硬件设备上运行的二进制机器码&#xff0c;然后再将二进制机器码封装为HAP/APP软件包&#xff0c;并为HAP/APP包进行签名的过程。其中&#xff0c;HAP是可以直接运行在模拟器…

FIFO Generate IP核使用——同步复位

在描述FIFO&#xff08;First In First Out&#xff09;或其他存储结构的同步复位&#xff08;Synchronous Reset&#xff09;功能时&#xff0c;srst&#xff08;或wr_rst/rd_rst&#xff0c;即写入和读取时钟域的同步复位信号&#xff09;仅适用于块RAM&#xff08;Block RAM…

企业为什么需要主数据管理工具?十大热门主数据管理工具盘点

主数据管理是一套综合性的策略和技术&#xff0c;用于协调和管理企业内用于识别关键业务实体&#xff08;如客户、产品、供应商和员工&#xff09;的一致性、准确性和统一性的数据。主数据管理的目的是创建一个“单一真相源”&#xff0c;确保在不同部门和系统之间共享的数据保…

AI预警未来:山体滑坡与塌方事故的潜在发现者

在科技日新月异的今天&#xff0c;人工智能&#xff08;AI&#xff09;的应用已经渗透到了我们生活的各个领域。而在防灾减灾的领域中&#xff0c;AI技术的引入无疑为我们打开了一扇新的大门。以梅大高速大埔往福建方向K11900m附近发生的路面塌方灾害为例&#xff0c;我们不禁思…

未授权访问:Redis未授权访问漏洞

目录 1、漏洞原理 2、环境搭建 3、未授权访问 4、利用redis未授权写入weshell 5、利用redis未授权反弹shell 6、利用redis未授权实现免密登录 防御手段 从这篇文章开始我就要开始学习各种未授权访问的知识和相关的实操实验了&#xff0c;一共有好多篇&#xff0c;内容主…

navicat premium16.3.9重置

软件下载 官网地址&#xff1a;https://navicat.com.cn/products/ # 准备脚本 1、建一个txt 2、复制以下代码 3、修改文件格式为bat 4、运行bat文件 5、重新打开navicat&#xff0c;试用期重置为14 经测试16.2.3以上版本均可用 echo off set dnInfo set dn2ShellFolder set r…

YOLOv8改进 | 主干篇 | 2024.5全新的移动端网络MobileNetV4改进YOLOv8(含MobileNetV4全部版本改进)

一、本文介绍 本文给大家带来的改进机制是MobileNetV4&#xff0c;其发布时间是2024.5月。MobileNetV4是一种高度优化的神经网络架构&#xff0c;专为移动设备设计。它最新的改动总结主要有两点&#xff0c;采用了通用反向瓶颈&#xff08;UIB&#xff09;和针对移动加速器优化…

用脚本写一个日期样式的字符

现在想要诸如此类样式的语句&#xff1a;&#xff08;过去三个月的&#xff09; 可以用python脚本写&#xff1a; from datetime import date, timedelta# 获取当前日期 current_date date.today()# 定义过去三个月的时间间隔 three_months_ago current_date - timedelta(da…
最新文章