SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2206.07767 · NeurIPS · 2022

Kantorovich Strikes Back! Wasserstein GANs are not Optimal Transport?

Alexander Korotin, Evgeny Burnaev, Alexander Kolesov

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 12 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
justkolesov/Wasserstein1Benchmark canonical 8 of 12
FunctionStatusWhere it lives
get_borders Ran justkolesov/Wasserstein1Benchmark/src/utils.py
code served (permissive licence) · get_code("607e577e46e2bdb2")
grad Ran justkolesov/Wasserstein1Benchmark/src/utils.py
code served (permissive licence) · get_code("e3248168eb0e100b")
l2normalize Ran justkolesov/Wasserstein1Benchmark/src/models.py
code served (permissive licence) · get_code("17385c972432c94a")
lipschitz_one_checker Ran justkolesov/Wasserstein1Benchmark/src/utils.py
code served (permissive licence) · get_code("739a575fdd1b23a4")
penalty Ran justkolesov/Wasserstein1Benchmark/src/methods.py
code served (permissive licence) · get_code("f8c9f6f28ed2a57a")
plot_images Ran justkolesov/Wasserstein1Benchmark/src/plotters.py
code served (permissive licence) · get_code("6d490c108b9b5483")
process_group_size Ran justkolesov/Wasserstein1Benchmark/src/models.py
code served (permissive licence) · get_code("be9f19d3f8e2b635")
vecs_to_plot Ran justkolesov/Wasserstein1Benchmark/src/plotters.py
code served (permissive licence) · get_code("3113f42fdacbe1e9")
PCA_plot_q_p_samples Not yet run justkolesov/Wasserstein1Benchmark/src/plotters.py
code served (permissive licence) · get_code("1e670671fca5679c")
load_resnet_G Not yet run justkolesov/Wasserstein1Benchmark/src/models.py
code served (permissive licence) · get_code("8bdd654cb2e2c935")
train_CoWGAN Not yet run justkolesov/Wasserstein1Benchmark/src/methods.py
code served (permissive licence) · get_code("ee99cab556bc594e")
train_WGAN Not yet run justkolesov/Wasserstein1Benchmark/src/methods.py
code served (permissive licence) · get_code("b7df65799c478813")

Repositories linked to this paper

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

Abstract

Wasserstein Generative Adversarial Networks (WGANs) are the popular generative models built on the theory of Optimal Transport (OT) and the Kantorovich duality. Despite the success of WGANs, it is still unclear how well the underlying OT dual solvers approximate the OT cost (Wasserstein-1 distance, W 1 ) and the OT gradient needed to update the generator. In this paper, we address these questions. We construct 1-Lipschitz functions and use them to build ray monotone transport plans. This strategy yields pairs of continuous benchmark distributions with the analytically known OT plan, OT cost and OT gradient in high-dimensional spaces such as spaces of images. We thoroughly evaluate popular WGAN dual form solvers (gradient penalty, spectral normalization, entropic regularization, etc.) using these benchmark pairs. Even though these solvers perform well in WGANs, none of them faithfully compute W 1 in high dimensions. Nevertheless, many provide a meaningful approximation of the OT gradient. These observations suggest that these solvers should not be treated as good estimators of W 1 , but to some extent they indeed can be used in variational problems requiring the minimization of W 1 .

For agents

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

get_harvested_code_for_paper("2206.07767")
get_code_for_paper("2206.07767")
have("2206.07767")

Connect an agent — have() is free.