எங்கே எப்படி Real Life Data Science & Machine Learningகில் Matrix பயன்படுகிறது
Data Science மற்றும் Machine Learningல் நாம நிறைய Numbers மற்றும் Dataset-களை கையாளுகிறோம்.
Dataset என்றால், பல Rows மற்றும் Columns கொண்ட Table மாதிரியான Structure.
Matrix உபயோகிப்பதால், பெரிய அளவிலான Calculationகளை வேகமாகவும் எளிமையாகவும் கணக்கிடலாம்.
தரவுகளை சேமிப்பது
நீங்கள் காணும் எந்த Dataset-யும் (Excel file, CSV, SQL table) எல்லாமே ஒரு Matrix மாதிரி Structure தான்.
Rows = Records (Row 1, 2, 3, …)
Columns = Features or Variables (Column A, B, C, …)
ஒரு Column-ல் இருக்கும் Headings: Name, Subject, Employee ID, Attendance, Height, Weight இதெல்லாம் Features.
ஒரு Row-ல் இருக்கும் Values: Akash, Ajith, Maths, English, 5 feet, 6 feet — இவை எல்லாம் Values.
இது தான் Data சேமிக்க மிக சிறந்த முறை. மனிதர்களுக்கும் Computerகும் சமமாக புரியும்.
Image Processing
Digital Images எல்லாம் Matrixஸாக சேமிக்கப்படும்.
ஒவ்வொரு Pixel-க்கும் ஒரு Matrix Value இருக்கும், அது Computerகு அந்த Pixel-ல் என்ன Color, density காட்டணும் என்பதை சொல்லி தரும்.
Black & White படம் → ஒரு 2D Matrix
Color படம் → 3D Matrix (Red, Green, Blue)
நிறைய சிறிய Pixels சேர்ந்து தான் ஒரு பாண்டா படம் போல ஒரு Image உருவாகிறது.
Linear Regression மற்றும் Algorithms
Machine Learning-ல் பயன்படுத்தப்படும் Algorithm (Linear Regression, Logistic Regression, SVM, Neural Networks) எல்லாமே Matrix உபயோகிக்கின்றன.
Linear Regressionல், Inputs மற்றும் Outputsஐ Matrixஆக மாற்றினால், Pythonல் NumPy போன்ற libraries மூலம் Calculations வேகமாக செய்யலாம்.
Formula:
Prediction = Weights × Inputs + Bias
இது எல்லா Model-களுக்கும் அடிப்படை Calculation முறைதான்.
Neural Networks
Neural Networkல் ஒவ்வொரு Layerக்கும் Matrix Calculation தேவை.
ஒவ்வொரு Layerம் Input Data (Name, Subject, Attendance, Behavior…) எண்ணாக மாற்றி பெறும்.
உதாரணமாக: [2121, 23, 100, 45] போல ஒரு Matrix row.
பின்னர் Weightsஐ multiply பண்ணி data importance ( Data எவ்ளோ முக்கியம்) என்று கண்டுபிடிக்கும்.
பின்னர் அது activation room-க்கு செலுத்தப்படும். அங்கு அந்த neuron activate ஆகணுமா வேண்டாமா என்று முடிவு செய்யப்படும்.
Imagine பண்ணுங்க:
இங்கே ஒவ்வொரு Outer Silver Box ஒரு Neuron அல்லது Layer ஆகக் கற்பனை பண்ணுங்க.
இந்த Layerகளில் ஒவ்வொன்றும் ஒரு Matrix Row-வுடன் இருக்கும். (உதாரணம்: 1243, 23, 4545, 676 போன்ற Numbers)
இப்போ அந்த Data, வெளியிலிருக்கும் Layers-இலிருந்து உள்ளே இருக்கும் Cylinder Boxகளுக்கு அனுப்பப்படுகிறது.
அங்கு Matrix Multiplication நடக்கிறது. அதாவது, ஒவ்வொரு Valuesகும் முக்கியத்துவம் (Weight) கணக்கிடப்படுகிறது.
கடைசியில், அந்த எண்ணங்கள் ஒரு சிறிய Inside Round Cylinderக்கு அனுப்பப்படும். இது தான் Activation Room. அங்கு இந்த Input Data சரியான Output-க்கு உதவுமா இல்லையா என்பதை முடிவு செய்யப்படுகிறது.
மாற்றங்கள் (Transformations)
Data Scienceல் நாம Dataகளை மாற்றம் செய்வோம்.
இது Scaling, Rotation, Normalization போன்ற முறைகளில் நடக்கும்.
இவை அனைத்தும் Matrix Calculation மூலம் செய்யப்படுகின்றன.
நாம் Dataகளை Machine Learning Modelகு கொடுக்குமுன் இந்த மாதிரியான மாற்றங்களை செய்கிறோம். ஏன் என்றால், இது Modelலின் Accuracy, Speed மேம்படுத்துகிறது.
இதற்காக நமக்கு Scaling Formula, Rotation Matrix (படங்களுக்கு) போன்றவை தேவைப்படுகிறது.
Matrix Transformation மூலம், ஒரு படம் (Image) scale, rotate, flip செய்யலாம், படத்தின் Structure பாதிக்காமல்.
வேகம் மற்றும் திறன் (Speed and Efficiency)
Matrix கணிதம், சாதாரண எண்ணை எண்ணாக கணக்கிடும் முறைகளைவிட வேகமாகவும் எளிமையாகவும் Computerக்கு செயல் படுத்த முடிகிறது.
அதனால்தான் பெரிய Machine Learning மாடல்கள் எல்லாம் மெட்ரிக்ஸ் Algebraவை பயன்படுத்துகிறது.
உதாரணம்:
சாதாரண கணக்கு முறை (One by One):
நீங்கள் பணியாளர்களுக்கான ஊதியத்தை கணக்கிட வேண்டியிருக்கிறது.
(hours × rate)
3 பேர்:
Employee 1: 8 hours × ₹100 = ₹800
Employee 2: 9 hours × ₹100 = ₹900
Employee 3: 7 hours × ₹100 = ₹700
இங்கே ஒவ்வொரு கணக்கையும் தனித்தனியாக செய்ய வேண்டி இருக்கு.
Matrix கணக்கு முறை (ஒரே நேரத்தில்):
Hours = [8, 9, 7]
Rate = 100
இப்போது:
[8 9 7] × [100] = [800, 900, 700]
இதை கணினி ஒரே கட்டத்தில் செய்து முடிக்க முடியும்.
இது மிக வேகமானது, குறிப்பாக நூற்றுக்கணக்கான அல்லது லட்சக்கணக்கான Rows இருந்தால் வேகமாகவும் எளிமையாகவும் செய்து முடிக்க முடியும்.
Comments
Post a Comment