{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/which-training-methods-for-gans-do-actually","title":"Which Training Methods for GANs do actually Converge?","arxiv_id":"1801.04406","date":"2018-01-13","proceeding":"ICML 2018 7","authors":["Lars Mescheder","Andreas Geiger","Sebastian Nowozin"],"abstract":"Recent work has shown local convergence of GAN training for absolutely\ncontinuous data and generator distributions. In this paper, we show that the\nrequirement of absolute continuity is necessary: we describe a simple yet\nprototypical counterexample showing that in the more realistic case of\ndistributions that are not absolutely continuous, unregularized GAN training is\nnot always convergent. Furthermore, we discuss regularization strategies that\nwere recently proposed to stabilize GAN training. Our analysis shows that GAN\ntraining with instance noise or zero-centered gradient penalties converges. On\nthe other hand, we show that Wasserstein-GANs and WGAN-GP with a finite number\nof discriminator updates per generator update do not always converge to the\nequilibrium point. We discuss these results, leading us to a new explanation\nfor the stability problems of GAN training. Based on our analysis, we extend\nour convergence results to more general GANs and prove local convergence for\nsimplified gradient penalties even if the generator and data distribution lie\non lower dimensional manifolds. We find these penalties to work well in\npractice and use them to learn high-resolution generative image models for a\nvariety of datasets with little hyperparameter tuning.","url_abs":"http://arxiv.org/abs/1801.04406v4","url_pdf":"http://arxiv.org/pdf/1801.04406v4.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/LMescheder/GAN_stability","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/BeyondCloud/Comp04_ReverseImageCaption","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/SiskonEmilia/StyleGAN-PyTorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/arnabgho/iSketchNFill","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/facebookresearch/pytorch_GAN_zoo","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/sergkuzn148/lol3","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/sergkuzn148/stg","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/wittawatj/cadgan","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"which-training-methods-for-gans-do-actually","repo_url":"https://github.com/ChristophReich1996/Dirac-GAN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[],"methods":[{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"r1-regularization","method_name":"R1 Regularization"}],"datasets_introduced":[],"methods_introduced":[{"slug":"r1-regularization","name":"R1 Regularization","full_name":"R1 Regularization"}],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1801.04406","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1801.04406"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ChristophReich1996/Dirac-GAN","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/BeyondCloud/Comp04_ReverseImageCaption","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/facebookresearch/pytorch_GAN_zoo","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/SiskonEmilia/StyleGAN-PyTorch","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/sergkuzn148/lol3","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wittawatj/cadgan","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/sergkuzn148/stg","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/arnabgho/iSketchNFill","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/LMescheder/GAN_stability","reach":{"status":"unanswered"}}],"summary":{"ran_draft_wrong":1},"by_repo_kind":{},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":1,"samples":[{"code_sha256_prefix":"b919a96235b8ee68","entry":"quick_scale","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"b919a96235b8ee68"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}