武大深度学习期末复习-常见神经网络概念
深度学习经典神经网络概念、优缺点及应用场景
文章目录
- 一、多层感知机(MLP)
- 1.1 结构和原理
- 1.2 优缺点
- 1.3 应用场景
- 二、卷积神经网络(CNN)
- 2.1 结构和原理
- 2.2 优缺点
- 2.3 应用场景
- 三、循环神经网络(RNN)
- 3.1 结构和原理
- 3.2 优缺点
- 3.3 应用场景
- 四、长短期记忆网络(LSTM)
- 4.1 结构和原理
- 4.2 优缺点
- 4.3 应用场景
- 4.4 和RNN的主要区别
- 五、生成对抗网络(GAN)
- 5.1 结构和原理
- 5.2 优缺点
- 5.3 应用场景
- 六、变分自编码器 (VAE)
- 6.1 结构和原理
- 6.2 优缺点
- 6.3 应用场景
- 6.4 和GAN的相似与不同
一、多层感知机(MLP)
1.1 结构和原理
由多个全连接层组成,每个层都与前一层的所有神经元连接。
通过一系列非线性变换将输入数据映射到输出。常用于分类和回归任务。
1.2 优缺点
优点
- 灵活性: MLP 可以适用于各种数据类型和任务,包括分类、回归和特征学习等。
- 强大的拟合能力: 多层结构允许 MLP 学习复杂的非线性关系,因此在处理复杂数据模式时表现良好。
- 通用性: 可以通过调整网络结构和参数来适应不同的问题和数据集。
- 并行计算: 在训练时,由于每个神经元之间的独立计算,可以进行高效的并行计算,加速训练过程。
缺点
- 容易过拟合: 当网络过于复杂或数据量不足时,MLP 容易过拟合训练数据,导致泛化能力下降。
- 对数据预处理敏感: 对输入数据的缩放和标准化要求较高,不同尺度和分布的数据可能会影响网络的性能。
- 需要大量数据和计算资源: 对于复杂的网络结构和大规模的数据集,训练 MLP 需要大量的数据和计算资源。
- 不适用于序列数据: MLP 不擅长处理序列数据,因为它无法捕捉数据的时序信息。
1.3 应用场景
- 图像分类: MLP 在图像分类任务中广泛应用,例如手写数字识别、物体识别等。
- 语音识别: 用于语音识别任务,例如说话人识别、语音指令识别等。
- 自然语言处理: 在文本分类、情感分析和命名实体识别等自然语言处理任务中有所应用。
- 推荐系统: 用于个性化推荐系统,根据用户的历史行为和偏好进行商品或内容推荐。
- 金融领域: 在金融领域用于信用评分、风险管理和股票预测等任务。
二、卷积神经网络(CNN)
2.1 结构和原理
包含卷积层、池化层和全连接层。卷积层用于提取局部特征,池化层用于减小特征图的尺寸,全连接层用于分类。
通过卷积和池化操作提取图像等数据的特征,然后通过全连接层进行分类或回归。
2.2 优缺点
优点
- 局部连接和权值共享: CNN 使用局部连接和权值共享的方式有效地减少了网络参数数量,降低了计算复杂度,提高了训练效率。
*局部连接:在传统的全连接神经网络中,每个神经元都与前一层的所有神经元相连。而在CNN中,每个神经元只与前一层的局部区域连接。例如,在图像处理中,一个神经元只负责处理图像的一个小区域,而不是整个图像。这样做的好处是减少了参数数量,降低了计算复杂度,并且能够更好地保留空间局部特征
*权值共享: 在CNN中,每个神经元的权重参数在不同的位置上都是共享的。 这意味着在处理不同的图像区域时,神经元使用相同的权重来提取特征。例如,当一个神经元识别边缘特征时,它在图像的不同位置使用相同的权重来检测边缘。 权值共享有助于减少模型的过拟合风险,提高了模型的泛化能力,并且使得CNN更适合处理具有平移不变性的数据,如图像。
- 对平移不变性的学习: CNN 通过卷积操作学习特征,具有对平移不变性的能力,适合处理图像等具有空间局部相关性的数据。
- 层次化特征学习: CNN 的多层结构允许逐层提取和组合特征,从而实现层次化的特征学习,有助于捕捉数据的抽象特征。
- 适应不同大小的输入: 由于使用卷积和池化操作,CNN 能够处理不同尺寸的输入数据,具有一定的尺度不变性。
- 在图像处理任务上表现出色: 在图像分类、物体检测、语义分割等图像处理任务上表现出色。
缺点
- 对空间变换不变性不敏感: 尽管 CNN 对平移不变性具有一定的学习能力,但对于其他类型的空间变换,如旋转和缩放,相对不敏感。
- 对数据的要求高: 对于小样本或低质量的数据集,CNN 容易过拟合,需要大量的数据进行训练。
- 计算资源消耗较大: CNN 的训练过程需要大量的计算资源,尤其是对于深层网络和大规模数据集。
- 不适用于序列数据: CNN 不擅长处理序列数据,如文本和时间序列数据,因为它无法捕捉数据的时序信息。
2.3 应用场景
- 图像分类: CNN 在图像分类任务中被广泛应用,如图像识别、人脸识别等。
- 目标检测: 用于检测图像中的目标位置和类别,例如物体检测和行人检测。
- 语义分割: 用于将图像分割成语义上有意义的区域,例如医学图像分割和自然场景理解。
- 视频分析: CNN 可以应用于视频分析任务,如动作识别、视频内容理解等。
- 医学影像分析: 在医学影像分析领域,CNN 被用于病灶检测、疾病诊断等任务。
三、循环神经网络(RNN)
3.1 结构和原理
具有循环连接的神经元,允许信息在网络内部传递。
适用于序列数据,如时间序列或自然语言,能够捕捉数据中的时序信息。
3.2 优缺点
优点
- 序列处理能力: RNN 的设计使其能够处理和生成序列数据,例如时间序列、文本和音频数据。它通过隐藏状态来记忆先前的信息,有效捕捉数据中的时序关系。
- 参数共享: RNN 在每个时间步使用相同的权重,从而减少了模型的参数数量,提高了训练效率。
- 灵活性: RNN 可以处理变长的输入和输出序列,适用于多种任务,如序列预测和序列生成。
缺点
- 梯度消失和梯度爆炸: RNN 在训练长序列时容易遇到梯度消失和梯度爆炸问题,导致模型难以捕捉长时间依赖关系。尽管 LSTM 和 GRU 等变种解决了这一问题,但计算复杂度也随之增加。
- 训练困难: 由于序列数据的依赖关系,RNN 的训练过程较为复杂,收敛速度慢,训练时间长。
- 并行化困难: 与 CNN 不同,RNN 的序列依赖性使得并行化计算困难,从而限制了训练效率的提升。
3.3 应用场景
-
自然语言处理(NLP):文本生成: RNN 可用于生成自然语言文本,例如自动生成文章、对话等。机器翻译: RNN 可用于将一种语言翻译成另一种语言。语音识别: 将语音信号转化为文本。情感分析: 分析文本中的情感信息。
-
时间序列预测:金融市场预测: 预测股票价格、市场趋势等。天气预报: 基于历史天气数据预测未来天气。设备维护: 预测设备故障和维护需求。
-
语音处理:语音生成: 生成合成语音,如文本转语音。语音识别: 将语音信号转化为文字或命令。
-
视频分析:动作识别: 从视频中识别特定的动作或行为。视频生成: 生成视频内容,如动画等。推荐系统:
-
个性化推荐: 基于用户历史行为进行个性化推荐,如电影推荐、音乐推荐等。
RNN 尤其适合处理和生成序列数据,在自然语言处理、时间序列预测和语音处理等领域表现尤为突出。尽管存在一些训练难点和计算复杂性问题,但其变种(如 LSTM 和 GRU)已经在很大程度上克服了这些不足
四、长短期记忆网络(LSTM)
4.1 结构和原理
一种特殊类型的RNN,具有门控单元,能够更有效地处理长期依赖性。
通过遗忘、输入和输出门来控制信息的流动,从而更好地捕捉长期依赖关系。设计用来解决传统RNN存在的梯度消失和梯度爆炸问题。
4.2 优缺点
优点
- 解决梯度消失和梯度爆炸问题: LSTM 使用了特殊的单元结构,包括输入门、遗忘门和输出门,通过这些门的控制,可以有效地保留长时间的依赖信息。
- 捕捉长时间依赖关系: LSTM 能够记住和利用长时间间隔的信息,适用于需要长期记忆的任务。
- 灵活的记忆管理: 通过门控机制,LSTM 能够灵活地添加或移除信息,从而在处理复杂序列数据时表现良好。
- 广泛适用性: LSTM 适用于各种类型的序列数据,如时间序列、文本和语音数据,具有广泛的应用场景。
缺点
- 计算复杂度高: LSTM 的单元结构比传统 RNN 复杂,包含更多的参数,计算量较大,训练时间较长。
- 难以并行化: 由于序列数据的时间步之间的依赖性,LSTM 的训练过程难以并行化,限制了训练效率的提升。
- 调参复杂: LSTM 模型的超参数较多,如层数、单元数、学习率等,调参过程复杂,需要大量实验来确定最佳参数。
4.3 应用场景
LSTM 和 RNN 的应用场景几乎相同
略
4.4 和RNN的主要区别
- 结构上的不同:
RNN: 传统的 RNN 由简单的循环单元组成,每个循环单元的输出不仅依赖当前输入,还依赖前一个时间步的隐藏状态。
LSTM: LSTM 的单元更加复杂,包含了遗忘门、输入门和输出门。这些门控机制允许 LSTM 选择性地记住或遗忘信息,从而更好地处理长时间依赖关系。 - 处理长时间依赖的能力:
RNN: 由于其简单的结构,RNN 在处理长时间依赖关系时会遇到梯度消失和梯度爆炸的问题,这使得它难以学习和记住长期的信息。
LSTM: LSTM 通过引入门控机制,有效地缓解了梯度消失和梯度爆炸问题,使其能够捕捉和保留长期依赖关系。 - 计算复杂度:
RNN: 由于其较简单的结构,RNN 的计算复杂度相对较低,训练时间较短,但在处理复杂的长时间序列时表现不佳。
LSTM: LSTM 的单元结构复杂,计算复杂度较高,训练时间较长,但在处理复杂的长时间序列时表现优异。
五、生成对抗网络(GAN)
5.1 结构和原理
包含一个生成器和一个判别器,两者相互对抗、相互学习。
生成器试图生成逼真的数据,而判别器试图区分生成的数据与真实数据,二者在对抗中互相提升
5.2 优缺点
优点
- 生成高质量样本: GAN 能够生成非常逼真的样本,例如图像、音频和视频,特别是在图像生成任务中表现尤为突出。
- 无监督学习: GAN 不需要标签数据进行训练,可以利用大量未标注的数据,适用于无监督学习。
- 灵活性: GAN 的框架灵活,可以用于各种生成任务,如图像到图像的转换、图像修复、超分辨率等。
- 扩展性强: GAN 结构可以与其他模型结合,如条件 GAN(cGAN)、周期一致性 GAN(CycleGAN)等,拓展其应用范围。
缺点
- 训练不稳定: GAN 的训练过程往往不稳定,生成器和判别器的平衡很难把握,容易出现模式崩溃(mode collapse)现象,即生成器生成的样本缺乏多样性。
- 难以调参: GAN 的训练需要仔细调参,包括学习率、网络架构、优化方法等,这使得训练过程复杂且耗时。
- 缺乏解释性: GAN 的生成过程较难解释,模型的内部工作机制不够透明,难以理解生成器如何产生高质量样本。
- 计算资源消耗大: GAN 的训练通常需要大量的计算资源,尤其是在生成高分辨率图像时,对硬件要求较高。
5.3 应用场景
- 图像生成:图像生成: 生成高质量的图像,如人脸生成(例如 StyleGAN)。图像修复: 修复损坏的图像,如去噪、补全缺失部分。图像超分辨率: 提高图像的分辨率,使低分辨率图像变得更加清晰。
- 图像转换:图像到图像的转换: 例如,将素描转换为照片,将白天场景转换为夜晚场景(CycleGAN)。风格迁移: 将一种图像的风格应用到另一种图像上,如将照片转换为艺术画。
- 视频生成和处理:视频生成: 生成新的视频内容,例如动画短片。视频修复和增强: 提高视频的质量,如去除噪声、增加分辨率。
- 文本生成:文本到图像: 将描述性的文本转换为对应的图像(例如 DALL-E)。生成文本数据: 虽然 GAN 更常用于图像,但也可以用于生成文本数据,尽管这方面应用相对较少。
- 音频处理:音乐生成: 生成新的音乐片段或曲目。语音合成: 生成逼真的语音,如文本到语音转换。
- 数据增强(扩充): 生成新的样本来扩充训练数据集,提高模型的泛化能力,尤其在医疗图像等领域效果显著。
六、变分自编码器 (VAE)
6.1 结构和原理
VAE 是变分自编码器(Variational Autoencoder)的缩写,是一种生成模型,同时也是一种用于无监督学习的神经网络模型。VAE 由编码器(encoder)和解码器(decoder)两部分组成,它们共同学习如何将输入数据映射到潜在空间(latent space)中的编码,并从潜在空间中的编码中生成数据。
-
编码器(Encoder): 编码器接收输入数据,并将其映射到潜在空间中的一组潜在变量(latent variables),这些变量表示了输入数据的分布。编码器的输出通常是一组均值向量和方差向量,代表了潜在变量的分布。
-
潜在变量采样(Sampling): 从编码器输出的均值和方差中采样一组潜在变量,这个过程使得模型能够从潜在空间中随机生成新的样本。
-
解码器(Decoder): 解码器接收潜在变量作为输入,并将其解码成原始数据的重构。解码器的目标是最大程度地复原输入数据,使得生成的数据与原始数据尽可能接近。
-
损失函数(Loss Function): VAE 的损失函数由两部分组成:重构损失(reconstruction loss)和 KL 散度(Kullback-Leibler divergence)。重构损失衡量了重构数据与原始数据之间的差异,而 KL 散度衡量了编码器输出的潜在变量分布与预设的标准正态分布之间的差异。
6.2 优缺点
优点
- 学习潜在表示: VAE 学习到了数据的潜在表示,这使得模型能够生成新的数据,并进行数据插值和变换。
- 生成高质量样本: VAE 生成的样本通常具有较高的质量,特别是在图像生成任务中表现优异。
- 无监督学习: VAE 不需要标签数据进行训练,适用于无监督学习任务。
- 概率性框架: VAE 提供了一个概率性的框架,能够估计数据的分布,并从中采样生成新的样本。
缺点
- 生成图像模糊: 在某些情况下,VAE 生成的图像可能会出现模糊或模式崩溃现象,导致样本质量下降。
- 潜在空间连续性: VAE 假设潜在空间是连续的,但实际上可能存在不连续的情况,这可能导致生成样本的不连续性。
- 训练复杂度高: VAE 的训练通常需要较长的时间,并且对超参数的选择和调整较为敏感。
6.3 应用场景
- 图像生成:如生成逼真的人脸图像、艺术画作等。
- 图像插值和变换:如图像修复、图像风格转换等。
- 文本生成:如生成自然语言文本、对话等。
- 物体重建:如从图像中重建三维物体形状等。
6.4 和GAN的相似与不同
-
相似之处
生成样本: VAE 和 GAN 都是生成模型,都能够生成逼真的样本,例如图像、音频、文本等。
无监督学习: VAE 和 GAN 都是无监督学习方法,不需要标签数据进行训练,可以利用大量的未标注数据。
潜在空间表示: VAE 和 GAN 都学习到了数据的潜在表示(latent representation),这使得模型能够进行插值、变换和生成新的样本。 -
不同之处
(1)生成方式不同:
VAE 通过学习数据的潜在分布,然后从该分布中采样生成新的样本。它通过最大化数据的重构概率来训练模型,使得生成的样本能够与原始数据尽可能接近。
GAN 通过生成器(generator)和判别器(discriminator)之间的对抗训练来生成样本。生成器试图生成逼真的样本,而判别器则试图区分真实样本和生成样本。通过相互对抗的过程,生成器不断提高生成样本的质量,使其难以被判别器区分。
(2)训练方法不同
VAE 的训练过程基于最大化观测数据的边际似然下界(ELBO),这可以通过梯度下降等优化算法进行优化。
GAN 的训练过程是一个零和博弈,需要在生成器和判别器之间进行平衡。通常采用交替训练的方式,先训练生成器,然后固定生成器,训练判别器,反复迭代直至收敛。
(3)模型结构不同
VAE 由编码器(encoder)和解码器(decoder)两部分组成,编码器将输入数据映射到潜在空间,解码器从潜在空间中的编码生成原始数据。
GAN 由生成器和判别器组成,生成器生成逼真的样本,判别器评估样本的真实性。两者相互对抗,不断提升生成器的能力。
(4)目标函数不同
VAE 的目标是最大化观测数据的边际似然下界(ELBO),同时最小化编码器输出的潜在分布与先验分布之间的差异(KL 散度)。
GAN 的目标是最小化生成样本被判别器判别为假的概率,即最大化判别器的损失函数。
(5)应用场景不同
VAE 更适合于需要重构能力和潜在空间插值的任务,如图像修复、图像压缩等。
GAN 更适合于需要生成逼真样本的任务,如图像生成、视频生成等。
相关文章:

武大深度学习期末复习-常见神经网络概念
深度学习经典神经网络概念、优缺点及应用场景 文章目录 一、多层感知机(MLP)1.1 结构和原理1.2 优缺点1.3 应用场景 二、卷积神经网络(CNN)2.1 结构和原理2.2 优缺点2.3 应用场景 三、循环神经网络(RNN)3.1…...

Leetcode3161. 物块放置查询(Go语言的红黑树 + 线段树)
题目截图 题目分析 每次1操作将会分裂成两块区间长度,以最近右端点记录左侧区间的长度即可 因此涉及到单点更新和区间查询 然后左右侧最近端点则使用redBlackTree,也就是python中的sortedlist ac code type seg []int// 把 i 处的值改成 val func (t …...

基于springboot实现医疗挂号管理系统项目【项目源码+论文说明】
基于springboot实现医疗挂号管理系统演示 摘要 在如今社会上,关于信息上面的处理,没有任何一个企业或者个人会忽视,如何让信息急速传递,并且归档储存查询,采用之前的纸张记录模式已经不符合当前使用要求了。所以&…...

ScrumMaster认证机构及CSM、PSM、RSM价值比较
企业现有的经营管理模式和传统的瀑布式交付模式,已经不能适应快速变化的市场响应和客户需求,现代的敏捷工作方式在过去数年涌现,比如Scrum,XP,看板,DevOps等敏捷方法,近十年Scrum在国内企业中备…...

加氢站压缩液驱比例泵放大器
加氢站压缩液驱液压系统的要求是实现换向和速度控制,对液压动力机构而言,按原理可区分为开式(阀控)- 节流控制系统和闭式(泵控)- 容积控制系统: 阀控系统 – 节流调速系统:由BEUEC比…...

MyBatis系统学习篇 - MyBatis逆向工程
MyBatis的逆向工程是指根据数据库表结构自动生成对应的Java实体类、Mapper接口和XML映射文件的过程。逆向工程可以帮助开发人员快速生成与数据库表对应的代码,减少手动编写重复代码的工作量。 我们在MyBatis中通过逆向工具来帮我简化繁琐的搭建框架,减少…...

SpringCloud的Config配置中心,为什么要分Server服务端和Client客户端?
SpringCloud的Config配置中心,为什么要分Server服务端和Client客户端? 在SpringCloud的Config配置中心中分了Server服务端和Client客户端,为什么需要这样分呢?它的思想是所有微服务的配置文件都放到git远程服务器上,让…...

「数据结构」队列
目录 队列的基本概念 队列的实现 头文件queue.h 实现函数接口 1.初始化和销毁 2.出队列和入队列 3.获取队头元素和队尾元素 4.队列长度判空 后记 前言 欢迎大家来到小鸥的博客~ 个人主页:海盗猫鸥 本篇专题:数据结构 多谢大家的支持啦ÿ…...

Python01 注释,关键字,变量,数据类型,格式化输出
# 导入模块 import keyword# 我的第一个Python程序 这是单行注释 快捷键:CTRL/这里是多行注释 可以写多行,用 三个单引号 包起来print(Hello work) print(你好,中国)aa 这是不是注释了,是多行文本。print(aa)# 快速创建 python …...

基于单片机智能防触电装置的研究与设计
摘 要 : 针对潮湿天气下配电线路附近易发生触电事故等问题 , 对单片机的控制算法进行了研究 , 设 计 了 一 种 基 于 单片机的野外智能防触电装置。 首先建立了该装置的整体结构框架 , 再分别进行硬件设计和软件流程分析 …...

机械行业工程设计资质乙级需要哪些人员
申请机械行业工程设计资质乙级需要的人员主要包括以下几个方面,具体要求和数量根据参考文章归纳如下: 一、主要专业技术人员 数量要求:主要专业技术人员数量应不少于所申请行业资质标准中主要专业技术人员配备表规定的人数。学历和职称要求…...

vivado改变波形图窗口颜色
点击右上角的设置图标 翻译对照...

蓝桥杯练习系统(算法训练)ALGO-932 低阶行列式计算
资源限制 内存限制:64.0MB C/C时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s 问题描述 给出一个n阶行列式(1<n<9),求出它的值。 输入格式 第一行给出两个正整数n,p; 接下来n行&…...

四川古力未来科技抖音小店安全靠谱,购物新体验
在数字化浪潮席卷而来的今天,电商行业蓬勃发展,各种线上购物平台如雨后春笋般涌现。其中,抖音小店凭借其独特的短视频直播购物模式,迅速赢得了广大消费者的青睐。而四川古力未来科技抖音小店,更是以其安全靠谱、品质保…...

深入理解Seata:分布式事务的解决方案
在现代的微服务架构中,随着业务系统的不断拆分和模块化,分布式事务成为一个重要的挑战。为了解决微服务架构下的分布式事务问题,Seata应运而生。Seata(Simple Extensible Autonomous Transaction Architecture)是一款开…...

【TC8】如何测试IOP中PHY芯片的Llink-up time
在TC8一致性测试用例中,物理层的测试用例分为两个部分:IOP和PMA。其中IOP中对PHY芯片的Link-up时间的测试,又包含三个测试用例。它们分别是: OABR_LINKUP_01: Link-up time - Trigger: Power on Link PartnerOABR_LINKUP_02: Link-up time - Trigger: Power on DUTOABR_LIN…...

java大学城水电管理系统源码(springboot)
风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的大学城水电管理系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 大学城水电管理系统的…...

LAMP源码编译安装——CentOS7
文章目录 LAMP是什么LAMP软件组件LinuxApacheMySQLPHP 源码安装Apache一、准备工作二、安装环境依赖包三、配置软件模块四、编译及安装五、优化配置文件路径六、添加httpd系统服务(有两种方法)方法一:方法二: 七、修改httpd 服务配…...

oracle 还原被覆盖的视图
1.现在的视图 select to_lob(text) from SYS.DBA_views where view_nameXXX; 2.查旧数据 --as of timestamp to_date(2024-05-28 10:30:00,yyyy-mm-dd hh24:mi:ss) select to_lob(text) from SYS.DBA_views as of timestamp to_date(2024-05-28 10:30:00,yyyy-mm-dd hh24:mi:s…...

go语言同一包中的同一变量实现不同平台设置不同的默认值 //go:build 编译语法使用示例
在使用go来开发跨平台应用的时候,比如配置文件的路径,我们希望设置一个默认值,windows下的路径是类似 d:\myapp\app.conf 这样的, unix系统中的路径是 /opt/myapp/app.conf 这样的, 而我们在使用的时候需要使用的是同…...

校园周边美食探索及分享平台,基于 SpringBoot+Vue+MySQL 开发的前后端分离的校园周边美食探索及分享平台设计实现
目录 一. 前言 二. 功能模块 2.1. 前台首页功能模块 2.2. 用户功能模块 2.3. 管理员功能模块 三. 部分代码实现 四. 源码下载 一. 前言 美食一直是与人们日常生活息息相关的产业。传统的电话订餐或者到店消费已经不能适应市场发展的需求。随着网络的迅速崛起࿰…...

Discourse 编辑没有办法显示更多的 JS 错误
Priority/Severity: High Platform: 3.3.0.beta3-dev UI bugs Description: 昨天升级的时到最新版本的时候就发现有这个错误,是 JS 的错误。 发了一个帖子到官方的网站上,官方说可能是插件的问题。 但是我们实在是没有安装什么插件呀? 官方…...

CSS实现一个雨滴滑落效果
使用纯CSS来实现一个真实的雨滴滑落效果可能会有些挑战,因为CSS主要关注于静态样式和简单的动画效果。然而,你可以使用CSS动画和keyframes来模拟一个雨滴滑落的简化效果。 以下是一个基本的示例,展示如何使用CSS来模拟雨滴从顶部滑落到底部的…...

vue2+echarts地图下钻+地图遮盖物散点
一、下载工具 npm i echarts echarts-gl axios -S -S是生产依赖默认是-S不写也可以 -D是开发依赖 二、引入工具 import * as echarts from "echarts"; import "echarts-gl"; import axios from "axios"; 三、HTML部分代码 <div class&…...

关于C++的特殊类定制
特殊类定制 在C中,一些特殊性质的类如何设计 类禁止拷贝的对象 C11 使用delete关键字赋值给拷贝构造和赋值C98将拷贝构造和赋值声明在私有里 类只能在堆上创建的对象 将构造函数私有化, 提供一个获取对象堆上创建对象的公有函数将析构函数私有化, 提供一个释放…...

Linux备份脚本
作用 Linux文件备份的作用较多,推荐以下几种: 保护文件:备份可以帮助用户保护文件,防止文件被意外删除或损坏。保证系统安全和应用安全:Linux系统管理人员对系统和业务应用要有一个合理的备份恢复策略,完…...

【Unity】实现轮盘抽奖
简介 示例一:使用协程完成轮盘转动 using System; using System.Collections; using System.Collections.Generic; using UnityEngine;public class Lunpan : MonoBehaviour {[Tooltip("轮盘节点")]public Transform Roulette;[Tooltip("轮盘旋转的…...

面下对象之overload与override
简介 在面向对象编程中,重载(overloading)和重写(overriding)是两个不同的概念。 重载(Overloading)的定义 重载是同一个类中定义多个同名方法,但是这些方法具有不同的参数列表(参数个数、参数类型或参数顺序不同)。 当调用这个方法时,编译器会根据实际传入的参数自动选择对…...

大数据之Hive函数大全
🔧 Hive函数大全 更多大数据学习资料请关注公众号“大数据领航员"免费领取 一、数学函数 1、取整函数: round 1.函数描述 返回值语法结构功能描述doubleround(double a)返回double类型的整数值部分(遵循四舍五入) 2.例程 hive>…...

宝塔下应该用 Memcached 还是 Redis?
明月最近在跟几个使用宝塔面板的客户运维的时候发现不少站长不知道如何选择 Memcached 和 Redis,甚至都说不清楚 Memcached 或者 Redis 具体是用来干啥的?甚至还碰到过一个站长 Memcached 和 Redis 都安装了,但一个都没有用,就那么…...