深度学习——前向传播与反向传播、神经网络(前馈神经网络与反馈神经网络)、常见算法概要汇总

文章目录

  • 🌺深度学习面试八股汇总🌺
  • 前向传播与反向传播
    • 前向传播(Forward Propagation)
    • 反向传播(Back Propagation)
    • 总结
  • 神经网络
    • 简介
    • 结构
    • 类型
      • 前馈神经网络(Feedforward Neural Network, FFNN)
        • 特点
        • 常见变体
      • 反馈神经网络(Feedback Neural Network, RNN)
        • 特点
        • 常见变体
      • 总结
  • 常见深度学习算法分类
    • 前馈神经网络(Feedforward Neural Networks, FFNN)
      • 1. 多层感知机(MLP)
      • 2. 卷积神经网络(CNN)
      • 3. AlexNet
      • 4. VGG 网络
      • 5. Inception 网络(GoogLeNet)
      • 6. ResNet(残差网络)
      • 7. 生成对抗网络(GAN)
      • 8. U-Net
      • 9. 自编码器(Autoencoder)
      • 10. Transformer 模型
    • 反馈神经网络(Recurrent Neural Networks, RNN)
      • 1. 基本循环神经网络(RNN)
      • 2. 长短时记忆网络(LSTM)
      • 3. 门控循环单元(GRU)
      • 4. 深度 Q 网络(DQN)
    • 其他算法
      • 1. 图神经网络(GNN)
      • 2. 自监督学习(Self-supervised Learning)
      • 3. 对比学习(Contrastive Learning)
      • 4. 迁移学习(Transfer Learning)
    • 算法详细介绍
      • 1. 神经网络(Neural Networks, NN)
        • 介绍
        • 应用例子
      • 2. 全连接层(多层感知机,MLP)
        • 介绍
        • 应用例子
      • 3. 卷积神经网络(Convolutional Neural Network, CNN)
        • 介绍
        • 应用例子
      • 4. AlexNet
        • 介绍
        • 应用例子
      • 5. VGG 网络(Visual Geometry Group, VGGNet)
        • 介绍
        • 应用例子
      • 6. Inception 网络(GoogLeNet)
        • 介绍
        • 应用例子
      • 7. ResNet(Residual Network)
        • 介绍
        • 应用例子
      • 8. 循环神经网络(Recurrent Neural Network, RNN)
        • 介绍
        • 应用例子
      • 9. 长短时记忆网络(Long Short-Term Memory, LSTM)
        • 介绍
        • 应用例子
      • 10. 门控循环单元(Gated Recurrent Unit, GRU)
        • 介绍
        • 应用例子
      • 11. 生成对抗网络(Generative Adversarial Network, GAN)
        • 介绍
        • 应用例子
      • 12. 深度Q网络(Deep Q-Network, DQN)
        • 介绍
        • 应用例子
      • 13. U-Net
        • 介绍
        • 应用例子
      • 14. 迁移学习(Transfer Learning)
        • 介绍
        • 应用例子
      • 15. 自编码器(Autoencoder)
        • 介绍
        • 应用例子
      • 16. 图神经网络(Graph Neural Network, GNN)
        • 介绍
        • 应用例子
      • 17. 自监督学习(Self-supervised Learning)
        • 介绍
        • 应用例子
      • 18. 对比学习(Contrastive Learning)
        • 介绍
        • 应用例子
      • 19. Transformer 模型
        • 介绍
        • 应用例子

🌺深度学习面试八股汇总🌺

前向传播与反向传播

前向传播(Forward Propagation)

前向传播是将输入数据从输入层依次通过神经网络的各个隐藏层,最后输出预测结果的过程。该过程用于计算网络的预测结果,以及在训练过程中计算损失函数值。它的基本步骤如下:
在这里插入图片描述
在这里插入图片描述
6. 计算损失
在这里插入图片描述

前向传播的作用:

  • 计算输出:将输入数据通过网络生成预测结果。
  • 计算损失:在训练过程中,通过输出结果与真实标签计算损失函数值(如均方误差、交叉熵等),衡量模型的预测误差。

反向传播(Back Propagation)

反向传播是通过计算损失函数相对于每层参数(权重和偏置)的梯度,从输出层向输入层更新参数,从而最小化损失函数的过程。使用梯度下降法(还有动量梯度下降法、Adagrad、RMSprop、Adam)更新参数具体步骤如下:
在这里插入图片描述

反向传播的作用:

  • 计算梯度计算损失函数相对于每层参数(权重和偏置)的梯度
  • 误差传播:将输出层的误差逐层传播到隐藏层和输入层,从而计算出每个参数的梯度。
  • 参数优化:计算每个参数对损失的影响,并通过梯度下降法更新参数,使模型的损失逐步减小。

总结

  • 前向传播:用于计算网络的预测结果损失函数值
  • 反向传播:用于计算损失函数相对于每个参数的梯度误差传播,并更新参数以最小化损失。

神经网络

简介

人工神经元、节点:神经网络的基本单元,接收输入,进行计算,并生成输出。每个神经元通过权重连接到其他神经元。
神经网络(Neural Networks):由多个相互连接的神经元组成的计算模型,模拟生物神经网络的工作原理。神经网络能够自动从数据中学习复杂的模式和特征,是机器学习和深度学习的基础。

结构

  1. 输入层(Input Layer):接收外部数据输入,每个神经元代表一个特征
  2. 隐藏层(Hidden Layers):包含一个或多个隐藏层,负责提取特征和模式。每个隐藏层由若干神经元组成。

隐藏层的神经元之间复杂的连接模式,是网络学习复杂特征的主要部分。
深度网络(Deep Networks):多个隐藏层的网络被称为深度神经网络(DNN),每一层提取不同层次的特征,逐步提取数据中的更高阶、更抽象的特征。。

  1. 输出层(Output Layer)生成最终的预测或分类结果。根据任务不同,输出层的神经元数量和激活函数也不同。

分类任务:

  • 二分类:1 个神经元,使用 Sigmoid 激活函数,输出 0 到 1 的概率。
  • 多分类:类别数个神经元,使用 Softmax 激活函数,输出类别概率分布。

回归任务:

  • 1 个神经元,通常不使用激活函数,输出一个连续数值

类型

  1. 前馈神经网络(Feedforward Neural Networks, FFNN):信息单向流动,没有循环和反馈,是最基础的网络结构。
  2. 反馈神经网络(Feedback Neural Networks):信息可以在网络中循环流动,具有记忆能力,能够处理时间序列数据。

前馈神经网络(Feedforward Neural Network, FFNN)

前馈神经网络是最简单和基础的神经网络结构,其中信息从输入层流向隐藏层,再流向输出层,没有环路或反馈结构

特点
  • 信息单向流动:数据从输入层经由隐藏层传递到输出层,不存在信息的回流或反馈
  • 无记忆能力:当前时刻的输出仅依赖当前的输入和网络参数,不记忆过去的信息
  • 应用场景:适用于结构化数据的分类、回归任务,如手写数字识别、图像分类等。
常见变体
  • 多层感知机(MLP):最常见的前馈神经网络形式,包括一个或多个隐藏层。
  • 卷积神经网络(CNN):专门用于处理图像数据的前馈神经网络,利用卷积层提取空间特征。

反馈神经网络(Feedback Neural Network, RNN)

反馈神经网络也称为递归神经网络(Recurrent Neural Network, RNN)。反馈神经网络是一种具有循环结构的神经网络模型,可以将信息在网络中反复传递,因此具有记忆能力,适用于处理时间序列数据

特点
  • 循环结构:隐藏层的神经元可以接收自身或者前一时间步的输出,形成信息反馈和环路
  • 记忆能力:能够记住之前的信息,从而在处理序列数据(如文本、时间序列预测)时表现出色。
  • 应用场景:适用于时间依赖性任务,如文本生成、机器翻译、语音识别等。
常见变体
  • 基本 RNN:最简单的反馈神经网络,但存在梯度消失和梯度爆炸问题。
  • 长短时记忆网络(LSTM):引入记忆单元和门控机制,能够有效处理长期依赖问题。
  • 门控循环单元(GRU):LSTM 的简化变体,性能与 LSTM 类似,但计算更高效。

总结

  • 神经网络结构:神经网络由输入层、隐藏层和输出层组成,能够模拟复杂的函数关系。
  • 前馈神经网络:信息单向流动,无记忆能力,适用于静态任务
  • 反馈神经网络:信息可以循环流动,具有记忆能力,适用于时间序列和动态任务

常见深度学习算法分类

前馈神经网络(Feedforward Neural Networks, FFNN)

1. 多层感知机(MLP)

  • 全连接层(Fully Connected Layer) 或 密集层(Dense Layer)神经网络结构,适用于结构化数据的分类和回归任务。

2. 卷积神经网络(CNN)

  • 用于处理具有空间结构的输入数据(如图像),应用于图像分类、目标检测等任务。

3. AlexNet

  • 卷积神经网络的早期经典模型,用于大规模图像分类。

4. VGG 网络

  • 深层卷积神经网络,使用小卷积核来提升图像分类精度。

5. Inception 网络(GoogLeNet)

  • 引入 Inception 模块,通过多尺度特征提取减少参数量,提高模型性能。

6. ResNet(残差网络)

  • 引入残差连接,能够训练非常深的网络,缓解梯度消失问题。

7. 生成对抗网络(GAN)

  • 包括生成器和判别器两部分,尽管用于生成任务,但其生成器和判别器均为前馈网络。

8. U-Net

  • 用于图像分割任务的卷积神经网络,采用对称的编码器-解码器结构。

9. 自编码器(Autoencoder)

  • 由编码器和解码器组成的前馈网络,用于数据降维、去噪和特征学习。

10. Transformer 模型

  • 基于自注意力机制的前馈结构,用于自然语言处理、机器翻译等任务。

反馈神经网络(Recurrent Neural Networks, RNN)

1. 基本循环神经网络(RNN)

  • 具有循环连接的神经网络,适用于处理时间序列数据,但存在梯度消失问题。

2. 长短时记忆网络(LSTM)

  • 解决 RNN 的长期依赖问题,通过门控机制控制信息流动。

3. 门控循环单元(GRU)

  • LSTM 的简化版本,计算效率更高,也适用于时间序列数据。

4. 深度 Q 网络(DQN)

  • 虽然主要用于深度强化学习,但具有某种循环依赖的特性,可以视为一种特殊的反馈网络结构。

其他算法

以下几种算法不属于前馈神经网络或反馈神经网络的范畴,具有不同的结构和特点:

1. 图神经网络(GNN)

  • 处理图结构数据,节点之间的信息传递不属于单向的前馈网络或时间循环的反馈网络。

2. 自监督学习(Self-supervised Learning)

  • 一种训练策略,可以用于前馈网络或反馈网络中,并不限定特定的网络结构。

3. 对比学习(Contrastive Learning)

  • 也是一种训练方法,旨在学习更好的特征表示,同样可以用于前馈网络或反馈网络。

4. 迁移学习(Transfer Learning)

  • 一种学习策略,将预训练模型应用于新任务上,不属于特定的网络结构类别。

总结起来,前馈神经网络和反馈神经网络各有特点,前者主要用于处理静态数据,后者则用于处理动态序列数据。在深度学习中,根据任务的不同需求选择合适的网络结构至关重要。

算法详细介绍

1. 神经网络(Neural Networks, NN)

介绍

神经网络是由模拟生物神经网络的数学模型构建的,它由多个相互连接的神经元组成。每个神经元接收输入,通过权重和偏置进行加权和求和,再通过激活函数输出结果。早期的神经网络主要包括单层感知机(Perceptron)【无隐藏层】和多层感知机(MLP)【有隐藏层】,适用于线性和简单的非线性任务。

应用例子
  • 例子1:逻辑分类(Logical Classification)
    • 使用单层感知机进行简单的二分类任务,如 AND 和 OR 操作。
  • 例子2:线性回归(Linear Regression)
    • 使用简单的神经网络模型进行线性回归预测,如房价预测。
  • 例子3:图像识别(Image Recognition)
    • 早期神经网络用于简单的图像识别任务,如识别基本的几何形状。

2. 全连接层(多层感知机,MLP)

介绍

多层感知机(MLP)是一种前馈神经网络,由输入层、一个或多个隐藏层和输出层组成。各层之间的神经元是全连接的,每个神经元接收前一层神经元的线性组合输入,并通过激活函数(如 ReLU、Sigmoid、Tanh 等)生成非线性的输出。MLP 是最基础的深度学习模型,适用于处理结构化数据。

应用例子
  • 例子1:手写数字识别(Handwritten Digit Recognition)
    • 使用 MLP 对 MNIST 数据集进行分类,将手写数字图像(28x28 像素)分为 0-9 十个类别。
  • 例子2:信用评分(Credit Scoring)
    • 使用 MLP 对用户的历史数据进行建模,预测贷款申请是否会被批准。
  • 例子3:广告点击率预测(Click-Through Rate Prediction)
    • 基于用户行为数据和广告特征,使用 MLP 模型预测用户点击广告的概率。

3. 卷积神经网络(Convolutional Neural Network, CNN)

介绍

卷积神经网络(CNN)是一种专门用于处理具有空间结构(如图像、视频)的神经网络。它通过卷积层提取局部特征,使用池化层进行特征降维,并通过全连接层进行分类或回归。CNN 在图像处理任务中表现出色,能够捕捉图像的空间和局部特征。

应用例子
  • 例子1:图像分类(Image Classification)
    • 使用 CNN 对 CIFAR-10 数据集进行分类,将图像分为 10 类,如飞机、汽车、鸟、猫等。
  • 例子2:目标检测(Object Detection)
    • 使用 YOLO 或 Faster R-CNN 检测图像中的目标,如自动驾驶中识别车辆、行人、交通标志等。
  • 例子3:图像分割(Image Segmentation)
    • 使用 U-Net 或 Mask R-CNN 对医学图像进行分割,如在 MRI 图像中识别肿瘤区域。

4. AlexNet

介绍

AlexNet 是一种基于卷积神经网络的深度学习模型,由 Alex Krizhevsky 等人在 2012 年提出。它通过引入 ReLU 激活函数、Dropout 和数据增强等技术,大幅提升了图像分类的精度,并在 ImageNet 竞赛中取得了显著成绩。AlexNet 开启了深度学习在计算机视觉领域的广泛应用。

应用例子
  • 例子1:图像分类(Image Classification)
    • 在 ImageNet 数据集上训练 AlexNet 进行大规模图像分类任务,将图像分为 1000 类。
  • 例子2:场景识别(Scene Recognition)
    • 使用 AlexNet 识别图像中的场景类型,如城市、森林、沙漠等。
  • 例子3:对象识别(Object Recognition)
    • 在各种小型数据集上微调 AlexNet,用于识别特定的对象类别,如交通标志、食品等。

5. VGG 网络(Visual Geometry Group, VGGNet)

介绍

VGG 网络由牛津大学的 Visual Geometry Group 于 2014 年提出。它通过使用小卷积核(3x3)和更深的网络结构(如 VGG-16 和 VGG-19)来提升模型性能。VGG 网络在 ImageNet 数据集上的表现优异,成为图像分类和特征提取的经典模型。

使用小卷积核:

  • 逐层累积感受野,实现对复杂特征的逐步提取。
  • 减少参数数量,提高训练效率和降低过拟合风险。
应用例子
  • 例子1:图像分类(Image Classification)
    • 使用 VGG-16 或 VGG-19 对 ImageNet 数据集进行分类任务。
  • 例子2:图像特征提取(Feature Extraction)
    • 使用预训练的 VGG 模型提取图像特征,用于其他计算机视觉任务,如图像检索和风格迁移。
  • 例子3:医学图像分析(Medical Image Analysis)
    • 将 VGG 网络应用于医学图像分类和分割,如肺炎检测、病灶分割等。

6. Inception 网络(GoogLeNet)

介绍

Inception 网络(又称 GoogLeNet)由 Google 在 2014 年提出,主要贡献是引入了 Inception 模块。通过在同一层中使用不同大小的卷积核来提取多尺度特征,同时减少参数数量,从而提高模型的效率和精度。后续的 Inception V2、V3 和 V4 版本继续改进了网络结构。

应用例子
  • 例子1:图像分类(Image Classification)
    • 使用 Inception V3 在 ImageNet 数据集上进行大规模图像分类任务。
  • 例子2:场景理解(Scene Understanding)
    • 使用 Inception 模型提取场景中的多尺度特征,用于自动驾驶中的环境感知。
  • 例子3:视频分析(Video Analysis)
    • 在视频数据中使用 Inception 网络提取帧特征,用于视频分类和动作识别。

7. ResNet(Residual Network)

介绍

ResNet(残差网络)由微软研究院于 2015 年提出,采用了残差学习框架,解决了深度网络随着层数增加而导致的梯度消失和网络退化问题。ResNet 可以轻松地构建超过 100 层的深度网络,并在 ImageNet 数据集上取得了前所未有的成绩。典型的 ResNet 变体包括 ResNet-18、ResNet-34、ResNet-50 和 ResNet-101 等。

  • 残差学习框架 的核心是通过学习输入与输出的差值(残差),使每一层的学习任务变得更加轻松。
  • 快捷连接 使得输入可以直接跳过卷积层传递到输出,从而有效解决了深层网络中的梯度消失网络退化问题。
应用例子
  • 例子1:图像分类(Image Classification)
    • 使用 ResNet-50 或 ResNet-101 对 ImageNet 数据集进行分类任务。
  • 例子2:目标检测(Object Detection)
    • 使用基于 ResNet 的 Faster R-CNN 或 Mask R-CNN 进行目标检测和实例分割任务。
  • 例子3:图像生成(Image Generation)
    • 在生成模型中使用 ResNet 结构进行高分辨率图像生成和图像超分辨率重建。

8. 循环神经网络(Recurrent Neural Network, RNN)

介绍

循环神经网络(RNN)是一种适用于序列数据的神经网络模型。与前馈神经网络不同,RNN 的每个隐藏单元不仅接收当前输入,还接收上一个时间步的隐藏状态,从而能够捕捉时间序列中的依赖关系。RNN 常用于处理文本、语音和时间序列预测等任务。

应用例子
  • 例子1:文本生成(Text Generation)
    • 通过 RNN 模型学习莎士比亚的作品风格,然后生成新的类似莎士比亚风格的文本。
  • 例子2:时间序列预测(Time Series Prediction)
    • 用 RNN 预测股票价格的变化,基于历史价格数据预测未来走势。
  • 例子3:语音识别(Speech Recognition)
    • 使用 RNN 模型将语音信号转录为文本。

9. 长短时记忆网络(Long Short-Term Memory, LSTM)

介绍

长短时记忆网络(LSTM)是 RNN 的一种改进变体,专门解决标准 RNN 中的长期依赖问题。LSTM 使用记忆单元和门控机制(输入门、遗忘门、输出门)来控制信息的流动,从而有效地保留和忘记信息。LSTM 被广泛应用于处理长序列任务,如语言建模和机器翻译。

应用例子
  • 例子1:语言模型(Language Modeling)
    • 使用 LSTM 构建语言模型,预测给定序列后续的单词,如训练一个模型来自动补全句子。
  • 例子2:机器翻译(Machine Translation)
    • 使用 LSTM 编码器-解码器模型(Encoder-Decoder Model)进行英法翻译,即将英文句子翻译为法文句子。
  • 例子3:情感分析(Sentiment Analysis)
    • 基于 LSTM 的模型分析电影评论的情感倾向(正面或负面)。

10. 门控循环单元(Gated Recurrent Unit, GRU)

介绍

门控循环单元(GRU)是 LSTM 的一种简化变体,它将 LSTM 中的遗忘门和输入门合并为一个单独的更新门,从而减少了模型的复杂性。引入了两种门控机制:重置门(reset gate) 和 更新门(update gate)GRU 在捕捉时间序列依赖关系的同时,计算效率更高,适用于类似 LSTM 的任务,如时间序列预测和序列建模。

应用例子
  • 例子1:文本分类(Text Classification)
    • 使用 GRU 对长文本进行分类,如情感分类、新闻类别分类等。
  • 例子2:语音合成(Speech Synthesis)
    • 使用 GRU 进行语音合成,基于文本输入生成相应的语音信号。
  • 例子3:时间序列预测(Time Series Forecasting)
    • 使用 GRU 模型预测未来的销售数据,基于过去的销量数据进行预测。

11. 生成对抗网络(Generative Adversarial Network, GAN)

介绍

生成对抗网络(GAN)由一个生成器(Generator)和一个判别器(Discriminator)组成,生成器试图生成逼真的数据,而判别器则试图区分真实数据和生成数据。两者在训练过程中相互博弈,最终生成器能够生成高质量的、与真实数据相似的样本。GAN 在图像生成、图像修复和图像风格转换等领域取得了显著成果。

应用例子
  • 例子1:图像生成(Image Generation)
    • 使用 DCGAN 生成逼真的人脸图像,甚至可以生成不存在的人物肖像。
  • 例子2:图像修复(Image Inpainting)
    • 使用 GAN 进行图像修复,将损坏或缺失的部分恢复成合理的图像内容。
  • 例子3:图像风格转换(Image Style Transfer)
    • 使用 CycleGAN 将马的图像转换为斑马的图像,或将白天的景象转换为夜晚的景象。

12. 深度Q网络(Deep Q-Network, DQN)

介绍

深度 Q 网络(DQN)是深度强化学习的一种方法,将 Q-learning 算法与深度神经网络结合,用于解决状态空间非常大的强化学习任务。DQN 使用神经网络近似 Q 值函数,并通过经验回放(Experience Replay)和目标网络(Target Network)等技术提高稳定性。它在游戏(如 Atari 游戏)等领域表现出色。

应用例子
  • 例子1:游戏智能体(Game Agents)
    • 使用 DQN 训练智能体在 Atari 游戏中获得高分,如 Breakout 或 Pong。
  • 例子2:自动驾驶(Autonomous Driving)
    • 使用 DQN 训练自动驾驶系统在模拟环境中决策与避障。
  • 例子3:机器人控制(Robot Control)
    • 使用 DQN 控制机械臂在不同环境中完成特定任务,如抓取物体或避开障碍物。

13. U-Net

介绍

U-Net 是一种用于图像分割的卷积神经网络架构,最初设计用于生物医学图像分割。它采用对称的编码器-解码器结构,其中编码器部分逐渐提取特征并减少空间维度,解码器部分逐渐恢复空间分辨率并输出分割结果。U-Net 在医学图像分割、卫星图像分割等任务中表现优异。

应用例子
  • 例子1:医学图像分割(Medical Image Segmentation)
    • 使用 U-Net 分割 MRI 图像中的肿瘤区域或 CT 图像中的器官轮廓。
  • 例子2:遥感图像分析(Remote Sensing Image Analysis)
    • 使用 U-Net 分割遥感图像中的地物,如建筑、道路、河流等。
  • 例子3:车道线检测(Lane Detection)
    • 使用 U-Net 分割车道线,在自动驾驶场景中进行车道线检测。

14. 迁移学习(Transfer Learning)

介绍

迁移学习是一种将预训练模型在新任务上进行微调的方法,通常用于解决数据有限的情况下模型难以训练的问题。迁移学习通过使用在大规模数据集(如 ImageNet)上训练好的模型(如 ResNet、VGG、Inception、AlexNet),然后在小规模数据集上进行微调,从而实现快速收敛和高效模型构建。

应用例子
  • 例子1:图像分类(Image Classification)
    • 使用预训练的 ResNet 模型对小型数据集(如猫狗分类)进行微调,提升分类准确率。
  • 例子2:物体检测(Object Detection)
    • 使用预训练的 Faster R-CNN 模型,在特定领域的数据集(如交通标志检测)上微调。
  • 例子3:医学影像分析(Medical Image Analysis)
    • 使用预训练的 VGG 模型对少量的医学影像数据进行分类,如肿瘤检测。

15. 自编码器(Autoencoder)

介绍

自编码器是一种无监督学习算法,旨在学习数据的低维表示。它由编码器和解码器组成,编码器将输入数据映射到低维潜在空间,解码器则将低维表示重建回原始数据。自编码器可用于数据降维、去噪和生成新数据。变分自编码器(VAE)是自编码器的一种扩展,可以生成新的数据样本。

应用例子
  • 例子1:数据降维(Dimensionality Reduction)
    • 使用自编码器将高维数据(如 784 维的 MNIST 手写数字图像)降维到低维表示(如 2 维或 3 维),用于数据可视化。
  • 例子2:去噪自编码器(Denoising Autoencoder)
    • 用去噪自编码器从噪声数据中恢复干净数据,如从噪声图像中恢复原始图像。
  • 例子3:生成新数据(Data Generation)
    • 使用变分自编码器(Variational Autoencoder, VAE)生成新数据样本,如生成类似手写数字的新图像。

16. 图神经网络(Graph Neural Network, GNN)

介绍

图神经网络(GNN)是一种适用于图结构数据(如社交网络、分子结构)的神经网络。它通过节点及其邻居之间的信息传递来学习图的表示。GNN 在处理社交网络、推荐系统、分子属性预测等任务中表现出色。常见的 GNN 变体包括图卷积网络(GCN)、图注意力网络(GAT)等。

应用例子
  • 例子1:社交网络分析(Social Network Analysis)
    • 使用 GNN 在社交网络中进行节点分类(如识别虚假账户)或边预测(如预测用户之间可能的连接)。
  • 例子2:分子属性预测(Molecular Property Prediction)
    • 用 GNN 预测分子的化学性质,如药物活性或毒性。
  • 例子3:推荐系统(Recommendation Systems)
    • 在推荐系统中建模用户与物品之间的复杂关系,提升推荐准确性。

17. 自监督学习(Self-supervised Learning)

介绍

自监督学习是一种无监督学习的扩展,它通过生成标签数据(如旋转、遮挡)来进行模型训练,从而学习数据的潜在结构。自监督学习可以用于预训练模型,然后在监督学习任务上进行微调。它在数据有限的情况下尤其有用。

应用例子
  • 例子1:图像特征学习(Image Feature Learning)

  • 通过旋转预测任务训练图像特征,如预测输入图像被旋转了多少度。

    • 例子2:文本嵌入(Text Embedding)
      • 使用自监督学习(如 BERT)对大规模文本数据进行预训练,然后在下游 NLP 任务中进行微调。
    • 例子3:音频预训练(Audio Pre-training)
      • 对音频信号进行自监督学习(如预测时间掩码部分),然后用于语音识别或情感分析。

18. 对比学习(Contrastive Learning)

介绍

对比学习是一种自监督学习方法,通过最大化不同样本之间的特征差异最小化相似样本之间的特征差异来学习数据表示。典型的对比学习方法如 SimCLR、MoCo 等,在数据集上无需标签即可学习出有意义的特征表示。

应用例子
  • 例子1:无监督图像表征学习(Unsupervised Image Representation Learning)
    • 使用 SimCLR 在无标签图像数据上进行表征学习,然后在分类任务中微调。
  • 例子2:图嵌入学习(Graph Embedding Learning)
    • 使用对比学习方法学习图节点的表示,如 GraphCL,最大化同类节点表示的相似性。
  • 例子3:视频理解(Video Understanding)
    • 通过对比学习方法学习视频的时序特征表示,用于动作识别或视频分割。

19. Transformer 模型

介绍

Transformer 是一种基于自注意力机制的深度学习模型,最初用于机器翻译任务。它使用多头自注意力(Multi-head Self-Attention)机制来捕捉序列中远距离的依赖关系,并通过编码器-解码器结构实现高效的序列建模。BERT、GPT 等模型都是基于 Transformer 的变体。Transformer 在自然语言处理(NLP)任务中表现尤为出色。

应用例子
  • 例子1:机器翻译(Machine Translation)
    • 使用 Transformer 模型(如 BERT 或 GPT)实现语言之间的翻译,如将英文文本翻译为中文文本。
  • 例子2:文本摘要(Text Summarization)
    • 使用 Transformer 模型对长篇文章生成简洁的摘要,如新闻摘要生成。
  • 例子3:文本生成(Text Generation)
    • 使用 GPT-3 生成自然流畅的文本,如回答问题、写作辅助等。

这些算法和方法的组合和改进推动了深度学习在图像处理、自然语言处理、强化学习、医学图像分析等领域的广泛应用和突破。

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

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

相关文章

MySQL 中的索引下推功能

看到索引,应该大家都可以联想到这个是和查询效率有关系的,既然有这个功能,那么那句古话说的好啊:存在即合理。那么这个就是说有了这个功能,可以提升查询效率。 什么是索引下推 我们先有一个大概的理解:在…

#渗透测试#SRC漏洞挖掘# 操作系统-Linux系统之基本命令、资源耗尽脚本编写

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…

软考中级 软件设计师 上午考试内容笔记(个人向)Part.1

软考上午考试内容 1. 计算机系统 计算机硬件通过高/低电平来模拟1/0信息;【p进制】: K n K n − 1 . . . K 2 K 1 K 0 K − 1 K − 2... K − m K n r n . . . K 1 r 1 K 0 r 0 K − 1 r − 1 . . . K − m r − m K_nK_{n-1}...K_2K_1K_0K…

IDA*算法 Power Calculus————poj 3134

目录 闲聊 前言 DFS算法的无效搜索 BFS算法的空间浪费 IDDFS A*算法 IDA* Power Calculus 问题描述 输入 输出 问题分析 代码 闲聊 前几周在忙着数学竞赛,所以就没时间更新,高等数学,一生之敌,真不知道报名的时候我是怎么想…

基于python深度学习技术矩阵分解的推荐系统,通过学习隐含特征,实现推荐

实现了一个基于矩阵分解的推荐系统,用于预测用户对电影的评分。具体来说,该程序通过TensorFlow构建和训练一个模型,来学习用户和电影之间的隐含特征,并根据这些特征预测评分。以下是代码的主要功能和步骤的详细描述: …

C++高级编程(8)

八、标准IO库 1.输入输出流类 1)非格式化输入输出 2)put #include <iostream> #include <string> ​ using namespace std; int main() {string str "123456789";for (int i str.length() - 1; i > 0; i--) {cout.put(str[i]); //从最后一个字符开…

EMC Plus:大电流注入传导抗扰度

大电流注入 &#xff08;BCI&#xff09; 是一种传导射频抗扰度测试&#xff0c;利用电流注入探头将调制信号引入电缆。其目的是复制设备运行环境中预期的电磁干扰 &#xff08;EMI&#xff09; 条件。在这里&#xff0c;我将为您提供一个使用 Ansys EMC Plus 进行大电流注入传…

《Java核心技术 卷I》JFrame组件中显示信息

组件中显示信息 JFrame结构复杂&#xff0c;由四层窗格&#xff0c;其中根窗格、层级窗格和玻璃窗格人们并不太关心&#xff0c;他们要用来组织菜单栏和内容窗格以及实现观感&#xff0c;Swing程序员最关心的是内容窗格(content pane)&#xff0c;添加到窗体的所有组件都会自动…

0x00基础算法 -- 0x01 位运算

资料来源&#xff1a;算法竞赛进阶指南活动 - AcWing 1、进制表示 二进制表示&#xff1a;m位二进制中&#xff0c;通常称最低位为第0位&#xff0c;从右到左以此类推&#xff0c;最高位为第m-1位。 常用十六进制表示的数字&#xff1a; 32位补码int&#xff08;十进制&#xf…

算法求解(C#)-- 寻找包含目标字符串的最短子串算法

1. 引言 在字符串处理中&#xff0c;我们经常需要从一个较长的字符串中找到包含特定目标字符串的最短子串。这个问题在文本搜索、基因序列分析等领域有着广泛的应用。本文将介绍一种高效的算法来解决这个问题。 2. 问题描述 给定一个源字符串 source 和一个目标字符串 targe…

Linux之Chronyd 时间服务器配置(Chronod Time Server Configuration in Linux)

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 本人主要分享计算机核心技…

【Ant Design Pro】如何实现组件的状态保存umi-plugin-keep-alive插件的使用

都知道vuejs里面帮我们实现了一个内置的keep-alive组件&#xff0c;给我们缓存一些组件的状态带来了很大的便利。但是在react中没有自带的实现&#xff0c;可以借助社区的插件umi-plugin-keep-alive来实现这个功能。 实现效果对比 未使用插件&#xff0c;可以看到我们在页面跳…

【数据结构】二叉排序树和平衡二叉树

目录 1. 二叉搜索树&#xff08;BST&#xff09; 1.1 二叉搜索树的定义及特点 1.1.1 定义 1.1.2 特点 1.2 二叉排序树的构造&#xff08;创建&#xff09; 1.2.1 基本思想 1.2.2 算法 1.3 二叉排序树的删除 2. 平衡二叉树&#xff08;AVL&#xff09; 2.1 为什么要用…

C++四种类型转换

C语言提供了四种类型转换 const_cast: 可以去除掉常量属性的类型转换 //const_cast const int a 10; double* p1 (double*)&a;//类型和原来的类型可以不一致&#xff0c;但是不安全 int* p2 const_cast<int*>(&a);//类型和原本的类型必须匹配 //<>中必…

【SPIE出版,往届稳定EI检索】2024智能视觉与数据建模国际学术会议(ICIVD 2024,12月13-15日)

2024智能视觉与数据建模国际学术会议 2024 International Conference on Intelligent Vision and Data modeling (ICIVD 2024) 重要信息 会议官网&#xff1a;www.iccaid.net 2024 International Conference on Intelligent Vision and Data modeling (ICIVD 2024)www.iccaid…

大模型的思维链提示

文章目录 思维链提示的基本形式思维链提示的优化策略关于思维链的进一步讨论思维链提示是一种高级提示策略,旨在增强大语言模型在各类复杂推理任务上的表现。常见的推理任务包括算术推理、常识推理以及符号推理等多种任务。与上下文学习方法仅使用⟨输入,输出⟩二元组来构造提…

JavaScript day01 笔记

一、引入方式 JavaScript 程序不能独立运行&#xff0c;它需要被嵌入 HTML 中&#xff0c;然后浏览器才能执行 JavaScript 代码。通过 script 标签将 JavaScript 代码引入到 HTML 中 1️⃣内部 通过 script 标签包裹 JavaScript 代码&#xff08;一般就写在</script>的…

vue,uniapp,微信小程序解决字符串中出现数字则修改数字样式,以及获取字符串中的数字

简单记录一下&#xff0c;最近遇到的一个新需求&#xff1a;后端返回的是非富文本&#xff0c;只是一串字符串&#xff0c;其中包含了文字和数字&#xff0c;前端需要将出现数字的地方将其加粗或者修改颜色等需求 设计思路&#xff1a;&#xff08;简单做个记录方便以后理解&a…

数据分析:16s差异分析DESeq2 | Corncob | MaAsLin2 | ALDEx2

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍DESeq2原理计算步骤结果Corncob原理计算步骤结果MaAsLin2原理计算步骤结果ALDEx2原理计算步骤结果加载R包数据链接数据预处理微生物数据样本信息提取物种名称过滤零值保留结果读取…

【CSS】标准怪异盒模型

概念 CSS 盒模型本质上是一个盒子&#xff0c;盒子包裹着HTML 元素&#xff0c;盒子由四个属性组成&#xff0c;从内到外分别是&#xff1a;content 内容、padding 内填充、border 边框、外边距 margin 盒模型的分类 W3C 盒子模型(标准盒模型) IE 盒子模型(怪异盒模型) 两种…