Skip to content

philipfleischer/Machine-Learning-Course-1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Machine-Learning-Course-1

A beginner-friendly machine learning project based on the FreeCodeCamp / Kylie Ying machine learning course. This repository contains my own notes, code, experiments, and implementations while learning the foundations of machine learning with Python, scikit-learn, TensorFlow, and common data science tools.

The goal of this project is to practice the core ideas behind supervised learning, unsupervised learning, data preprocessing, model training, evaluation, and simple neural networks in a hands-on way.

What this project covers

This repository includes work on:

  • Supervised learning for classification
  • Supervised learning for regression
  • Unsupervised learning with K-Means clustering
  • Dimensionality reduction with PCA
  • Neural networks with TensorFlow / Keras
  • Data preprocessing, splitting, normalization, training, validation, and testing
  • Model evaluation using relevant metrics and plots

Topics explored include:

  • Features and labels
  • Classification vs regression
  • Train / validation / test splits
  • K-Nearest Neighbors
  • Naive Bayes
  • Logistic Regression
  • Support Vector Machines
  • Neural Networks
  • Linear Regression
  • K-Means Clustering
  • Principal Component Analysis (PCA)

Datasets used

This project is based on the datasets used in the course:

  • MAGIC Gamma Telescope dataset for classification
  • Bike sharing / bike count dataset for regression
  • Seeds / wheat dataset for unsupervised learning

Important note about the bike dataset

For the bikes dataset, you may need to open the downloaded CSV file manually and remove special characters before using it, depending on how the file was downloaded or encoded.

Project structure

The exact file structure may vary depending on how the work was saved, but the repository is centered around notebooks or scripts covering:

  • Classification experiments
  • Regression experiments
  • TensorFlow neural network models
  • Clustering and PCA
  • Visualizations of data, training curves, and model performance

Tools and libraries

This project uses Python and common machine learning libraries, including:

  • numpy
  • pandas
  • matplotlib
  • scikit-learn
  • tensorflow
  • keras

What I practiced in this project

Through this project, I worked on:

  • Loading and cleaning datasets
  • Selecting feature columns and target variables
  • Building baseline models
  • Comparing multiple algorithms on the same task
  • Interpreting metrics such as accuracy, precision, recall, F1-score, and MSE
  • Training neural networks for both classification and regression
  • Visualizing training loss and validation loss
  • Understanding the difference between simple linear models and deeper neural networks
  • Applying clustering and dimensionality reduction to unlabeled data

Course source

This repository is based on the machine learning course created by Kylie Ying and published through FreeCodeCamp.

Course description

Learn Machine Learning in a way that is accessible to absolute beginners. You will learn the basics of Machine Learning and how to use TensorFlow to implement many different concepts.

Course creator

Kylie Ying YouTube: @ycubed

Original course sections

  • Intro
  • Data / Colab Intro
  • Intro to Machine Learning
  • Features
  • Classification / Regression
  • Training Model
  • Preparing Data
  • K-Nearest Neighbors
  • KNN Implementation
  • Naive Bayes
  • Naive Bayes Implementation
  • Logistic Regression
  • Logistic Regression Implementation
  • Support Vector Machine
  • SVM Implementation
  • Neural Networks
  • TensorFlow
  • Classification Neural Network using TensorFlow
  • Linear Regression
  • Linear Regression Implementation
  • Linear Regression using a Neuron
  • Regression Neural Network using TensorFlow
  • K-Means Clustering
  • Principal Component Analysis
  • K-Means and PCA Implementations

Dataset links

Notes

This repository is mainly a learning project. The focus has been on understanding the workflow and concepts clearly, not just getting the highest possible performance.

Some parts may contain experiments, alternative model setups, hyperparameter tuning attempts, and notes made during learning.

How to run

  1. Clone the repository
  2. Create and activate a Python environment
  3. Install the required libraries
  4. Open the notebooks or run the scripts

Example:

git clone <your-repo-link>
cd Machine-Learning-Course-1
pip install numpy pandas matplotlib scikit-learn tensorflow

If you are using Jupyter:

pip install notebook
jupyter notebook

Why I made this

I made this repository to build a practical foundation in machine learning by actually implementing and testing models myself. Instead of only watching the course, I wanted to turn the material into code, experiments, plots, and reusable notes.

Credits

  • Course content by Kylie Ying
  • Published through FreeCodeCamp
  • Google provided a grant to help make the course possible
  • Additional support for the channel came from Scrimba

Disclaimer

This repository is my own learning work inspired by the course. Credit for the teaching material and original course structure goes to the original creator.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors