docs/si/distillation/small.html
මෙමCIFAR මත කුඩා ආකෘතිය පුහුණු 10 කොපමණ ආසවනය ප්රතිලාභ පරීක්ෂා කිරීමට.
15importtorch.nnasnn1617fromlabmlimportexperiment,logger18fromlabml.configsimportoption19fromlabml\_nn.experiments.cifar10importCIFAR10Configs,CIFAR10VGGModel20fromlabml\_nn.normalization.batch\_normimportBatchNorm
සියලුමදත්ත කට්ටල ආශ්රිත වින්යාසයන්, ප්රශස්තකරණය සහ පුහුණු ලූපයක් නිර්වචනය කරන අපි භාවිතා CIFAR10Configs කරමු.
23classConfigs(CIFAR10Configs):
30pass
මෙය සාමාන්ය VGG විලාසිතාවේ ගෘහ නිර්මාණ ශිල්පයෙන්ලබා ගනී.
33classSmallModel(CIFAR10VGGModel):
සංවහනස්තරයක් සහ සක්රිය කිරීම් සාදන්න
40defconv\_block(self,in\_channels,out\_channels)-\>nn.Module:
44returnnn.Sequential(
සංවහනස්ථරය
46nn.Conv2d(in\_channels,out\_channels,kernel\_size=3,padding=1),
කණ්ඩායම්සාමාන්යකරණය
48BatchNorm(out\_channels,track\_running\_stats=False),
Reluසක්රිය
50nn.ReLU(inplace=True),51)
53def\_\_init\_\_(self):
ලබාදී ඇති සංවහන ප්රමාණ (නාලිකා) සහිත ආකෘතියක් සාදන්න
55super().\_\_init\_\_([[32,32],[64,64],[128],[128],[128]])
58@option(Configs.model)59def\_small\_model(c:Configs):
63returnSmallModel().to(c.device)
66defmain():
අත්හදාබැලීම සාදන්න
68experiment.create(name='cifar10',comment='small model')
වින්යාසයන්සාදන්න
70conf=Configs()
වින්යාසයන්පූරණය කරන්න
72experiment.configs(conf,{73'optimizer.optimizer':'Adam',74'optimizer.learning\_rate':2.5e-4,75})
ඉතිරිකිරීම/පැටවීම සඳහා ආකෘතිය සකසන්න
77experiment.add\_pytorch\_models({'model':conf.model})
ආකෘතියේපරාමිති ගණන මුද්රණය කරන්න
79logger.inspect(params=(sum(p.numel()forpinconf.model.parameters()ifp.requires\_grad)))
අත්හදාබැලීම ආරම්භ කර පුහුණු ලූපය ක්රියාත්මක කරන්න
81withexperiment.start():82conf.run()
86if\_\_name\_\_=='\_\_main\_\_':87main()