揭秘神秘的种子:Adobe联合宾夕法尼亚大学发布文本到图像扩散模型大规模种子分析

news2024/10/6 6:53:14

文章链接:https://arxiv.org/pdf/2405.14828

最近对文本到图像(T2I)扩散模型的进展促进了创造性和逼真的图像合成。通过变化随机种子,可以为固定的文本提示生成各种图像。在技术上,种子控制着初始噪声,并且在多步扩散推理中,在反向扩散过程的中间时间步骤中用于重新参数化的噪声。然而,随机种子对生成的图像的具体影响仍然相对未知。

在这项工作中,进行了大规模的科学研究,探讨了扩散推理过程中随机种子的影响。值得注意的是,研究者发现最佳的“黄金”种子的FID达到了令人印象深刻的21.60,而最差的“劣质”种子的FID为31.97。此外,分类器可以在几个时代内以超过99.9%的准确度预测用于生成图像的种子编号,表明基于生成图像,种子是高度可区分的。受到这些发现的鼓舞,研究者们研究了种子对可解释的视觉维度的影响,发现某些种子会一致地生成灰度图像、突出的天空区域或图像边界。种子还会影响图像的构成,包括对象的位置、大小和深度。此外,通过利用这些“黄金”种子,展示了改进的图像生成,如高保真推理和多样化的采样。本文的调查还涉及修补任务,发现一些种子倾向于插入不需要的文本伪影。总的来说,广泛分析凸显了选择良好种子的重要性,并为图像生成提供了实用的实用性。

好坏种子的对比

介绍

文本到图像(T2I)扩散模型已经显著推动了图像合成,使得可以创建逼真的、高分辨率的图像。然而,它们的训练需要大量的计算资源,限制了这种研究只能在一些设备齐全的实验室进行。尽管存在这些限制,许多研究通过特征重新加权、基于梯度的引导或与多模式LLMs的集成等方法增强了推理过程中的图像生成。

这项工作提出了一种推理技术,通过探索逆扩散过程中的“秘密种子”来增强图像生成。受到Torch.manual_seed(3407)等研究的启发,该研究揭示了精心选择的神经网络初始化种子在图像分类中可以优于选择不当的种子,调查了在T2I扩散推理中是否“黄金”或“劣质”种子同样会影响图像质量。令人惊讶的是,使用预训练的流行T2I模型 Stable Diffusion (SD) 2.0,在1,024个种子上进行实验,发现最佳的“黄金”种子的FID达到了21.60,而最差的“劣质”种子只达到了31.97 ——这在社区中是一个显著的差异。这一发现引发了我们对几个科学问题的好奇:种子在T2I扩散推理中控制什么?为什么随机种子如此重要?种子可以通过生成的图像进行区分吗?它们是否控制可解释的图像维度,如果是,如何利用这一点来增强图像生成?

为了回答这些研究问题,首先研究了随机种子如何控制初始的噪声潜变量以及逆潜变量扩散过程中每个中间时间步的高斯噪声。研究者们还使用两个T2I扩散模型(传统的多步 SD 2.0 和蒸馏的单步 SDXL Turbo)构建了一个数据集。这个数据集包括超过22,000个多样化的文本提示,并且对于每种模型和提示的组合,使用1,024个唯一的固定种子,结果大约有4600万张图像。

最初的目标是确定每个随机种子是否在生成的图像中编码了可识别的独特特征。为了测试这一点,研究者们训练了一个1,024路分类器,从不同的提示中生成的图像中预测扩散推理时使用的种子编号。值得注意的是,这个分类器在只经过六个时代的情况下就达到了超过99.9%的验证准确率,这与大约0.01%的随机猜测概率形成了鲜明对比,表明基于生成的图像种子是高度可区分的。

在确认了种子的可区分性后,本文的目标是了解是否存在任何可解释的感知维度,使得这种区分成为可能。下一步是设计一个流水线来提取风格和布局表示,对可见聚类应用降维技术,然后识别出不同种子之间的一致模式,而不考虑输入提示。例如,某些种子一致地生成“灰度”图像,其他种子在顶部生成具有突出的白色“天空”区域的图像,而某些种子则创建图像边框或在修补模式下插入“文本”。就图像布局而言,各种种子一致地影响主要对象的规模、位置和深度。有关这些发现的详细信息。

基于从种子分析中的这些发现,提出了几种下游应用来增强图像生成。首先,通过识别各种提示中的“黄金”种子,可以将采样限制为前K个种子,以进行高保真推理。与默认实现中的随机采样相比,这种方法表现出更好的定量性能,如FID和HPS v2的测量结果。其次,发现表明,某些种子捕获了不同的风格或布局组合。通过利用这一知识,可以基于风格或布局实施多样化的采样,为用户提供不同的结果。最后,在图像修补方面的研究表明,某些种子一致地生成“文本伪影”,而不是完成像素,这表明可以通过使用最小化这些伪影的种子来改善基于文本的修补模型的修补质量。请注意,对于所有这些应用,只需要针对每个模型执行一次种子分析,本文的方法可以轻松集成到推理过程中,而不需要增加任何计算开销,这与大多数基于优化的方法不同。

本文的贡献如下:

  • 首次对文本到图像扩散模型进行了大规模种子分析,并构建了一个包含超过4600万张图像的数据集,这些图像来自两种T2I扩散模型,跨越了各种不同的文本提示。
  • 发现种子编码了高度可区分的信息,使得一个分类器能够轻松地从1,024个可能的种子中预测出用于扩散推理的种子编号,验证准确率达到了超过99.9%。
  • 发现种子在图像质量、风格、布局组合以及文本修补模型的“文本伪影”生成等方面具有显著影响。

基于从种子分析中得到的见解,提出了几种下游应用,可以增强文本到图像模型的高保真推理或多样化推理,以及通过避免“文本伪影”来提高图像生成质量的修补模型。

这些结果对于深入理解T2I扩散模型的工作原理以及改进图像生成的实用性都具有重要意义。

相关工作

深度学习模型中的随机性。先前的研究主要探讨了由随机初始化权重、随机数据排序和随机优化引起的神经网络训练中的随机性。值得注意的是,Picard等人在CIFAR-10数据集上发现了最佳和最差种子之间1.82%的测试准确率差异,突显了种子对模型性能的重大影响。受到这些发现的启发,我们探索了T2I扩散模型中反向扩散过程中的随机性。

扩散模型输入的影响。预训练的文本到图像扩散模型产生的图像的主要变化源于文本提示和控制初始噪声的随机种子。因此,精心选择这些模型输入可以在推理过程中增强图像生成和编辑,而无需进行额外的模型训练或微调。一些研究专注于理解文本嵌入对生成的图像的影响,或者利用这些文本嵌入进行无调优的图像生成。例如,Yu等人发现,T2I扩散模型中常用的CLIP文本嵌入包含多样化的语义方向,有助于可控的图像编辑。

此外,最近的研究表明,初始噪声可能导致某些图像生成倾向。特别是,Po-Yuan等人证明,对初始噪声进行轻微扰动可以大幅改变扩散模型生成的样本。然而,初始噪声对输出图像的各种视觉维度的影响程度尚不清楚。因此,对随机种子对生成图像质量、人类偏好对齐、风格、构图以及“文本伪影”插入的影响进行了广泛的分析。

扩散模型中初始噪声的优化。鉴于种子对T2I扩散模型生成的图像产生的重大影响,先前的研究旨在优化初始噪声,以产生与文本提示更符合、减少视觉伪影或实现期望布局的图像。例如,Mao等人发现,初始噪声的某些区域更有可能噪声消除成特定概念,使他们能够通过简单地替换初始噪声的区域而接近图像编辑,而无需进行微调或干扰反向扩散过程。虽然他们的工作集中在对初始噪声的局部分析,但我们的研究提供了对控制初始噪声的随机种子在各种文本提示下的大规模研究。

了解扩散种子

种子在逆扩散过程中控制什么?

在深度学习中,随机种子根据上下文扮演不同的角色。在深度网络训练过程中,它们通常影响神经网络权重的初始化、数据调度、数据增强策略以及随机正则化技术,如dropout。本工作旨在了解种子在逆扩散过程中和扩散推理过程中控制什么。

我们专注于由Rombach等人描述的潜在扩散模型,尽管相同的原理也适用于像素扩散模型。理论上,在传统的多步逆扩散过程中,每个时间步长的初始噪声潜变量和重新参数化时使用的噪声都是从高斯分布中采样得到的,引入了随机性。下图2的左侧可视化了这个过程。在实现层面上,我们确认随机种子被用作计算这些变量的输入。

在蒸馏的单步扩散模型(如SDXL Turbo)中,随机种子仅确定了初始噪声潜变量,因为没有中间去噪步骤。在多步扩散推理中,种子确定了每个时间步长的初始潜变量和重参数化噪声。为了理解初始潜在配置和重参数化步骤对生成的图像的分离影响,我们进行了一个简单的“种子交换”研究,使用了40个推理步骤的DDIM调度器。在我们的研究中,我们首先将种子设置为i并开始逆扩散过程。然后,在一个中间时间步长,我们将种子更改为j并完成图像生成过程。我们探索使用种子0和1作为i和j,以及在逆扩散过程的早期、中期和晚期交换种子。尽管存在这些变化,但我们发现初始噪声潜变量显着控制着生成的内容,而在中间的重新参数化步骤引入的随机噪声对生成的图像没有明显影响,如上图2的右侧所示。

数据生成

为了进行大规模的种子分析,研究者们使用了三种类型的文本提示进行文本到图像(T2I)生成,如下图3所示。

首先,为了捕获广泛的自然视觉内容,从常用的MS-COCO 2017训练集中采样了20,000张图像,并使用LLaVA 1.5生成了密集的标题。其次,利用PartiPrompts基准测试中的1,632个提示,其中包括短和长的通用用户提示。最后,为了进行更加受控的科学研究,通过将40个对象类别与22个修饰词组合,生成了880个唯一组合的合成提示。

针对数据集中的每个提示,采样了1,024个种子,并使用两种T2I模型,SD 2.0和SDXL Turbo,进行大规模种子分析的图像生成。这导致了总数为22,512个提示×1,024个种子×2个模型=46,104,576张图像。

除了文本到图像的应用之外,还为扩散修补模型策划了500对图像和mask,其中mask通常覆盖原始图像中的一个对象。对于文本提示,我们使用“清晰背景”来模拟对象移除的用例,并使用原始对象类别来模拟对象完成的用例。

种子根据生成的图像有多具有辨别力?

作为一个初步实验,检查种子是否可以通过它们生成的图像来区分。研究者们训练了一个1,024路的分类器,以预测生成给定图像所使用的种子编号,每个种子采用9,000张训练图像、1,000张验证图像和1,000张测试图像。

值得注意的是,种子根据它们的图像是高度可区分的。仅经过六个epoch,在SD 2.0上训练的分类器的测试准确率达到了99.994%,而在SDXL Turbo上训练的分类器的测试准确率达到了99.956%。然而,目前尚不清楚是什么使得种子容易被区分,因为下图4中的Grad-CAM可视化并不容易解释。这些发现表明,种子可能编码了独特的视觉特征,促使我们探索它们在几个可解释的维度上的影响。

种子对可解释视觉维度的影响

我们观察到一个经过训练以预测生成图像所使用的种子的分类器,在训练几个时期后就能达到超过99.9%的准确率。然而,目前尚不清楚生成图像的哪些方面使得这些种子能够被高度区分。因此,展示了一项关于种子编号对可解释视觉维度影响的广泛实证研究。

图像质量和人类偏好一致性。研究者们使用了来自MS-COCO密集标题的20,000个提示。对于每个提示,使用1,024个种子生成图像。为了评估与每个种子相关的图像质量,选择了10,000个提示及其相应的生成图像,然后计算了与10,000个真实MS-COCO图像的FID分数。

令人惊讶的是,观察到了最佳和最差种子之间在FID分数上的显著差异。例如,对于SD 2.0来说,“黄金”种子469取得了低至21.60的FID,而“劣质”种子696得分为31.97——这在社区内被认为是显著的差异。此外,研究这门使用了HPS v2来评估种子,这是一种在大规模人类偏好对中训练的新指标,用于量化人类对由AI生成的图像的偏好程度。对于每个种子,采样了1,000个提示及其相应的图像来计算HPS v2。正如下图5所示,根据FID和HPS v2排名的前三和后三名种子确实显示出,评分最高的种子生成的图像更具视觉吸引力,并且与人类偏好更为一致。

接下来,确定这些种子排名是否可以推广到另一组10,000个提示的FID和1,000个提示的HPS v2。在下图6和图7中,绘制了使用来自SD 2.0和SDXL Turbo的图像的FID和HPS v2排名的种子。

比较了来自第一组提示(蓝色中的“提示集1”)的得分与来自另一组提示(橙色中的“提示集2”)的得分。研究者们揭示了在质量和人类偏好方面的种子模式的高度重叠性,表明它们确实适用于提示集合之间。

图像风格。鉴于使用不同种子生成的图像存在视觉变化,调查是否特定的种子在各种提示下始终产生独特的风格模式。借鉴图像纹理和风格转移中已建立的方法,通过从预训练的深度网络中提取格拉姆矩阵(衡量通道间成对余弦相似度)来计算风格表示,涵盖多个层次。接下来,我们将格拉姆矩阵重塑为每个图像的单列向量,并使用PCA和t-SNE将其降维到二维。

现在,对于每个图像,有一个紧凑的二维向量来捕获其风格。对于N = 1024个种子和P个提示,这导致了一个特征维度为N×(2×P),将每个种子的生成图像的风格表示合并在一起。我们进一步将每个种子的聚合风格表示从N×(2×P)降维到N×2。最后,下图8中显示了一部分种子在2D中的可视化,提供了种子级别的风格聚类的清晰可视化表示。

在图8中,embedding空间内的位置对应于各个子图中的相同种子。如第一行所示,某些种子组始终生成灰度图像,而不受使用的提示的影响。同样,第二行显示了一些种子倾向于生成具有突出天空区域的图像,而其他种子则不会。

此外,在下图9中,观察到一组特定的种子始终在边缘附近生成具有“边框”效果的图像,而不受文本提示的影响。总的来说,这些发现表明,不同的种子在生成风格时表现出不同的倾向,而这种差异在不同的提示下仍然存在。

图像构图。超越风格,研究种子是否创建了独特的图像构图,例如一致的对象位置和大小。这里使用了880个合成提示生成图像,其中包括40个对象类别和22个修饰语,其中包括形容词和空字符串。对于每个图像,分割对象并计算图像构图特征向量,其中包含对象的质心(x,y)坐标,大小和相对于图像的深度。

在下图10的左侧,可视化了类别“马”的对象mask的质心分布。值得注意的是,尽管提示略有变化,但对象的位置相对稳定。在图10的右侧,观察到了类别“碗”的对象大小和深度的类似模式。总体而言,观察到生成的对象的位置,大小和深度在很大程度上取决于所使用的特定种子,无论是相同的对象类别还是提示中的文本修饰符。

实际应用

高保真推理

观察到“黄金”种子倾向于生成质量更好且与人类偏好更加一致的图像。这启发思考——相对于随机生成,能够通过简单利用这些“黄金”种子来提高多少图像质量?

具体而言,确定了k个在图像质量和人类偏好对齐方面表现出色的“黄金”种子。随后,通过使用另一组10,000个提示来生成这k个“黄金”种子的图像,以评估它们相对于随机种子的性能。确定了SD 2.0的k = 65个“黄金”种子和SDXL Turbo的k = 67个“黄金”种子,其中k是通过选择在FID和HPS v2中排名前256位的种子来确定的。

建议在实际应用中,为单个提示选择60+个“黄金”种子的采样池是足够大的。如下表1所示,利用这些精心选择的种子显著提高了SD 2.0和SDXL Turbo在MS-COCO和PartiPrompts基准测试中的FID和HPS v2得分。

风格和构图中的可控多样性

典型的图像生成界面为用户每个提示提供四个样本。此外,先前的方法旨在通过主要使用基于梯度的方法(例如Particle Guidance)来促进生成图像的多样性。结果突显了种子选择对生成图像中的风格和空间属性具有很强的影响。因此,探索是否可以通过简单地对“多样”种子进行采样来获得风格或构图方面更多样化的图像。

为了每个提示选择四个不同的种子,使用讨论中的方法,将每个种子表示为捕捉其风格或构图的特征向量。然后,使用这些特征进行最远点采样。具体来说,随机选择第一个种子 s 0 ∼ U 0 , 1023 s_0∼U{0, 1023} s0U0,1023,然后迭代地选择下一个三个种子,以最大化在特征空间中与已选择种子的距离。

其中S是多样种子集。为了评估精心选择的种子是否比随机种子和Particle Guidance 改进了多样性,研究者们计算了从不同集合的P个提示生成的图像的相似性,其中P = 500 LLaVA 密集标题用于图像风格,P = 440合成提示用于图像构图。具体来说,测量图像特征的成对余弦相似度,并在各个提示上对相似性得分进行平均。直观地说,较低的成对相似性得分意味着更高的多样性。在数学上,度量分数表示为:

这里有P个提示,f表示代表图像风格或构图的特征向量。通常每个提示使用C = 4个图像,但重要的是要注意,如果在图像中未检测到任何对象,则不使用该图像来计算相似性。

在下表2中,观察到多样种子在为SD 2.0生成具有不同风格和构图的图像方面优于随机种子和Particle Guidance。

有趣的是,精心选择的种子有助于为SD 2.0使图像构图多样化,但对于SDXL Turbo则不然。在下图11中展示了视觉比较。

改进的基于文本的修复

已经展示了精心选择种子提供了一种简单、无需训练的方法,可以增强文本到图像扩散模型生成的图像的视觉质量、人类偏好和多样性。但是,图像生成的潜力不仅限于文本到图像应用。这提出了一个有趣的问题——我们是否也可以为基于文本的图像修复任务发现“黄金”种子,例如对象去除和对象完成?

研究者们收集了500对图像和修复mask,用于对象去除和对象完成应用。使用文本提示“清除背景”来进行去除操作,对于完成情况,使用与原始对象类别对应的提示。然后,使用基于文本的扩散修复模型生成图像。

观察到一些图像在修复区域包含了不希望的文本,通常模仿提示。为了量化文本的存在,应用了光学字符识别(OCR),并计算了每个种子生成的所有图像中修复mask内文本的平均比例。如下图12所示,某些种子倾向于在去除和完成情景下插入文本。

结论、限制和更广泛的影响

在本研究中,研究了“随机”种子在逆扩散过程中的作用,探索了它们基于生成的图像的可区分性以及对可解释的视觉维度的影响。值得注意的是,1,024路分类器训练以预测生成图像的种子号,在短短几个epoch内就达到了超过99.9%的测试准确率。

受到这一发现的鼓舞,进行了广泛的分析,并确定了一些一致产生视觉质量更好和与人类偏好更一致的图像的“黄金”种子。

还发现某些种子会创建“灰度”图像,在修复期间添加边框或插入文本。研究还表明,种子影响图像的构成,影响对象的位置、大小和深度。利用这些见解,提出了下游应用,例如通过仅对这些特殊种子进行采样来进行文本到图像扩散模型的高保真推理和多样化生成。分析为在推理过程中增强图像合成提供了新的视角,而无需显着的计算开销。

此外,值得注意的是,本研究使用的是在大规模、未筛选的网络数据上预训练的文本到图像扩散模型,这可能包含偏见和错误,而文本提示包括MS-COCO图像的密集标题,可能产生人类想象。另外,由于预算限制,主要研究了1024个种子中的影响,而不是所有可能的种子值。

参考文献

[1] Good Seed Makes a Good Crop: Discovering Secret Seeds in Text-to-Image Diffusion Models

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

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

相关文章

FineReport简单介绍(2)

一、报表类型 模板设计是 FineReport 学习过程中的主要难题所在,FineReport 模板设计主要包括普通报表、聚合报表、决策报表三种设计类型。 报表类型简介- FineReport帮助文档 - 全面的报表使用教程和学习资料 二、聚合报表 2-1 介绍 聚合报表指一个报表中包含多个…

电商秒杀系统

一,细节 二,需要注意的细节 1.库存超卖问题 使用mysql数据库的 悲观锁 机制。在事务中使用 for update 语句,此时数据库会加锁,其他想要当前读的线程都会被阻塞,在事务处理完成之后释放这一条数据。该方法的缺点在于…

排序——希尔排序

希尔排序实际上是插入排序的优化,所以要先介绍插入排序。 目录 插入排序 思想 演示 代码实现 总结 希尔排序 思想 演示 代码 总结 插入排序 思想 又称直接插入排序。它的基本思想是将一个值插入到一个有序序列中。直至将所有的值都插入完。 演示 假设数…

工程设计问题---行星轮系设计问题

该问题的主要目标是使汽车传动比的最大误差最小。为了使最大误差最小,对自动行星传动系统的齿轮齿数进行了计算。该问题包含6个整数变量和11个不同几何约束和装配约束的约束。 参考文献: Abhishek Kumar, Guohua Wu, Mostafa Z. Ali, Rammohan Malliped…

国际统计年鉴(1995-2023年)

数据年份:1995-2023 数据格式:pdf、excel 数据内容:《国际统计年鉴》是一部综合性的国际经济社会统计资料年刊,收录了世界200多个国家和地区的统计数据,并对其中40多个主要国家和地区的经济社会发展指标及国际组织发布…

ARIMA模型与ARIMA-GARCH模型预测时间序列

上世纪 70 年代初,Ljung 等人提出 ARIMA 模型,又称求和自回归移动平均模型。其思想 是针对于非平稳时间序列进行数学建模,将其通过差分运算后 进行相关数据刻画 ,变为一个平稳的新序列,进而进行相关数据的刻画。 自 1…

Element-UI - 解决el-table中图片悬浮被遮挡问题

在开发中,发现element-ui在el-table中添加图片悬浮显示时,会被单元格遮挡的问题。通过查询得到的解决办法,大多是修改.el-table类中相关样式属性,但经过验证发现会影响到其他正常功能的使用。对于此问题解决其实也并不难&#xff…

计算机网络知识点全面总结回顾

物理层 OSI模型:数据链路层(流量控制),从传输层开始端到端;每一层的元素都称为实体,同一层的是对等实体;三个重要概念:服务(下层为上层提供调用)&#xff0c…

非连续分配管理方式(重点)

目录 一. 基本分页存储管理1.1 什么是分页存储1.2 页表 二. 基本地址变换机构三. 具有快表的地址变换机构3.1 什么是快表3.2 引入快表后, 地址的变换过程3.3 局部性原理 四. 两级页表4.1 单级页表存在什么问题?如何解决?4.2 两级页表的原理、逻辑地址结构4.3 如何实现地址变换…

机器学习笔记 - 用于3D点云数据分割的Point Net的训练

一、数据集简述 ​在本教程中,我们将学习如何在斯坦福 3D 室内场景数据集 ( S3DIS )上训练 Point Net 进行语义分割。S3DIS 是一个 3D 数据集,包含来自多栋建筑的室内空间点云,占地面积超过 6000 平方米。Point Net使用整个点云,能够执行分类和分割任务。如果你一直在关注 …

【机器学习】机器学习与教育科技在个性化教学中的融合应用与性能优化新探索

文章目录 引言机器学习与教育科技的基本概念机器学习概述监督学习无监督学习强化学习 教育科技概述学生学习行为分析个性化学习路径推荐智能化教育评估 机器学习与教育科技的融合应用实时学习数据分析数据预处理特征工程 学生成绩预测与优化模型训练模型评估 个性化学习路径推荐…

初始-Nativefier

--无奈只能靠自己 Nativefier 是什么: Nativefier 是一个命令行工具,仅仅通过一行代码就可以轻松地为任何的网站创建桌面应用程序,应用程序通过 Electron 打包成系统可执行文件(如.app, .exe 等),可以运行在…

AI探索:最佳落地应用场景

如果说今年的风口,那一定是 AI。不过AI像一把双刃剑,既有助益也有风险。我们将从IBM Watson的高飞与坠落,到Google Allo的黯然失色,探索AI应用中的教训。同时,瑞幸咖啡的成功故事展现了凭借策略得当的AI应用&#xff0…

MySQL第三方图形化工具:DBeaver

操纵数据库的语言,基于功能划分为4类: 数据定义:DDL(Data Definition Language)库的创建删除、表的创建删除等 数据操纵:DML(Data ManipulationLanguage)新增数据、删除数据、修改数据等 数据控制:DCL(Data ControlLanguage)新增用户、删除用户、密码…

javaWeb项目-springboot+vue人事管理系统功能介绍

本项目源码:java-springbootvue人事管理系统源码说明文档资料资源-CSDN文库 项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架:ssm、Springboot 前端:Vue、ElementUI 关键技术:springboot…

Redis 键空间迭代 Scan

引言 在平时线上Redis维护工作中,有时候需要从Redis实例成千上万的key中找出特定前缀的key列表来手动处理数据,可能是修改他的值,也可能是删除key。 Redis提供了一个简单暴力的指令keys用来列出所有满足特定正则字符串规则的key。 127.0.0…

【C++】实现学生管理系统(完整版)

💕💕💕大家好,这是作业侠系列之C实现学生管理系统,还是那句话,大家不想cv或者cv了跑不起来,三连后都可以来找我要源码,私信或评论留下你的邮箱即可。有任何问题有可以私聊我,大家觉得…

课时154:项目发布_手工发布_手工发布

1.2.3 手工发布 学习目标 这一节,我们从 基础知识、简单实践、小结 三个方面来学习 基础知识 简介 为了合理的演示生产环境的项目代码发布,同时又兼顾实际实验环境的资源,我们这里将 B主机和C主机 用一台VM主机来实现,A主机单…

牛客网刷题 | BC118 N个数之和

目前主要分为三个专栏,后续还会添加: 专栏如下: C语言刷题解析 C语言系列文章 我的成长经历 感谢阅读! 初来乍到,如有错误请指出,感谢! 描述 输入数字N&#xf…

【LeetCode 动态规划】买卖股票的最佳时机问题合集

文章目录 1. 买卖股票的最佳时机含冷冻期 1. 买卖股票的最佳时机含冷冻期 题目链接&#x1f517; &#x1f34e;题目思路&#xff1a; &#x1f34e;题目代码&#xff1a; class Solution { public:int maxProfit(vector<int>& prices) {int n prices.size();ve…