首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从MongooseModel#discriminator函数创建模型时,如何设置鉴别器关键字的值?

从MongooseModel#discriminator函数创建模型时,可以通过设置鉴别器关键字的值来定义模型的鉴别器。鉴别器关键字是一个字符串,用于标识不同的子模型。在创建模型时,可以通过传递一个对象作为第一个参数来设置鉴别器关键字的值。

具体的设置方法如下:

代码语言:txt
复制
const mongoose = require('mongoose');

// 创建父模型
const ParentModel = mongoose.model('Parent', new mongoose.Schema({
  name: String
}));

// 创建子模型
const ChildModel = ParentModel.discriminator('Child', new mongoose.Schema({
  age: Number
}));

// 设置鉴别器关键字的值
ChildModel.discriminatorKey = 'type';

// 创建子模型实例
const child = new ChildModel({
  name: 'Child 1',
  age: 10
});

// 保存子模型实例
child.save();

在上述代码中,我们首先创建了一个父模型ParentModel,然后通过discriminator函数创建了一个子模型ChildModel。接着,我们通过设置ChildModel.discriminatorKey的值为'type'来定义鉴别器关键字。最后,我们创建了一个子模型实例child并保存到数据库中。

鉴别器关键字的值在模型的查询和操作中起到了关键作用。通过设置不同的鉴别器关键字的值,我们可以在查询和操作时区分不同的子模型。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

可能提高GAN性能方法介绍

小批次歧视(Minibatch discrimination) 在发生模式崩溃,所有被创建图像看起来都差不多。我们将不同批次真实图像和生成图像分别送入鉴别器。...为了避免这个问题,当对任何真实图像预测超过0.9(D(real image)>0.9),我们惩罚鉴别器。我们通过将目标标签设置为0.9而不是1.0来完成它。...事实上,当模式崩溃,图像质量通常会提高。事实上,我们可能会为每种模式收集最佳模型,并使用它们重新创建不同模式图像。 ?...相反,当生成器运行不良,我们可能会将注意力转移到寻找没有接近零梯度损失函数。 ? 不过,问题依然存在。新损失函数可能会给模型带来新不稳定性。...这鼓励人们尝试不同损失函数,并去期望寻求终极损失函数鉴别器和生成器网络容量 鉴别器模型通常比生成器更复杂(更多过滤器和层),好鉴别器会提供好信息。

1.4K40

生成对抗网络(GAN)直观介绍

你可以在你笔记本电脑上进行演示。 生成对抗网络 ? 生成敌对网络框架 GAN是由Goodfellow等人设计生成模型。在GAN设置中,以神经网络为代表两个可微函数被锁定在游戏中。...这就像是聚会中安保设置,比将你假票和这正门票进行比较,以找到你设计中存在缺陷。 ? ? 我们将一个4层卷积网络用于生成器和鉴别器,进行批量正则化。训练该模型以生成SVHN和MNIST图像。...换句话说,Bob在每次试用期间向您提供反馈质量对于完成工作至关重要。 以同样方式,每当鉴别器注意到真实图像和假图像之间差异,它就向发生器发送一个信号。该信号是鉴别器向发生器反向流动梯度。...每次我们通过鉴别器运行一个小批量时候,我们都会得到logits。这些是来自模型未缩放。 但是,我们可以将鉴别器接收小批量分成两种类型。...在训练开始,会出现两个有趣情况。首先,生成器不知道如何创建类似于训练集中图像。其次,鉴别器不知道如何将其接收图像分类为真实或假。 结果,鉴别器接收两种非常不同类型批次。

1.1K60

GANs优化函数与完整损失函数计算

然而但是GAN今天仍然是一个广泛使用模型)。 本文详细解释了GAN优化函数最小最大博弈和总损失函数如何得到。...但是这不是模型总损失函数。 为了理解这个最小-最大博弈,需要考虑如何衡量模型性能,这样才可以通过反向传播来优化它。...1、鉴别器损失函数 根据原始论文 [1] 中描述训练循环,鉴别器数据集中接收一批 m 个示例,生成器接收其他 m 个示例,并输出一个数字 ∈ [0,1],即输入数据属于数据集分布概率(即数据为“...这样就可以使用二元交叉熵损失函数鉴别器训练为一个常见二元分类器: 由于这是一个二元分类器,我们可以做以下简化: -当输入真实数据,y = 1→∑= log(D(k)) -输入为生成器生成数据...总损失函数 上面我们已经给出了生成器和鉴别器损失公式,并给出了模型优化函数。但是如何衡量模型整体性能呢?

83910

GANs优化函数与完整损失函数计算

然而但是GAN今天仍然是一个广泛使用模型) 本文详细解释了GAN优化函数最小最大博弈和总损失函数如何得到。...但是这不是模型总损失函数。 为了理解这个最小-最大博弈,需要考虑如何衡量模型性能,这样才可以通过反向传播来优化它。...1、鉴别器损失函数 根据原始论文 [1] 中描述训练循环,鉴别器数据集中接收一批 m 个示例,生成器接收其他 m 个示例,并输出一个数字 ∈ [0,1],即输入数据属于数据集分布概率(即数据为“...这样就可以使用二元交叉熵损失函数鉴别器训练为一个常见二元分类器: 由于这是一个二元分类器,我们可以做以下简化: -当输入真实数据,y = 1→∑= log(D(k)) -输入为生成器生成数据...总损失函数 上面我们已经给出了生成器和鉴别器损失公式,并给出了模型优化函数。但是如何衡量模型整体性能呢?

66410

模型不收敛,训练速度慢,如何才能改善 GAN 性能?

慢速训练:训练生成器梯度会消失。 作为 GAN 系列一部分,本文探讨了如何改进 GAN 方法。 尤其在如下方面, 更改成本函数以获得更好优化目标。 在成本函数中添加额外惩罚以强制执行约束。...这是模型不收敛且模式崩溃场景之一。 特征匹配改变了生成器成本函数,用来最小化真实图像特征与生成图像之间统计差异,即,它将目标击败对手扩展到真实图像中特征匹配。...微批次鉴别 当模式坍塌创建所有图像看起来都相似。为了缓解这个问题,我们将不同批次实际图像和生成图像分别送给鉴别器,并计算图像 x 与同一批次中其余图像相似度。...为了避免这个问题,当任何真实图像预测超过 0.9(D(实际图像)> 0.9),我们会对鉴别器进行惩罚。 这是通过将目标标签设置为 0.9 而不是 1.0 来完成。...但缺乏好超参数模型不可能表现良好,而调参需要大量时间。所以在随机测试不同成本函数之前,请耐心地优化超参数。 实现技巧 将图像像素转换到 -1 到 1 之间。

5.4K40

带你理解CycleGAN,并用TensorFlow轻松实现

输出Oc1是尺寸为[256,256,64]张量,继续传输给下个卷积层。这里,鉴别器第一层滤波器个数设置为64,完成对general_conv2d函数定义。...转换 这些网络层作用是组合图像不同相近特征,然后基于这些特征,确定如何将图像特征向量OAencDA域转换为DB域特征向量。...由于要使这个模型既可以A→B和B→A两个方向工作,我们设置了两个生成器,即生成器A→B和生成器B→A,以及两个鉴别器,即鉴别器A和鉴别器B。...如果鉴别器对生成图像输出尽可能接近1,则生成器作用达到。...图10:该模型出现失真效果 2. 我们也认为当改变物体形状,该模型不大适用。我们试图用该模型把男人脸转化为一个看起来像女人脸。

1.5K60

使用GAN生成逼真的人脸

发生器与鉴别器处于反馈回路中。 GAN背后数学 更深入地了解它如何在数学上起作用。判别器工作是执行二进制分类以在真实与伪造之间进行检测,因此其损失函数为二进制交叉熵。...图像涵盖大姿势变化,背景混乱,各种各样的人,并由大量图像和丰富注释提供支持。 数据集可以Kaggle下载。目标是创建一个能够生成现实中不存在逼真的人类图像模型。...鉴别器权重可训练性此更改仅在训练组合GAN模型影响,而在独立训练鉴别器不起作用。...体重下降和限幅可在训练后期稳定学习。如果要调整学习率,则必须调整衰减。 GAN尝试复制概率分布。因此应该使用损失函数来反映GAN生成数据分布与实际数据分布之间距离。...,还需要定义三个:生成器损失,使用实像鉴别器损失和使用假像鉴别器损失。

3K20

如何快速理解GAN?这里有一篇最直观解读

在GAN设置中,两个由神经网络进行表示可微函数被锁定在一个游戏中。这两个参与者(生成器和鉴别器)在这个框架中要扮演不同角色。 生成器试图生成来自某种概率分布数据。即你想重新生成一张聚会门票。...这样做效果是阻止梯度流通过网络。leaky ReLU允许一个小负值通过,而非要求函数为0。也就是说,函数用来计算特征与小因素之间最大。...换言之,Bob在每次尝试期间向你提供反馈质量对于完成工作至关重要。 同样,每次鉴别器注意到真实图像和虚假图像之间差异,都会向生成器发送一个信号。该信号是鉴别器向生成器反向流动梯度。...我们每次通过鉴别器运行一个小批量(mini-batch)时候,都会得到逻辑(logits)。这些是来自模型未缩放(unscaled values)。...虽然有些图像看起来很模糊,且有些图像很难识别,但值得注意是,数据分布是由模型捕获 在训练开始时候,会出现两个有趣情况。首先,生成器不清楚如何创建与训练集中图像相似的图像。

70040

LeCun 提出基于能量生成对抗网络,ICLR-17 重新审视 GAN

基于能量模型 基于能量模型(LeCun et al,2006)本质是建立一个函数,将输入空间每个点映射到一个单一标量,称为“能量”。...监督学习属于这个框架:对于训练集中每个X,当Y是正确标签,(X,Y)能量取较低,而对于不正确Y,则取值较高。...类似地,当在无监督学习设置中单独为X建模,较低能量归因于data manifold。...博弈论角度来看,当发生器和鉴别器达到纳什均衡,GAN实现收敛。 EBGAN:基于能量生成式对抗网络 论文提出将鉴别器视为没有显式概率解释能量函数(或对比函数)。...GAN原始公式中概率二进制鉴别器可以被看作许多用于定义对比度函数和损失函数方式中一种,如LeCun等人 (2006)监督和弱监督设置,和Ranzato et al.(2007)无监督设置

1.2K90

【实践】伪造名人脸—做一个小示例了解生成式对抗网络

他们“相互斗争”;鉴别器使用生成器输出作为训练数据,而生成器则从鉴别器中得到反馈。在这个过程中,每个模型都变得更加强大。通过这种方式,GANs能够根据一些已知输入数据生成新复杂数据。...数据集中部分名人图像 在这一点上,我们还将定义一个用于批处理函数。这个函数将加载我们图像,并根据我们稍后设置批处理大小给我们提供一系列图像。...最后,我们将建立一个小函数来输出生成图像,接着训练网络。 损失函数 我们需要定义三个损失函数:发生器损失函数,使用真实图像鉴别器损失函数,以及使用假图像鉴别器损失函数。...假图像和真实图像损失总和应是整个鉴别器损失。 首先,我们定义我们对真实图像损失函数。为此,我们在处理真实图像要传递鉴别器输出,并将其与所有1标签进行比较(1代表真实)。...根据你设置,进度可能需要一个小时或更长时间。 ? 生成脸 结论 如果你顺利读完,那么恭喜你,你已经了解了GAN用途,甚至知道如何使用它们生成人脸图像。

1K40

CVPR2019:PizzaGAN通过深度学习制作披萨

),探索了如何训练GAN模型用来识别制作比萨饼所涉及步骤。...因此,在输入火腿和蘑菇披萨输出矢量火腿和蘑菇元素设置为1.0,而其余元素设置为0.0。...例如,在下图中,PizzaGAN鉴别器预测比萨图像具有意大利辣香肠,蘑菇和橄榄。对应于那些配料输出向量元素在推断被预测为1.0(或者高于用户设置阈值某个)。...鉴别器模型用Generator network模型一些输出进行训练,并且其预测中丢失鉴别器模型用于Generator network模型训练。...PizzaGAN也遵循这一训练步骤,除了预测比萨图像标签之外,鉴别器还预测图像是真实还是来自Generator network,这有助于Generator network创建看起来像真正披萨图像图像

99530

Unsupervised Image-to-Image Translation Networks

也就是说,我们假设存在函数 、 、 和 ,这样,给定联合分布样本 , ,反之, 和 。在该模型中,函数 域 映射到域 可以由组成φ1表示 。...我们使用函数 ,用于将图像 转换为 ,并使用函数 ,用于将图像 转换为 。 讨论: 我们在UNIT框架中使用VAE,原因如下:1)VAE是建立生成模型。...y图像中像素是归一化坐标,其中底部像素为1,而顶部像素则为-1。y图像沿着通道方向连接到输入图像,以创建到编码器以及对抗性鉴别器最终nput图像。...我们在这里简要总结一下我们发现: •网络容量:当UNIT网络容量过低(例如,每层中有少量神经元),学习翻译函数质量下降;然而,当容量太高,UNIT网络根本无法学习翻译功能。...我们得出结论是,设置适当网络容量对UNIT框架非常重要。 •对超参数敏感性:我们发现UNIT对学习超参数不敏感,并且λ1和λ2大范围(定义见(2)和(3))提供了可比无监督图像翻译性能。

28160

神奇!无需数据即可进行机器翻译操作

因此,如果有可能学习一个空间,当语言A被馈送给它,它会产生相同特征,就像当语言B被馈送给它一样,它就有可能在它们之间进行转换。...方程1.0降噪自动编码器损失 方程1.0说明 L是语言(对于这个设置,将有两种可能语言)。x是输入。C(x)是在给x增加噪声之后结果,我们很快就会得到噪声创建函数C。...这里,σ表示第i个令牌移动位置。因此,方程2.0表示:“一个令牌可以大多数k个令牌移动到左边或右边。” 作者使用k为3,而P_wd为1。...作者使用了对抗性训练。他们使用另一个模型(称为鉴别器),它接收每个编码器输出,并预测被编码句子属于哪一种语言。然后,采用了鉴别器梯度,并对编码器进行了训练,以欺骗鉴别器。...把它聚集到一起 上面提到3种不同损失(自动编码器损失、翻译损失和鉴别器损失)被加在一起,所有的模型权重都在一个步骤中更新。

80060

BigBiGAN问世,“GAN父”都说酷无监督表示学习模型有多优秀?

图1 BigBiGAN框架框图 联合鉴别器 ? 用于计算损失 ? ,输入是数据潜在对, ? ,数据分布Px和编码器 ? 输出中采样,或 ? ,生成器 ? 输出和潜在分布Pz中采样。损失 ?...之间Jensen-Shannon散度,因此在全局最优,两个联合分布 ? 匹配。此外,在 ? 和 ? 是确定性函数情况下(即,学习条件分布 ? 和 ?...是Dirac δ函数),这两个函数是全局最优逆:例如 ? ,最佳联合鉴别器有效地对x和z施加 ? 重建成本。 具体地,鉴别器损失 ? 、编码生成器损失 ? 、基于标量鉴别器“得分”函数 ?...和相应每个样本损失 ? 定义如下: ? 其中 ? 是用于规范鉴别器“铰链”,也用于BigGAN模型中 。鉴别器 ? 包括三个子模块:F,H和J。...自我监督通常涉及以某种方式设计成类似于监督学习任务中学习,但是其中“标签”可以自动地数据本身创建而无需人工操作。

1K00

用StyleGAN生成“权力游戏”人物(上)

让我再说一遍:拍一张图片,然后返回一个数字,上面写着它是真的还是假(“1”是真的,0”是假)。 输入:图像。输出:二进制。 你明白了吗?这不仅仅是一个损失函数,而是一个完整神经网络。...2.鉴别器 毫无疑问,区分真假图像模型被称为鉴别器鉴别器是一种卷积神经网络,经过训练它可以预测输入图像是真是假。如果认为图像是真实,则输出“1”;如果认为图像是假,则输出“0”。...因此,生成器网络角度来看,鉴别器起着损耗函数作用。 如果生成器更新参数方式使其生成图像在通过鉴别器输入时产生接近零,则生成图像看起来像三岁小孩在电视屏幕上击打棒球结果。...鉴别器采取了一堆(或更准确,小批量)图像,其中一些是真实大数据集),一些是假生成器)。...游戏继续进行,直到生成器和鉴别器都达到平衡点,鉴别器再也无法区分生成器创建图像和来自数据集图像。 优雅地扔掉鉴别器,瞧,你现在有了一个生成图像生成器,其中大部分可能看起来不像垃圾。

1.4K70

使用以 Tensorflow 为后端 Keras 构建生成对抗网络代码示例

深度卷积生成式对抗网络(DCGAN)展示了如何构建实用GAN模型,该GAN能够自己学习如何合成新图像。...输出一个标量,其大小用来表示图像真实性(0是假,1是真的,其他无法缺人)。和常规CNN相比,它通过跨距卷积(strided convolution)替代了之前层间最大池化操作用来降采样。...下面给出了对应keras实现: ? 图2. Generator模型噪声中合成伪造MNIST图像。 使用上采样而不是分数跨越转置卷积。...鉴别器模型 下面的代码3展示了利用keras实现鉴别器模型代码。他用来描述上面鉴别器用于训练损失函数。因为鉴别器输出是sigmoid,所以使用二元交叉熵来计算损失。...较低dropout(0.3-0.6)将产生更加真实图片 鉴别器损失很快就收敛到0了,导致生成器无法学习:不要预先训练鉴别器。而是对于鉴别器使用稍大学习率。对于生成器使用另一种训练噪声样本。

86540

One-Shot Image-to-Image Translation viaPart-Global Learning With aMulti-Adversarial Framework

通过这种方法,可以通过随机裁剪获得更细粒度零件样本,因此我们模型可以局部上下文零件中捕获更详细信息。它还可以缓解一次性设置过度拟合问题。...损失函数可以描述为:  这里, 和 分别表示部分鉴别器和全局鉴别器, 和 分别表示生成图像和真实图像中裁剪随机部分区域。对于全局鉴别器和部分鉴别器,我们采用PatchGAN架构。...我们使用Adam[64]来优化我们模型,并将学习率设置为0.0002。...可以看出,通过将GAN仅与GAN+MA进行比较,性能显著下降,这表明当使用多对抗性鉴别器,该模型可以提高捕获细粒度语义信息能力。图12(a)也给出了类似结论可视化结果。...然而,当两个领域在猫到狗设置下具有较大语义距离,共享参数会损害翻译能力并导致更差结果。

24720

一文看懂生成式对抗网络GANs:介绍指南及前景展望

你可能会和比你更强对手对弈。你会分析你做错了什么、对方做对了什么,并思考下一场比赛如何才能击败他(她)。 你会重复这一步骤,直到你击败对手。这个概念可以被纳入到构建更好模型中。...D(x)然后使用Sigmoid函数解决二元分类问题,并输出0到1。...所以总体而言,鉴别器正在尝试最大化函数V(D,G)。 另一方面,生成器任务完全相反,它试图最小化函数V(D,G),使真实数据和假数据之间区别最小化。这就是说,生成器和鉴别器像在玩猫和老鼠游戏。...有一整个学术领域就是为了找出如何训练GAN。 训练GAN最重要障碍是稳定。你开始训练GAN,如果鉴别器比与其对应发生器更强大,则发生器将无法有效训练。这反过来又会影响你GAN训练。...为了让确定性随机可复现,设置一个Seed设置数据和工作目录路径。 加载数据。 我们绘制一个图形看看数据是什么样。 定义稍后将要使用变量。

70840

Multi-source Domain Adaptation for Semantic Segmentation

为了避免数据收集和注释成本,由于图形和模拟基础设施进步,可以CARLA和GTA-V等模拟器中创建无限量合成标记数据。...在第一种策略中,确定如何为不同适应域选择权重是一项挑战。此外,每个目标图像都需要在参考时间被输入到所有分割模型中,这是相当低效。...对于每个源域 ,我们使用GT将图像适配域 转移回 并使用鉴别器 中对 进行分类,其对应于以下损失函数: 请注意,使用不同鉴别器损失更复杂组合来更好地聚合具有较大距离域可能会提高性能...然后,我们可以基于 和 训练具有以下交叉熵损失任务分割模型 :  其中, 是类数量, 是自适应图像高度和宽度,σ是softmax函数, 是指示函数,并且 是 在索引 处。...结果来看,我们有以下观察结果: (1) 将在源域上训练分割模型直接转移到目标域纯源方法在大多数自适应设置中获得最差性能。

30710

综述来啦!港大发布SSL4Rec:170篇「自监督学习」推荐算法

在推荐系统对比学习中,目标是最小化以下损失函数: E∗∘ω∗表示对比视图创建操作,不同基于对比学习推荐算法有不用创建过程。...它优化了一个深度编码器-解码器模型,该模型重建缺失或损坏输入数据。 编码器 输入中创建潜在表示,而解码器 编码器输出重建原始数据。...最近研究也引入了一个仅解码器架构,该架构在没有编码器-解码器设置情况下有效地重建数据。这种方法使用单一模型(例如,Transformer)进行重建,通常应用于基于生成学习序列化推荐。...因此,我们提出了一个以视图为中心分类体系,包含应用对比学习考虑三个关键组成部分:创建视图、配对视图以最大化一致性,以及优化一致性。 视图创建(View Creation)。...我们提出了一个层次化分类体系,包括基本数据层面到神经模型层面的视图创建技术。 数据层面 Data-based:在基于对比学习推荐系统中,通过增强输入数据来创建多样化视图。

40110
领券