PyTorch இல் 'torch.no_grad' ஐ எவ்வாறு பயன்படுத்துவது?

Pytorch Il Torch No Grad Ai Evvaru Payanpatuttuvatu



நரம்பியல் நெட்வொர்க்கின் அடுக்குகளுக்கான சாய்வுகளின் கணக்கீடு பைடார்ச் கட்டமைப்பின் உள்ளமைக்கப்பட்ட அம்சமாகும். பின்தங்கிய பாஸில் சாய்வு கணக்கிடப்படும் போது, ​​பயனர்கள் அடுத்தடுத்த அடுக்குகளுக்கு இடையே உள்ள இணைப்பை அளவிட முடியும். இருப்பினும், இது வன்பொருளில் பாதிப்பை ஏற்படுத்துகிறது, ஏனெனில் பெரிய அளவிலான தரவுகள் செயலாக்கப்பட வேண்டும் மற்றும் இந்த விஷயத்தில், ' ஜோதி.no_grad தேவையான இடங்களில் சாய்வு கணக்கீட்டை நிறுத்துவதற்கு ” முறை பயன்படுத்தப்படலாம்.

இந்த வலைப்பதிவில், ''ஐ எவ்வாறு பயன்படுத்துவது என்று விவாதிப்போம் ஜோதி.no_grad ”PyTorchல் முறை.

PyTorchல் உள்ள “torch.no_grad” முறை என்ன?

' ஜோதி.no_grad ”முறையானது PyTorch வளர்ச்சிக் கட்டமைப்பிற்குள் சூழலை நிர்வகிப்பதற்குப் பயன்படுத்தப்படுகிறது. ஆழமான கற்றல் மாதிரியின் அடுத்தடுத்த அடுக்குகளுக்கு இடையிலான இணைப்புக்கான சாய்வுகளின் கணக்கீட்டை நிறுத்துவதே இதன் நோக்கம். இந்த முறையின் பயன் என்னவென்றால், ஒரு குறிப்பிட்ட மாதிரியில் சாய்வுகள் தேவையில்லை என்றால், மாதிரியின் பயிற்சி வளையத்தை செயலாக்க அதிக வன்பொருள் வளங்களை ஒதுக்க அவற்றை முடக்கலாம்.







PyTorchல் 'torch.no_grad' முறையை எவ்வாறு பயன்படுத்துவது?

PyTorch இல் பின்தங்கிய பாஸுக்குள் சாய்வு கணக்கிடப்படுகிறது. இயல்பாக, PyTorch அனைத்து இயந்திர கற்றல் மாதிரிகளுக்கும் தானியங்கி வேறுபாடு செயல்படுத்தப்படுகிறது. போதுமான வன்பொருள் செயலாக்க ஆதாரங்கள் இல்லாத டெவலப்பர்களுக்கு சாய்வு கணக்கீட்டை செயலிழக்கச் செய்வது அவசியம்.



எப்படி பயன்படுத்துவது என்பதை அறிய கீழே உள்ள படிகளைப் பின்பற்றவும் ' ஜோதி.no_grad 'PyTorch இல் சாய்வு கணக்கீட்டை முடக்கும் முறை:







படி 1: Colab IDE ஐ துவக்கவும்

Google Colaboratory என்பது அதன் பிரத்யேக GPUகளின் காரணமாக PyTorch கட்டமைப்பைப் பயன்படுத்தி திட்டங்களின் மேம்பாட்டிற்கான ஒரு சிறந்த தளமாகும். கோலாப் செல்லுங்கள் இணையதளம் மற்றும் திறக்கவும் ' புதிய நோட்புக் ” காட்டப்பட்டுள்ளபடி:



படி 2: டார்ச் லைப்ரரியை நிறுவி இறக்குமதி செய்யவும்

PyTorch இன் அனைத்து செயல்பாடுகளும் ' ஜோதி ” நூலகம். வேலையைத் தொடங்குவதற்கு முன் அதன் நிறுவல் மற்றும் இறக்குமதி அவசியம். ' !பிப் 'பைத்தானின் நிறுவல் தொகுப்பு நூலகங்களை நிறுவ பயன்படுகிறது, மேலும் இது திட்டத்தில் இறக்குமதி செய்யப்படுகிறது' இறக்குமதி ” கட்டளை:

!பிப் இன்ஸ்டால் டார்ச்
இறக்குமதி ஜோதி

படி 3: சாய்வு கொண்ட பைடார்ச் டென்சரை வரையறுக்கவும்

'' ஐப் பயன்படுத்தி திட்டத்தில் ஒரு PyTorch டென்சரைச் சேர்க்கவும் டார்ச்.டென்சர்() ”முறை. பின்னர், 'ஐப் பயன்படுத்தி சரியான சாய்வைக் கொடுங்கள் requires_grad=உண்மை ” முறை கீழே உள்ள குறியீட்டில் காட்டப்பட்டுள்ளது:

A = torch.tensor([5.0], requires_grad=True)

படி 4: சாய்வை அகற்ற 'torch.no_grad' முறையைப் பயன்படுத்தவும்

அடுத்து, 'ஐப் பயன்படுத்தி முன்பு வரையறுக்கப்பட்ட டென்சரில் இருந்து சாய்வை அகற்றவும் ஜோதி.no_grad ”முறை:

torch.no_grad():
B = A**2 + 16

மேலே உள்ள குறியீடு பின்வருமாறு செயல்படுகிறது:

  • ' no_grad() 'முறை ஒரு' உள்ளே பயன்படுத்தப்படுகிறது உடன் ” வளையம்.
  • லூப்பில் உள்ள ஒவ்வொரு டென்சரும் அதன் சாய்வு அகற்றப்படும்.
  • கடைசியாக, முன்னர் வரையறுக்கப்பட்ட டென்சரைப் பயன்படுத்தி ஒரு மாதிரி எண்கணித கணக்கீட்டை வரையறுத்து, அதை ' பி மேலே காட்டப்பட்டுள்ளபடி ' மாறி:

படி 5: சாய்வு நீக்கத்தை சரிபார்க்கவும்

இப்போது என்ன செய்யப்பட்டது என்பதை சரிபார்க்க கடைசி கட்டம். டென்சரில் இருந்து சாய்வு” ' அகற்றப்பட்டது மற்றும் அது வெளியீட்டில் சரிபார்க்கப்பட வேண்டும் ' அச்சு () ”முறை:

அச்சு ('torch.no_grad உடன் சாய்வு கணக்கீடு: ', A.grad)
அச்சு('\nஅசல் டென்சர்: ', ஏ)
அச்சு('\nமாதிரி எண்கணிதக் கணக்கீடு: ', பி)

மேலே உள்ள குறியீடு பின்வருமாறு செயல்படுகிறது:

  • ' பட்டதாரி 'முறையானது டென்சரின் சாய்வைக் கொடுக்கிறது' ”. 'ஐப் பயன்படுத்தி சாய்வு அகற்றப்பட்டதால், கீழே உள்ள வெளியீட்டில் இது எதையும் காட்டவில்லை. ஜோதி.no_grad ”முறை.
  • அசல் டென்சர் இன்னும் அதன் சாய்வு இருப்பதைக் காட்டுகிறது ' requires_grad=உண்மை 'வெளியீட்டில் அறிக்கை.
  • கடைசியாக, மாதிரி எண்கணிதக் கணக்கீடு முன்பு வரையறுக்கப்பட்ட சமன்பாட்டின் முடிவைக் காட்டுகிறது:

குறிப்பு : நீங்கள் எங்கள் Colab நோட்புக்கை இதில் அணுகலாம் இணைப்பு .

சார்பு உதவிக்குறிப்பு

' ஜோதி.no_grad சாய்வுகள் தேவையில்லாத இடங்களில் அல்லது வன்பொருளில் செயலாக்க சுமையை குறைக்க வேண்டியிருக்கும் போது ”முறை சிறந்தது. இந்த முறையின் மற்றொரு பயன்பாடு அனுமானத்தின் போது உள்ளது, ஏனெனில் இந்த மாதிரியானது புதிய தரவுகளின் அடிப்படையில் கணிப்புகளை உருவாக்க மட்டுமே பயன்படுத்தப்படுகிறது. எந்த பயிற்சியும் இல்லாததால், சாய்வுகளின் கணக்கீட்டை வெறுமனே முடக்குவது முற்றிலும் அர்த்தமுள்ளதாக இருக்கிறது.

வெற்றி! PyTorch இல் சாய்வுகளை முடக்க “torch.no_grad” முறையை எவ்வாறு பயன்படுத்துவது என்பதை நாங்கள் உங்களுக்குக் காட்டியுள்ளோம்.

முடிவுரை

பயன்படுத்த ' ஜோதி.no_grad 'PyTorch இல் உள்ள முறை அதை ஒரு 'க்குள் வரையறுத்து உடன் ”லூப் மற்றும் உள்ளே உள்ள அனைத்து டென்சர்களும் அவற்றின் சாய்வு அகற்றப்படும். இது செயலாக்க வேகத்தில் மேம்பாடுகளைக் கொண்டுவரும் மற்றும் பயிற்சி வளையத்திற்குள் சாய்வுகள் குவிவதைத் தடுக்கும். இந்த வலைப்பதிவில், இது எப்படி என்பதை நாங்கள் காண்பித்துள்ளோம் ' ஜோதி.no_grad PyTorch இல் தேர்ந்தெடுக்கப்பட்ட டென்சர்களின் சாய்வுகளை முடக்குவதற்கு ” முறையைப் பயன்படுத்தலாம்.