From ef4132051c0fc88394d75dc7c482a024fc70663f Mon Sep 17 00:00:00 2001 From: zchen0211 Date: Tue, 10 Oct 2017 13:43:49 -0700 Subject: [PATCH] gan design with graph --- doc/design/gan_api.md | 7 ++++++- doc/design/test.dot.png | Bin 0 -> 59401 bytes 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 doc/design/test.dot.png diff --git a/doc/design/gan_api.md b/doc/design/gan_api.md index 1a7d0df116..a1626e50d7 100644 --- a/doc/design/gan_api.md +++ b/doc/design/gan_api.md @@ -27,10 +27,15 @@ In our GAN design, we wrap it as a user-friendly easily customized python API to | Concat op (done) | ? | N (Cond) | | Repmat op (done) | ? | N (Cond) | +

+
+The overall running logic of GAN. The black solid arrows indicate the forward pass; the green dashed arrows indicate the backward pass of generator training; the red dashed arrows indicate the backward pass of the discriminator training. The BP pass of the green (red) arrow should only update the parameters in the green (red) boxes. +

+


-Borrow this photo from the original DC-GAN paper. +Photo borrowed from the original DC-GAN paper.

## The Conditional-GAN might be a class. diff --git a/doc/design/test.dot.png b/doc/design/test.dot.png new file mode 100644 index 0000000000000000000000000000000000000000..768e5cac4b14201f378896bb3bcde9e6ee540414 GIT binary patch literal 59401 zcmc$`byQVf*EW1mLRuuHJ%oaiD$<}HTDp;v5|9#*E(0m)5-I6Y5Cj1!0g;vxknV1f zu5a%9e%|r^^Zxma@r`?o+n>jC_Fj9fx#qm)bzN%*sVK=16VMW%P$*(KS&SMAh2@Gu zT}-@$3!mf;)pNrixF!lR7}PoPzmGLJ(I^x%N)B^h!!2ob%w1n&?hJ3Ui%5hZkQrV0 zah60cSfP@~N}Ee6L#+V%Mz*_7^*H9y zQaEoDHa1APqc7dK_;kL5UfkZO`rU1(lm!vvRQGwI1yPyn=nH6cFGbBT&SkR5ZJKoq zhW4k!b#(7X0;Y9|(|_b8B_)5jUkA#nQVNWclap`#Bv=0Ex-outZ zO8(Khqve}-Y=rm&iMvG=)A!A?&eR&aY zx+RijaiUJ5_WaEAlYZruo7#n#o%zmU^LDB-1vWHiJOTN7fp(GfSBp-E&B^;eo0^_X zHTdW1SC$-Z-G7Zc^|#p6ZL=P)CqstxWGD3;V_}gUOi4}_n>^oGV_eEeN$HPu5tmt9 zoY4SAvsc+)pxx|yer$x?>e*nSl#ULK%ob)g;ts?5KHcZ|HyLhdN9PYjt_spCY*RN< z0_hXx8)`mf>_$0IC}YB8Z%-Bew5(x89wnm(Q*l#Fj|U(5{SA8I(a%Ev^OsBX0;9Hf z|N9rSE_&|KewzPYxkQ_Ua@{(7K%qfZlxⅅF7B+?f?ACbr+`fJ>mcP4e6@DD8rLd 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 literal 0 HcmV?d00001 -- GitLab