{"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/learning-to-infer-graphics-programs-from-hand","title":"Learning to Infer Graphics Programs from Hand-Drawn Images","arxiv_id":"1707.09627","date":"2017-07-30","proceeding":"ICLR 2018 1","authors":["Kevin Ellis","Daniel Ritchie","Armando Solar-Lezama","Joshua B. Tenenbaum"],"abstract":"We introduce a model that learns to convert simple hand drawings into\ngraphics programs written in a subset of \\LaTeX. The model combines techniques\nfrom deep learning and program synthesis. We learn a convolutional neural\nnetwork that proposes plausible drawing primitives that explain an image. These\ndrawing primitives are like a trace of the set of primitive commands issued by\na graphics program. We learn a model that uses program synthesis techniques to\nrecover a graphics program from that trace. These programs have constructs like\nvariable bindings, iterative loops, or simple kinds of conditionals. With a\ngraphics program in hand, we can correct errors made by the deep network,\nmeasure similarity between drawings by use of similar high-level geometric\nstructures, and extrapolate drawings. Taken together these results are a step\ntowards agents that induce useful, human-readable programs from perceptual\ninput.","url_abs":"http://arxiv.org/abs/1707.09627v5","url_pdf":"http://arxiv.org/pdf/1707.09627v5.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":"learning-to-infer-graphics-programs-from-hand","repo_url":"https://github.com/azarafrooz/LSTM-program-synthesis","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"unanswered"}}],"tasks":[{"task_slug":"program-synthesis","task_name":"Program Synthesis"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1707.09627","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}