与判别网络对抗的生成网络 (Generative Adversarial Nets)
Generative Adversarial Nets (GAN)
主线为 Ian J. Goodfellow 的论文 (“Generative Adversarial Nets”) 内容 1。之前一些人译为“生成式对抗网络”。但从模型分类 (生成模型和判别模型) 的角度来看,更具体地,改为“与判别网络对抗的生成网络”会比较直观。
另外,后面的“我们”并不指我,而指“Ian J. Goodfellow”等人~
摘要
通过对抗过程来估计生成模型,该过程中同时训练两个模型:生成模型GG获得数据分布,判别模型DD估计训练数据 (而不是GG) 中 11 个样本的概率。GG的训练过程为最大化DD犯错的概率。生成模型的估计过程对应一场最小最大的双人游戏。任意函数GG和DD的空间中,存在唯一解,此时GG可恢复训练数据的分布,而DD等于12\frac{1}{2}。如果GG和DD定义为多层感知机,那么整个系统可通过反向传播来训练。训练和样本生成时不需要任何的 Markov 链或展开的近似推理网络。
1. 简介
人工智能应用 (诸如自然图像,语音波形和自然语言的语料库)中会遇到各种各样的数据,深度学习的前景是发现代表这些数据的概率分布的丰富的分层模型。目前,深度学习最大的成功是判别模型。判别模型通常将高维的丰富的感官输入映射为 11 个类标签。这些成功主要归功于反向传播,Dropout 和使梯度表现不错的分段线性单元。由于许多难解的概率计算 (采用最大似然估计和相关策略) 难以近似和生成上下文中的分段线性单元难以利用,深度生成模型的影响偏小。我们提出一个新的产生模型的估计过程来回避这些困难。
对抗的网络框架中,生成模型与它的对手对决:判别模型学习去决定某个样本是否来自模型分布或数据分布。生成模型可认为类似一个造假团伙,该团伙试图制造假币,但使用前不检验。而判别模型类似警察,试图检验假币。游戏中的竞争促使双方改进方法,直到假币与真币不可分为止。
该框架可为许多模型和优化方法产生具体的训练方法。本文中,生成模型通过一个多层感知机传递随机噪声,且判别模型也是一个多层感知机。这个特例称为对抗的网络。这里,仅用反向传播和 Dropout 来训练模型,生成模型通过前向传播来生成样本。不需要近似推理和 Markov 链。
2. 相关工作
直到最近,大多数深度生成模型的工作集中于为模型的概率分布函数指定参数。然后可最大化对数似然来训练模型。这类模型中最成功的可能是深度 Boltzmann 机。它们一般有难解的似然函数,因此要求对似然梯度的大量近似。这些困难推动了“生成机”的发展——不用显式表示似然的模型仍能从期望的分布中生成样本。随机的生成网络正是一个用反向传播训练 (而不是 Boltzmann 机要求的大量近似) 的生成机。该工作进一步消除了用于随机的生成网络的 Markov 链。
注:“大量近似”的原文为 numerous approximations,“数值近似”的英文为 numerical approximation。不知为何想起了这个~
利用如下观测的生成过程来反向传播梯度:
\lim_{\delta \rightarrow 0}\nabla_{x}E_{\epsilon \sim N(0,\delta^2I)}f(x+\epsilon)=\nabla_xf(x)
我们开展工作的同时,Kingma,Welling 和 Rezende 等人提出更一般的随机反向传播规则,允许通过有限方差的高斯分布来反向传播,且对方差和均值反向传播。这些反向传播规则可学到生成器的条件方差 (条件方差视为我们工作的超参数) 。Kingma,Welling 和 Rezende 等人用随机反向传播来训练变分自编码器 (VAEs)。与对抗的生成网络相似,变分自编码器为可微分的生成网络配对第22个网络。与对抗的生成网络不同的是,VAE 中的第22个网络是一个使用近似推理的识别模型。GANs 要求对可见单元微分,故不能对离散数据建模。而 VAEs 要求对隐含单元微分,因而不能对离散的潜在变量建模。存在其它类似 VAE 的方法,但与我们的方法更不相关。
以前有工作用判别标准来训练生成模型。这些方式的标准难以用于深度生成模型上。这些方法难以近似深度模型,因为用变分近似无法近似深度模型所涉及的概率的下界。当模型用于从固定的噪声分布中区分数据时,噪声对比估计 (NCE) 通过学习该模型的权重来训练生成模型。用之前训练好的模型作为噪声分布,提高了训练一系列模型的质量。NCE 是本质上与对抗的网络游戏中的正式竞争相似的一种非正式竞争机制。NCE 关键的局限为它的“判别器”是由噪声分布和模型分布的概率密度比重来定义,从而要求评估和反向传播两个概率密度。
一些以前的工作已用到两个网络竞争的一般概念。最相关的工作为可预见性最小化。其中,一个训练好的神经网络中的每个隐含单元与第22个网络的输出不同。给定所有其它隐含单元的值,第22个网络的输出可预测该隐含单元的数值。本文的工作与可预测性最小化有33处重要的不同:11) 本文工作中,网络间的竞争是唯一的训练标准,足以训练网络。可预测性最小化仅是鼓励神经网络中隐含单元在完成其它任务的同时,统计上也相互独立的一个正则项;竞争并不是主要的训练标准。22) 竞争的本质不同。可预测性最小化中,两个网络的输出相互比较,一个网络试图使输出相似,而另一个网络试图使输出不同;输出为标量。GANs 中,一个网络生成一个丰富的高维向量来作为另一个网络的输入,并尝试选择使另一个网络不知如何判别的向量为输入。33) 学习过程不同。可预测性最小化被描述为一个最小化目标函数的优化问题,学习去逼近目标函数的最小值。GANs 基于最大最小游戏,而不是一个优化问题,且一个 Agent 寻求最大化值函数,另一个 Agent 寻求最小化值函数。游戏在鞍点处终止,此处是关于一个 Agent 的策略的最小值,和关于另一个 Agent 的策略的最大值。
对抗的生成网络有时曾与“对抗的实例”相混淆。对抗的实例是指为找出与误分类的数据相似的实例,通过在分类网络的输入上直接基于梯度优化,来获得的实例。对抗的实例与当前工作是不同的,因为对抗的实例不是一个生成模型的训练机制。相反,对抗的实例主要是显示网络行为异常 (经常以高置信度将两幅图像分为不同类,尽管两幅图像对人来说是同类) 的分析工具。对抗的实例的存在确实表明训练对抗的生成网络可能效率低,因为对抗的实例表明,在不模仿某类的人类感知属性时,使目前的判别网络自信地识别该类是可能的。
3. 对抗的网络
当模型都为多层感知机时,可非常直接地应用对抗的模型框架。已知数据xx,为学习产生器的概率分布pgp_g,定义输入噪声变量pz(z)p_z(z)的先验,然后表示数据空间的映射为G(z;θg)G(z;\theta_g),其中GG为一个用参数θg\theta_g的多层感知机表示的可微函数。同时定义第 2 个输出为单个标量的多层感知机D(x;θd)D(x;\theta_d)。D(x)D(x)为来自数据 (而不是pgp_g)的xx的概率。训练DD来最大化为训练实例和来自GG的生成样本分配正确标签的概率;同时,训练GG来最小化log(1−D(G(z)))log(1-D(G(z)))。换句话说,DD和GG根据值函数V(G,D)V(G,D)来进行双人的最小最大游戏:
\min_G \max_D V(G,D) = E_{x\sim p_{data}(x)}[logD(x)]+E_{z \sim p_z(z)}[log(1-D(G(z)))]\phantom{256} (1)
对抗的网络的理论分析本质上证明,性能足够好时 (即无参数限制) ,训练标准可恢复生成数据的分布来作为GG和DD。下图为该方法非正式的却更直观的解释。
训练对抗的生成网络时,同时更新判别分布 (DD,蓝色虚线) 使DD能区分数据生成分布 (黑色虚线) 中的样本和生成分布pgp_g (GG,绿色实线) 中的样本。下面的水平线为均匀采样zz的区间,上面的水平线为xx的部分区间。朝上的箭头显示映射x=G(z)x=G(z)如何在转换后的样本上添加非均匀分布pgp_g。GG在pgp_g高密度区域收缩,且在pgp_g的低密度区域扩散。
(a)(a) 考虑一个接近收敛的对抗的模型对:pgp_g与pdatap_{data}相似,且DD是个部分准确的分类器。
(b)(b) 算法的内循环中,训练DD来判别数据中的样本,直到收敛至D∗(x)=pdata(x)pdata(x)+pg(x)D^*(x)=\frac{p_{data}(x)}{p_{data}(x)+p_g(x)}。
(c)(c) 更新 1 次GG后,DD的梯度引导G(z)G(z)流向更可能分类为数据的区域。
(d)(d) 训练若干步后,如果GG和DD性能足够,它们接近某个稳定点并无法继续提高性能,因为此时pg=pdatap_g=p_{data}。判别器将无法区分训练数据分布和生成数据分布,即D(x)=12D(x)=\frac{1}{2}。
实际上,必须对游戏用迭代的数值方法。训练中单独优化DD计算上不可行,且有限数据集合上会导致过拟合。相反,优化DD k 步和优化GG 1 步交替。结果仅当GG缓慢变化时,DD保持在其最优解附近。算法 1 正式表示该过程。
实际上,为学习好GG,方程(1)(1)可能无法为GG提供足够的梯度。学习初期,当GG的生成效果很差时,DD会以高置信度来拒绝生成样本。此时,log(1−D(G(z)))log(1-D(G(z)))饱和。所以,训练GG来最大化logD(G(z))logD(G(z)),而不去训练GG来最小化log(1−D(G(z)))log(1-D(G(z)))。该目标函数使GG和DD的动力学稳定点相同,但训练早期,该目标函数提供了更强大的梯度。
4. 理论结果
当z∼pzz \sim p_z时获得样本G(z)G(z),产生器GG隐式定义概率分布pgp_g来作为G(z)G(z)的分布。因此,如果模型和训练时间足够大,希望算法 1 收敛后可很好地估计pdatap_{data}。通过在概率密度函数空间中学习收敛来表示一个性能无限的模型。
最小最大游戏的全局最优为pg=pdatap_g=p_{data}。
4.1 pg=pdatap_g=p_{data} 的全局最优性
首先任意给定产生器GG,考虑最优判别器DD。
命题 1. 固定GG,最优判别器DD为
D_G^*(x)=\frac{p_{data}(x)}{p_{data}(x)+p_g(x)}\phantom{256}(2)
证明. 给定任意生成器GG,判别器DD的训练标准为最大化目标函数V(G,D)V(G,D):
\begin{align} V(G,D)&=\int_x p_{data}(x)log(D(x))dx+\int_zp_z(z)log(1-D(G(z)))dz\\ &=\int_x p_{data}(x)log(D(x))+p_g(x)log(1-D(x))dx \end{align} \phantom{256}(3)
对任意(a,b)∈R2\(0,0)(a,b) \in R^2 \(0,0),当y∈[0,1]y \in [0,1]时,函数y→alog(y)+blog(1−y)y\rightarrow alog(y)+blog(1-y)在aa+b\frac{a}{a+b}处达到最大值。无需在Supp(pdata)∩Supp(pg)Supp(p_{data}) \cap Supp(p_g)外定义判别器。证毕。
DD的训练目标可视为最大化估计条件概率P(Y=y|x)P(Y=y|x)的对数似然。当y=1y=1时,xx来自pdatap_{data};当y=0y=0时,xx来自pgp_g。公式 1 的最小最大游戏可形式化为:
\begin{align} C(G)=&\max_{D}V(G,D)\\ &=E_{x\sim p_{data}}\left[logD_{G}^*(x)\right]+E_{z \sim p_z(z)}\left[log(1-D(G^*(z)))\right]\\ &=E_{x\sim p_{data}}\left[logD_{G}^*(x)\right]+E_{x \sim p_g(x)}\left[log(1-D_{G}^*(x))\right]\\ &=E_{x\sim p_{data}}\left[log\frac{p_{data}(x)}{p_{data}(x)+p_g(x)}\right]+E_{x\sim p_g(x)}\left[log\frac{p_g(x)}{p_{data}(x)+p_g(x)}\right] \end{align} \phantom{256} (4)
定理 1. 达到虚拟的训练标准C(G)C(G)的全局最优,当且仅当pg=pdatap_g=p_{data}。此时,C(G)C(G)达到值−log14-log\phantom{1}4。
证明. pg=pdatap_g=p_{data}时,D∗G(x)=12D_G^*(x)=\frac{1}{2}。由公式(4)(4)得C(G)=log12+log12=−log14C(G)=log\frac{1}{2}+log\frac{1}{2}=-log\phantom{1}4。可以看到这是C(G)C(G)的最优值,仅当pg=pdatap_g=p_{data}时。观察到
E_{x \sim p_{data}}[-log\phantom{1}2]+E_{x \sim p_g}[-log\phantom{1}2]=-log\phantom{1}4
从 C(G)=V(G,D∗G)C(G)=V(G,D_G^*)中减去上式,得
C(G)=-log\phantom{1}4+KL\left(p_{data}\Vert\frac{p_{data}+p_g}{2}\right)+KL\left(p_g\Vert\frac{p_{data}+p_g}{2}\right)
其中, KLKL为 Kullback-Leibler 散度 2。前面表达中模型分布间的 Jensen-Shannon 散度 3和数据生成过程:
C(G)=-log\phantom{1}4+2\cdot JSD(p_{data}\Vert p_g)\phantom{256}(6)
连续随机变量PP和QQ分布之间的 KL 散度为
KL(P∥Q)=∫∞−∞p(x)logp(x)q(x)dxKL(P\Vert Q)=\int_{-\infty} ^ \infty p(x)log\frac{p(x)}{q(x)}dx
所以,====KL(pdata(x)∥pdata(x)+pg(x)2)∫∞−∞pdata(x)logpdata(x)pdata(x)+pg(x)2dx∫∞−∞pdata(x)logpdata(x)pdata(x)+pg(x)dx+log12∫∞−∞pdata(x)dx∫∞−∞pdata(x)logpdata(x)pdata(x)+pg(x)dx+log12Ex∼pdata[logpdata(x)pdata(x)+pg(x)]+log12\begin{align} &KL\left(p_{data}(x)\Vert\frac{p_{data}(x)+p_g(x)}{2}\right)\\ =&\int_{-\infty} ^ \infty p_{data}(x)log\frac{p_{data}(x)}{\frac{p_{data}(x)+p_g(x)}{2}}dx\\ =&\int_{-\infty} ^ \infty p_{data}(x)log\frac{p_{data}(x)}{p_{data}(x)+p_g(x)}dx+log\phantom{1}2\int_{-\infty}^{\infty}p_{data}(x)dx\\ =&\int_{-\infty} ^ \infty p_{data}(x)log\frac{p_{data}(x)}{p_{data}(x)+p_g(x)}dx+log\phantom{1}2\\ =&E_{x\sim p_{data}}\left[log\frac{p_{data}(x)}{p_{data}(x)+p_g(x)}\right]+log\phantom{1}2\\ \end{align}
同理,=KL(pg(x)∥pdata(x)+pg(x)2)Ex∼pg(x)[logpg(x)pdata(x)+pg(x)]+log12\begin{align}&KL\left(p_{g}(x)\Vert\frac{p_{data}(x)+p_g(x)}{2}\right)\\ =&E_{x\sim p_{g}(x)}\left[log\frac{p_{g}(x)}{p_{data}(x)+p_g(x)}\right]+log\phantom{1}2\\\end{align}
Jensen-Shannon 散度为JSD(P∥Q)=12KL(P∥M)+12KL(Q∥M)JSD(P\Vert Q)=\frac{1}{2}KL(P\Vert M)+\frac{1}{2}KL(Q\Vert M)
其中,M=P+Q2M=\frac{P+Q}{2}。
所以,=JSD(pdata∥pg)12KL(pdata(x)∥pdata(x)+pg(x)2)+12KL(pg(x)∥pdata(x)+pg(x)2)\begin{align}&JSD(p_{data}\Vert p_g)\\=&\frac{1}{2}KL\left(p_{data}(x)\Vert\frac{p_{data}(x)+p_g(x)}{2}\right)+\frac{1}{2}KL\left(p_{g}(x)\Vert\frac{p_{data}(x)+p_g(x)}{2}\right)\\\end{align}
由于两个分布间的 Jensen-Shannon 散度总为非负的,当且仅当两者相等时 JSD 为00,此时C(G)C(G)的全局最小值为C∗=−log14C^*=-log\phantom{1}4,且唯一解为pg=pdatap_g=p_{data},即生成模型完美复制数据的分布。
4.2 算法 1 的收敛性
命题 2. 如果GG和DD性能足够,且算法 1 的每步,给定GG时判别器可达到最优,且更新pgp_g来提高标准
E_{x\sim p_{data}}\left[log\phantom{1}D^*_G(x)\right]+E_{x\sim p_g}\left[log(1-D^*_G(x))\right]
则 pgp_g收敛到 pdatap_{data}。
证明. 如上述标准考虑V(G,D)=U(pg,D)为V(G,D)=U(p_g,D)为关于pgp_g的函数。注意到U(pg,D)U(p_g,D)为pgp_g的凸函数。该凸函数上确界的次导数包括达到最大值处的该函数的导数。换句话说,如果f(x)=supα∈Afα(x)f(x)=sup_{\alpha \in A}f_ \alpha(x),且对每个α\alpha,fα(x)f_\alpha(x)关于xx是凸的,那么如果β=arg1supα∈Afα(x)\beta=arg\phantom{1}sup_{\alpha \in A} f_\alpha(x),则∂fβ(x)∈∂f\partial f_{\beta}(x) \in \partial f。等价于给定对应的GG和最优判别DD,梯度下降更新pgp_g。在定理 1 中证明supDU(pg,D)sup_DU(p_g,D)关于pgp_g是凸的且有唯一的全局最优解,因此,pgp_g更新足够小时,pgp_g收敛到pxp_x,证毕。
实际上,对抗的网络通过函数G(z;θg)G(z;\theta_g)表示pgp_g分布的簇有限,且优化θg\theta_g (而不是pgp_g本身),所以证明不适用。然而,实际中多层感知机的不错表现表明它们为可合理使用的模型,尽管缺少理论保证。
5. 实验
在数据集 MNIST,Toronto Face Database 和 CIFAR-10 上训练对抗的生成网络。生成器用 ReLU 与 Sigmoid 激活单元的混合,而判别器用 maxout 激活单元。训练判别网络时用 Dropout。虽然理论框架可在生成器的中间层用 Dropout 和其它噪声,但这里仅在生成网络的最底层用噪声输入。
通过对GG生成的样本拟合高斯 Parzen 窗 4和计算该分布下的对数似然来估计测试集数据。
给定RR为以xx为中心的正方形,hh为正方体边长。则窗口函数
ϕ(xi−xh)={10|xik−xk|h≤12,k=1,2otherwise\phi (\frac{x_i-x}{h})=\begin{cases}1&\frac{|x_{ik}-x_{k}|}{h}\le\frac{1}{2},k=1,2\\0&otherwise\end{cases}
当 ϕ(xi−xh)=1\phi (\frac{x_i-x}{h})=1时,样本点落入正方形内。估计的Parzen 概率密度为p(x)=1n∑i=1nϕ(xi−xh)h2p(x)=\frac{1}{n}\sum_{i=1}^n\frac{\phi\left(\frac{x_i-x}{h}\right)}{h^2}
窗口函数泛化为高斯函数时,将 nn个样本点为中心的高斯函数加权平均,有p(x)=1n∑i=1n12π‾‾‾√σe−(xi−x)22σ2p(x)=\frac{1}{n}\sum_{i=1}^n \frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(x_i-x)^2}{2\sigma^2}}
验证集上交叉验证来获得高斯分布的参数σ\sigma。Breuleux 等人引入该过程且用于不同的似然难解的生成模型上。该方法估计似然的方差较大且高维空间中表现不好,但确实目前我们认为最好的方法。生成模型的优点是可采样而不直接估计似然,从而促进了该模型评估的进一步研究。训练后的生成样本如下图所示。虽然未声明该方法生成的样本由于其它方法生成的样本,但我们相信这些样本至少和文献中更好的生成模型相比依然有竞争力,也突出了对抗的框架的潜力。
模型样本可视化。为证模型并未记忆训练集,最右列显示与相邻样本最接近的训练实例。生成样本随机绘制。与其它深度生成模型不同的是,这些生成图像显示来自生成模型分布的实际样本,而非给定隐含单元样本时的条件均值。此外,生成样本间不相关,因为采样过程不依赖 Markov 链。
a)a) MNIST;b)b) TFD;c)c) CIFAR-10 (全连接模型) d)d) CIFAR-10 (卷积判别器和“反卷积”生成器)
6. 优劣
新框架相比以前的模型框架有其优缺点。缺点主要为pgp_g的隐式表示,且训练期间,DD和GG必须很好地同步 (尤其,不更新DD时GG不必过度训练,为避免“Helvetica 情景”。否则,xx值相同时GG丢失过多zz值以至于模型pdatap_{data}多样性不足),正如 Boltzmann 机在学习步间不断更新。优点是无需 Markov 链,仅用反向传播来获得梯度,学习间无需推理,且模型中可融入多种函数。
钙的结构崩溃称为Helvetica 情景。目前公认的钙模型基于三螺旋,但实际上它是由 4 个电子 (每个电子由 3 个质子支持) 组成的半永久结构。质子将电信号传给分子的中心原子 (王后原子)。当王后原子离开分子 (巢)后,将产生灾难性影响,会导致整个该结构倒塌 5。
上述优势主要在计算上。对抗的模型也可能用数据实例,仅用流过判别器的梯度,从间接更新的生成模型中获得一些统计优势。这意味输入部分未直接复制进生成器的参数。对抗的网络的另一优点是可表示很尖,甚至退化的分布,而基于 Markov 链的方法为混合模式而要求模糊的分布。
7. 结论与未来工作
该框架允许许多直接的扩展:
1) 添加cc至GG和DD的输入,可获得条件的生成模型p(x|c)p(x|c)。
2) 给定xx,为预测zz,训练任意的网络可学习近似推理。类似于 wake-sleep 算法训练出的推理网络,但训练推理网络时可能要用到训练完成后的固定的生成网络。
3) 来近似建模所有的条件概率P(xS|x∖S)P(x_S|x_{\backslash S}),其中,SS为通过训练共享参数的条件模型簇的xx的索引。本质上,对抗的网络可用于随机扩展 MP-DBM。
4) 半监督学习:当标签数据有限时,判别网络或推理网络的特征不会提高分类器效果。
5) 效率改善:为协调GG和DD设计更好的方法,或训练期间确定更好的分布来采样z<script type="math/tex" id="MathJax-Element-455">z</script>,从而加速训练。本文展示对抗的模型框架的可行性,证明了此研究方向有用。
全文未经校正,有问题欢迎指出。(~ o ~)~zZ
与判别网络对抗的生成网络 (Generative Adversarial Nets)相关推荐
- 生成对抗网络学习笔记4----GAN(Generative Adversarial Nets)的实现
首先是各种参考博客.链接等,表示感谢. 1.参考博客1:地址 2.参考博客2:地址 --以下,开始正文. 1.GAN的简单总结 见上一篇博客. 2.利用GAN生成1维正态分布 首先,我们创建&quo ...
- GAIN: Missing Data Imputation using Generative Adversarial Nets(基于生成对抗网络的缺失数据填补)论文详解
目录 一.背景分析 1.1 缺失数据 1.2 填补算法 二.GAIN 2.1 GAIN网络架构 2.2 符号描述(Symbol Description) 2.3 生成器模型 2.4 判别器模型 2.5 ...
- 生成对抗网络Generative Adversarial Nets(译)
仅供参考,如有翻译不到位的地方敬请指出. 论文地址:Generative Adversarial Nets 论文翻译:XlyPb(http://blog.csdn.net/wspba/article ...
- 简述一下生成对抗网络GAN(Generative adversarial nets)模型?
简述一下生成对抗网络GAN(Generative adversarial nets)模型? 生成对抗网络GAN是由蒙特利尔大学Ian Goodfellow在2014年提出的机器学习架构. 要全面理解生 ...
- Generative Adversarial Nets 生成对抗网络
Generative Adversarial Nets 生成对抗网络 论文作者 Yan 跟随论文精读 (bilibili李沐) 同时会训练模型 G,生成模型要对整个数据的分布进行建模,就是想生成 尽量 ...
- 生成式对抗网络GAN(Generative Adversarial Nets)论文笔记
1.介绍 本文基本从2014年<Generative Adversarial Nets>翻译总结的. GAN(Generative Adversarial Nets),生成式对抗网络.包含 ...
- 2018-2019-2 20165205 网络对抗技术 Exp7 网络欺诈防范
2018-2019-2 20165205 网络对抗技术 Exp7 网络欺诈防范 2018-2019-2 20165205 网络对抗技术 Exp7 网络欺诈防范 实验内容 本次实践的目标理解常用网络欺诈 ...
- 20145209刘一阳 《网络对抗》Exp7 网络欺诈技术防范
20145209刘一阳 <网络对抗>Exp7 网络欺诈技术防范 一.应用SET工具建立冒名网站 要让冒名网站在别的主机上也能看到,需要开启本机的Apache服务,并且要将Apache服务的 ...
- PaperNotes(5)-Conditional Generative Adversarial Nets
Conditional GAN 论文阅读笔记 Abstract 1 Introduction 2 Related Work 3 Conditional Adversarial Nets 3.1 Gen ...
最新文章
- 2021年大数据ELK(八):Elasticsearch安装IK分词器插件
- JavaScriptSerializer进行JSON序列化,得到字符串
- C语言标准库函数qsort具体解释
- 三层体系结构学习总结
- 手游传奇刷元宝_传奇手游 平民制霸刀刀爆元宝!
- 【今日CV 计算机视觉论文速览】19 Mar 2019
- php 错误提示模板,php 关闭错误提示方法总结与性能分析
- 三星Galaxy S22系列快充规格曝光:只可比肩iPhone 13Pro Max
- 使用 systemd 定时器调度任务
- python中队列的应用用场景_消息队列使用的四种场景介绍
- 金蝶k3数据库服务器信息,金蝶k3如何查询连接的服务器配置
- 关于永恒之蓝MS17-010的描述影响范围及修复方案
- 幼儿-综合素质【6】
- 在linux中安装google拼音输入法
- 实现点击按钮关闭微信小程序功能(附源码)
- 移位寄存器——数电第六章学习
- CentOS7 使用frp内网穿透 在公司远程桌面连接自家电脑
- arcmap叠置分析_叠加分析
- node.js服务端笔记文档学会写接口,学习分类:path、包、模块化、fs、express、中间件、jwt、开发模式、cors。
- 计算机原理系列之八 -------- 可执行文件的PLT和GOT