කෘතීම බුද්ධිය (Artificial Intelligence) සම්බන්ධ systems හෝ applications design කිරීම, develop කිරීම හා deploy කිරීම පදනම් කරගෙන නිර්මාණය වුණු රැකියාවක් ලෙස AI/ML Engineer position එක හැදින්විය හැක. ඒ අනුව දත්ත විශ්ලේෂණය කිරීම තුලින් සංකීර්ණ ප්රශ්න විසදීමට හෝ කාර්යයන් automate කිරීමට AI/ML Engineer කෙනෙක් විශේෂයෙන්ම අවධානය යොමු කරයි.
- Data Collection and Preprocessing
- AI Model Development and Training
- Application Development
- Model Deployment and Integration
- Performance Monitoring and Maintenance
Machine Learning algorithms සහ techniques ගණිතය සහ පරිගණක විද්යාව පදනම්ව සකස් වී ඇත. එබැවින් ගණිතය බොහෝ අවස්තාවලදී AI Engineer කෙනෙක්ට අවශ්ය වේ. ඒ අනුව AI concepts නිර්මාණය කිරීමට, තේරුම් ගැනීමට, AI models optimize කිරීමට ගණිතය භාවිතා කරන ආකාරය පහත පරිදි වේ.
- Calculus
- Linear Algebra
- Probability and Statistics
අවකලනය, අනුකලනය වැනි ගණිත කර්ම මේ යටතට ගැනේ. ඒ අනුව ඒවා භාවිතා කරමින් AI models optimize කිරීම, error minimization සිදුකල හැක. උදාහරණයක් ලෙස Gradient descent වගේ optimization techniques අපි model training process එකේදි බහුලව භාවිතා කරනු ලැබේ. එහිදී backpropagation හරහා loss එක අඩු කරමින්, parameter values optimize කිරීමට calculus භාවිතා කෙරේ.
AI වලදි අපට සෑම විටම දත්ත සමග වැඩ කරන්න සිද්දවෙනවා. බොහෝවිට අපට හම්බෙන්නෙ high-dimensional space එකක විහිදෙන දත්ත. ඒ අනුව vectors, matrices, විවිද matrix operations, data transformations, eigen values and eigen vectors ගැන මෙහි අඩංගු වේ.
සම්භාවිතාවය සහ සංඛ්යානය මත පදනම් වූ algorithms, concepts කීපයක්ම සමග කටයුතු කිරීමට අපට machine learning වලදි සිදුවේ. Random variables, Mean, Variance, Bayes theorem වගේම linear regression, tree-based methods වැනි algorithms වලදී භාවිතා වන statistics concepts මේ යටතට ගැනේ.
📚 Resources:
- Khan Academy - Calculus
- Khan Academy - Linear Algebra
- Khan Academy – Probability and Statistics
- Essential Mathematics for Machine Learning
සිද්ධාන්ත අවබෝධයෙන් පසුව ඒවා implement කිරීමට, දත්ත විශ්ලේෂණය කිරීමට, සහ AI සම්බන්ධ කරමින් Applications නිර්මාණයට programming දැනුම අනිවාර්යය වේ. ඒ සදහා අවශ්ය මූලික සංකල්ප පහත පරිදි වේ.
- Variables and Data Types
- Data Structures (List, Tuple, Set, Dictionary)
- Control Flow (if-else, loops)
- Functions
- Object Oriented Programming
Java, JavaScript, Python, C# වැනි විවිධ programming languages මේ සදහා භාවිතා කල හැකි නමුත්, AI සදහා අවශ්ය බොහෝ libraries සහ frameworks පවතින නිසාත්, සරල syntax භාවිතා කලහැකි නිසාත් බොහෝ විට AI සදහා Python programming language එක භාවිතා වේ.
📚 Resources:
AI projects වලදී බොහෝවිට අපට කණ්ඩායමක් ලෙස කටයුතු කිරීමට සිදුවේ. එවිට data, programming codes වැනි දේවල් සාමූහිකව භාවිතා කිරීමට සිදුවේ. එවැනි project එකක workflow එක manage කිරීමට GitHub භාවිතා කල හැක. එහි විවිධ operations සිදු කිරීම සදහා git commands භාවිතා කල හැක.
- Git and GitHub
- Git Commands
- Working with Branches
📚 Resources:
දත්ත සමග කටයුතු කරන profession එකක් ලෙස AI Engineer කෙනෙක්ට විවිධ sources වලින් ලැබෙන දත්ත සමග ගණුදෙනු කිරීමට සිදුවේ. එමෙන්ම විවිද ආකාරවල දත්ත (tabular, text, images, graphs) සමග ගණුදෙනු කිරීමට සිදුවෙන බැවින් විවිධ ආකාරයේ databases පිලිබදව දැනුවත්කමක් තිබීම අවශ්ය වේ.
- Relational Databases (MySQL, PostgreSQL)
- NoSQL Databases (MongoDB)
- Vector Databases (Chroma, Pinecone)
- Graph Databases (Neo4j)
📚 Resources:
- MySQL Database – Programming with Mosh
- NoSQL Databases – freeCodeCamp.org
- Vector Databases – CodePRO LK
- Graph Databases – CodePRO LK
විවිධ ආකාරයේ දත්ත සමග කටයුතු කිරීමට සිදුවෙනවා මෙන්ම විවිධ ප්රශ්න සහිත දත්ත සමග කටයුතු කිරීමට සිදුවේ. ඒ වගේම දත්ත කට්ටලය, AI algorithm එකකට ලබා දීමට අවශ්ය පරිදි දත්ත visualize කරමින්, දත්ත විශ්ලේෂණය කරමින් ඒවා සැකසීමට සිදුවේ. ඒ සදහා භාවිතා කරන ප්රධාන libraries කීපයක් පිලිබදව දැනුවත්බවක් තිබීම AI Engineer කෙනෙක්ට අනිවාර්යය වේ.
- NumPy
- Pandas
- Matplotlib, Seaborn
Vectors, Metrices සමග ගණුදෙනු කිරීමේදී numerical computations සදහා භාවිතා කෙරේ.
විශේෂයෙන්ම Structured ආකාරයෙන් පවතින දත්ත මෙහෙයවීමට සහ විශ්ලේෂණය කිරීමට මෙය භාවිතා කෙරේ.
දත්ත අතර පවතින විවිධ patterns, distributions දැකබලා ගැනීමට, visualize කිරීමට භාවිතා කෙරේ.
📚 Resources:
- NumPy, Matplotlib, Pandas – CodePRO LK
- NumPy – tutorialspoint
- Matplotlib - tutorialspoint
- Pandas - tutorialspoint
- Seaborn - tutorialspoint
Algorithm එකට සැපයීම සදහා දත්ත ගොනු සැකසීම, විවිද ප්රශ්න ආකාර සදහා භාවිතා කල හැකි algorithms ගැන අධ්යයන කිරීම මෙහිදී සිදු කල යුතුය. එමෙන්ම train කරන AI models වල performance තීරණය කිරීමට භාවිතා කරන විවිධ evaluation metrices ගැන අධයයනය කල යුතුය.
- Preprocessing Techniques
- Data Cleaning (Handling missing values, Outliers)
- Data Transformation (Feature scaling, Encoding)
- Feature Engineering (Feature selection, Feature extraction)
- Algorithms
- Types of Machine Learning (Supervised, Unsupervised, Reinforcement)
- Regression (Linear Regression, Decision Tree, Random Forest)
- Classification (Logistic Regression, Support Vector Machine, K-Nearest Neighbors, Naïve Bayes, Random Forest)
- Clustering (K-Means Clustering, Hierarchical Clustering, DBSCAN)
- Ensemble Models (Random Forest, Gradient Boosting, XGBoost)
- Model Evaluation Techniques
- Regression (Mean Squared Error, Mean Absolute Error)
- Classification (Accuracy, Precision, Recall, F1-score, ROC Curve, Confusion Matrix)
- Clustering (Silhouette score)
- Hyperparameter Tuning (GridSearchCV, RandomSearchCV)
📚 Resources:
- Machine Learning – CodePRO LK
- Regression Project – Laptop Price Prediction - CodePRO LK
- Classification Project – Sentiment Analysis - CodePRO LK
සම්පූර්ණයෙන්ම Neural Networks භාවිතා කරමින් සංකීර්ණ ගැටලු විසදීම සදහා AI systems නිර්මාණය කිරීම මෙහිදී අධ්යයනය කල යුතුය. එමෙන්ම tabular දත්ත ගොනු සමග මෙන්ම images, text, audio, video දත්ත ගොනු සමග කටයුතු කිරීමද, ඒවාට ගැලපෙන විවිධ Neural Networks Architectures නිර්මාණය කිරීම පිලිබදව ඉගෙනගත යුතුය.
- Neural Networks
- Convolutional Neural Networks
- Transfer Learning
- Object Detection (YOLO)
- Recurrent Neural Networks (LSTM, GRU)
- Transformer Networks
- Encoder, Decoder, Attention
- Python Deep Learning Frameworks
විවිධ problems සදහා neural networks භාවිතා කරමින් AI models නිර්මාණය කිරීම සදහා භාවිතා කල හැකි Python framework එකක් ඉගෙනගත යුතුය. ඒ සදහා TensorFlow, Pytorch වැනි framework එකක් තෝරාගෙන practically AI models නිර්මාණය කල හැකිය.
📚 Resources:
- Deep Learning – CodePRO LK
- Convolution Neural Networks – CodePRO LK
- Recurrent Neural Networks – CodePRO LK
- Transformer Neural Networks – CodePRO LK
- Tensorflow
- Pytorch
අපි නිර්මාණය කරන ML model එකක් වුවත්, Neural Network model එකක් වුවත් අවසානයේදී එය deploy කර භාවිතා කිරීම සදහා අවස්තාව ලබා දිය යුතුය. එම ක්රියාවලිය තුල විවිධ අවස්තා පිලිබදව මෙහිදී ඉගෙනගත යුතුය. ඒ අනුව AI models integrate කර API Endpoints නිර්මාණය කර deploy කිරීම, Cloud services භාවිතය, Deploy කල AI model monitoring and maintenance පිලිබදව මෙහිදී අධ්යයනය කල යුතුය.
- Server-side development (Flask, FastAPI)
- Docker and Kubernetes
- Model Deployment
- AWS Sage maker, Azure ML Studio
- Model Monitoring
- DVC (Data Versioning Control)
📚 Resources:
AI හරහා නව දත්ත, තොරතුරු (text, image, video, audio) අලුතින් generate කිරීම පදනම්ව generative ai models නිර්මාණය කර ඇත. ඒ අනුව ඒවා භාවිතා කිරීම, ඒවා විවිධ applications වලට සම්බන්ධ කිරීම වැනි කාර්යයන් හරහා problems විසදීම, කාර්යයන් automate කිරීම generative ai හරහා සිදු කල හැක.
- Large Language Models
- Large Vision Models
- LLM Application framework (LangChain, LlamaIndex)
- Prompt Engineering
- RAG Architecture
- Agents and Tools
- LLM Quantization
- LLM Finetuning
- LLM Evaluation
📚 Resources:
