Skip to content

This repository belongs to the course of machine learning with Python which is getting ready for AUT

License

Notifications You must be signed in to change notification settings

AmirMardan/ml_course

Repository files navigation

Welcom to Python and machine learning course

This repository is created by Amir Mardan to maintain and preview the contents for a Python and machine learning course prepared for Amirkabir University of Technology, Tehran, Iran. Please contact me via my email ([email protected]) for your lovely feedback and suggestions.


NOTE

I will push new contents weekly


1.1 General programming

  • An introduction
  • Required tools
  • Variables and data types
    • Numbers in Python
    • Strings in Python
    • Booleans in Python
    • List in Python
    • Dictionary in Python
  • Operators
    • Comparison operators
    • Logical operators
    • Membership operators
    • Bitwise operators
  • Control flow
    • if statements
    • match statements
    • for statements
    • while statements
  • Functions
  • Lambda functions
  • Built-in functions
    • map function
    • filter function
    • enumerate function
    • zip function
  • Classes / objects
  • Creating a NumPy array
    • Creating arrays from lists
    • Special arrays
  • Attributes of arrays
  • Data Selection
    • Array indexing
    • Array slicing
    • Array view vs copy
    • Conditional selection
  • Array manipulation
    • Shape of an array
    • Joining arrays
    • Splitting of arrays
  • Computation on NumPy arrays
  • Aggregations
    • Summation
    • Minimum and maximum
    • Variance and standard deviation
    • Mean and median
    • Find index

3. Data Manipulation with Pandas

  • Introducing Pandas objects
    • The pandas Series object
    • The pandas DataFrame object
  • Data indexing and selection
    • Data selection in Series
    • Data selection in DataFrame
  • Handling missing data
    • Detecting the missing values
    • Dealing with missing values
  • IO in pandas
  • Basic operations in pandas
  • Combining datasets
    • Concat
    • Merge
    • Join
  • Aggregation
  • Groupby
  • Vectorized string

4 Visualization

  • Basic matplotlib
    • Simple matplotlib
    • Subplots
    • Object-oriented method
  • Different types of plot
    • Scatter plot
    • Bar plot
    • Histogram
    • Pie chart
    • Box Plot
    • Violin plot
  • Images with matplotlib
  • Animation using matplotlib
    • Live graph with matplotlib
  • Relational plots
  • Distribution plots
    • displot
    • jointplot
    • pairplot
  • Categorical plots
    • Categorical scatter plots
    • Categorical distribution plots
    • Categorical estimate plots
  • Regression plots
  • FacetGrid
  • Customization
    • Style and theme
    • Colors

5 Data Analysis and Processing

  • Initial general assessment
  • Basic analysis
  • Missing data
  • Outliers
  • Correlation
  • Initial general assessment
    • Rows with duplicated data
    • Columns with a single value
  • Outliers
    • Standard deviation method
    • Interquartile range method
  • Missing data
    • Remove rows with missing values
    • Filling missing values
  • Scaling numerical data
    • Data normalization
    • Data standardization
    • Robust scaling
  • Encode categorical data
    • Ordinal Encoding
    • One Hot Encoding
    • Dummy Encoding
  • How to make distribution more Gaussian
    • Box-Cox transform
    • Yeo-Johnson transform
    • Quantile transform

6 Classical Machine Learning

  • Data presentation
  • Models in Scikit-learn
    • Simple linear regression example
    • Simple classification example
    • Simple dimensionality reduction example
    • Simple clustering example
  • Hyperparameters and model validation
    • Cross validation
    • Finding the best model
    • Grid Search
  • Ordinary Linear Regression
  • Linear Regression With Regularization
    • Ridge Regularization
    • Lasso Regularization
    • Combined Regularization
  • A Linear Regression Project
    • Exploratory Data Analysis
    • Data Cleaning
    • Data Processing Pipeline
  • Training and Evaluation
    • Training Curve
  • Logistic Regression
  • Support Vector Machine
  • Random Forest Classifier
  • k-Means Clustering
  • Gaussian Mixture Models
  • Evaluation Clustering Models

7. Fully Connected Neural Networks (FCNNs)

  • Graph and Session
    • Build and Perform a Graph
    • Gradient in TensorFlow
  • Tensor types in TensorFlow
    • Constant
    • Variable
  • Tensor Manipulation
    • Creating A Tensors
    • Creating Special Tensors
    • Shape Manipulation
    • Slicing
  • Operators
    • Basic Arithmetic Operators
    • Comparison Operators
    • Logical And Bitwise Operators
  • Neural Network From Scratch
  • Neural Network With TensorFlow