Background

PGP in Artificial Intelligence & Machine Learning

June 28, 202621 min read
Data ScienceAIMLNeural Network

Program: Post Graduate Program in AI & ML Institution: Great Learning (in collaboration with The University of Texas at Austin β€” McCombs School of Business) Duration: ~12 months (2021 – 2022) Portfolio: eportfolio.mygreatlearning.com/sunil-kunchoor-basavaraju


πŸ“– About the Program

The Post Graduate Program in AI & ML is an intensive, industry-focused program delivered by Great Learning in collaboration with The University of Texas at Austin. It covers the full spectrum of modern Artificial Intelligence and Machine Learning β€” from statistical foundations through to cutting-edge deep learning, computer vision, and natural language processing.

The program combines:

  • Live online sessions with industry experts and faculty
  • Hands-on projects using real-world datasets
  • Mentorship from AI/ML practitioners
  • A Capstone Project that integrates learnings across all modules

πŸ—ΊοΈ Program Structure

# Module Key Focus
01 Applied Statistics Probability, Hypothesis Testing, Statistical Inference
02 Supervised Learning Regression, Classification, Model Evaluation
03 Ensemble Techniques Bagging, Boosting, Random Forests, XGBoost
04 Unsupervised Learning Clustering, Dimensionality Reduction
05 Feature Engineering & Model Tuning Feature Selection, Hyperparameter Tuning
06 Recommendation Systems Collaborative Filtering, Content-Based, Hybrid
07 Neural Networks & Deep Learning ANN, CNN basics, RNN basics
08 CNN Architecture & Transfer Learning VGG, ResNet, InceptionV3, Fine-Tuning
09 Advanced Computer Vision YOLO, R-CNN, Segmentation
10 Statistical NLP BoW, TF-IDF, Word2Vec, LDA
11 Sequential NLP LSTM, Transformers, BERT
12 Capstone Project End-to-end AI/ML solution

01. Applied Statistics

πŸ“ 01_Applied_Statistics/ πŸ“… Completed: May 2021

Topics Covered:

  • Descriptive Statistics β€” summarising datasets using mean, median, mode, variance, SD, IQR, skewness and kurtosis; visualised via histograms and box plots
  • Probability Theory β€” joint, marginal and conditional probability; Bayes theorem
  • Probability Distributions β€” Binomial (discrete, fixed trials), Poisson (event counts in intervals), Normal (continuous, symmetric); PMF/PDF/CDF using scipy.stats
  • Confidence Intervals β€” margin of error, significance level, effect of sample size
  • Hypothesis Testing β€” Hβ‚€ / H₁ definition, p-value interpretation, Type I & II errors
  • One & Two Sample Tests β€” one-sample z/t-test, independent two-sample t-test, paired t-test
  • Test of Proportions & Variance β€” z-test for proportions, F-test for variance equality
  • ANOVA β€” one-way ANOVA for comparing 3+ group means simultaneously
  • Chi-Square Test β€” independence test for categorical variables via contingency tables
  • Statistical Power β€” relationship between sample size, effect size, Ξ± and power (1 βˆ’ Ξ²)
  • Correlation & Covariance β€” Pearson r, covariance matrix; correlation β‰  causation
  • Central Limit Theorem β€” sampling distribution of the mean converges to Normal as n β†’ ∞

Project β€” Applied Statistics:

Part 1 β€” Probability & Distributions: Solved 6 real-world problems using Binomial, Poisson and Normal distributions. Designed an e-learning question difficulty classifier (Easy 90%, Moderate 60%, Hard 30%) using norm.cdf.

Part 2 β€” Basketball Team Investment Analysis: EDA and feature engineering (win %, avg baskets per game/tournament) on 61-team dataset. Identified confounding variable (team age) via correlation analysis. Shortlisted 6 investable teams (Team 21, 11, 39, 27, 47, 59) formed 1941–1998.

Part 3 β€” EU Startup Funding Analysis: Hypothesis testing on Disrupt event funding data. H1: Operating vs Closed funds β€” t-test, p=0.1932 (fail to reject). H2: Winner vs Contestant operating rate β€” z-test, p=0.8767 (fail to reject). H3: Funds across NY/SF/EU β€” one-way ANOVA.

Tools: Python, Pandas, NumPy, SciPy, Matplotlib, Seaborn


02. Supervised Learning

πŸ“ 02_Supervised_Learning/ πŸ“… Completed: July 2021

Topics Covered:

  • Linear Regression β€” OLS cost function, gradient descent, RΒ², residual analysis, multicollinearity (VIF)
  • Logistic Regression β€” sigmoid function, log-loss, decision boundary, L1/L2 regularisation, threshold tuning via predict_proba
  • K-Nearest Neighbours (KNN) β€” distance metrics (Euclidean, Manhattan, Minkowski), choosing optimal K, BallTree/KDTree algorithms, mandatory feature scaling
  • Naive Bayes β€” Bayes theorem, Gaussian/Multinomial/Bernoulli variants, Laplace smoothing, independence assumption
  • Support Vector Machines (SVM) β€” maximum-margin hyperplane, C (regularisation) and Ξ³ (gamma) parameters, kernel trick (Linear, RBF, Polynomial), multi-class strategies
  • Model Evaluation β€” confusion matrix, accuracy, precision, recall, F1-score, AUC-ROC, balanced accuracy; when NOT to use accuracy (imbalanced classes)
  • Class Imbalance β€” under-sampling, over-sampling, SMOTE (Synthetic Minority Oversampling Technique)
  • Hyperparameter Tuning β€” GridSearchCV with cross-validation, stratified train-test split

Project β€” Supervised Learning:

Part 1 β€” Orthopaedic Patient Classification (KNN): Classified patients into Normal / Hernia / Spondylolisthesis using 6 biomechanical features. Applied MinMaxScaler, balanced accuracy scoring (class imbalance), and GridSearchCV. Final model: KNN with K=19, BallTree algorithm, balanced accuracy = 0.756.

Part 2 β€” Bank Customer Loan Conversion (Logistic Regression + Naive Bayes): Predicted whether a customer would take a loan on their credit card (targeted marketing). Applied SMOTE for class imbalance, StandardScaler, engineered target column from ambiguous data. Final model: Logistic Regression β€” better recall and F1 than Naive Bayes.

Tools: Python, Pandas, NumPy, Scikit-learn, Imbalanced-learn (SMOTE), Matplotlib, Seaborn


03. Ensemble Techniques

πŸ“ 03_Ensemble_Techniques/ πŸ“… Completed: July 2021

Topics Covered:

  • Decision Trees (CART) β€” Gini impurity vs Information Gain splitting, pre/post-pruning, depth and leaf controls
  • Bias-Variance Trade-off β€” bagging reduces variance, boosting reduces bias; total error decomposition
  • Bagging β€” bootstrap sampling of training data, aggregate predictions; decorrelates models to reduce variance
  • Random Forest β€” bagging + random feature subsets per split; OOB error, feature importance via mean decrease in impurity
  • AdaBoost β€” sequential boosting by up-weighting misclassified samples; learning_rate, decision stumps as weak learners
  • Gradient Boosting (GBC) β€” fits each new tree to residuals via gradient descent; subsample for stochastic boosting
  • XGBoost β€” regularised gradient boosting with L1/L2 penalties, native NaN handling, scale_pos_weight for class imbalance
  • CatBoost β€” gradient boosting with native categorical feature handling (no encoding needed), symmetric trees
  • Model Comparison β€” train vs test gap to detect overfitting; ROC AUC as comparison metric
  • Class Imbalance (Advanced) β€” ADASYN, SMOTETomek, SMOTEENN (beyond basic SMOTE)
  • Model Serialisation β€” pickling trained models (.pkl) for deployment; Flask GUI integration

Project β€” Telecom Customer Churn Prediction:

Predicted customer churn (Yes/No) for a telecom company to drive retention programmes. Dataset: 7,000 customers Γ— 21 features (services, account info, demographics). Applied ADASYN for class imbalance (27% churn), manual categorical encoding, 70:30 train-test split. Trained and tuned 5 ensemble models (Random Forest, AdaBoost, GBC, CatBoost, XGBoost) using GridSearchCV. XGBoost overfit; CatBoost underfit; Gradient Boosting Classifier selected as final model (best train/test balance, highest ROC AUC). Model pickled and deployed as a Flask web app on Heroku.

Tools: Python, Pandas, Scikit-learn, XGBoost, CatBoost, Imbalanced-learn, Pickle, Flask


04. Unsupervised Learning

πŸ“ 04_Unsupervised_Learning/ πŸ“… Completed: July 2021

Topics Covered:

  • K-Means Clustering β€” centroid-based partitioning; K-Means++ initialisation; Elbow Method (WCSS/inertia vs K) and Silhouette Score for choosing optimal K; mandatory feature scaling
  • Hierarchical / Agglomerative Clustering β€” builds a dendrogram bottom-up; linkage methods (Single, Complete, Average, Ward); Cophenetic Correlation Coefficient for validation; no need to pre-specify K
  • K-Means vs Hierarchical β€” speed, scalability, reproducibility, and use-case trade-offs
  • Clustering for Missing Value Imputation β€” use cluster centroids to impute missing values contextually, rather than global mean/median
  • Synthetic Data Generation β€” KernelDensity to model data distribution and sample synthetic points
  • PCA (Principal Component Analysis) β€” covariance matrix, eigenvectors/eigenvalues, explained variance ratio, scree plot; reduces features while preserving maximum variance; applied to tabular, image and text data
  • Dimensionality Reduction Taxonomy β€” Linear (PCA, SVD, NMF), Manifold Learning (t-SNE, Isomap, LLE, MDS), Feature Selection (VIF filter, RFE, forward/backward selection)
  • t-SNE β€” non-linear; for 2D/3D visualisation of clusters only; not suitable for model training

Project β€” Unsupervised Learning (5 Parts):

Part 1 — Car Clustering & Regression: Merged car dataset (mpg, cylinders, horsepower, weight, origin). Cleaned hp column (regex-identified "?" values). K-Means (elbow→k=3) and Hierarchical (average linkage, highest Cophenetic score) both agreed on 3 clusters. Fitted separate Linear Regression per cluster to reveal cluster-specific feature relationships.

Part 2 β€” Wine Quality Imputation: Used K-Means (k=2, bimodal data) to impute 18 missing quality scores by assigning missing rows to nearest cluster centroid. Bonus: synthetic data generation via KernelDensity.

Part 3 β€” Vehicle Shape Classification + PCA: SVM on 18 silhouette features β†’ high balanced accuracy. PCA reduced to 6 components (94% variance explained); SVM re-trained on 6 PCs lost only ~8% accuracy with 1/3 the features.

Part 4 β€” IPL Batsman Ranking: PCA (eigenvalue ranking) + K-Means (k=4 via elbow + silhouette) used to rank 4 player tiers from batting statistics (runs, strike rate, fours, sixes, half-centuries).

Part 5 β€” Dimensionality Reduction Survey: Catalogued all Python-available techniques (Linear, Manifold, Feature Selection); demonstrated PCA on image data (pixel compression and reconstruction).

Tools: Python, Pandas, NumPy, Scikit-learn, SciPy (hierarchy), Imbalanced-learn, Matplotlib, Seaborn


05. Feature Engineering & Model Tuning

πŸ“ 05_Feature_Engineering_Model_Tuning/ πŸ“… Completed: September 2021

Topics Covered:

  • Missing Value Treatment β€” % null analysis per column; drop > threshold, median impute < threshold; why median > mean for skewed data
  • Feature Selection β€” Variance Threshold (drop near-zero variance), Correlation Filter (|r| > 0.8 β†’ drop one), RFE, Forward/Backward selection, feature importance from tree models
  • Regularisation β€” Ridge (L2, shrinks all coefficients), Lasso (L1, drives some to zero = built-in selection), ElasticNet; alpha tuning via cross-validation
  • Cross-Validation β€” K-Fold, Stratified K-Fold (for imbalanced targets), LOOCV, Bootstrapping (confidence interval on performance)
  • ROC Curve & Threshold Tuning β€” AUC-ROC, predict_proba + custom threshold; raising threshold = higher precision, lower recall; tuning based on business cost of FN vs FP
  • Hyperparameter Tuning β€” GridSearchCV (exhaustive), RandomizedSearchCV (efficient for large grids); refit=True, cv_results_ analysis
  • Scikit-learn Pipelines β€” chain scaler + model; prevents data leakage in CV; compatible with GridSearchCV; pickle entire pipeline for deployment
  • PCA for High-Dimensional Data β€” reduce 500+ features to top K components; apply after scaling; small accuracy loss, large speed gain at scale
  • Sampling β€” ADASYN / SMOTE applied only to training fold; under-sampling for very large datasets

Project β€” Semiconductor Yield Prediction (Pass/Fail):

Dataset: 1,567 records Γ— 591 sensor features. Aggressive cleaning pipeline reduced 591 β†’ 116 usable features: dropped > 5% null columns, median imputed the rest, dropped zero-variance columns (323), removed high-correlation pairs (|r| > 0.8). ADASYN oversampling on training data only. Trained 3 Random Forest variants: (1) default, (2) GridSearchCV-tuned, (3) PCA (87 components) + tuned RF. All had high overall accuracy but low Fail-class recall β€” threshold tuned via ROC curve to improve detection of failures. Bootstrap validation confirmed model stability across different sample populations. Final pipeline (scaler β†’ RF) pickled for inference on Future_predictions.xlsx.

Tools: Python, Pandas, Scikit-learn, Imbalanced-learn, Matplotlib, Seaborn, Pickle


06. Recommendation Systems

πŸ“ 06_Recommendation_Systems/ πŸ“… Completed: October 2021

Topics Covered:

  • Popularity-Based Recommendation β€” IMDB Weighted Rating formula (W = (RΓ—v + CΓ—m)/(v+m)); corrects for items with few ratings; same recommendations for all users (no personalisation)
  • Similarity Measures β€” Cosine Similarity (direction of preference), Pearson Correlation (corrects for rating scale bias), Euclidean Distance, Jaccard (binary interactions)
  • User-User Collaborative Filtering β€” find similar users, predict unseen ratings as weighted average; KNNWithMeans corrects for per-user mean bias
  • Item-Item Collaborative Filtering β€” item similarity is more stable than user similarity; "customers who bought X also bought Y"; scales better than user-user
  • Matrix Factorisation (SVD) β€” decomposes user-item rating matrix into latent factors (U Γ— Ξ£ Γ— Vα΅€); captures hidden preferences (genre affinity, price sensitivity); outperforms KNN on sparse matrices; SVD++ adds implicit feedback
  • Cold Start Problem β€” new user (no history β†’ popularity fallback) vs new item (no ratings β†’ content-based fallback); hybrid models as solution
  • Evaluation β€” RMSE, MAE, Precision@K, Recall@K; 5-fold cross-validation via Surprise cross_validate()
  • Market Basket Analysis (Apriori) β€” Support, Confidence, Lift; mlxtend library; "frequently bought together" associations
  • Surprise Library Taxonomy β€” Basic, KNN-Based (KNNWithMeans, KNNWithZScore, KNNBaseline), Matrix Factorisation (SVD, SVD++, NMF), Slope One, Co-Clustering

Project β€” Mobile Phone Recommendation System:

Dataset: 6 CSVs merged β†’ 1.4M ratings β†’ cleaned, deduped, sampled to 1M β†’ filtered users & products with > 50 ratings β†’ 41,892 records Γ— 3 columns (author, product, score). Popularity model used IMDB weighted formula β€” top recommendation: Apple iPhone 5s 16GB. Collaborative filtering: SVD, KNNWithMeans (user-based and item-based) trained via Surprise. SVD achieved lowest RMSE β€” selected as final model. Personalised top-5 recommendations generated per user. Cross-validation applied to all 3 models; minimal RMSE improvement confirming stability.

Tools: Python, Pandas, NumPy, Surprise (SVD, KNN, cross_validate), mlxtend (Apriori), Scikit-learn (cosine_similarity), Matplotlib


07. Neural Networks & Deep Learning

πŸ“ 07_Neural_Networks_Deep_Learning/ πŸ“… Completed: November 2021

Topics Covered:

  • Biological β†’ Artificial Neuron β€” inputs Γ— weights + bias β†’ activation function β†’ output; single neuron = linear classifier, stacked layers = non-linear
  • Architecture β€” Input, Hidden, Output layers; depth (layers) vs width (neurons per layer)
  • Forward Propagation β€” z = WΒ·x + b β†’ a = f(z); data flows left to right through layers
  • Activation Functions β€” Sigmoid (binary output), Tanh (zero-centred hidden), ReLU (default hidden; avoids vanishing gradient), Leaky ReLU (dying ReLU fix), Softmax (multi-class output)
  • Loss Functions β€” MSE/MAE (regression), Binary Crossentropy (binary classification), Categorical Crossentropy (multi-class)
  • Backpropagation β€” chain rule applied backwards; computes βˆ‚Loss/βˆ‚W for every weight; feeds gradient descent
  • Optimisers β€” SGD, Momentum, RMSProp, Adam (default), Adagrad; learning rate scheduling
  • Batch Size & Epochs β€” trade-offs between gradient quality, speed, and generalisation; small batches act as regulariser
  • Regularisation β€” Dropout (random neuron deactivation during training), Batch Normalisation (stabilises, speeds up training), L1/L2 weight penalties, Early Stopping
  • TensorFlow/Keras β€” Sequential API, compile(), fit(), model.save() / load_model(); callbacks (EarlyStopping, ModelCheckpoint)
  • CNN Basics β€” Convolutional layers (learnable filters, shared weights), Pooling (spatial downsampling), Flatten; dramatically fewer parameters than fully-connected on image data
  • Image Preprocessing β€” cropping, Sobel/Gaussian/Laplace filters, pixel normalisation (0–255 β†’ 0–1), channel reshaping, one-hot encoding

Project β€” Introduction to Neural Networks:

Part 1 β€” Signal Quality Regression (MLP): Predicted signal quality from 11 measurement parameters (1,599 records). Architecture: BatchNorm β†’ Dense(10, ReLU) β†’ Dense(10, ReLU) β†’ Dense(1). Optimiser: SGD, Loss: MSE. Best config: batch=10, epochs=30; validation loss converged to ~0.4. Model saved with Keras model.save().

Part 2 β€” SVHN Street Digit Recognition (CNN/MLP): Recognised single digits (0–9) from Google Street View house number images. Data preprocessing pipeline: cropping (reduce multi-digit frames) + Sobel filter (edge sharpening) + normalisation + channel reshape + one-hot encoding. Architecture: Flatten β†’ Dense(256, ReLU) β†’ Dense(128, ReLU) β†’ Dense(10, Softmax). Without preprocessing: 68% accuracy; with cropping + Sobel: **83% accuracy** (+15%). Final config: batch=100, epochs=30.

Tools: Python, TensorFlow, Keras, NumPy, Matplotlib, SciPy (image filters), h5py


08. CNN Architecture & Transfer Learning

πŸ“ 08_Computer_Vision_CNN_Transfer_Learning/ πŸ“… Completed: December 2021 πŸ“ Shared resources: 08_09_slides_codes_projects/Project - 1/

Topics Covered:

  • Why CNN > SVC/ANN for Images β€” flattening destroys spatial relationships; CNN convolution preserves and exploits local structure
  • Convolutional Layer β€” learnable filters slide over image; feature maps detect edges/textures/shapes; parameter sharing (same filter across all positions); padding and stride
  • Pooling Layer β€” Max Pooling (strongest activations) and Average Pooling; spatial downsampling; translation invariance
  • Typical CNN Pattern β€” [Conv2D β†’ Activation β†’ MaxPool] Γ— N β†’ Flatten β†’ Dense β†’ Softmax
  • Deep Architectures β€” AlexNet, VGG16/19 (3Γ—3 filters stacked), ResNet50 (skip connections, solves vanishing gradient), InceptionV3 (parallel multi-scale filters), InceptionResNetV2, MobileNet (lightweight depthwise separable convolutions)
  • Residual / Skip Connections β€” learn residual F(x) = H(x)βˆ’x; gradients flow directly backwards enabling 50–150+ layer networks
  • Transfer Learning β€” Feature Extraction (freeze pre-trained layers, replace head) vs Fine-tuning (unfreeze + retrain at low LR); ImageNet pre-trained weights as starting point
  • ImageDataGenerator & Data Augmentation β€” batch loading from disk (memory efficient); rotation, flip, zoom, shear augmentations applied on-the-fly

Project β€” Plant Species Classification (12 classes, 4,767 images):

Compared 3 approaches: SVC (RGB→Grayscale→Flatten→PCA) = ~16%; Feed-Forward ANN = ~14%; Custom CNN (3 Conv+Pool blocks + Dense head, ImageDataGenerator augmentation) = ~80%. CNN dominates because convolution learns spatial leaf features invisible after flattening. Transfer Learning bonus: InceptionResNetV2 fine-tuned for further accuracy improvement.

Tools: Python, TensorFlow, Keras, Scikit-learn (SVC, PCA), Matplotlib, PIL/OpenCV


09. Advanced Computer Vision β€” Object Detection

πŸ“ 09_Computer_Vision_Object_Detection/ πŸ“… Completed: January 2022 πŸ“ Shared resources: 08_09_slides_codes_projects/Project - 2/

Topics Covered:

  • Object Detection β€” R-CNN (region proposals + CNN per region), Fast R-CNN (CNN once, project regions), Faster R-CNN (RPN built-in, end-to-end); IoU, Non-Maximum Suppression, Anchor Boxes
  • YOLO (You Only Look Once) β€” grid-based single forward pass; objectness Γ— class probability; real-time (30+ FPS)
  • SSD (Single Shot Detector) β€” multi-scale feature maps; detects objects at different scales in one pass
  • Semantic Segmentation β€” pixel-level class labels; FCN (fully convolutional), U-Net (encoder-decoder + skip connections between matching resolution layers), Dice Coefficient as evaluation metric
  • Instance Segmentation β€” Mask R-CNN; per-object pixel masks on top of Faster R-CNN
  • Face Recognition & Metric Learning β€” VGGFace embeddings (2,622-dim per face); Euclidean/Cosine distance between embeddings; One-Shot Learning via thresholding
  • Siamese Networks β€” shared-weight twin networks; Contrastive Loss (pairs) and Triplet Loss (anchor-positive-negative) to learn identity-discriminative embedding spaces

Project β€” Advanced Computer Vision (CV-2):

Part 1 β€” Face Segmentation (U-Net): Detect and mask faces in movie stills (409 training images). Custom U-Net with skip connections; custom Dice Coefficient metric and Dice Loss. White background + red face overlay gave best Dice score. Limited data constrained generalisation; prediction images successfully masked.

Part 2 β€” Face Recognition (VGGFace + SVM): Identify individuals from 10,770 images (100 people, Pinterest dataset). Pipeline: load VGGFace pre-trained model β†’ generate (2,622,) embedding per image β†’ LabelEncode + StandardScaler β†’ PCA reduction β†’ SVM classifier. Test accuracy: 95%. Both prediction images correctly identified. Embedding-based approach generalises without retraining for new people.

Tools: Python, TensorFlow, Keras, keras-vggface, Scikit-learn (SVM, PCA), OpenCV, NumPy, Matplotlib


10. Statistical NLP

πŸ“ 10_Statistical_NLP/ πŸ“… Completed: January 2022 πŸ“ Shared resources: 10_11_slides_codes_projects/Project-1/

Topics Covered:

  • Text Preprocessing Pipeline β€” language detection (fasttext), special char/number removal (regex), lowercasing, stop word removal, tokenisation, stemming (PorterStemmer, rule-based), lemmatisation (WordNetLemmatizer, vocabulary-based)
  • Bag of Words (BoW) β€” term frequency matrix; each word = one dimension; sparse; ignores word order; CountVectorizer(ngram_range=(1,2))
  • TF-IDF β€” TF x IDF; downweights common words, upweights rare discriminative terms; generally outperforms raw counts; TfidfVectorizer
  • HashingVectorizer β€” fixed-size output via hash function; no vocabulary; memory-efficient for streaming; risk of hash collisions
  • Word2Vec β€” dense word embeddings; CBOW vs Skip-gram; semantic relationships as vector offsets; gensim.Word2Vec
  • Multi-Label Classification β€” single sample can have multiple labels; MultiLabelBinarizer + OneVsRestClassifier; evaluation via F1 + average precision/recall (not raw accuracy)
  • Regular Expressions β€” pattern matching for text cleaning; re.sub(), character classes, capture groups, word boundaries
  • Classifiers for Text β€” Logistic Regression, SVC, Random Forest, XGBoost; ensemble methods scale better to high-dimensional sparse text features

Project β€” Blog Authorship Multi-Label Classification:

Dataset: Blog Authorship Corpus β€” 681,288 posts, 19,320 bloggers. Labels: gender + age + topic + astrological sign (combined multi-label). Text cleaned β†’ CountVectorizer / TF-IDF / HashingVectorizer x 4 classifiers (RF, SVC, LR, XGBoost) β†’ 12-combination comparison grid. XGBClassifier + TF-IDF selected as best. Hyperparameter tuning via GridSearchCV β€” marginal improvement. Key metric: F1-score (not accuracy β€” multi-label problem).

Tools: Python, NLTK, fasttext, Scikit-learn, XGBoost, Gensim (Word2Vec), Matplotlib, WordCloud


11. Sequential NLP β€” RNNs & LSTMs

πŸ“ 11_Sequential_NLP/ πŸ“… Completed: February 2022 πŸ“ Shared resources: 10_11_slides_codes_projects/Project-2/

Topics Covered:

  • Why Sequential Models β€” BoW/TF-IDF lose word order; RNNs maintain hidden state as memory passing context from step to step
  • RNN β€” ht = tanh(Wx.xt + Wh.ht-1 + b); shared weights across time steps; problems: vanishing/exploding gradients for long sequences
  • LSTM β€” adds cell state + 3 gates (Forget: erase irrelevant memory, Input: write new info, Output: expose relevant state); handles long-range dependencies
  • GRU β€” simplified LSTM with 2 gates (Reset + Update); fewer parameters; often comparable performance
  • Bidirectional LSTM β€” processes sequence left-to-right AND right-to-left; concatenates both hidden states; full context for each token; ideal for classification
  • Sequence Padding β€” pad_sequences(maxlen, padding='pre'); pre-padding keeps actual text nearest LSTM output; truncates long sequences
  • Embedding Layer β€” learned dense word vectors trained end-to-end; Embedding(vocab_size, dim, input_length)
  • GloVe Pre-trained Embeddings β€” global word co-occurrence vectors; initialise Embedding layer with GloVe weights; helps with limited training data
  • Attention Mechanism β€” instead of fixed context vector, decoder attends to all encoder states weighted by relevance; basis of the Transformer
  • NMT with Attention β€” encoder LSTM outputs all hidden states; attention weights compute context vector per decoder step; overcomes seq2seq bottleneck
  • Advanced LMs (Overview) β€” ELMo (contextual bidirectional LM), BERT (masked LM + next sentence prediction, bidirectional transformer), GPT (autoregressive), Transformer (multi-head self-attention, parallelisable)

Project β€” Sequential NLP:

Part 1 β€” IMDB Sentiment Analysis (LSTM): 50,000 movie reviews; vocab=10,000; maxlen=500; pre-padded. Embedding β†’ LSTM β†’ Dense(1, sigmoid). Training ~98%, test ~85%; slight overfitting. Tuning (longer maxlen, more units, stop word removal) showed minimal uplift β€” main gain requires more data.

Part 2 β€” News Headline Sarcasm Detection (Bidirectional LSTM + GloVe): 28,619 headlines (The Onion vs HuffPost). Preprocessing: tokenisation + lemmatisation + stemming + WordCloud EDA. GloVe weight matrix β†’ Bidirectional LSTM. Architecture designed for 10–15 epoch training for full accuracy.

Tools: Python, TensorFlow, Keras (LSTM, GRU, Bidirectional, Embedding), NLTK, GloVe, NumPy, Matplotlib, WordCloud


12. Capstone Project

πŸ“ 12_Capstone_Project_AIML/

An end-to-end AI/ML project integrating skills from all prior modules:

  • Problem definition and business case framing
  • Data collection, exploration, and preprocessing
  • Feature engineering and model selection
  • Model training, evaluation, and optimisation
  • Presentation of insights and recommendations

πŸ› οΈ Technologies & Tools

Data Science & ML Libraries

Category Libraries
Data Manipulation Pandas, NumPy
Visualisation Matplotlib, Seaborn, Plotly
Machine Learning Scikit-learn, XGBoost, LightGBM
Deep Learning TensorFlow, Keras
NLP NLTK, spaCy, Gensim, HuggingFace Transformers
Computer Vision OpenCV, PIL/Pillow
Recommendation Systems Surprise

Development Tools

Tool Purpose
Jupyter Notebook Exploratory analysis and prototyping
Google Colab GPU-accelerated training
Git & GitHub Version control
Python Primary language

πŸ† Projects Summary

Project Module Description
Statistical Analysis Applied Statistics Hypothesis testing and EDA on real datasets
Predictive Modelling Supervised Learning Classification and regression models
Customer Segmentation Unsupervised Learning K-Means & PCA for market segmentation
Movie Recommendation Recommendation Systems Collaborative filtering engine
Image Classifier CNN & Transfer Learning Fine-tuned ResNet50 for image classification
Object Detection Advanced CV YOLO-based object detection pipeline
Sentiment Analysis Statistical NLP NLP pipeline for product review sentiment
Text Generation Sequential NLP LSTM-based language model
Capstone Capstone End-to-end business AI/ML solution

πŸ“‚ Repository Structure

pgp-ai-ml/
β”œβ”€β”€ README.md                                   ← You are here
β”œβ”€β”€ 01_Applied_Statistics/
β”‚   └── README.md                               ← Module notes & projects
β”œβ”€β”€ 02_Supervised_Learning/
β”‚   └── README.md
β”œβ”€β”€ 03_Ensemble_Techniques/
β”‚   └── README.md
β”œβ”€β”€ 04_Unsupervised_Learning/
β”‚   └── README.md
β”œβ”€β”€ 05_Feature_Engineering_Model_Tuning/
β”‚   └── README.md
β”œβ”€β”€ 06_Recommendation_Systems/
β”‚   └── README.md
β”œβ”€β”€ 07_Neural_Networks_Deep_Learning/
β”‚   └── README.md
β”œβ”€β”€ 08_Computer_Vision_CNN_Transfer_Learning/
β”‚   └── README.md
β”œβ”€β”€ 09_Computer_Vision_Object_Detection/
β”‚   └── README.md
β”œβ”€β”€ 10_Statistical_NLP/
β”‚   └── README.md
β”œβ”€β”€ 11_Sequential_NLP/
β”‚   └── README.md
└── 12_Capstone_Project_AIML/
    └── README.md

πŸš€ How to Use This Repository

  1. Browse by module β€” Navigate into any numbered folder to find notes, notebooks, and project files.
  2. Load into NotebookLM β€” Upload this README and module READMEs into NotebookLM to generate summaries, Q&A, and study guides.
  3. Add your materials β€” Drop slides, notebooks (.ipynb), PDFs, or notes into each module folder and update the module README.

πŸ“œ Certification


Last updated: June 2026