Hsyshasuzh/longmemory-geo / project /tests /model /test_batchnorm_policy.py
Hsyshasuzh's picture
download
raw
924 Bytes
import unittest
import torch
from training.detection_trainer import freeze_batchnorm_statistics, batchnorm_buffers
class BatchNormPolicyTests(unittest.TestCase):
def test_statistics_fixed_while_affine_parameters_learn(self):
model = torch.nn.Sequential(torch.nn.BatchNorm2d(3), torch.nn.Conv2d(3, 1, 1))
before = batchnorm_buffers(model)
affine = model[0].weight.detach().clone()
optimizer = torch.optim.SGD(model.parameters(), lr=.1)
for _ in range(2):
model.train()
freeze_batchnorm_statistics(model)
optimizer.zero_grad()
model(torch.ones(1, 3, 4, 4)).square().mean().backward()
self.assertIsNotNone(model[0].weight.grad)
optimizer.step()
self.assertTrue(all(torch.equal(v, batchnorm_buffers(model)[k]) for k, v in before.items()))
self.assertFalse(torch.equal(affine, model[0].weight))

Xet Storage Details

Size:
924 Bytes
·
Xet hash:
f83ec0b2a90e29f3a0e7f20fca69f82dd495170d8a2b087f297c3b50ff76303f

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.