{"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-data-augmentation-strategies-for","title":"Learning Data Augmentation Strategies for Object Detection","arxiv_id":"1906.11172","date":"2019-06-26","proceeding":"ECCV 2020 8","authors":["Barret Zoph","Ekin D. Cubuk","Golnaz Ghiasi","Tsung-Yi Lin","Jonathon Shlens","Quoc V. Le"],"abstract":"Data augmentation is a critical component of training deep learning models. Although data augmentation has been shown to significantly improve image classification, its potential has not been thoroughly investigated for object detection. Given the additional cost for annotating images for object detection, data augmentation may be of even greater importance for this computer vision task. In this work, we study the impact of data augmentation on object detection. We first demonstrate that data augmentation operations borrowed from image classification may be helpful for training detection models, but the improvement is limited. Thus, we investigate how learned, specialized data augmentation policies improve generalization performance for detection models. Importantly, these augmentation policies only affect training and leave a trained model unchanged during evaluation. Experiments on the COCO dataset indicate that an optimized data augmentation policy improves detection accuracy by more than +2.3 mAP, and allow a single inference model to achieve a state-of-the-art accuracy of 50.7 mAP. Importantly, the best policy found on COCO may be transferred unchanged to other detection datasets and models to improve predictive accuracy. For example, the best augmentation policy identified with COCO improves a strong baseline on PASCAL-VOC by +2.7 mAP. Our results also reveal that a learned augmentation policy is superior to state-of-the-art architecture regularization methods for object detection, even when considering strong baselines. Code for training with the learned policy is available online at https://github.com/tensorflow/tpu/tree/master/models/official/detection","url_abs":"https://arxiv.org/abs/1906.11172v1","url_pdf":"https://arxiv.org/pdf/1906.11172v1.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-data-augmentation-strategies-for","repo_url":"https://github.com/tensorflow/tpu","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"learning-data-augmentation-strategies-for","repo_url":"https://github.com/Jasonlee1995/AutoAugment_Detection","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-data-augmentation-strategies-for","repo_url":"https://github.com/chenyouxin113/sota-status-investigation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"learning-data-augmentation-strategies-for","repo_url":"https://github.com/cy0616/data_augment","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"learning-data-augmentation-strategies-for","repo_url":"https://github.com/zzl-pointcloud/Data_Augmentation_Zoo_for_Object_Detection","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-data-augmentation-strategies-for","repo_url":"https://github.com/tensorflow/tpu/tree/master/models/official/detection","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"tf","reach":null}],"tasks":[{"task_slug":"data-augmentation","task_name":"Data Augmentation"},{"task_slug":"image-augmentation","task_name":"Image Augmentation"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"object","task_name":"Object"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"robust-object-detection","task_name":"Robust Object Detection"},{"task_slug":"image-classification","task_name":"image-classification"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[{"method_slug":"1x1-convolution","method_name":"1x1 Convolution"},{"method_slug":"amoebanet","method_name":"AmoebaNet"},{"method_slug":"average-pooling","method_name":"Average Pooling"},{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"bottleneck-residual-block","method_name":"Bottleneck Residual Block"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"entropy-regularization","method_name":"Entropy Regularization"},{"method_slug":"fpn","method_name":"FPN"},{"method_slug":"faster-r-cnn","method_name":"Faster R-CNN"},{"method_slug":"focal-loss","method_name":"Focal Loss"},{"method_slug":"global-average-pooling","method_name":"Global Average Pooling"},{"method_slug":"image-scale-augmentation","method_name":"Image Scale Augmentation"},{"method_slug":"kaiming-initialization","method_name":"Kaiming Initialization"},{"method_slug":"lstm","method_name":"LSTM"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"nas-fpn","method_name":"NAS-FPN"},{"method_slug":"ppo","method_name":"PPO"},{"method_slug":"rpn","method_name":"RPN"},{"method_slug":"randomhorizontalflip","method_name":"Random Horizontal Flip"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-block","method_name":"Residual Block"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"retinanet","method_name":"RetinaNet"},{"method_slug":"roipool","method_name":"RoIPool"},{"method_slug":"sgd","method_name":"SGD"},{"method_slug":"sigmoid-activation","method_name":"Sigmoid Activation"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"spatially-separable-convolution","method_name":"Spatially Separable Convolution"},{"method_slug":"step-decay","method_name":"Step Decay"},{"method_slug":"tanh-activation","method_name":"Tanh Activation"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/object-detection-on-coco","task":"Object Detection","dataset":"COCO test-dev","model":"NAS-FPN (AmoebaNet-D, learned aug)","rank_in_archive_order":87,"of":225,"metrics":{"APL":"64.5","APM":"55.5","APS":"34.2","box mAP":"50.7"},"uses_additional_data":false},{"leaderboard":"/sota/robust-object-detection-on-cityscapes-1","task":"Robust Object Detection","dataset":"Cityscapes","model":"AutoAug-det","rank_in_archive_order":11,"of":13,"metrics":{"mPC [AP]":"15.8"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1906.11172","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1906.11172"}},"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/tensorflow/tpu","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/chenyouxin113/sota-status-investigation","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/cy0616/data_augment","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zzl-pointcloud/Data_Augmentation_Zoo_for_Object_Detection","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tensorflow/tpu/tree/master/models/official/detection","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Jasonlee1995/AutoAugment_Detection","reach":{"status":"ok"}}],"summary":{"ran_fixture":1,"ran_draft_wrong":1,"ran_violates":1},"by_repo_kind":{"listed":{"samples":3,"ran":3,"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":3,"samples":[{"code_sha256_prefix":"4ef4e8e84c07e6e7","entry":"change_center","repo":"cy0616/data_augment","repo_kind":"listed","path":"synthetic-occlusion.py","file_url":"https://github.com/cy0616/data_augment/blob/HEAD/synthetic-occlusion.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"4ef4e8e84c07e6e7"}},{"code_sha256_prefix":"d845de56fb50b753","entry":"cutout","repo":"cy0616/data_augment","repo_kind":"listed","path":"autoaugment_utils.py.py","file_url":"https://github.com/cy0616/data_augment/blob/HEAD/autoaugment_utils.py.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"d845de56fb50b753"}},{"code_sha256_prefix":"80ba651549ee2038","entry":"random_negate","repo":"cy0616/data_augment","repo_kind":"listed","path":"autoaugment_utils.py.py","file_url":"https://github.com/cy0616/data_augment/blob/HEAD/autoaugment_utils.py.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"80ba651549ee2038"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}