Author Archives: நித்யா

எளிய தமிழில் DevOps-1

Development மற்றும் operations இரண்டும் இணைந்து ஒருசேர நடைபெறும் நிகழ்வுகளின் தொடர்ச்சிகளே DevOps என்று அழைக்கப்படுகிறது. வாடிக்கையாளர்கள் கேட்கின்ற விஷயத்தை உருவாக்கித் தருபவருக்கு developer என்று பெயர். இவர் தம்முடைய இடத்தில் (local server) உருவாக்கிய ஒன்றை, வாடிக்கையாளர்களுடைய இடத்தில் (Production server) சிறப்பாக இயங்குமாறு செய்யும் குழுவிற்கு Operations team என்று பெயர். இவ்விரண்டு வேலையையும் ஒருவரே செய்தால் அவரே Devops Engineer என்று அழைக்கப்படுவார். எடுத்துக்காட்டாக உணவகங்களில் நாம் கேட்கின்ற இட்லி, தோசை போன்றவற்றை… Read More »

Deep Learning – 18 – Reinforcement Learning

கணினிக்கோ அல்லது கணினியால் உருவாக்கப்பட்ட கருவிக்கோ ஒரு விஷயத்தை திரும்பத் திரும்பச் சொல்லிக் கொடுப்பதன் மூலம் அதனைப் பயிற்றுவிக்க முயலும் முறைக்கு ‘Reinforcement Learning’ என்று பெயர். சுயமாக ஓடக்கூடிய மகிழ் ஊர்தி(self-driving cars), கணினியோடு மக்களை விளையாடச் செய்யும் gaming industry போன்றவற்றில் ஒரு கருவிக்குத் திறம்பட பயிற்சி அளிக்க இத்தகைய முறை பயன்படுத்தப்படுகிறது. சமீபத்தில் உருவாக்கப்பட்ட ‘Deepmind’ என்பது இதற்கு ஒரு சிறந்த உதாரணம் ஆகும். இத்தகைய Reinforcement Learning எவ்வாறு நடைபெறுகிறது என்பது… Read More »

Deep Learning – 17 – Autoencoders

Autoencoder என்றால் தரவுகளைத் தானாகவே ஏதோ ஒரு முறையில் குறியிட்டு சுருக்கி அமைக்கக் கற்றுக் கொள்ளுகின்ற ஒரு விஷயம் என்று பொருள். எனவேதான் dimensionality reduction, feature representation போன்ற இடங்களில் இது பெரும்பங்கு வகிக்கிறது. Machine learning-க்கான அறிமுகக் கற்றலில் PCA-ஐப் பற்றிப் பார்த்தோம் அல்லவா, அதே வேலையைச் செய்வதற்காக நியூரல் நெட்வொர்கில் பயன்படுத்தப்படும் ஒரு விஷயமே autoencoder ஆகும். PCA என்பது நேர்கோடு முறையில் அமையும் தரவுகளின் dimension-ஐக் குறைக்கப் பயன்படுகிறதெனில் , Autoencoder… Read More »

Deep Learning – 16 – BM, RBM, DBN Networks

Boltzmann Machinesஎன்பதிலிருந்து உருவானதே Restricted boltzmann machines ஆகும். முதலில் Boltzmann Network என்றால் என்ன என்று பார்ப்போம். மாதிரித் தரவுகளில் உள்ள அதிகப்படியான features-ல் இருந்து நமக்கு வேண்டிய முக்கிய அம்சங்களை மட்டும் உருவாக்கும் வேலையை Boltzmann Machinesசெய்கிறது. இது வெறும் input மற்றும் hidden லேயரை மட்டும் பெற்று விளங்கும் நெட்வொர்க் ஆகும். மற்ற deep learning மாடலில் உள்ளது போன்று output லேயர் என்ற ஒன்று தனியாகக் கிடையாது. இந்த இரண்டு லேயரில்… Read More »

Deep Learning – 15 – RNN

சாதாரண நியூரல் நெட்வொர்கில் அடுத்தடுத்து வரும் இரண்டு உள்ளீட்டுத் தரவுகள் ஒன்றோடொன்று தொடர்பில்லாமல் இருக்கும். எடுத்துக்காட்டாக ஒரு வீட்டினுடைய சதுர அடி விவரத்தைப் பெற்றுக்கொண்டு அதன் விலையைக் கணிக்கும் சோதனையை எடுத்துக்கொண்டால் 400 சதுர அடி வீட்டிற்கு ஒரு விலையையும், 600 சதுர அடி வீட்டிற்கு ஒரு விலையையும் கணிக்கும். இந்த இரண்டும் ஒன்றோடொன்று தொடர்பில்லாத விவரங்கள். 600 சதுர அடிக்கான விலையைக் கணிக்க ஒரு நெட்வொர்க் இதற்கு முந்தைய 400 சதுர அடி வீட்டிற்கு என்ன… Read More »

Deep Learning – 14 – CNN

ஒரு database-ல் சேமிப்பதற்கு ஏற்ற வகையில் தரவுகளைக் கொண்ட அமைப்பிற்கு ‘Structured data’ என்று பெயர். இதுவரை நாம் பார்த்த அனைத்தும் ஒரு முறையான வடிவமைப்பைக் கொண்ட தரவுகளை நெட்வொர்குக்கு கொடுத்து எவ்வாறு பயிற்சி அளிப்பது என்று பார்த்தோம். இனிவரும் பகுதிகளில் ஒழுங்கற்ற தரவுகளுக்கான மாடல்களை எவ்வாறு உருவாக்குவது என்று பார்க்கலாம். அட்டவணை வடிவத்தில் அமையும் தரவுகள் ‘structured data’ என்றால், இவ்வடிவில் சேமிக்க இயலாத படங்கள், காணொளிகள் , உரை தரவுகள், குரல் கோப்புகள் (images,… Read More »

Deep Learning – 13 – Regularization and Optimization

deep neural network-ல் நாம் பயன்படுத்தியுள்ள மார்பகப் புற்றுநோய்க்கான எடுத்துக்காட்டையே இங்கும் பயன்படுத்தியுள்ளோம். கீழ்க்கண்ட இடங்களில் மட்டும் நிரல் சற்று வித்தியாசப்படுகிறது. 1. மாதிரித் தரவுகள் train_test_split மூலம் பிரிக்கப்பட்ட உடன், X_train-ல் உள்ள முதல் 2 features மட்டும் கணக்கிற்கு எடுத்துக் கொள்ளப்படுகிறது. பின்னர் இவ்விரண்டு தரவுகளும் non-linear எவ்வாறு முறையில் அமைந்துள்ளன என்பது வரைபடம் மூலம் வரைந்து காட்டப்பட்டுள்ளது. 2. hidden லேயரில் உள்ள ஒவ்வொரு node-ம் முந்தைய லேயரிலுள்ள node-லிருந்து வரும் மதிப்புடன்… Read More »

Deep Learning – 12 – Building Effective Neural Networks

  ஒரு நியூரல் நெட்‌வொர்கின் கட்டமைப்பினை வலுவாக்குவதற்கு முதலில் அதில் எழுகின்ற பல்வேறு வகையான பிரச்சனைகள் பற்றியும், அவற்றைக் களைவதற்கு உதவும் வழிவகைகள் பற்றியும் தெரிந்து கொள்ள வேண்டும்.. ஒரு நியூரல் நெட்‌வொர்கின் efficiency என்பது பயிற்றுவிக்கப்படுவதற்கு எவ்வளவு நேரம் எடுத்துக்கொள்கிறது என்பதையும், Accuracy என்பது பயிற்றுவிக்கப்பட்டவுடன் எவ்வளவு துல்லியமாகக் கணிக்கிறது என்பதையும் குறிக்கிறது. இவற்றைப் பாதிக்கும் காரணிகள் பற்றியும், அவற்றை எவ்வாறு களைவது என்பது பற்றியும் இப்பகுதியில் ஒவ்வொன்றாகப் பார்க்கலாம். Bias-Variance Problem நாம் உருவாக்கியுள்ள… Read More »

Deep Learning – 11 – Softmax neural networks

Softmax neural networks Softmax என்பது multi-class classification-க்கு உதவுகின்ற ஒரு வகைப்படுத்தி ஆகும். MNIST_data என்பதற்குள் பல்வேறு விதங்களில் கையால் எழுதப்பட்ட 0 முதல் 9 வரை அடங்கிய எண்களின் தொகுப்புகள் காணப்படும். இது 0 – 9 எனும் 10 வகை label-ன் கீழ் அமையக்கூடிய கணிப்புகளை நிகழ்த்தும். இவற்றையே multi-class classification-க்கு மாதிரித் தரவுகளாக நாம் பயன்படுத்திக் கொள்ளலாம். இவற்றில் 55000 தரவுகள் பயிற்சி அளிப்பதற்கும், 10000 தரவுகள் பயிற்சி பெற்ற நெட்வொர்கை… Read More »

Deep Learning – 10 – Feed forward neural networks

Feed forward neural networks உள்ளீடு, வெளியீடு மற்றும் பல்வேறு இடைப்பட்ட மறைமுக அடுக்குகளைப் பெற்று, ஒவ்வொரு அடுக்கிலும் அதிக அளவிலான நியூரான்களைப் பெற்று விளங்கும் நெட்வொர்க் feed forward நியூரல் நெட்வொர்க் என்று அழைக்கப்படுகிறது. மேற்கண்ட deep layer-ல் நாம் கண்டது இதற்கு ஒரு நல்ல எடுத்துக்காட்டாக அமையும். உள்ளீட்டு அடுக்கின் மூலம் செலுத்தப்படும் தரவுகள் அதற்கு அடுத்தடுத்த அடுக்குகளின் வழியே செல்லும்போது, அவை process செய்யப்பட்டு கடைசி அடுக்கில் தன்னுடைய கணிப்பினை வெளியிடுகிறது. இம்முறையில்… Read More »