docs/si/transformers/mlp_mixer/index.html
[View code on Github](https://github.com/labmlai/annotated_deep_learning_paper_implementations/tree/master/labml_nn/transformers/mlp_mixer/ init.py)
මෙයකඩදාසි එම්එල්පී-මික්සර් හිපයිටෝච් ක්රියාත්මක කිරීමයි: දැක්ම සඳහා සර්ව එම්එල්පී ගෘහ නිර්මාණ ශිල්පය .
මෙමලිපිය දර්ශන කාර්යයන් පිළිබඳ ආකෘතිය අදාළ වේ. ආකෘතිය ට්රාන්ස්ෆෝමරයකට සමාන වන අතර අවධානය යොමු කරන තට්ටුවක් පැච් හරහා යොදන එම්එල්පී මගින් ප්රතිස්ථාපනය වේ (හෝ එන්එල්පී කර්තව්යයකදී ටෝකන).
MLPMixer අපගේ ක්රියාත්මක කිරීම අපගේ ට්රාන්ස්ෆෝමර් ක්රියාත්මක කිරීම ස්වයං අවධානය ස්ථරය සඳහා වෙනුවට පහත වැටීමක් වේ. එබැවින් එය කේත පේළි කිහිපයක් පමණක් වන අතර, අනුක්රමික මානය හරහා එම්එල්පී යෙදීම සඳහා ටෙන්සරය සම්ප්රේෂණය කරයි.
කඩදාසිදර්ශන කාර්යයන් සඳහා එම්එල්පී මික්සර් යෙදුවද, අපි එය වෙස් භාෂා ආකෘතියක්මත උත්සාහ කළෙමු. මෙන්න අත්හදා බැලීමේ කේතය.
29fromtypingimportOptional3031importtorch32fromtorchimportnn
මෙමමොඩියුලය ස්වයං අවධානය ස්ථරයසඳහා පතන වෙනුවට වේ. එය එම්එල්පී වෙත පෝෂණය කිරීමට පෙර ආදාන ටෙන්සරය සම්ප්රේෂණය කර ආපසු සම්ප්රේෂණය කරයි, එවිට එම්එල්පී විශේෂාංග මානය වෙනුවට අනුක්රමික මානය හරහා (ටෝකන හෝ රූප පැච් හරහා) යොදනු ලැබේ.
35classMLPMixer(nn.Module):
ffn MLP මොඩියුලය වේ.45def\_\_init\_\_(self,mlp:nn.Module):
49super().\_\_init\_\_()50self.mlp=mlp
සාමාන්ය අවධානය යොමු කිරීමේ මොඩියුලය සඳහා queryවිවිධ ටෝකන කාවැද්දීම් value සහ වෙස් මුහුණක් සමඟ පෝෂණය කළ හැකිය.key
අපිඑකම ක්රියාකාරී අත්සන අනුගමනය කරන අතර එමඟින් අපට එය කෙලින්ම ප්රතිස්ථාපනය කළ හැකිය.
MLPමිශ්ර කිරීම සඳහා, x=query=key=value සහ ආවරණ කිරීම කළ නොහැක. query ( සහ key සහ value ) හැඩය වේ [seq_len, batch_size, d_model] .
52defforward(self,query:torch.Tensor,key:torch.Tensor,value:torch.Tensor,mask:Optional[torch.Tensor]=None):
query,key, සහ value සියල්ල එක හා සමාන විය යුතුය
64assertqueryiskeyandkeyisvalue
MLPමික්සර් ආවරණ සඳහා සහය නොදක්වයි. එනම් සියලුම ටෝකන මගින් අනෙකුත් සියලුම ටෝකන කාවැද්දීම් දකිනු ඇත.
66assertmaskisNone
පැහැදිලිකම x සඳහා පවරන්න
69x=query
අවසානමානය අනුක්රමය මානයක් බව එසේ සම්ප්රේෂණය කරන්න. නව හැඩය [d_model, batch_size, seq_len]
73x=x.transpose(0,2)
ටෝකනහරහා එම්එල්පී යොදන්න
75x=self.mlp(x)
නැවතමුල් ස්වරූපයට පරිවර්තනය කරන්න
77x=x.transpose(0,2)
80returnx