Human Activity Recognition using smartphones
Python for Data Science Introduction
- Python, Anaconda and relevant packages installations
- Why learn Python?
- Keywords and identifiers
- comments, indentation and statements
- Variables and data types in Python
- Standard Input and Output
- Operators
- Control flow: if else
- Control flow: while loop
- Control flow: for loop
- Control flow: break and continue
Python for Data Science:Data Structures
Python for Data Science: Functions
Python for Data Science: Numpy
Python for Data Science: Matplotlib
Python for Data Science: Pandas
Python for Data Science: Computational Complexity
Plotting for exploratory data analysis (EDA)
exploratory data analysis (EDA) is an approach to analyzing data sets to summarize their main characteristics, often with visual methods. A statistical model can be used or not, but primarily EDA is for seeing what the data can tell us beyond the formal modeling or hypothesis testing task.
- Introduction to IRIS dataset and 2D scatter plot
- 3D scatter plot
- Pair plots
- Limitations of pair plots
- Histogram and Introduction to PDF(Probability Density Function)
- Univariate Analysis using PDF
- CDF(Cumulative Distribution Function)
- Mean, Variance and Standard Deviation
- Median
- Percentiles and Quantiles
- IQR(Inter Quartile Range) and MAD(Median Absolute Deviation)
- Box-plot with Whiskers
- Violin Plots
- Summarizing Plots, Univariate, Bivariate and Multivariate analysis
- Multivariate Probability Density, Contour Plot
- Exercise: Perform EDA on Haberman dataset
Linear Algebra
It will give you the tools to help you with the other areas of mathematics required to understand and build better intuitions for machine learning algorithms.
- Why learn it ?
- Introduction to Vectors(2-D, 3-D, n-D),Row Vector and Column Vector
- Dot Product and Angle between 2 Vectors
- Projection and Unit Vector
- Equation of a line (2-D), Plane(3-D) and Hyperplane (n-D), Plane Passing through origin, Normal to a Plane
- Distance of a point from a Plane/Hyperplane, Half-Spaces
- Equation of a Circle (2-D), Sphere (3-D) and Hypersphere (n-D)
- Equation of an Ellipse (2-D), Ellipsoid (3-D) and Hyperellipsoid (n-D)
- Square, Rectangle
- Hyper-cube and Hyper-cuboid
Probability and Statistics
- Introduction to Probability and Statistics
- Population and Sample
- Gaussian/Normal Distribution and its PDF(Probability Density Function)
- CDF(Cumulative Distribution function) of Gaussian/Normal distribution
- Symmetric distribution, Skewness and Kurtosis
- Standard normal variate (z) and standardization
- Kernel density estimation
- Sampling distribution & Central Limit theorem
- Q-Q plot:How to test if a random variable is normally distributed or not?
- Discrete and Continuous Uniform distributions
- How to randomly sample data points (Uniform Distribution)
- Bernoulli and Binomial Distribution
- Log Normal Distribution
- Power law distribution
- Box cox transform
- Co-variance
- Pearson Correlation Coefficient
- Spearman Rank Correlation Coefficient
- Correlation vs Causation
- Confidence interval (C.I) Introduction
- Computing confidence-interval given distribution
- C.I for mean of a normal random variable
- Confidence interval using bootstrapping
- Hypothesis testing methodology, Null-hypothesis, p-value
- Resampling and permutation test
- K-S Test
- K-S Test for similarity of two distributions
- Hypothesis Testing Intution with coin toss example
- Hypothesis testing Mean differences Example
- Resampling
Dimensionality reduction and Visualization:
In machine learning and statistics, dimensionality reduction or dimension reduction is the process of reducing the number of random variables under consideration, via obtaining a set of principal variables. It can be divided into feature selection and feature extraction.
- what is dimensionality reduction?
- Row vector, Column vector: Iris dataset example
- Represent a dataset: D= {x_i, y_i}
- Represent a dataset as a Matrix
- Data preprocessing: Column Normalization
- Mean of a data matrix
- Data preprocessing: Column Standardization
- Co-variance of a Data Matrix
- MNIST dataset (784 dimensional)
- Code to load MNIST Dataset
PCA(principal component analysis)
- Why learn PCA?
- Geometric intuition of PCA
- Mathematical objective function of PCA
- Alternative formulation of PCA: Distance minimization
- Eigen values and Eigen vectors
- PCA for Dimensionality Reduction and Visualization
- Visualize MNIST dataset
- Limitations of PCA
- PCA Code example using Visualization
- PCA Code example using non-Visualization
(t-SNE)T-distributed Stochastic Neighbourhood Embedding
Real world problem: Predict rating given product reviews on Amazon
- Dataset overview: Amazon Fine Food reviews(EDA)
- Data Cleaning: Deduplication
- Why convert text to a vector?
- Bag of Words (BoW)
- Text Preprocessing: Stemming, Stop-word removal, Tokenization, Lemmatization.
- uni-gram, bi-gram, n-grams.
- tf-idf (term frequency- inverse document frequency)
- Why use log in IDF?
- Word2Vec.
- Avg-Word2Vec, tf-idf weighted Word2Vec
- Bag of Words( Code Sample)
- Text Preprocessing( Code Sample)
- Bi-Grams and n-grams (Code Sample)
- TF-IDF (Code Sample)
- Word2Vec (Code Sample)
- Avg-Word2Vec and TFIDF-Word2Vec (Code Sample)
- Exercise: t-SNE visualization of Amazon reviews with polarity based color-coding
Classification And Regression Models: K-Nearest Neighbours
- How “Classification” works?
- Data matrix notation
- Classification vs Regression (examples)
- K-Nearest Neighbours Geometric intuition with a toy example
- Failure cases of KNN
- Distance measures: Euclidean(L2) , Manhattan(L1), Minkowski, Hamming
- Cosine Distance & Cosine Similarity
- How to measure the effectiveness of k-NN?
- Test/Evaluation time and space complexity
- KNN Limitations
- Decision surface for K-NN as K changes
- Overfitting and Underfitting
- Need for Cross validation
- K-fold cross validation
- Visualizing train, validation and test datasets
- How to determine overfitting and underfitting?
- Time based splitting
- k-NN for regression
- Weighted k-NN
- Voronoi diagram
- Binary search tree
- How to build a kd-tree
- Find nearest neighbours using kd-tree
- Limitations of Kd tree
- Extensions
- Hashing vs LSH
- LSH for cosine similarity
- LSH for euclidean distance
- Probabilistic class label
- Code Sample:Decision boundary .
- Code Sample:Cross Validation
- Exercise: Apply k-NN on Amazon reviews dataset
Classification algorithms in various situations
- Introduction
- Imbalanced vs balanced dataset
- Multi-class classification
- k-NN, given a distance or similarity matrix
- Train and test set differences
- Impact of outliers
- Local outlier Factor (Simple solution :Mean distance to Knn)
- K-Distance(A),N(A)
- Reachability-Distance(A,B)
- Local reachability-density(A)
- Local outlier Factor(A)
- Impact of Scale & Column standardization
- Interpretability
- Feature Importance and Forward Feature selection
- Handling categorical and numerical features
- Handling missing values by imputation
- Curse of dimensionality
- Bias-Variance tradeoff
- Intuitive understanding of bias-variance.
- Best and worst cases for an algorithm
Performance measurement of models
Naive Bayes
- Conditional probability
- Independent vs Mutually exclusive events
- Bayes Theorem with examples
- Exercise problems on Bayes Theorem
- Naive Bayes algorithm
- Toy example: Train and test stages
- Naive Bayes on Text data
- Laplace/Additive Smoothing
- Log-probabilities for numerical stability
- Bias and Variance tradeoff
- Feature importance and interpretability
- Imbalanced data
- Outliers
- Missing values
- Handling Numerical features (Gaussian NB)
- Multiclass classification
- Similarity or Distance matrix
- Large dimensionality
- Best and worst cases
- Code example
- Exercise: Apply Naive Bayes to Amazon reviews
Logistic Regression
- Geometric intuition of Logistic Regression
- Sigmoid function: Squashing
- Mathematical formulation of Objective function
- Weight vector
- L2 Regularization: Overfitting and Underfitting
- L1 regularization and sparsity
- Probabilistic Interpretation: Gaussian Naive Bayes
- Loss minimization interpretation
- Hyperparameter search: Grid Search and Random Search
- Column Standardization
- Feature importance and Model interpretability
- Collinearity of features
- Test/Run time space and time complexity
- Real world cases
- Non-linearly separable data & feature engineering
- Code sample: Logistic regression, GridSearchCV, RandomSearchCV
- Exercise: Apply Logistic regression to Amazon reviews dataset.
- Extensions to Logistic Regression: Generalized linear models
Solving optimization problems : Stochastic Gradient Descent
- Differentiation
- Online differentiation tools
- Maxima and Minima
- Vector calculus: Grad
- Gradient descent: geometric intuition
- Learning rate
- Gradient descent for linear regression
- SGD algorithm
- Constrained Optimization & PCA
- Logistic regression formulation revisited
- Why L1 regularization creates sparsity?
- Exercise: Implement SGD for linear regression
Support Vector Machines (SVM)
- Geometric Intution
- Mathematical derivation
- Loss function (Hinge Loss) based interpretation
- Dual form of SVM formulation
- Kernel trick
- Polynomial kernel
- RBF-Kernel
- Domain specific Kernels
- Train and run time complexities
- nu-SVM: control errors and support vectors
- SVM Regression
- Cases
- Code Sample
- Exercise: Apply SVM to Amazon reviews dataset
Decision Trees
- Geometric Intuition: Axis parallel hyperplanes
- Sample Decision tree
- Building a decision Tree:Entropy
- Building a decision Tree:Information Gain
- Building a decision Tree: Gini Impurity
- Building a decision Tree: Constructing a DT
- Building a decision Tree: Splitting numerical features
- Feature standardization
- Building a decision Tree:Categorical features with many possible values
- Overfitting and Underfitting
- Train and Run time complexity
- Regression using Decision Trees
- Cases
- Code Samples
- Exercise: Decision Trees on Amazon reviews dataset
Ensemble Models
- What are ensembles?
- Bootstrapped Aggregation (Bagging) Intuition
- Random Forest and their construction
- Bias-Variance tradeoff
- Bagging :Train and Run-time Complexity.
- Bagging:Code Sample
- Extremely randomized trees
- Random Tree :Cases
- Boosting Intuition
- Residuals, Loss functions and gradients
- Gradient Boosting
- Regularization by Shrinkage
- Train and Run time complexity
- XGBoost: Boosting + Randomization
- AdaBoost: geometric intuition
- Stacking models
- Cascading classifiers
- Kaggle competitions vs Real world
- Assignment: Apply Random Forests & GBDT
Human Activity Recognition
Statement:
The experiments have been carried out with a group of 30 volunteers within an age bracket of 19-48 years. Each person performed six activities (WALKING, WALKING_UPSTAIRS, WALKING_DOWNSTAIRS, SITTING, STANDING, LAYING) wearing a smartphone (Samsung Galaxy S II) on the waist. Using its embedded accelerometer and gyroscope, we captured 3-axial linear acceleration and 3-axial angular velocity at a constant rate of 50Hz.
The objective is to classify activities into one of the six activities performed.
- Data Type
- csv files
- Train.csv (Triaxial acceleration, estimated body acceleration, Triaxial Angular velocity, a 561-feature vector with time and frequency domain variables, activity label)
- Test.csv it is same as train.csv except the label is missing which we need to predict
- Data Size: 58 MB
Key Points:
- Validity of this course is 240 days( i.e Starts from the date of your registration to this course)
- Expert Guidance, we will try to answer your queries in atmost 24hours
- 10+ machine learning algorithms will be taught in this course.
- No prerequisites– we will teach every thing from basics ( we just expect you to know basic programming)
- Python for Data science is part of the course curriculum.
Target Audience:
We are building our course content and teaching methodology to cater to the needs to students at various levels of expertise and varying background skills. This course can be taken by anyone with a working knowledge of a modern programming language like C/C++/Java/Python. We expect the average student to spend at least 5 hours a week over a 6 month period amounting to a 145+ hours of effort. More the effort, better the results. Here is a list of customers who would benefit from our course:
- Undergrad (BS/BTech/BE) students in engineering and science.
- Grad(MS/MTech/ME/MCA) students in engineering and science.
- Working professionals: Software engineers, Business analysts, Product managers, Program managers, Managers, Startup teams building ML products/services.
Course Features
- Lectures 304
- Quizzes 0
- Duration 100+ hours
- Skill level All levels
- Language English
- Students 6
- Assessments Yes
8 Comments
Can I access the videos from anywhere (i.e. from any computer either in home or college system).
Yes, you can.
Is this a proper project that we can showcase in our resume after completion of this course? Or it simply covers theoretical aspects?
This is a full-fledged project that we have worked on using accelerometer and gyroscope data. While you learn theory needed to solve this problem, this is a very hands-on practical project.
During the course, will we making the project side by side ?
yes
Are the videos related to specific projects or are they general AI videos?
They will contain project specific videos and also all the Theoretical and Fundamental concepts needed to solve this problem.