Author Archives: நித்யா

Deep Learning – 06 – Neural Networks

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

Deep Learning – 05 – Single Input Neuron

Single Input Neuron இப்பகுதியில் உள்ளீட்டு அடுக்கில் ஒரு நியூரானையும், வெளியீட்டு அடுக்கில் ஒரு நியூரானையும் வைத்து கணிப்பினை நிகழ்த்துவது எப்படி என்று பார்க்கலாம். இதனை நாம் tensorflow பயன்படுத்தி செய்து பார்க்கப் போகிறோம். This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden… Read More »

Deep Learning – 04 – PyTorch

Deep Neural Network-ன் செயல்பாடுகளை ஆராய்வதற்கு உதவும் மற்றொரு வலிமையான கட்டமைப்பே PyTorch ஆகும். இது முகநூலின் செயற்கை அறிவுத்திறன் ஆய்வுக் குழு மூலம் உருவாக்கப்பட்ட பைதானை அடிப்படையாகக் கொண்ட ஒரு library ஆகும். Torch எனப்படும் இயந்திர வழிக்கற்றலுக்கான தொகுப்பின் அடிப்படையில் உருவானதே pytorch ஆகும். Tensors நியூரல் நெட்வொர்கைப் பொருத்தவரை தரவுகள் அனைத்தும் டென்சார் எனப்படும் கொள்கலனின் வழியேதான் செயல்படுகின்றன. இந்த பைடார்‌ச்சிலும் torch.Tensor() எனும் class மூலமாக தரவுகளை டென்சாராக உருவாக்கலாம். கீழ்க்கண்ட… Read More »

Deep Learning – 03 – Placeholders, Tensor board

Placeholders Placeholders என்பவை தரவுகள் வரவிருக்கின்றன எனும் குறிப்பை மட்டும் நமக்கு உணர்த்தப் பயன்படுகின்றன. உண்மையான தரவுகளை session இயங்கிக் கொண்டிருக்கும்போது run-timeல் பெற்றுக்கொள்கின்றன. feed_dict எனும் argument மூலமாக இவை தரவுகளைப் பெற்றுக்கொள்கின்றன. Variables என்பதற்கு ஏதாவதொரு துவக்க மதிப்பு தேவைப்படுகிறது. இதை வைத்துத் தான் பின்னர் இயங்கத் தொடங்கும். ஆனால் placeholdersஇயங்குவதற்கு எந்த ஒரு துவக்க மதிப்பும் தேவையில்லை. session இயங்கிக் கொண்டிருக்கும்போது மதிப்புகளை அளித்தால் போதுமானது. கீழ்க்கண்ட உதாரணத்தில், வெறும் பெயர் மற்றும்… Read More »

Deep Learning – 02 – TF Constants, Properties, Operators, Variables

TF Constants ஒரு குறிப்பிட்ட நிலையான மதிப்பினைப் பெற்று இயங்குவதற்கு tf.constant() எனும் operatorபயன்படுகிறது. இது string, int, float, bool போன்ற பல்வேறு வகைகளில் தரவுகளைப் பெற்று இயங்கும் தன்மை உடையது. கீழ்க்கண்ட எடுத்துக்காட்டில் இதன் பல்வேறு தரவு வகைகளைக் காணலாம். This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file… Read More »

Deep Learning – 01 – TensorFlow

இயந்திர வழிக் கற்றலின் (Machine Learning) ஒரு பகுதியாக நியூரல் நெட்வொர்க்ஸ் என்பது அமையும். அதாவது மனிதனுடைய மூளை எவ்வாறு கற்கிறது என்பதை முன்னோடியாகக் கொண்டு உருவாக்கப்பட்டதே நியூரல் நெட்வொர்க்ஸ் ஆகும்.முதலில் ஒரு குழந்தை பிறக்கும்போது அதனுடைய மூளைக்கு ஒன்றுமே தெரியாது. சுழியத்திலிருந்து ஆரம்பித்து பின்னர் ஒவ்வொரு விஷயமாகக் கற்கிறது. அதாவது குழந்தையின் மூளையிலுள்ள ஒரு மூளை நரம்பு(நியூரான்) ஒரு புதிய விஷயத்தைக் கற்கிறது. அடுத்ததாக மற்றொரு நரம்பு (மற்றொரு நியூரான்)ஏற்கெனவே கற்றுக் கொண்டுள்ள விஷயத்தோடு சேர்த்து… Read More »

Machine Learning – 31 – Artificial Neural Networks

ஒரு நியூரான் கற்றுக் கொள்வதை அடிப்படையாக வைத்து கற்றுக் கொள்வது perceptron என்றால், பல்வேறு நியூரான்களைக் கொண்ட மனித மூளை கற்றுக் கொள்வதை அடிப்படையாக வைத்து கற்றுக் கொள்வது Multi-layer perceptron ஆகும். அதாவது செயல்களை அடிப்படையாகக் கொண்டு நியூரான்கள் கற்கின்றன. நியூரான்கள் கற்றுக் கொண்டதை வைத்து மனித மூளை கற்கிறது. இதே முறையில் தரவுகளை அடிப்படையாகக் கொண்டு perceptron கற்கின்றன. Perceptron-களை வைத்து directed acyclic graph-ஐ உருவாக்கி MLP கற்கிறது. இதுவே Artificial neural… Read More »

Machine Learning – 30 – Perceptron

Perceptron என்பதே neural networks-க்கான அடிப்படை. இது ஒரு நேர்கோடு மூலம் பிரிக்க வல்ல தரவுகளுக்கான binary classification algorithm ஆகும். ஆனால் இது logistic regression போன்று தனது கற்றலை அமைக்காது. ஒரு நியூரான் எவ்வாறு கொஞ்சம் கொஞ்சமாக கற்றுக் கொள்கிறதோ அதனை அடிப்படையாக வைத்து, பயிற்சித் தரவுகளைப் பற்றிப் படிப்படியாகக் கற்றுக் கொள்கிறது. கீழ்க்கண்ட எடுத்துக்காட்டில் 4 பயிற்சித் தரவுகள் கொடுக்கப்பட்டுள்ளன. அதில் x1, x2 எனும் 2 features-ஐ வைத்து 0 அல்லது… Read More »

Machine Learning – 29 – PCA

Principle Component Analysis என்பது அதிக அளவு பரிமாணங்கள் கொண்ட தரவுகளை குறைந்த அளவு பரிமாணங்கள் கொண்டதாக மாற்றுவதற்குப் பயன்படுகிறது. எடுத்துக்காட்டாக 1000 அம்சங்களைக் கொண்டு ஒரு விஷயம் கணிக்கப்படுகிறது என வைத்துக் கொள்வோம். PCA-ஆனது இந்த 1000 X-ஐ 100 X-ஆகவோ அல்லது இன்னும் குறைந்த பரிமாணங்கள் கொண்டதாகவோ மாற்றிக் கொடுக்கும். அதாவது Y எண்ணிக்கையைப் பற்றிக் கவலைப்படாது. வெறும் X எண்ணிக்கையை மட்டும் குறைக்கும். எனவேதான் PCA என்பது dimensionality reduction-க்கு உதவுகின்ற ஒரு சிறப்புவகை… Read More »

Machine Learning – 28 – SVM

Support Vector Machine (SVM) என்பது தரவுகளை வகைப்படுத்திப் பிரிப்பதற்கான ஒரு வழிமுறை ஆகும். ஏற்கெனவே இதற்கென logistic regression என்பதைப் பற்றிப் பார்த்தோம். ஆனால் இந்த SVM என்பது வகைப்படுத்துதல் எனும் வேலையை logistic-ஐ விட இன்னும் சற்று துல்லியமாக அமைக்கிறது. நேர்கோடு மூலம் பிரிக்கப்படும் தரவுகளுக்கு large margin classifier எவ்வாறு உதவுகிறது என்பதையும், நேர்கோடு முறையில் பிரிக்கப்பட முடியாத தரவுகளுக்கு kernels எவ்வாறு உதவுகிறது என்பதையும் இப்பகுதியில் காணலாம். Large margin classifier… Read More »