SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2105.00303 · ICML · 2021

RATT: Leveraging Unlabeled Data to Guarantee Generalization

J Zico Kolter, Saurabh Garg, Sivaraman Balakrishnan, Zachary Lipton

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 16 functions out of this paper's own repositories and ran 8 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
acmi-lab/ratt_generalization_bound canonical 8 of 16
FunctionStatusWhere it lives
ResNet18 Ran acmi-lab/ratt_generalization_bound/models/resnet.py
code served (permissive licence) · get_code("ee3a23d9284921b0")
custom_dataset Ran acmi-lab/ratt_generalization_bound/data_helper.py
code served (permissive licence) · get_code("33c9f87823514bad")
format_time Ran acmi-lab/ratt_generalization_bound/utils.py
code served (permissive licence) · get_code("8d7ec010c29e813b")
get_model Ran acmi-lab/ratt_generalization_bound/model_helper.py
code served (permissive licence) · get_code("4e4f63cb91e4b0e0")
initialize_bert_transform Ran acmi-lab/ratt_generalization_bound/datasets/IMDb.py
code served (permissive licence) · get_code("bb921ba6a0704620")
random_label_noise Ran acmi-lab/ratt_generalization_bound/data_helper.py
code served (permissive licence) · get_code("5de1b3eb7678aa7c")
read_file Ran acmi-lab/ratt_generalization_bound/plots_helper/plot_acc.py
code served (permissive licence) · get_code("eeb3d9b0ff6d3654")
read_imdb_split Ran acmi-lab/ratt_generalization_bound/datasets/IMDb.py
code served (permissive licence) · get_code("e1e8c58b1243b4e0")
download_and_load_datasets Not yet run acmi-lab/ratt_generalization_bound/train_imdb_elmo.py
code served (permissive licence) · get_code("5bbd31590c16d155")
getBertTokenizer Not yet run acmi-lab/ratt_generalization_bound/datasets/IMDb.py
code served (permissive licence) · get_code("08da3d75f4a68eb5")
get_mean_and_std Not yet run acmi-lab/ratt_generalization_bound/utils.py
code served (permissive licence) · get_code("7bd3a77007a65eec")
get_train_data Not yet run acmi-lab/ratt_generalization_bound/data_helper.py
code served (permissive licence) · get_code("18d06a46390badba")
initialize_bert_based_model Not yet run acmi-lab/ratt_generalization_bound/models/bert.py
code served (permissive licence) · get_code("b24bb0be9085efab")
load_dataset Not yet run acmi-lab/ratt_generalization_bound/train_imdb_elmo.py
code served (permissive licence) · get_code("c7a16597f295a1ba")
load_directory_data Not yet run acmi-lab/ratt_generalization_bound/train_imdb_elmo.py
code served (permissive licence) · get_code("7b0fc787f8d444d1")
pred_accuracy Not yet run acmi-lab/ratt_generalization_bound/model_helper.py
code served (permissive licence) · get_code("7e5acdc16eb78bae")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

To assess generalization, machine learning scientists typically either (i) bound the generalization gap and then (after training) plug in the empirical risk to obtain a bound on the true risk; or (ii) validate empirically on holdout data. However, (i) typically yields vacuous guarantees for overparameterized models; and (ii) shrinks the training set and its guarantee erodes with each reuse of the holdout set. In this paper, we leverage unlabeled data to produce generalization bounds. After augmenting our (labeled) training set with randomly labeled data, we train in the standard fashion. Whenever classifiers achieve low error on the clean data but high error on the random data, our bound ensures that the true risk is low. We prove that our bound is valid for 0-1 empirical risk minimization and with linear classifiers trained by gradient descent. Our approach is especially useful in conjunction with deep learning due to the early learning phenomenon whereby networks fit true labels before noisy labels but requires one intuitive assumption. Empirically, on canonical computer vision and NLP tasks, our bound provides non-vacuous generalization guarantees that track actual performance closely. This work enables practitioners to certify generalization even when (labeled) holdout data is unavailable and provides insights into the relationship between random label noise and generalization. Code is available at https://github.com/acmilab/RATT generalization bound.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2105.00303")
get_code_for_paper("2105.00303")
have("2105.00303")

Connect an agent — have() is free.