Skip to content

Commit 990df1e

Browse files
committed
skip cycle consistency test for diffusion models
- the test is unstable for untrained diffusion models, as the networks output is not sufficiently smooth for the step size we use - remove the diffusion_model marker
1 parent a8e9a72 commit 990df1e

File tree

2 files changed

+13
-14
lines changed

2 files changed

+13
-14
lines changed

tests/test_networks/conftest.py

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -158,12 +158,12 @@ def typical_point_inference_network_subnet():
158158
"flow_matching",
159159
"free_form_flow",
160160
"consistency_model",
161-
pytest.param("diffusion_model_edm_F", marks=pytest.mark.diffusion_model),
162-
pytest.param("diffusion_model_edm_noise", marks=[pytest.mark.slow, pytest.mark.diffusion_model]),
163-
pytest.param("diffusion_model_cosine_velocity", marks=[pytest.mark.slow, pytest.mark.diffusion_model]),
164-
pytest.param("diffusion_model_cosine_F", marks=[pytest.mark.slow, pytest.mark.diffusion_model]),
165-
pytest.param("diffusion_model_cosine_noise", marks=[pytest.mark.slow, pytest.mark.diffusion_model]),
166-
pytest.param("diffusion_model_cosine_velocity", marks=[pytest.mark.slow, pytest.mark.diffusion_model]),
161+
pytest.param("diffusion_model_edm_F"),
162+
pytest.param("diffusion_model_edm_noise", marks=pytest.mark.slow),
163+
pytest.param("diffusion_model_cosine_velocity", marks=pytest.mark.slow),
164+
pytest.param("diffusion_model_cosine_F", marks=pytest.mark.slow),
165+
pytest.param("diffusion_model_cosine_noise", marks=pytest.mark.slow),
166+
pytest.param("diffusion_model_cosine_velocity", marks=pytest.mark.slow),
167167
],
168168
scope="function",
169169
)
@@ -191,37 +191,33 @@ def inference_network_subnet(request):
191191
"flow_matching",
192192
"free_form_flow",
193193
"consistency_model",
194-
pytest.param("diffusion_model_edm_F", marks=pytest.mark.diffusion_model),
194+
pytest.param("diffusion_model_edm_F"),
195195
pytest.param(
196196
"diffusion_model_edm_noise",
197197
marks=[
198198
pytest.mark.slow,
199-
pytest.mark.diffusion_model,
200199
pytest.mark.skip("noise predicition not testable without prior training for numerical reasons."),
201200
],
202201
),
203-
pytest.param("diffusion_model_cosine_velocity", marks=[pytest.mark.slow, pytest.mark.diffusion_model]),
202+
pytest.param("diffusion_model_cosine_velocity", marks=pytest.mark.slow),
204203
pytest.param(
205204
"diffusion_model_cosine_F",
206205
marks=[
207206
pytest.mark.slow,
208-
pytest.mark.diffusion_model,
209207
pytest.mark.skip("skip to reduce load on CI."),
210208
],
211209
),
212210
pytest.param(
213211
"diffusion_model_cosine_noise",
214212
marks=[
215213
pytest.mark.slow,
216-
pytest.mark.diffusion_model,
217214
pytest.mark.skip("noise predicition not testable without prior training for numerical reasons."),
218215
],
219216
),
220217
pytest.param(
221218
"diffusion_model_cosine_velocity",
222219
marks=[
223220
pytest.mark.slow,
224-
pytest.mark.diffusion_model,
225221
pytest.mark.skip("skip to reduce load on CI."),
226222
],
227223
),

tests/test_networks/test_inference_networks.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,13 +86,16 @@ def test_output_shape(generative_inference_network, random_samples, random_condi
8686

8787
def test_cycle_consistency(generative_inference_network, random_samples, random_conditions):
8888
# cycle-consistency means the forward and inverse methods are inverses of each other
89+
import bayesflow as bf
90+
91+
if isinstance(generative_inference_network, bf.experimental.DiffusionModel):
92+
pytest.skip(reason="test unstable for untrained diffusion models")
8993
try:
9094
forward_output, forward_log_density = generative_inference_network(
9195
random_samples, conditions=random_conditions, density=True
9296
)
9397
except NotImplementedError:
94-
# network is not invertible, cycle consistency cannot be tested.
95-
return
98+
pytest.skip(reason="network is not invertible")
9699
inverse_output, inverse_log_density = generative_inference_network(
97100
forward_output, conditions=random_conditions, density=True, inverse=True
98101
)

0 commit comments

Comments
 (0)