Skip to content

Includes all of my Jupyter Notebook assignments from MIT's Break Through AI/ML Machine Learning Foundations Program.

Notifications You must be signed in to change notification settings

Zen204/-My-eCornell-Portfolio

Repository files navigation

Unit 5: Evaluate and Deploy Your Model This unit advances students into the evaluation and deployment phases of the machine learning lifecycle. Students learn to assess a model's ability to generalize to new data through various out-of-sample validation techniques. Students explore different methods to enhance model performance, including the optimization of hyperparameters and feature selection, using their own implementations along with the built-in capabilities of scikit-learn. Students then transition to the deployment of machine learning models and how to make models operational and available to stakeholders to address real business challenges. This includes discussions on deployment strategies and the ongoing monitoring of models once they are in production. This unit is designed to provide students with a comprehensive understanding of how to not only develop but also effectively deploy and manage machine learning models. Unit 5 Objectives:

  1. Understand the importance of model selection in machine learning
  2. Choose model evaluation metrics that are appropriate for the application
  3. Choose appropriate model candidates and hyperparameters for testing
  4. Set up training/validation/test splits for model selection
  5. Apply feature selection techniques to get a better-performing model
  6. Explore how to deploy, host, and monitor your model

Unit 6: Special Topics: Ensemble Methods and Unsupervised Learning This unit covers advanced machine learning techniques: ensemble modeling and unsupervised clustering. Students will first explore three key ensemble techniques—stacking, bagging, and boosting—examining algorithms like random forests and gradient boosted decision trees, with opportunities to build and optimize these models. The unit then transitions to unsupervised learning, focusing on clustering as the most prevalent technique. Students will practice implementing clustering using Sci-kit learn, broadening their understanding of machine learning's applications. Unit 6 Objectives:

  1. Explore the bias-variance tradeoff
  2. Improve model performance with ensemble methods
  3. Understand the mechanics of three ensemble methods: stacking, random forests and gradient boosted decision trees
  4. Explore unsupervised learning
  5. Implement unsupervised clustering

Unit 7: Special Topics: Deep Learning and Computer Vision This unit equips students with the essential skills and theoretical knowledge needed to apply neural networks and deep learning techniques effectively. Students begin this unit by exploring the foundational principles of neural networks. Students are then introduced to the architecture of traditional feedforward neural networks and are guided through the process of constructing and training these networks using Keras. The instruction will then extend to deep learning. Students explore applications of deep learning in fields such as natural language processing and computer vision, highlighting the effectiveness of different neural network architectures like convolutional neural networks in these areas. The unit’s exercises allow students to implement a convolutional neural network for image classification tasks. Unit 7 Objectives:

  1. Explore the design of a neural network using the basic components of network architecture
  2. See how a neural network is trained and optimized
  3. Use Keras to implement a neural network to make predictions
  4. Explore the field of Computer Vision
  5. Implement a neural network for image classification

Unit 8: Special Topics: Natural Language Processing In this unit, students explore Natural Language Processing (NLP). The unit covers the NLP pipeline, beginning with preprocessing and transforming text into numerical features. Students explore various techniques integral to this initial step and the subsequent stages of the NLP pipeline for effective text data processing. Students then dive into the utilization of neural network models. They will gain hands-on experience by implementing a neural network tailored to address an NLP challenge, enhancing their practical skills in applying complex machine learning models. This unit’s lab emphasizes proper problem formulation and bias mitigation. They will select from three datasets previously introduced in the course, preparing and employing these datasets to articulate and solve a specific machine learning problem. Each student will draft a comprehensive project plan that outlines their approach to model fitting, evaluation, and iterative improvement, consolidating their learning and preparing them to tackle real-world NLP problems. Unit 8 Objectives:

  1. Explore the NLP pipeline
  2. Use various NLP preprocessing techniques to convert text to data suitable for machine learning
  3. Understand how vectorizers are used to convert text into numerical features and how word
  4. Explore how word embeddings are used to convert text into numerical features without losing the underlying semantic meaning
  5. Discover how deep neural networks are used in the NLP field
  6. Implement a feedforward neural network for sentiment analysis
  7. Create and implement a project plan to solve a machine learning problem