මෙය GMLP ආකෘතියක්පුහුණු කිරීම සඳහා කරන ලද පයිටෝර්ච් අත්හදා බැලීමකි. පුහුණුව අතරතුර සමහර ස්ථර අහඹු ලෙස ඉවත් කරනු ලබන Stochastic Depth regularization ද කඩදාසි අදාළ වේ. අපි එය මෙහි ක්රියාත්මක කර නැත.
මෙයපදනම් වී ඇත්තේ සරල ට්රාන්ස්ෆෝමර් ස්වයංක්රීය-ප්රතිගාමී එන්එල්පී කාර්යයක් සඳහා පුහුණු ලූප සහ වින්යාසයන්මත ය.
18from labml import experiment
19from labml.configs import option
20from labml_nn.transformers import TransformerConfigs
21from labml_nn.transformers.basic.autoregressive_experiment import Configs as BasicAutoRegressionConfigs
22from labml_nn.transformers.gmlp import GMLPBlockමෙය සරල ට්රාන්ස්ෆෝමර් ස්වයංක්රීය-ප්රතිගාමී එන්එල්පී කර්තව්යයක් සඳහා පුහුණු ලූප සහ වින්යාසයන්වලින් උරුම වේ.
25class Configs(BasicAutoRegressionConfigs):ට්රාන්ස්ෆෝමර්
34 transformer: TransformerConfigs = 'gMLP'ජීඑම්එල්පීබ්ලොක්
36 gmlp: GMLPBlockd_ffn
GMLP ප්රක්ෂේපණ ස්ථරය සඳහා
38 d_ffn: int = 204841@option(Configs.gmlp, 'gMLP')
42def _gmlp_configs(c: Configs):46 return GMLPBlock(c.d_model, c.d_ffn, c.seq_len)49@option(Configs.transformer, 'gMLP')
50def _transformer_configs(c: Configs):අපගේ වින්යාසගත කළ හැකි ට්රාන්ස්ෆෝමර් ක්රියාත්මක කිරීම භාවිතා කරමු
57 conf = TransformerConfigs()කාවැද්දීම්සහ පිවිසුම් උත්පාදනය සඳහා වචන මාලාව ප්රමාණ සකසන්න
59 conf.n_src_vocab = c.n_tokens
60 conf.n_tgt_vocab = c.n_tokensආකෘතිප්රමාණය සකසන්න
62 conf.d_model = c.d_modelඑන්කෝඩර්ස්තරය GMLP ස්ථරයකින් ප්රතිස්ථාපනය කරන්න
64 conf.encoder_layer = c.gmlp
65
66 return conf69def main():අත්හදාබැලීම සාදන්න
71 experiment.create(name="gMLP")වින්යාසසාදන්න
73 conf = Configs()වින්යාසයන්අභිබවා යන්න
75 experiment.configs(conf, {අක්ෂරමට්ටමේ ටෝකනයිසර් භාවිතා කරන්න
77 'tokenizer': 'character',කඩිනම්බෙදුම්කරු හිස් ය
79 'prompt_separator': '',නියැදීමසඳහා විමසුමක් ආරම්භ කිරීම
81 'prompt': 'It is ',කුඩාෂේක්ස්පියර් දත්ත කට්ටලය භාවිතා කරන්න
83 'text': 'tiny_shakespeare',කසන්දර්භය ප්රමාණය භාවිතා
86 'seq_len': 256,Epochs සඳහා දුම්රිය
88 'epochs': 128,කණ්ඩායම්ප්රමාණය
90 'batch_size': 32,එක් යුගයකට වරක් පුහුණුව සහ වලංගු කිරීම අතර මාරු වන්න
93 'inner_iterations': 10,ආදර්ශප්රමාණය
96 'd_model': 512,
97 'd_ffn': 2048,නෝම් ප්රශස්තකරණය භාවිතා කරන්න
100 'optimizer.optimizer': 'Noam',
101 'optimizer.learning_rate': 1.,
102 })ඉතිරිකිරීම සහ පැටවීම සඳහා ආකෘති සකසන්න
105 experiment.add_pytorch_models({'model': conf.model})අත්හදාබැලීම ආරම්භ කරන්න
108 with experiment.start():පුහුණුධාවනය
110 conf.run()114if __name__ == '__main__':
115 main()