{"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/self-supervised-generative-adversarial","title":"Self-Supervised GANs via Auxiliary Rotation Loss","arxiv_id":"1811.11212","date":"2018-11-27","proceeding":"CVPR 2019 6","authors":["Ting Chen","Xiaohua Zhai","Marvin Ritter","Mario Lucic","Neil Houlsby"],"abstract":"Conditional GANs are at the forefront of natural image synthesis. The main\ndrawback of such models is the necessity for labeled data. In this work we\nexploit two popular unsupervised learning techniques, adversarial training and\nself-supervision, and take a step towards bridging the gap between conditional\nand unconditional GANs. In particular, we allow the networks to collaborate on\nthe task of representation learning, while being adversarial with respect to\nthe classic GAN game. The role of self-supervision is to encourage the\ndiscriminator to learn meaningful feature representations which are not\nforgotten during training. We test empirically both the quality of the learned\nimage representations, and the quality of the synthesized images. Under the\nsame conditions, the self-supervised GAN attains a similar performance to\nstate-of-the-art conditional counterparts. Finally, we show that this approach\nto fully unsupervised learning can be scaled to attain an FID of 23.4 on\nunconditional ImageNet generation.","url_abs":"http://arxiv.org/abs/1811.11212v2","url_pdf":"http://arxiv.org/pdf/1811.11212v2.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":"self-supervised-generative-adversarial","repo_url":"https://github.com/google/compare_gan","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"self-supervised-generative-adversarial","repo_url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"self-supervised-generative-adversarial","repo_url":"https://github.com/zhangqianhui/Self-Supervised-GANs","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"self-supervised-generative-adversarial","repo_url":"https://github.com/sanidhyamangal/SSLGAN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"image-generation","task_name":"Image Generation"},{"task_slug":"representation-learning","task_name":"Representation Learning"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/image-generation-on-celeba-hq-128x128","task":"Image Generation","dataset":"CelebA-HQ 128x128","model":"SS-GAN (sBN)","rank_in_archive_order":6,"of":7,"metrics":{"FID":"24.36"},"uses_additional_data":false},{"leaderboard":"/sota/image-generation-on-imagenet-128x128","task":"Image Generation","dataset":"ImageNet 128x128","model":"SS-GAN (sBN)","rank_in_archive_order":23,"of":23,"metrics":{"FID":"43.87"},"uses_additional_data":false},{"leaderboard":"/sota/image-generation-on-lsun-bedroom-256-x-256","task":"Image Generation","dataset":"LSUN Bedroom 256 x 256","model":"SS-GAN (sBN)","rank_in_archive_order":18,"of":32,"metrics":{"FID":"13.3"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1811.11212","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1811.11212"}},"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/sanidhyamangal/SSLGAN","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/google/compare_gan","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zhangqianhui/Self-Supervised-GANs","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":11},"by_repo_kind":{"listed":{"samples":11,"ran":0,"repositories":2}},"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":0,"samples":[{"code_sha256_prefix":"8f6578938a03667d","entry":"conv2d","repo":"zhangqianhui/Self-Supervised-GANs","repo_kind":"listed","path":"ops.py","file_url":"https://github.com/zhangqianhui/Self-Supervised-GANs/blob/HEAD/ops.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8f6578938a03667d"}},{"code_sha256_prefix":"bc3f0c5701ef3b57","entry":"conv_cond_concat","repo":"vandit15/Self-Supervised-Gans-Pytorch","repo_kind":"listed","path":"ops.py","file_url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch/blob/HEAD/ops.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bc3f0c5701ef3b57"}},{"code_sha256_prefix":"800619dde7521a77","entry":"download_cifar10","repo":"zhangqianhui/Self-Supervised-GANs","repo_kind":"listed","path":"download.py","file_url":"https://github.com/zhangqianhui/Self-Supervised-GANs/blob/HEAD/download.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"800619dde7521a77"}},{"code_sha256_prefix":"bf9ecbd77cd2d059","entry":"download_svhn","repo":"zhangqianhui/Self-Supervised-GANs","repo_kind":"listed","path":"download.py","file_url":"https://github.com/zhangqianhui/Self-Supervised-GANs/blob/HEAD/download.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"bf9ecbd77cd2d059"}},{"code_sha256_prefix":"2e236e0534c38e3b","entry":"get_fashion_mnist_dataloaders","repo":"vandit15/Self-Supervised-Gans-Pytorch","repo_kind":"listed","path":"dataloaders.py","file_url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch/blob/HEAD/dataloaders.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2e236e0534c38e3b"}},{"code_sha256_prefix":"9b3691aa74ecac7d","entry":"get_lsun_dataloader","repo":"vandit15/Self-Supervised-Gans-Pytorch","repo_kind":"listed","path":"dataloaders.py","file_url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch/blob/HEAD/dataloaders.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9b3691aa74ecac7d"}},{"code_sha256_prefix":"e2092604fc016e70","entry":"get_mnist_dataloaders","repo":"vandit15/Self-Supervised-Gans-Pytorch","repo_kind":"listed","path":"dataloaders.py","file_url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch/blob/HEAD/dataloaders.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e2092604fc016e70"}},{"code_sha256_prefix":"6a0d455dcdcf2ec5","entry":"log_sum_exp","repo":"vandit15/Self-Supervised-Gans-Pytorch","repo_kind":"listed","path":"ops.py","file_url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch/blob/HEAD/ops.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6a0d455dcdcf2ec5"}},{"code_sha256_prefix":"dffe333c7a3624a0","entry":"log_sum_exp","repo":"zhangqianhui/Self-Supervised-GANs","repo_kind":"listed","path":"ops.py","file_url":"https://github.com/zhangqianhui/Self-Supervised-GANs/blob/HEAD/ops.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"dffe333c7a3624a0"}},{"code_sha256_prefix":"207527695edefd17","entry":"lrelu","repo":"zhangqianhui/Self-Supervised-GANs","repo_kind":"listed","path":"ops.py","file_url":"https://github.com/zhangqianhui/Self-Supervised-GANs/blob/HEAD/ops.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"207527695edefd17"}},{"code_sha256_prefix":"ba12c98b75e5b17a","entry":"spectral_norm","repo":"vandit15/Self-Supervised-Gans-Pytorch","repo_kind":"listed","path":"ops.py","file_url":"https://github.com/vandit15/Self-Supervised-Gans-Pytorch/blob/HEAD/ops.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ba12c98b75e5b17a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}