எளிய தமிழில் Generative AI – 2

By | March 6, 2025

Polynomial Features

லீனியர் அல்காரிதம் போடும் கோடு, ஒரிஜினல் டேட்டாவுக்கு மத்தியில் இல்லாமல், எங்கோ ஒரு ஓரமாகக் காணப்படின் underfitting என்று பெயர். அந்த ஓரத்தில் உள்ள டேட்டாவை மட்டும் அல்காரிதம் cover செய்கிறது என்று அர்த்தம். டேட்டா Non-linear ஆக இருப்பின் இவ்வாறு அமைந்துவிடும். இது போன்ற சமயங்களில் அல்காரிதம் உருவாக்கும் கோடு, நேர்கோடாக இல்லாமல் வளைந்து நெளிந்து அனைத்து மூலைகளில் உள்ள டேட்டாவையும் கவர் செய்யுமாறு அமைப்பதற்கு polynomial Regression என்று பெயர். அன்டர்ஃபிட்டிங்  எனில் ஃபீச்சர்ஸை அதிகரிப்பதும், ஓவர்ஃபிட்டிங் எனில் ரெகுலரைசேஷன் பயன்படுத்தி ஃபீச்சர்ஸின் பங்களிப்பைக் குறைப்பதும் இதன் சமநிலையைக் காக்க நாம் பயன்படுத்தும் டெக்னிக்குகள் ஆகும். இங்கும் டேட்டாக்களுக்கு ஏற்றவாறு ஃபீச்சர்ஸை அதிகரிக்க, Linear Regression-க்குள் வழங்கப்படும் பண்பே polynomial features ஆகும். இது square, cube என மதிப்புகளைப் பெருக்கி, அனைத்து டேட்டாக்களின் மீதும் படரும் படியாக அக்கோட்டினை மாற்றுகிறது. அதுவே துல்லியமாகப் பதிந்து விட்டால் அது ஓவர்ஃபிட்டிங் எனப்படும் high variance நிலை. எதன் மீதும் படாமல் இருப்பதோ, அன்டர்ஃபிட்டிங் எனப்படும் high bias நிலை. இவ்விரண்டு நிலையையும் தவிர்த்து கவனமாகப் புரிந்து கொள்வதே bias-variance tradeoff என்று அழைக்கப்படுகிறது.

Optimizing training data

Bias – Variance பிரச்சனை மற்றும் இதர பிரச்சனைகளைத் தீர்க்க நமது ட்ரெயினிங் டேட்டாவில், தேவையில்லாத features-ஐயும், தேவையில்லாத data points-ஐயும் நீக்குவதற்கு Correlation Matrix, Outliers Removal உதவுகின்றன.

Correlation Matrix என்பது highly correlated மற்றும் zero correlated features-ஐ நீக்குகிறது. அதாவது அதிக தொடர்புடைய duplicated ஃபீச்சர்ஸையும், சற்றும் சம்பந்தமே இல்லாத ஃபீச்சர்ஸையும் நீக்குகிறது. Recursive Feature Elimination டெக்னிக் என்பதும் இதற்காகப் பயன்படுகிறது.

Outliers Removal என்பது ஒவ்வொரு feature-க்கும் அதனதன் mean மதிப்பினைக் கணக்கிட்டு, மற்ற மதிப்புகள் அதனதன் சராசரியிலிருந்து எவ்வளவு தூரம் விலகி இருக்கிறது என்பதைப் பொறுத்து ஒரு threshold அமைக்கிறது. அதற்கும் மேலாக விலகி இருக்கும் எண்கள் outliers-ஆக கருதப்பட்டு நீக்கப்படுகின்றன. Z score, IPR score போன்றவை இந்த threshold அமைப்பதற்கு உதவுகின்றன.

EDA – Exploratory Data Analysis என்பது நமது ட்ரெயினிங் டேட்டாவை graph போட்டுப் பார்வையிடும் முறை ஆகும். ஒரே ஒரு feature-ல் உள்ள டேட்டாவை மட்டும் கிராஃப் போட்டுப் பார்ப்பது univariate ஆகும் (box plot). இரண்டு ஃபீச்சர்ஸில் உள்ள டேட்டாவை ஒப்பிட்டு கிராஃப் போட்டுப் பார்ப்பது bivariate (scatter plot). அனைத்தையும் ஒன்றாகப் பார்க்க உதவுவது multivariate (parallel coordinates).

Features- ஐ இன்னும் சுருக்க PCA – Principal Component Analysis என்பது பயன்படும். இது feature scaling நடைபெற்ற பின்னர் SVD (Single Value Decomposition) என்ற ஃபங்க்ஷனைப் பயன்படுத்தி, features- ஐ இன்னும் சுருக்குகிறது. இதற்காக projection line (linear data) அல்லது projection area (nonlinear) என்ற ஒன்றைப் பயன்படுத்துகிறது. அதற்குள் சுருக்கும் போது, எந்த அளவுக்கு தகவல் இழப்பு ஏற்பட்டுள்ளது என்பதை விளக்க இதன் explained variance எனும் பண்பு பயன்படுகிறது.

Logistic Regression 

இதுவும் லீனியர் ரெக்ரேஷன் முறையிலேதான் கற்றுக் கொள்கிறது. ஆனால் predict செய்ய வேண்டிய மதிப்பினை மட்டும் 1 அல்லது 0 என மாற்ற sigmoid ஃபங்ஷனைப் பயன்படுத்துகிறது. இந்த பங்க்ஷன் ஒரு குறிப்பிட்ட மதிப்பினடிப்படையில் decision boundary- ஐ வகுத்துக் கொண்டு, லீனியர் அல்காரிதம் வெளியிடும் மதிப்பு, அந்த பவுண்டரிக்கு மேல் சென்றால் 1 எனவும், கீழே சென்றால் 0 எனவும் predict செய்கிறது. அந்த மதிப்பிற்கு threshold classifier என்ற பெயர். இந்த பவுண்டரி என்பது லீனியர் ரெக்ரேஷனில் காணப்படும் நேர்கோடு போலவே இருக்கும். Non linear டேட்டாவுக்கு, பாலினாமியல் போலவே இதிலும் higher order எடுத்து, அந்த பவுண்டரியை வளையமாக மாற்றி, வளையத்துக்கு உள்ளும் புறமும் என வைத்து 0, 1 என்பதை  predict செய்கிறது.

Cost function

லீனியர் ரெக்ரேஷனில் ஒரிஜினல் மதிப்புக்கும், அல்காரிதம் புரிந்து கொண்ட மதிப்புக்கும் இடையே உள்ள வித்தியாசமே error எனக் கண்டோம். ஆனால் லாஜிஸ்டிக் ரெக்ரேஷனில் இதுபோலக் கணக்கிட இயலாது. உண்மையான மதிப்பு ஒன்று எனில் ஜீரோவை வெளியிடும் அல்லது ஜீரோ எனில் ஒன்றினை வெளியிடும். அவ்வளவுதான்! ஆகவே, எவ்வளவு தூரம் வித்தியாசப்படுகிறது என்பதைக் கணக்கிட இயலாது. எனவேதான் இதன் cost மதிப்பு infinity ஆகும். வேண்டுமானால் எத்தனை முறை தவறு செய்துள்ளது என்பதைக் கணக்கிடலாம். இதற்கு உதவுவதே confusion matrix ஆகும். இது ஒன்றையும் ஜீரோவையும் predict செய்வதில், எத்தனை முறை தவறு செய்துள்ளது, எத்தனை முறை சரியாகச் செய்துள்ளது என்பதை தனித்தனியாகக் கணக்கிட்டு வெளியிடும். இதில் ஒன்றினை பிரெடிக்ட் செய்யும்போது எத்தனை முறை தவறு (false +ve) செய்துள்ளது என்பதற்கு Precision என்றும், ஜீரோவை பிரெடிக்ட் செய்யும்போது எத்தனை முறை தவறு (false -ve) செய்துள்ளது என்பதற்கு Recall என்றும் பெயர். இவ்விரண்டில் ஏதேனும் ஒன்றினை குறைக்கும் பொருட்டு நாம் threshold மதிப்பில் கை வைத்தாலும், மற்றொன்றின் எண்ணிக்கை அதிகரிக்கும். இதுவே precision recall tradeoff என்று அழைக்கப்படும்.

 

— தொடரும்

நித்யா துரைசாமி

nithyadurai87@gmail.com

 

முந்தைய பகுதிகள் –

எளிய தமிழில் Generative AI – 1