{"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/unsupervised-image-captioning","title":"Unsupervised Image Captioning","arxiv_id":"1811.10787","date":"2018-11-27","proceeding":"CVPR 2019 6","authors":["Yang Feng","Lin Ma","Wei Liu","Jiebo Luo"],"abstract":"Deep neural networks have achieved great successes on the image captioning\ntask. However, most of the existing models depend heavily on paired\nimage-sentence datasets, which are very expensive to acquire. In this paper, we\nmake the first attempt to train an image captioning model in an unsupervised\nmanner. Instead of relying on manually labeled image-sentence pairs, our\nproposed model merely requires an image set, a sentence corpus, and an existing\nvisual concept detector. The sentence corpus is used to teach the captioning\nmodel how to generate plausible sentences. Meanwhile, the knowledge in the\nvisual concept detector is distilled into the captioning model to guide the\nmodel to recognize the visual concepts in an image. In order to further\nencourage the generated captions to be semantically consistent with the image,\nthe image and caption are projected into a common latent space so that they can\nreconstruct each other. Given that the existing sentence corpora are mainly\ndesigned for linguistic research and are thus with little reference to image\ncontents, we crawl a large-scale image description corpus of two million\nnatural sentences to facilitate the unsupervised image captioning scenario.\nExperimental results show that our proposed model is able to produce quite\npromising results without any caption annotations.","url_abs":"http://arxiv.org/abs/1811.10787v2","url_pdf":"http://arxiv.org/pdf/1811.10787v2.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":"unsupervised-image-captioning","repo_url":"https://github.com/fengyang0317/unsupervised_captioning","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"image-captioning","task_name":"Image Captioning"},{"task_slug":null,"task_name":"Image Description"},{"task_slug":"sentence","task_name":"Sentence"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1811.10787","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1811.10787"}},"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/fengyang0317/unsupervised_captioning","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":9},"by_repo_kind":{"listed":{"samples":9,"ran":0,"repositories":1}},"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":"76a9b6fe83ea92ce","entry":"batching_func","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"input_pipeline.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/input_pipeline.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":"76a9b6fe83ea92ce"}},{"code_sha256_prefix":"87f21af9b546e678","entry":"crop_sentence","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"misc_fn.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/misc_fn.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":"87f21af9b546e678"}},{"code_sha256_prefix":"9f6e5b896223a455","entry":"get_len","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"misc_fn.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/misc_fn.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":"9f6e5b896223a455"}},{"code_sha256_prefix":"f67272b86ad5f3d3","entry":"parse_image","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"input_pipeline.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/input_pipeline.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":"f67272b86ad5f3d3"}},{"code_sha256_prefix":"bd7686eb06b93e74","entry":"parse_image","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"initialization/eval_obj2sen.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/initialization/eval_obj2sen.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":"bd7686eb06b93e74"}},{"code_sha256_prefix":"b16f4be70669c68b","entry":"parse_image","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"initialization/gen_obj2sen_caption.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/initialization/gen_obj2sen_caption.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":"b16f4be70669c68b"}},{"code_sha256_prefix":"ec1099fa086d8984","entry":"parse_sentence","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"initialization/obj2sen.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/initialization/obj2sen.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":"ec1099fa086d8984"}},{"code_sha256_prefix":"660085a67c222cf2","entry":"preprocess_image","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"input_pipeline.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/input_pipeline.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":"660085a67c222cf2"}},{"code_sha256_prefix":"1522d86852eae35f","entry":"transform_grads_fn","repo":"fengyang0317/unsupervised_captioning","repo_kind":"listed","path":"misc_fn.py","file_url":"https://github.com/fengyang0317/unsupervised_captioning/blob/HEAD/misc_fn.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":"1522d86852eae35f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}