
Learn to become a machine learning engineer from scratch by building web apps that use ML predictions, while mastering Python, NumPy, pandas, Psychic Learn, data analysis, visualization, and TensorFlow.
Install Anaconda to set up Python and essential data packages for running course code across Windows, Mac, and Linux. Next, install Zim packages to test EAI code.
Identify numerical, categorical, time series, and textual data types and how they appear in machine learning projects, with continuous vs discrete, finite categories, and encoding needs.
Learn NumPy basics for machine learning: install and import NumPy, create and manipulate arrays, perform arithmetic, exponential, and logarithmic operations, and dot products, and reshape to multi-dimensional arrays.
Explore how pandas enables data manipulation with series and dataframes, loading data with read_csv, inspecting shape and info, and cleaning data through drop_duplicates, rename, and column normalization.
Learn how to split data into training and testing sets to train a machine learning model and evaluate it on unseen data, using features X and Y.
Explore the curse of dimensionality, where more attributes make data sparse and can degrade model accuracy. Learn underfitting and overfitting, and use cross-validation and dimensionality reduction to improve performance.
Learn how regression predicts continuous outputs from inputs using X and Y within supervised learning, contrasting it with unsupervised learning and classification, and explore linear regression that minimizes error.
Explore simple linear regression with ordinary least squares to fit a line that minimizes squared residuals, predicting salaries from years of experience and extending to multiple regression.
Learn how linear regression minimizes the sum of squared errors with ordinary least squares, finding the global minimum via partial derivatives and normal equations to identify intercept and slope.
Explore regression evaluation using observed versus predicted values with MSE, MAE, and RMSE to quantify errors and highlight the impact of large residuals.
Explore how R-squared serves as an accuracy-like evaluation metric for linear regression, measuring variance between observed and fitted values.
Compute the ordinary least squares solution for simple linear regression to derive the best fit line y = omega naught + omega one x. Examine global minimum, slope, and intercept.
Apply simple linear regression to predict salary from years of experience by fitting a line and minimizing residual error, using numpy and pandas for handling and training and testing sets.
Explore multi linear regression from scratch, using multiple independent variables and coefficients to predict a single dependent variable, with simple regression contrast and real-world profit examples.
Implement multi linear regression from scratch with multiple independent variables, using beta1, beta2, and beta3 and an intercept to predict profit from R&D spend, administration, and marketing spend.
Encode the state with one-hot encoding, assemble features and label for profit, split into train and test sets, train a multiple linear regression model, and evaluate with MAE, MSE, RMSE.
Explore logistic regression as a classification method, distinguishing binary and multiclass problems, and contrast with linear regression, focusing on hypothesis, cost function, and gradient descent.
Learn why linear regression is unbounded for classification, and how logistic regression yields a bounded 0–1 output. Apply a 0.5 threshold to classify and note misclassification risks in medical data.
Explore the sigmoid (logit) function and its use in logistic regression for binary classification, mapping theta^T x to a 0–1 score and applying a 0.5 threshold.
Learn how logistic regression creates a decision boundary that separates two classes, illustrated by bad and good tumors, using theta^T x and gradient descent with a bias term x0.
Explain how logistic regression uses a sigmoid function and cross entropy loss to replace mean squared error, addressing convexity and guiding gradient descent toward a global minimum.
Explore gradient descent for logistic regression, using cross-entropy cost, a convex function, and iterative updates of theta with learning rate alpha to reach the global minimum.
Implement logistic regression for binary classification, using sigmoid output and cross-entropy loss. Work with an employee left dataset to predict departures, exploring features and visualizing to select important columns.
Visualize data with cross tab plots to compare salary and retention, encode salary with dummies, prepare features, and train a logistic regression model evaluated by a confusion matrix.
Explore artificial neural networks, from input to output, using neurons, weights, biases, and activation functions. See how layers imitate the brain to learn from observational data and form predictive models.
Learn how a simple neural network maps inputs to outputs through seven steps, using forward propagation, a model with arbitrary initialization, and a loss-based optimization to reach a global minimum.
Understand how random weight initialization affects model outputs and error. Apply gradient descent to update weights to minimize loss, using MSE and cross-entropy as examples.
Learn the basics of partial differentiation, its role in backpropagation for a neural network, and essential concepts like constants, differentiating powers, and the chain rule.
Understand activation functions and their role in forward and backward propagation, including sigmoid and rectified linear unit, non-linearity, and vanishing gradient challenges.
See how adding bias to neural network neurons shifts the line away from the origin, increasing model flexibility and reducing error by adjusting the y-intercept.
Explore how regularization reduces overfitting and model complexity by penalizing large weights with L2 regularization, guiding gradient descent toward better generalization in neural networks.
Master gradient descent to minimize the cost function zeta by updating theta with learning rate alpha, using partial derivatives for single and multivariate inputs to approach the global minimum.
Explore stochastic gradient descent and the Adam optimizer, including how gradient descent updates weights based on loss and how momentum smooths convergence toward the global minimum.
Explore how mini-batch stochastic gradient descent balances computation and bias by updating weights using small data batches, improving convergence for neural networks.
Set up a neural network environment with Anaconda, activate it, and code a basic neuron in a Jupyter notebook using three inputs, weights, and a bias.
Code a neuron layer with four inputs and multiple neurons, using weights and biases. Demonstrate weighted sums without activation, showing a linear regression-like neural layer until activation is applied.
Learn to build a multi-layer dense neural network using object oriented programming, implementing forward propagation with weights, biases, and dot product.
Explore how activation functions bound the net input, the weighted sum of inputs plus bias, using sigmoid for nonlinearity to empower neural networks to learn complex mappings.
Explore activation functions that provide nonlinearity, focusing on step, sigmoid, hyperbolic tangent, and the fourth, with step thresholds and sigmoid binary classification.
Compare tanh and ReLU activation functions, noting tanh's -1 to 1 range and ReLU's nonlinearity versus sigmoid. Highlight how these choices affect backpropagation and issues like vanishing and dying ReLU.
Explore deep learning as a subset of machine learning, and learn how neural networks use input, hidden, and output layers with TensorFlow's tensor and data flow graph concepts.
Learn how tensor ranks define scalars, vectors, matrices, and higher-dimensional tensors, and how TensorFlow uses a data flow graph to compute final outputs from inputs through weights, biases, and activations.
Explore TensorFlow program elements and the workflow for building and executing a computational graph. Learn constants, placeholders, variables, and sessions, including feeding data and evaluating nodes in a linear model.
Explore how TensorFlow uses data flow graphs to perform numerical computation with tensors, constants, variables, and placeholders, and learn basic graph execution with sessions.
Explore Keras, the official high-level API for TensorFlow, and learn how its modular, open-source framework builds neural networks by stacking layers and connecting graphs for differentiable training on TensorFlow.
Explore Keras sequential and functional models for neural networks, detailing convolutional networks, layer-by-layer processing, and softmax outputs, plus multi-input multi-output architectures, shared weights, and domain adaptation strategies.
Build a simple flex web app to display hello world by mapping a hello function to a root endpoint with a decorator, then run on 127.0.0.1:8000.
Machine learning is a branch of artificial intelligence (AI) focused on building applications that learn from data and improve their accuracy over time without being programmed to do so.
In data science, an algorithm is a sequence of statistical processing steps. In machine learning, algorithms are 'trained' to find patterns and features in massive amounts of data in order to make decisions and predictions based on new data. The better the algorithm, the more accurate the decisions and predictions will become as it processes more data.
Machine learning has led to some amazing results, like being able to analyze medical images and predict diseases on-par with human experts.
Google's AlphaGo program was able to beat a world champion in the strategy game go using deep reinforcement learning.
Machine learning is even being used to program self driving cars, which is going to change the automotive industry forever. Imagine a world with drastically reduced car accidents, simply by removing the element of human error.
Topics covered in this course:
1. Warm-up with Machine learning Libraries: numpy, pandas
2. Implement Machine Learning algorithms: Linear, Logistic Regression
3. Implement Neural Network from scratch
4. Introduction to Tensorflow and Keras
5. Start with simple "Hello World" flask application
6. Create flask application to implement linear regression and test the API's endpoints
7. Implement transfer learning and built an app to implement image classification