有哪些深度什么神经网络模型适合做分类?

一、神经网络类别一般的,神经网络模型基本结构按信息输入是否反馈,可以分为两种:前馈神经网络和反馈神经网络。1.1 前馈神经网络前馈神经网络(Feedforward Neural Network)中,信息从输入层开始输入,每层的神经元接收前一级输入,并输出到下一级,直至输出层。整个网络信息输入传输中无反馈(循环)。即任何层的输出都不会影响同级层,可用一个有向无环图表示。常见的前馈神经网络包括卷积神经网络(CNN)、全连接神经网络(FCN)、生成对抗网络(GAN)等。1.2 反馈神经网络反馈神经网络(Feedback Neural Network)中,神经元不但可以接收其他神经元的信号,而且可以接收自己的反馈信号。和前馈神经网络相比,反馈神经网络中的神经元具有记忆功能,在不同时刻具有不同的状态。反馈神经网络中的信息传播可以是单向也可以是双向传播,因此可以用一个有向循环图或者无向图来表示。常见的反馈神经网络包括循环神经网络(RNN)、长短期记忆网络(LSTM)、Hopfield网络和玻尔兹曼机。二、经典神经网络模型介绍全连接神经网络(FCN)全连接神经网络是深度学习最常见的网络结构,有三种基本类型的层: 输入层、隐藏层和输出层。当前层的每个神经元都会接入前一层每个神经元的输入信号。在每个连接过程中,来自前一层的信号被乘以一个权重,增加一个偏置,然后通过一个非线性激活函数,通过简单非线性函数的多次复合,实现输入空间到输出空间的复杂映射。卷积神经网络(CNN)图像具有非常高的维数,因此训练一个标准的前馈网络来识别图像将需要成千上万的输入神经元,除了显而易见的高计算量,还可能导致许多与神经网络中的维数灾难相关的问题。卷积神经网络提供了一个解决方案,利用卷积和池化层,来降低图像的维度。由于卷积层是可训练的,但参数明显少于标准的隐藏层,它能够突出图像的重要部分,并向前传播每个重要部分。传统的CNNs中,最后几层是隐藏层,用来处理“压缩的图像信息”。残差网络(ResNet)深层前馈神经网络有一个问题,随着网络层数的增加,网络会发生了退化(degradation)现象:随着网络层数的增多,训练集loss逐渐下降,然后趋于饱和,当再增加网络深度的话,训练集loss反而会增大。为了解决这个问题,残差网络使用跳跃连接实现信号跨层传播。生成对抗网络(GAN)生成对抗网络是一种专门设计用于生成图像的网络,由两个网络组成: 一个鉴别器和一个生成器。鉴别器的任务是区分图像是从数据集中提取的还是由生成器生成的,生成器的任务是生成足够逼真的图像,以至于鉴别器无法区分图像是否真实。随着时间的推移,在谨慎的监督下,这两个对手相互竞争,彼此都想成功地改进对方。最终的结果是一个训练有素的生成器,可以生成逼真的图像。鉴别器是一个卷积神经网络,其目标是最大限度地提高识别真假图像的准确率,而生成器是一个反卷积神经网络,其目标是最小化鉴别器的性能。变分自动编码器(VAE)自动编码器学习一个输入(可以是图像或文本序列)的压缩表示,例如,压缩输入,然后解压缩回来匹配原始输入,而变分自动编码器学习表示的数据的概率分布的参数。不仅仅是学习一个代表数据的函数,它还获得了更详细和细致的数据视图,从分布中抽样并生成新的输入数据样本。TransformerTransformer是Google Brain提出的经典网络结构,由经典的Encoder-Decoder模型组成。在上图中,整个Encoder层由6个左边Nx部分的结构组成。整个Decoder由6个右边Nx部分的框架组成,Decoder输出的结果经过一个线性层变换后,经过softmax层计算,输出最终的预测结果。循环神经网络 (RNN)循环神经网络是一种特殊类型的网络,它包含环和自重复,因此被称为“循环”。由于允许信息存储在网络中,RNNs 使用以前训练中的推理来对即将到来的事件做出更好、更明智的决定。为了做到这一点,它使用以前的预测作为“上下文信号”。由于其性质,RNNs 通常用于处理顺序任务,如逐字生成文本或预测时间序列数据(例如股票价格)。它们还可以处理任意大小的输入。长短期记忆网络(LSTM)LSTM结构是专门为解决RNN在学习长的的上下文信息出现的梯度消失、爆炸问题而设计的,结构中加入了内存块。这些模块可以看作是计算机中的内存芯片——每个模块包含几个循环连接的内存单元和三个门(输入、输出和遗忘,相当于写入、读取和重置)。信息的输入只能通过每个门与神经元进行互动,因此这些门学会智能地打开和关闭,以防止梯度爆炸或消失。Hopfield网络Hopfield神经网络是一种单层互相全连接的反馈型神经网络。每个神经元既是输入也是输出,网络中的每一个神经元都将自己的输出通过连接权传送给所有其它神经元,同时又都接收所有其它神经元传递过来的信息。三、网络结构设计的思考实践中,我们除了结合任务直接选用一些经典神经模型做验证,有时也需要对网络结构做设计优化。网络结构的设计需要考虑的2个实质问题是:神经单元应该如何连接?需要有多少神经元?3.1 神经单元应该如何连接?也就是神经网络基本的架构如何设计,有两种设计思路:3.2、需要有多少神经元?神经网络由输入层、隐藏层与输出层构成:输入层:为数据特征输入层,输入数据特征维数就对应着网络的神经元数。隐藏层:即网络的中间层,其作用接受前一层网络输出作为当前的输入值,并计算输出当前结果到下一层。隐藏网络神经元个数直接影响模型的拟合能力。-输出层:为最终结果输出的网络层。输出层的神经元个数代表了分类类别的个数(注:在做二分类时,如果输出层的激活函数采用sigmoid,输出层的神经元个数为1个;如果采用softmax分类器,输出层神经元个数为2个是与分类类别个数对应的;)对于网络的输入层、输出层的神经元通常是确定的,主要需要考虑的是隐藏层的深度及宽度,在忽略网络退化问题的前提下,通常隐藏层的神经元(计算单元)的越多,模型有更多的容量(capcity)去达到更好的拟合效果。搜索合适的网络深度及宽度,常用有人工调参、随机搜索、贝叶斯优化等方法。这里有个引申问题:增加神经网络宽度vs深度的效果有什么差异呢?以上图神经网络为例,将单层宽度增加3个神经元,会新增6个与之相连前后层的权重参数。而直接新增一个3个神经元的网络层,只会新增3个的权重参数。3、 功能上,深度层功能类似于“生成特征”,而宽度层类似于“记忆特征”增加网络深度可以获得更抽象、高层次的特征,增加网络宽度可以获得更丰富的特征。当然,深度和宽度并不是完全对立的关系,增加深度和宽度都是在增加可学习参数的个数,从而增加神经网络的拟合能力,在网络设计需要追求深度与广度的平衡。文章首发公众号“算法进阶”,更多原创文章敬请关注
大家好,我是微学AI,今天给大家介绍一下人工智能深度学习100种网络模型,这些模型可以用PyTorch深度学习框架搭建。模型按照个人学习顺序进行排序:深度学习模型1. ANN (Artificial Neural Network) - 人工神经网络:基本的神经网络结构,包括输入层、隐藏层和输出层。[学习点击地址](人工智能基础部分6-神经网络初步认识(超详细)_微学AI的博客-CSDN博客)2. CNN(Convolutional Neural Network) - 卷积神经网络:主要用于图像识别和处理的基础神经网络结构。[学习点击地址](人工智能基础部分10-卷积神经网络CNN初步认识_微学AI的博客-CSDN博客)3. RNN (Recurrent Neural Network) - 循环神经网络:用于处理序列数据的神经网络结构。[学习点击地址](人工智能基础部分12-循环神经网络RNN初步认识_rnn的核心_微学AI的博客-CSDN博客)4. LSTM (Long Short-Term Memory) - 长短时记忆网络:一种特殊的RNN,用于解决长序列中的梯度消失问题。[学习点击地址](人工智能(Pytorch)搭建模型2-LSTM网络实现简单案例_pytorch搭建lstm_微学AI的博客-CSDN博客)5. GRU (Gated Recurrent Unit) - 门控循环单元:一种简化版的LSTM,用于处理序列数据。[学习点击地址](人工智能(Pytorch)搭建模型3-GRU网络的构建,构造数据实现训练过程与评估_pytorch实现gru网络_微学AI的博客-CSDN博客)6. BiLSTM(Bidirectional LSTM) - 双向长短时记忆网络:同时考虑序列的正向和反向信息的LSTM。[学习点击地址](人工智能(pytorch)搭建模型8-利用pytorch搭建一个BiLSTM+CRF模型,实现简单的命名实体识别_微学AI的博客-CSDN博客)7. BiGRU (Bidirectional GRU) - 双向门控循环单元:同时考虑序列的正向和反向信息的GRU。[学习点击地址](人工智能(pytorch)搭建模型12-pytorch搭建BiGRU模型,利用正态分布数据训练该模型_微学AI的博客-CSDN博客)8. Transformer - Transformer模型:一种基于自注意力机制的神经网络结构,用于处理序列数据。[学习点击地址](深度学习实战24-人工智能(Pytorch)搭建transformer模型,真正跑通transformer模型,深刻了解transformer的架构_人工智能transformer_微学AI的博客-CSDN博客)9. BERT (Bidirectional Encoder Representations from Transformers) - 双向Transformers编码器模型:一种基于Transformer的预训练模型,用于自然语言处理任务。[学习点击地址](深度学习实战11(进阶版)-BERT模型的微调应用-文本分类案例_bert 微调 文本分类_微学AI的博客-CSDN博客)10.ELMo (Embeddings from Language Models) - 语言模型嵌入:一种基于双向LSTM的预训练模型,用于自然语言处理任务。[学习点击地址](人工智能(pytorch)搭建模型9-pytorch搭建一个ELMo模型,实现训练过程_elmo pytorch_微学AI的博客-CSDN博客)11. RoBERTa (Robustly Optimized BERT Pretraining Approach) - 稳健优化的BERT预训练方法:一种改进的BERT预训练模型。12. T5 (Text-to-Text Transfer Transformer) - 文本到文本传输变压器:一种基于Transformer的预训练模型,用于自然语言处理任务。[学习点击地址](深度学习实战25-人工智能(Pytorch)搭建T5模型,真正跑通T5模型,用T5模型生成数字加减结果_微学AI的博客-CSDN博客)13. GPT(Generative Pre-trained Transformer) - 生成预训练Transformer:一种基于Transformer的生成式预训练模型,用于自然语言处理任务。14. GPT-2 (Generative Pre-trained Transformer 2) - 生成预训练Transformer2:一种基于Transformer的生成式预训练模型,用于自然语言处理任务。15. GPT-3(Generative Pre-trained Transformer 3) - 生成预训练Transformer3:一种基于Transformer的生成式预训练模型,用于自然语言处理任务。16. LeNet (LeNet-5) - LeNet-5:一种早期的卷积神经网络,用于手写数字识别。17. AlexNet - AlexNet:一种深度卷积神经网络,用于图像识别,赢得了2012年的ImageNet竞赛。18. ResNet (Residual Network) - 残差网络:一种具有残差连接的深度卷积神经网络,用于图像识别。[学习点击地址](计算机视觉的应用8-基于ResNet50对童年数码宝贝的识别与分类_微学AI的博客-CSDN博客)19. VGG (Visual Geometry Group) - 视觉几何组:一种深度卷积神经网络,用于图像识别。20. Inception- Inception网络:一种具有多尺度卷积的深度卷积神经网络,用于图像识别。21. MobileNet - 移动网络:一种轻量级的卷积神经网络,用于移动设备上的图像识别。22. DenseNet(Densely Connected Convolutional Network) - 密集连接卷积网络:一种具有密集连接的深度卷积神经网络,用于图像识别。23. U-Net - U型网络:一种用于图像分割的卷积神经网络。[学习点击地址](深度学习实战39-U-Net模型在医学影像识别分割上的应用技巧,以细胞核分割任务为例_微学AI的博客-CSDN博客)24. GAN(Generative Adversarial Network) - 生成对抗网络:一种生成式模型,由生成器和判别器组成,用于生成新的数据样本。25. DCGAN (Deep Convolutional Generative Adversarial Network) - 深度卷积生成对抗网络:一种基于卷积神经网络的GAN。[学习点击地址](人工智能(pytorch)搭建模型11-pytorch搭建DCGAN模型,一种生成对抗网络GAN的变体实际应用_微学AI的博客-CSDN博客)26. WGAN (Wasserstein Generative Adversarial Network) - 瓦asserstein生成对抗网络:一种改进的GAN,使用Wasserstein距离作为损失函数。27. Pix2Pix - Pix2Pix网络:一种用于图像到图像转换的条件生成对抗网络。28. CycleGAN - CycleGAN网络:一种用于无监督图像到图像转换的生成对抗网络。29. StyleGAN (Style-Based Generative Adversarial Network) - 基于样式的生成对抗网络:一种用于生成高质量图像的GAN。30. CapsNet (Capsule Network) - 胶囊网络:一种用于图像识别的神经网络结构,包含胶囊层。31. SNN (Spiking Neural Network) - 脉冲神经网络:一种模拟生物神经元动力学的神经网络结构。[学习点击地址](人工智能(pytorch)搭建模型10-pytorch搭建脉冲神经网络(SNN)实现及应用_pytorch 脉冲神经网络_微学AI的博客-CSDN博客)32. RBM (Restricted Boltzmann Machine) - 受限玻尔兹曼机:一种生成式模型,用于特征学习和降维。[学习点击地址](人工智能(pytorch)搭建模型13-pytorch搭建RBM(受限玻尔兹曼机)模型,调通模型的训练与测试_pytorch rbm_微学AI的博客-CSDN博客)33. DBN (Deep Belief Network) - 深度信念网络:一种基于RBM的深度生成式模型。34. Autoencoder - 自编码器:一种用于特征学习和降维的神经网络结构。35. VAE (Variational Autoencoder) - 变分自编码器:一种生成式自编码器,用于生成新的数据样本。36. Seq2Seq (Sequence-to-Sequence) - 序列到序列模型:一种用于序列到序列转换的神经网络结构,包括编码器和解码器。37. Attention - 注意力机制:一种用于加权序列中不同部分的神经网络结构。38.NMT (Neural Machine Translation) - 神经机器翻译:一种基于Seq2Seq和注意力机制的神经网络结构,用于机器翻译。39.ALBER (A Lite BERT) - 轻量级BERT:一种轻量级的BERT预训练模型。40. XLM (Cross-lingual Language Model) - 跨语言语言模型:一种用于多语言自然语言处理任务的预训练模型。41.XLM-R (XLM-RoBERTa) - XLM-RoBERTa:一种基于RoBERTa的跨语言预训练模型。42. DeBERTa (Decoding-enhanced BERT with Disentangled Attention) - 解码增强的BERT与解耦注意力:一种改进的BERT预训练模型,具有解耦注意力机制。43. ELECTRA (Efficiently Learning an Encoder that Classifies Token Replacements Accurately) - 高效学习精确分类令牌替换的编码器:一种基于生成对抗网络的预训练模型。44. FastText- FastText:一种用于文本分类和词嵌入的神经网络模型。45. Word2Vec - Word2Vec:一种用于词嵌入的神经网络模型。46. GloVe (Global Vectors for Word Representation) - 全局词向量表示:一种用于词嵌入的神经网络模型。47. Siamese Network - 孪生网络:一种用于度量学习和相似性比较的神经网络结构。[学习点击地址](人工智能(pytorch)搭建模型14-pytorch搭建Siamese Network模型(孪生网络),实现模型的训练与预测)48.
Triplet Network - 三元组网络:一种用于度量学习和相似性比较的神经网络结构,包括三个相互关联的子网络。49. YOLO (You Only Look Once) - 一次性查看:一种实时目标检测的神经网络模型。50. SSD (Single Shot MultiBox Detector) - 单次多框检测器:一种实时目标检测的神经网络模型。51. RetinaNet - RetinaNet:一种用于目标检测的神经网络模型,具有特征金字塔网络和锚框。52. Mask R-CNN - Mask R-CNN:一种用于实例分割的神经网络模型,基于Faster R-CNN。53. NASNet (Neural Architecture Search Network) - 神经架构搜索网络:一种通过神经架构搜索自动设计的神经网络模型。54. EfficientNet - EfficientNet:一种自动调整网络深度、宽度和分辨率的神经网络模型。55. SqueezeNet - SqueezeNet:一种轻量级的卷积神经网络,用于图像识别。56. ShuffleNet - ShuffleNet:一种轻量级的卷积神经网络,用于图像识别,具有通道混洗操作。57. MnasNet - MnasNet:一种通过神经架构搜索自动设计的轻量级卷积神经网络,用于图像识别。58. PNASNet (Progressive Neural Architecture Search) - 渐进式神经架构搜索:一种通过渐进式神经架构搜索自动设计的神经网络模型。59. RCNN (Region-based Convolutional Neural Network) - 基于区域的卷积神经网络:一种用于目标检测的神经网络模型。60. Fast R-CNN - Fast R-CNN:一种改进的R-CNN,用于目标检测,具有较快的训练和推理速度。61. Faster R-CNN - Faster R-CNN:一种改进的Fast R-CNN,用于目标检测,具有区域提议网络。62. R-FCN (Region-based Fully Convolutional Network) - 基于区域的全卷积网络:一种用于目标检测的神经网络模型,基于全卷积网络。63. FPN (Feature Pyramid Network) - 特征金字塔网络:一种用于目标检测的神经网络模型,具有多尺度特征金字塔。64. HRNet (High-Resolution Network) - 高分辨率网络:一种用于图像识别和语义分割的神经网络模型,保持高分辨率特征图。65. DeepLab - DeepLab:一种用于语义分割的神经网络模型,具有空洞卷积和条件随机场。66. PspNet (Pyramid Scene Parsing Network) - 金字塔场景解析网络:一种用于语义分割的神经网络模型,具有金字塔池化模块。67. NIN (Network in Network) - 网络中的网络:一种卷积神经网络,用于图像识别,具有多层感知机卷积层。68. SRGAN (Super-Resolution Generative Adversarial Network) - 超分辨率生成对抗网络:一种用于图像超分辨率的生成对抗网络。69. Ladder Network - 梯形网络:一种半监督学习的神经网络模型,具有多层编码器和解码器。70. CTC (Connectionist Temporal Classification) - 连接主义时序分类:一种用于序列到序列转换的神经网络损失函数,用于语音识别等任务。71. CPM (Convolutional Pose Machines) - 卷积姿态机:一种用于人体姿态估计的卷积神经网络模型。72. OpenPose - OpenPose:一种用于实时多人关键点检测的神经网络模型。73. WaveNet - WaveNet:一种用于生成原始波形音频的深度神经网络模型。74. Tacotron - Tacotron:一种用于文本到语音合成的神经网络模型,基于Seq2Seq和注意力机制。75. Transformer-XL (Transformer with extra-long context) - 变压器扩展长上下文:一种改进的Transformer,用于处理长序列数据。76. BigGAN (Big Generative Adversarial Network) - 大型生成对抗网络:一种用于生成高质量图像的大型生成对抗网络。77. ProGAN (Progressive Growing of GANs) - GAN的渐进式增长:一种通过逐渐增加生成器和判别器的分辨率来训练GAN的方法。78. SPADE (Spatially-Adaptive Normalization) - 空间自适应归一化:一种用于图像到图像转换的生成对抗网络,具有空间自适应归一化层。79. StarGAN - StarGAN:一种用于多域图像到图像转换的生成对抗网络。80. Swin Transformer - Swin Transformer:一种基于滑动窗口的Transformer,用于计算机视觉任务。81. ViT (Vision Transformer) - 视觉变压器:一种将图像分割成小块并将其视为序列的Transformer,用于图像识别。82. DeiT (Data-efficient Image Transformer) - 数据高效图像变压器:一种基于Vision Transformer的数据高效图像识别模型。83. Stable Diffusion - 稳定扩散网络模型,用于图像处理,文本生成图像的应用。84. Reformer - 改革者:一种改进的Transformer,用于处理长序列数据,具有局部敏感哈希和可逆残差层。85. Performer - 表演者:一种改进的Transformer,用于处理长序列数据,具有快速注意力机制。86. Linformer - 线性变压器:一种改进的Transformer,用于处理长序列数据,具有线性复杂度的自注意力机制。87. Longformer - 长变压器:一种改进的Transformer,用于处理长序列数据,具有稀疏自注意力机制。88. Conformer - 一致者:一种用于自动语音识别的神经网络模型,结合了Transformer和卷积神经网络。89. NeRF (Neural Radiance Fields) - 神经辐射场:一种用于三维场景重建的神经网络模型。90. DALL-E - DALL-E:一种基于Transformer的生成式模型,用于从文本描述生成图像。91. CLIP (Contrastive Language-Image Pretraining) - 对比性语言-图像预训练:一种同时学习图像和文本表示的预训练模型。92. DETR (DEtection TRansformer) - 检测变压器:一种基于Transformer的端到端目标检测神经网络模型。93. T2T-ViT (Tokens-to-Token Vision Transformer) - 令牌到令牌视觉变压器:一种基于令牌到令牌的视觉变压器,用于图像识别。94. OmniNet - OmniNet:一种用于多任务学习的神经网络模型,具有共享特征提取器和任务特定的分支。95. PointNet - PointNet:一种用于处理点云数据的神经网络模型。96. GCN (Graph Convolutional Network)- 图卷积神经网络:适用于处理图数据,尤其是基于图结构的数据分析和机器学习任务。97. SE-Net (Squeeze-and-Excitation Network) -基于通道注意力机制的卷积神经网络:通过学习每个通道间的关系来提高模型泛化能力。98. TSM (Temporal Shift Module) -时间序列模块:用于处理视频中的时间序列信息,可以在不增加计算量的情况下提高视频分类的准确率。99. STT (Speech-to-Text) -语音到文本模型:将语音信号转换成对应的文字。100. TTS (Text-to-Speech) -文本到语音模型:将文字信息转换成对应的语音信号。以上模型涵盖了计算机视觉、自然语言处理、语音识别、生成模型等多个领域,可以根据实际需求选择合适的模型进行搭建和训练。

我要回帖

更多关于 什么神经网络模型适合做分类 的文章