harry-data-g / mlops-duke-aipi

Syllabus for Artificial Intelligence for Product Innovation Master of Engineering: https://ai.meng.duke.edu/degree

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mlops-duke-aipi

MLOps for AI and ML

Course Description

In this course, you will learn about the methodologies involved in Machine Learning Engineering and MLOps. By the end of the course, you will be able to develop Machine Learning Engineering applications and use software development best practices to create Machine Learning Engineering applications.

Course Objectives

By the end of the course, you will be able to:

  • Build AI and ML Solutions
  • Build, share and present compelling portfolios using: Github, YouTube, and Linkedin.
  • Setup a provisioned Python project environment
  • Develop non-linear life-long learning skill

Prerequisites

Basic programming skills as well as basic Linux skills. See optional readings/media to self-learn before class starts. If students lack basic Linux skills it is recommended to take this course: Duke+Coursera: Python, Bash and SQL Essentials for Data Engineering Specialization

Diversity Statement

As educators and learners, we must share a commitment to diversity and equity, removing barriers to education so that everyone may participate fully in the community. In this course, we respect and embrace the unique experiences that brought each person here, including backgrounds, identities, learning styles, ways of expression, and academic interests. The broad spectrum of perspectives represented by our students enrich everyone’s experiences, and we strive to meet each perspective with openness and respect.

Required Readings & Media

Syllabus

Date: May 9 – August 4, 2022

Optional Weekly Sync: Friday, ET 7pm-8pm Zoom recorded

Week by Week Schedule

Week 0 (Optional): Refresh Python Skills

Week 1: Getting Started with Cloud Computing Foundations and Project Planning

Discuss your plan to build out the two individual projects and final project and how you will do them on time.

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #1

Week 2: Setup Development Environment

What is the advantage of a knowing both VIM and an editor like VS Code?

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #1

Week 3: MLOps Foundations

Discuss Critical Thinking Question in Chapter 1 or 2 of Practical MLOps

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #1

Week 4: Getting Started with Machine Learning Engineering

Discuss Question from Coursera Course

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #1

Week 5: Using Platforms for ML Engineering

Discuss Critical Thinking Question in Chapter 5 of Practical MLOps

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #2

Week 6: Emerging Topics in Machine Learning

Discuss Question from Coursera Course

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #2

Week 7: Evaluating the Cloud Service Model

Discuss Question from Coursera Course

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #2

Week 8: Applying DevOps Principles

Discuss Question from Coursera Course

  • Weekly Demo: 30 Second to 3 minute max Demo on Individual Project #2

Week 9: Microservices

Discuss Question from Coursera Course

  • Weekly Demo: 30 Second to 3 minute max Demo on Final Project

Week 10: Operations

Discuss Question from Coursera Course

  • Weekly Demo: Weekly Demo: 30 Second to 3 minute max Demo on Final Project

Week 11: MLOps Platforms

Discuss why MLOps Platforms have an advantage of building all components from scratch.

  • Weekly Demo: Weekly Demo: 30 Second to 3 minute max Demo on Final Project

Week 12: Final Presentations

  • Turn in Final Projects

Projects

Individual Project One: Setup Continuous Integration with Github Actions and Github Codespaces for CLI Prediction Tool

  • Build an CLI prediction that uses a pre-trained model only (do not build yourself!)
  • Check solution into Github
  • Create 3-5 minute Demo Video

References

Individual Project Two: Create an AutoML Solution

  • Build an AutoML prediction using some AutoML Technology: CreateML, Sagemaker Autopilot, Google AutoML, Ludwidg, etc.
  • Check solution into Github
  • Create 3-5 minute Demo Video

References

Final Group Project: Build Microservice ML Endpoint that uses Continuous Delivery

  • Build Build Microservice ML Endpoint
  • Check solution into Github
  • Create 3-5 minute Demo Video

References

Referenced Media and Resources

Optional Supplementary Readings & Media

AWS
GCP
Python
  • Data Science, Pandas, and Colab

https://learning.oreilly.com/videos/python-for-data/62062021VIDEOPAIML/

Linux and Systems Engineering

Assignment Overview and Grading Breakdown

Grading and feedback turnaround will be one week from the due date. You will be notified if the turnaround will be longer than one week.

The discussion forums, written assignments, demo videos, and final project will be graded based on specific criteria or a rubric. The criteria or rubric for each type of assessment will be available in the course. To view the discussion forum rubric, click the gear icon in the upper right corner of the page and choose Show Rubric. The Written Assignment Rubric and Final Project Rubric will automatically appear on the page.

Activity Percent of Final Grade
Weekly Async Discussion & Assignment 40%
Individual Projects (2) 40%
Team Final Project (1) 20%
Grade Percentage Total Points (out of 500)
A 93%–100% 465– 500 points
A- 90%–92% 450 – 464 points
B+ 87%–89% 435 – 449 points
B 83%–86% 415 – 434 points
B- 80%–82% 400 – 414 points
C+ 77%–79% 385 – 399 points
C 73%–76% 365 – 384 points
C- 70%–72% 350 – 364 points
F 0%–69% 0 – 349 points

Grading Scale

A 100% to 93%
A- < 93% to 90%
B+ < 90% to 87%
B < 87% to 83%
B- < 83% to 80%
C+ < 80% to 77%
C < 77% to 73%
C- < 73% to 70%
F < 70% to 0%

Late Work Policy

Late work will be accepted only in the event of an instructor-approved absence. Contact your instructor as soon as possible, at least 24 hours in advance.

Online Communication and Interaction Expectations

Discussion Forums

The purpose of the discussion boards is to allow students to freely exchange ideas. It is imperative to remain respectful of all viewpoints and positions and, when necessary, agree to respectfully disagree. While active and frequent participation is encouraged, cluttering a discussion board with inappropriate, irrelevant, or insignificant material will not earn additional points and may result in receiving less than full credit. Frequency matters, but contributing content that adds value is paramount. Please remember to cite all sources—when relevant—in order to avoid plagiarism. Please post your viewpoints first and then discuss others’ viewpoints.

The quality of your posts and how others view and respond to them are the most valued. A single statement mostly implying “I agree” or “I do not agree” is not counted as a post. Explain, clarify, politely ask for details, provide details, persuade, and enrich communications for a great discussion experience. Please note, there is a requirement to respond to at least two fellow class members’ posts. Also, remember to cite all sources—when relevant—in order to avoid plagiarism.

Online Communication Etiquette

Beyond interacting with your instructor and peers in discussions, you will be expected to communicate by Canvas message, email, and sync session. Your instructor may also make themselves available by phone or text. In all contexts, keep your communication professional and respect the instructor’s posted availability.

Just as you expect a response when you send a message to your instructor, please respond promptly when your instructor contacts you. Your instructor will expect a response within two business days. This will require that you log into the course site regularly and set up your notifications to inform you when the instructor posts an announcement, provides feedback on work or sends you a message.

Participation and Attendance

This course will not meet at a particular time each week. All course goals, session learning objectives, and assessments are supported through classroom elements that can be accessed at any time. To measure class participation (or attendance), your participation in threaded discussion boards is required, graded, and paramount to your success in this course. Please note that any scheduled synchronous meetings are optional. While your attendance is highly encouraged, it is not required and you will not be graded on your attendance or participation.

Course Technology

This course will involve a number of different types of interactions. These interactions will take place primarily through Microsoft Teams. Please take the time to navigate through the course and become familiar with the course syllabus, structure, and content and review the list of resources below.

Required Technical Skills

Students in an online program should be able to do the following:

  • Communicate Teams discussion forums.
  • Use web browsers and navigate the World Wide Web.
  • Use the learning management system Teams.
  • Use Teams
  • Use applications to create documents and presentations (e.g., Microsoft Word, PowerPoint).
  • Use applications to share files (e.g., Box, Google Drive).

Required Digital Literacy Skills

In order to be successful in an online course, students should be able to locate, evaluate, apply, create, and communicate information using technology.

Students in this online course should be able to do the following:

  • Create, name, compose, upload, and attach documents.
  • Download, modify, upload, attach document templates.
  • Create, name, design, and upload presentations.
  • Access and download Course Reserve readings; read and review PDF documents.
  • Access and use a digital textbook.
  • Record and upload video taken with a webcam or smartphone.
  • Use the library website for scholarly research tasks.
  • Search the Internet strategically and assess the credibility of Internet sources.
  • Participate in threaded discussions by contributing text responses, uploading images, sharing links.
  • Coordinate remote work with peers, which may include contacting each other by e-mail, phone, video conference, or shared document.
  • Edit and format pages in the course site using a WYSIWIG (What You See is What You Get) editor or basic HTML.
  • Using a quizzing tool to answer multiple choice, true/false, matching, and short response questions within a given time period.
  • Follow directions to engage with a remote proctor by text, webcam, and audio.
  • Use a video player to review content, including pausing and restarting video.

Associated Certifications

You may want to complement this course with the following certifications:

About

Syllabus for Artificial Intelligence for Product Innovation Master of Engineering: https://ai.meng.duke.edu/degree

License:Creative Commons Zero v1.0 Universal