Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 312 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

opencampus.sh Machine Learning Program

Loading...

Loading...

Loading...

Loading...

Courses

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Week 9 - Sequences, Time Series and Prediction, Part I

This week you will...

  • take a look at some of the unique considerations involved when handling sequential time series data -- where values change over time, like the temperature on a particular day, or the number of visitors to your web site. We'll discuss various methodologies for predicting future values in these time series.

  • begin to teach neural networks to recognize and predict on time series.

Learning Resources

  • Week 1 and 2 of the course Sequences, Time Series and Prediction

Until next week you should...

  • complete week 3 and week 4 of the course Sequences, Time Series and Prediction

  • continue optimizing your final model

  • complete the tasks in the following notebook:

    • Assignment notebook

FAQ

Frequently Asked Questions

Are the courses in English or German?

The following two courses are in German:

  • Einführung in Data Science und maschinelles Lernen

  • Maschinelles Lernen für die Medizin

All other courses are in English.

Can I enroll in multiple courses at the same time?

Yes, the courses are not overlapping. Feel free to choose all courses you like. Be aware that to complete each course, you have to do a project for each course.

Should I enroll in multiple courses at the same time?

We will be glad to have you with us during the whole week if you have time! However, with our offer growing bigger, here there is a suggestion: please try to take into account the time effort that each course will take (~5 hours per week per course) and select the courses which fits your schedule in the current semester instead of just applying for all the courses. If you are not sure about which one to apply to, contact us or come to the Info Event about the Machine Learning Degree. If courses are sequential, it is usually good practice to take them one semester after the other, not both of them at the same time.

How do I know if I can get ECTS?

Ask your professors/Prüfungsamt before the courses start and clarify with them whether the course will be recognised or not. At the CAU Kiel the courses are accepted as "Wahlpflichtmodule" via the "Zentrum für Schlüsselqualifikationen". At the FH Kiel and the Muthesius Kunsthochschule Kiel the courses are accepted in many study programs as well. However, each faculty and department has their own rules. So please, check with your local institution.

When will I get the ECTS?

Once you completed a course and fulfilled the requirements, you will get a certificate from us. This takes up to 4 weeks after the course completion. After you get a certificate from us, you can use this to get the ECTS (for CAU Student this is an automated process). In order to see the ECTS in your profile, it will take some additional time, usually around 2 to 4 weeks more.

Are all courses giving ECTS?

Yes, for all courses offered at the moment, it is possible to receive ECTS. However, the number of ECTS granted varies between 2.5 ECTS and 5 ECTS. Please, check the individual course descriptions for the respective ECTS.

Do I get a grade for my ECTS?

We do not give grades for any of the courses on opencampus.sh. You can only pass or fail the requirements of the course to receive ECTS.

Which platform will we use during the courses?

We use: - the edu.opencampus.sh Website. You need to have an account there to register for the courses. - the chat.mattermost.sh Mattermost Chat tool. You need to have an account there to communicate and see the material. You can use an app if you prefer to check it on your phone or on your computer. Otherwise it works fine in the browser. - the Zoom tool for online conference. You do not need an account, you can join from your browser. You can also download an app on your pc/computer - most of the courses (the one which are valid 5 ECTS) use contents from the Coursera platform. You need an account there to see the contents.

Can I use one account for all the platforms?

Unfortunately, not yet. We are working on this. For the moment, please create an account on all the platform you need. Using the same e-mail adress is probably the best option also for us to be sure to be able to help you quickly in case of any trouble.

The content on Coursera is behind a paywall, how do I get access?

All students which needs to get access to the Coursera contents because of their course will receive an invitation to the Opencampu.sh Unlimited program on Coursera, which will allow you to get access to all courses on the Coursera plaftorm for free. You will be invited via mail and you need to confirm. Please check the spam. In case you used a different e-mail account on Coursera, contact your course teacher and you will be added manually.

How do I choose a course?

I am confused and not sure about which course I should choose.

On our EDU-Platform each course and its contents is described but often it will still be difficult to decide what's the best course for your ability level and your needs. Below we therefore included a quick comparison on the courses, which might provide some additional help.

However, if you have any doubt, we strongly recommend you to

attend the Machine Learning Degree info event that is held before the start of each semester, where you get in-depth information on the different courses.

This semester the event will take place on March, the 22nd.

Quick Comparison of the Different Courses

Roughly, the difficulty level of the courses is increasing from left to right.

Einführung in Data Science und maschinelles Lernen

english version below

Der Einführungskurs ist offen für alle. Du wirst abgeholt wo Du bist und begleitet, bis Du in der Lage bist, dein eigenes Projekt durchzuführen. Nach Abschluss des Kurses stehen viele Türen für Dich offen und Du hast die Möglichkeit, Dich in unterschiedliche Richtungen weiter fortzubilden. Wenn Du allerdings schon einmal programmiert hast und ein bisschen mit Daten umgehen kannst, bist du eigentlich schon bereit für einen der nächsten Kurse.

The introductory course is open to all. However, the course is in German and you must be fluent in German to take part since the course is very interactive, including a lot of team communication. You will be picked up where you are and accompanied until you are able to do your own project. After completion of the course many doors will be open for you and you will have the opportunity to continue your education in different directions. However, if you have already done some programming and know a little bit about data, you are already ready for one of the next courses.

Machine Learning with Tensorflow

This course will give you an overview of neural network and their applications in different fields e.g. working with images, texts, or time series. It is a very hands-on approach and you will get a lot of working examples within the course. It is a perfect start for your project. This course will not stress the underlying principles of machine/deep learning but focus on the application.

As an example of a good fit for the course, You already have some programming knowledge and are interested in getting hands-on knowledge in how to train and use machine learning algorithms.

Deep Learning

The course Deep Learning from Scratch will give you an overview of the basic principles behind machine learning. How and why they work, and you will write your own code in python and implement deep learning algorithms from scratch, thus reaching a deeper understanding of how things work and a solid knowledge for your further projects. Since this is a rather technical course you are required to have done some intermediate programming and also know about matrix algebra. You can still learn this along the course but it will take you a lot more time to keep up with the course.

For the Advanced Deep Learning course you should have already completed the Deep Learning from Scratch course or have a comparable level of knowledge.

As an example of a good fit for the Deep Learning from Scratch course, You have knowledge about programming and linear algebra (working with vectors and matrices) and are interested in getting in-depth knowledge on how to implement machine learning algorithms.

Special Issue Courses

Each semester, we ususally have different special issue courses on topics like natural language processing or generative adversarial networks.

For these courses you typically should already have a basic understanding of machine learning. However, please check the course descriptions and also do not hesitate to contact the course guide for any questions. In general these courses are a great opportunity to connect with others that are interested in the same issues as you.

As an example of a good fit for the course, You already have some knowledge about Machine Learning (ideally you followed one of our previous courses) and are interested in learning more about the particular field of Machine Learning.

Week 3 - Versioning with Git (Part 1) and data preparation

This week we will...

cover the following topics:

  • Talk about the tasks from last week

  • Statistical Significance

  • Introduction to Version Control with Git

  • Introduction to Data Preparation

Learning Resources

Until next week you should...

5MB
250508_Intro to git and data preparation.pdf
pdf
this course
this video
this
this video
this video

Week 1 - Introduction to Data Science

This week you will...

get an introduction to the following topics:

  • What is data science?

  • R vs. Python vs. SPSS vs. ...

  • Jupyter Notebooks

Learning Resources

10MB
250417_Introduction.pdf
pdf
  • Markdown Guide

Until next week you should...

opencampus.sh Machine Learning Program

By getting accepted for the degree program you get:

  • Preferred access to all our courses (for organizational reasons you still have to do the application process for each course)

  • Access to a FlexDesk in the Starterkitchen coworking space and the coworking areas in the Kosmos and at the Waterkant

  • Discounted or preferred access to events like the Waterkant Festival

  • Access to special network events, for example, to meet potential employers working in the field of machine learning

Typically, we will accept new participants only at the beginning of each semester though. If you are already participating in one of our machine learning courses, you can also get accepted to the program during the semester though. Simply write us an email at team@opencampus.sh, and we will check your application. Also before the start of each semester, we have a special information event, in which we will provide additional details on the program as well as on the specific courses offered in the upcoming semester.

What are the requirements to get the degree?

The program comprises four mandatory elements. To successfully obtain the degree, you must complete at least one element per semester, that is, the maximum time to complete the degree is four semesters. However, we recommend completing it in two or three semesters. If you completed an element of the program before the degree was offered, we will still accept these as part of the degree.

The mandatory elements to obtain the degree are:

Completion of 3 or more of the machine learning courses at opencampus.sh with a minimum of 12.5 ECTS in total. (Check the current list of available course here.)

Successful participation in at least one of the following events:

  • Prototyping Week (participating with an AI project or startup)

  • Coding.Waterkant coding camp

Introduction to Data Science and Machine Learning

Conditions for Receiving a Certificate or ECTS

All participants are expected to pursue a certificate of achievement or ECTS credits, that is to fulfill the following conditions to complete the course:

Course Kick-Off

At the Course Kick-Off event from opencampus.sh you will get an intro to the opencampus.sh community, and you will meet your course instructor, can ask questions about the participation in the course, and get helpful information to prepare for the start of the course. The attendance at the Kick-Off is not mandatory but recommended for all participants.

Week 4 - Versioning with Git (Part 2) and Current Developments in ML

This week we will...

cover the following topics:

  • Versioning with Git in a Team

  • Important Issues to Consider for Feature Engineering

  • Current ML Developments

Learning Resources

6MB
250515_Intro to git (Part 2) and current developments.pdf
pdf

Untile next week you should...

Preparation

Before the first course session, you should ...

Week 5 - Introduction to Machine Learning and Linear Regression

This week we will...

cover the following topics:

  • Procedure for training machine learning algorithms

  • Definition of linear regression

  • Cost functions

  • Optimization functions

  • Testing your model on Kaggle

Learning Resources

8MB
250522_Intro ML and Linear Regression.pptx
527KB
IntroMLandLinReg.ipynb
  • DataCamp Tutorial on Linear Regression

Until next week you should...

Week 7 - Neural Nets

This week we will...

  • learn about different libraries for implementing neural nets

  • review example notebooks for the data preparation and training of neural net using Pandas and TensorFlow

  • get to know additional types of layers in neural nets

Learning Resources

  • Additional (12 Minuten) on neural nets

  • for a neural net

  • for training a neural net

Until next week you should...

Week 2 - Import and Visualization of Data

This week we will...

cover the following topics:

  • VSCode and GitHub Code Spaces

  • AI-assisted programming

  • Representation of different data structures

  • Reading data from external sources

  • Chart and scale types

Learning Resources

  • Optional

  • for the graphical representation of data

Until next week you should...

Week 8 - Missing Values

This week we will...

  • learn how to use dropout layers

  • get to know different ways to handle missing values

Learning Resources

  • for handling missing values

  • Chapter 1 of course at datatcamo

Until next week you should...

Week 9 - Time Series Analyses

This week we will...

  • learn about different patterns in times series

  • get to know about the importance of baseline models

  • learn about naïve forecasting

Learning Resources

  • (5 minutes) on time series analyses

  • for graphical analyses of time series

  • on the Transformers library

Until next week you should...

Week 10 - Project Presentation

For the presentation, generate predictions for the Kaggle competition test dataset using your best model and upload them there!

Presentation (Powerpoint, Keybote or similar)

Prepare an 8 to 10-minute presentation including:

  • Your team members’ names on the title slide

  • List and brief description of self-created variables

  • Bar charts with confidence intervals for two self-created variables

  • Linear model optimization: model equation and adjusted R²

  • Type of missing value imputation used

  • Neural network optimization:

    • Source code defining the neural network

    • Loss function plots for training and validation sets

    • MAPE scores for the overall validation set and each product group

  • Highlight “Worst Fail” and “Best Improvement” cases

Each team member should have a part in the presentation!

Document your work in the project repository, completing the README files as specified.

One team member must upload the main README to the EduHub platform as described .

3MB
250612_Neural Nets.pdf
pdf
introduction video
Example data preparation notebook
Example notebook
this video
this video
this course
7MB
250424_Import and Graphical Representation of Data.pdf
pdf
Get Started with GitHub Copilot in VS Code
Overview on GitHub Copilot in VS Code
local installation of Python and VS Code
Examples
this
this
this
this
https://github.com/opencampus-sh/einfuehrung-in-data-science-und-ml
3MB
250619_Missing Values.pdf
pdf
Example notebook
this
this video
5MB
250626_Time Series Analysis.pdf
pdf
Video
Example notebook
Hugging Face course
here
here

Machine Learning with TensorFlow

Preparation

Before the first class you should ...

  • register with Google and the Coursera platform to get corresponding accounts.

  • watch the videos Neural Networks from the Ground Up (19 minutes) and Gradient Descent - How Neural Networks Learn (21 minutes) It will help you getting familiar with the vocabulary and basic concepts in machine learning and get a first intuition for their meaning. Don't worry if you do not understand everything viewing it the first time, and maybe you want to watch the videos again at a later point in the course to understand more details.

  • do the introductory course on the basics of Python if you do not have any experience in Python yet: https://www.kaggle.com/learn/python

Week 1 - General Introduction

This week you will...

  • get a basic introduction to neural nets in order to get a first intuition in the underlying mechanisms

  • get a first idea about possible projects you might want to work on throughout the course

Learning Resources

7MB
250417_General Introduction.pdf
pdf
44KB
Guidlines for Presenting Assignments.pptx
  • Video Neural Networks Explained (12 minutes)

  • Introductory course on Python from Kaggle

  • Tutorial on Colab on Medium

Until next week you should...

  • complete week 1 and week 2 of the course Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning

  • tthink about project ideas to present them in class (post your ideas in the chat during the week)

  • complete the two assignments given in the following notebooks:

    • Assignment Notebook 1

    • Assignment Notebook 2

Requirements for a Certificate of Achievement or ECTS

The conditions to be met in order to receive a Certificate of Achievement (and ECTS) are:

Attendance:

If you attend via Zoom, please make sure to use your full name, which should be the same that you used to register at edu.opencampus.sh. Otherwise your attendance will not be recorded!

Projects:

Check the Projects section to learn more about the projects.

Week 4 - Convolutional Neural Networks, Part I

This week you will...

  • go deeper into using ConvNets with real-world data and a much larger dataset than those you've been using thus far.

  • learn about image augmentation, a technique to avoid overfitting by tweaking the training set to potentially increase the diversity of subjects it covers.

  • discuss your project ideas.

Slides

217KB
TensorFlow CNN Part 1.pdf
pdf

Learning Resources

  • Week 1 and 2 of the course Convolutional Neural Networks in TensorFlow

Until next week you should...

  • complete week 3 and week 4 of the course Convolutional Neural Networks in TensorFlow

  • complete the exercise assignment in this notebook

  • investigate the characteristics of your project's dataset according to the instructions given here

  • document your findings on the dataset characteristics according to the instructions of above

Week 6 - Overfitting and Regularization

This week we will...

cover the following topics:

  • Important terms in machine learning

  • Overfitting and regularization

  • Model quality criteria

  • Introduction to neural nets

Learning Resources

  • for the definition and estimation of neural networks for different example datasets

  • of the effect of overfitting and regularization

Until next week you should...

4MB
250605_Overfitting and Model Evaluation.pdf
pdf
Graphical tool
Example
Advanced Learning
Algorthms

Week 3 - Introduction to TensorFlow,Part II

This week you will...

  • see how to improve the basic neural network for computer vision you learned last week.

  • learn about what happens if your data is more complex; if the images are larger, or if the features are not always in the same place, and how to handle such issues.

Learning Resources

656KB
250508_Introduction-to-TensorFlow-Part-II.pdf
pdf
  • Week 3 and 4 of the course Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning

Until next week you should...

  • complete week 1 and week 2 of the course Convolutional Neural Networks in TensorFlow, including the provided assignments

  • setup a repository for your project following the instructions given here

  • conduct a literature review according to the instructions given here

  • document your findings on the literature review according to the instructions of above

  • complete the assignment in the following notebook:

    • Assignment Notebook

Week 5 - Convolutional Neural Networks, Part II

This week you will...

  • get familiar wit transfer learning, a powerful technique to include the knowledge of models that were trained on large datasets and benefit from the features these models already learned in your own problem scenario.

  • move beyond binary classification into categorical classification and the specific coding considerations for the corresponding models.

  • present your key findings for the literature review considering you selected project

Learning Resources

1MB
250522_CNNs in TensorFlow-Part-II.pdf
pdf
Presentation Slides from this week
  • Week 3 and 4 of the course Convolutional Neural Networks in TensorFlow

Until next week you should...

  • complete week 1 and week 2 of the course Natural Language Processing in TensorFlow

  • complete the exercise assignment in this notebook

  • decide on an evaluation metric for your project task and evaluate your baseline model

  • justify why your choice is appropriate for your task

  • document your decision in your GitHub repository

Week 7 - Natural Language Processing, Part II

This week you will...

  • start digging into a variety of model formats that are used in training models to understand context in sequence. In the last couple of weeks you looked first at Tokenizing words to get numeric values from them, and then using Embeddings to group words of similar meaning depending on how they were labelled. This gave you a good, but rough, sentiment analysis -- words such as 'fun' and 'entertaining' might show up in a positive movie review, and 'boring' and 'dull' might show up in a negative one. But sentiment can also be determined by the sequence in which words appear. For example, you could have 'not fun', which of course is the opposite of 'fun'.

  • learn about using natural language processing (NLP) models for predictions. Given a body of words, you could conceivably predict the word most likely to follow a given word or phrase, and once you've done that, to do it again, and again. With that in mind, you'll build a text generator. It's trained with texts that mimic the style of master Yoda from Star Wars and can be used to produce sentences that sound similar those of Yoda.

Learning Resources

  • Week 3 and 4 of the course Natural Language Processing in TensorFlow

Until next week you should...

  • prepare questions for the instructor team on problems in your project or on how to potentially improve your results.

  • working on the definition of your project's final model(s) and their evaluation according to the instructions given here

  • document how you will evaluate your model results

Also, you may already start to...

  • complete week 1, 2, 3 and 4 of the course Sequences, Time Series and Prediction

  • complete the tasks of the assignment in this notebook.

This course and assignment notebook should be finished on 26th June 2025.

Week 8 - Project Work

This week you will...

  • focus fully on your project.

  • get feedback from the instructor team on problems in your current project or on how to potentially improve your results.

Learning Resources

  • Week 3 and 4 of the course Natural Language Processing in TensorFlow

Until next week you should...

(If you haven't done so already last week.)

  • complete week 1 and week 2 of the course Sequences, Time Series and Prediction

  • complete tasks of the assignment in this notebook.

Week 2 - Introduction to TensorFlow,Part I

This week you will...

  • get a soft introduction to what Machine Learning and Deep Learning are, and how they offer you a new programming paradigm, giving you a new set of tools to open previously unexplored scenarios. All you need to know is some very basic programming skills, and you'll pick the rest up as you go along.

  • take the just learned new programming paradigm used in machine learning to the next level by beginning to solve problems of computer vision with just a few lines of code!

Learning Resources

762KB
250424_Introduction_Part_I.pdf
pdf
  • Week 1 and 2 of the course Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning

  • Don't forget to check out the important part of week 2 that is working through this notebook.

Until next week you should...

  • complete week 3 and week 4 of the course Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning.

  • decide on a project for the course and form groups

  • complete the two assignments in the following notebooks:

    • Assignment Notebook 1

    • Assignment Notebook 2

Week 11 & 12 - Presentation of the Final Projects

This week you will...

  • present your project in the final presentations. :-)

After the Final Presentation you should...

  • complete your project documentation and submit it according to the instructions given here

Hello and welcome😊

Great that you want to dive into the deep waters of Machine Learning. These are exciting times with major advancements on a quarterly basis like ChatGPT, Whisper, StableDiffusion and so many more. Nevertheless, all these exciting models were developed using solid ML knowledge, which is what we aim to acquire in this course.

This is a course which brings you from beginner to intermediate or even advanced. It is formally called Intermediate Machine Learning but following HuggingFace🤗 terms (which we will use heavily in the course) I like to call the course SmilingFace😊. This is meant ironically, because you will never laugh in the course😊. Okay joking aside the use of smileys during learning and practioning ML helps us to remember to have fun, laugh about our mistakes and take ourself not too seriously as it was proposed by the HuggingFace🤗 community. Therefore we will use our 😊 heavily in this course.

On the next pages you can see what the content of each course week will be starting with what will happen during each of our course sessions. Then again the SmilingFace😊 will lead you to what else to do in the week. I have divided the course into three levels of course work:

😊

The part after one 😊 is mandatory for each course participant for a for successful participation.

😊😊

The part after two 😊😊 is voluntary but recommended.

😊😊😊

The part after three 😊😊😊 is completely voluntarily for the ones who really want to know.

Remember the course instructor(me) is also fallible so please question me if you see something that does not seem kind of right to you. Also always ask questions especially if you don't fully understand something. This is really why we give this course afterall so that you understand everything😊

Own contributions or suggestions for improving the course as well as feedback are always welcome😊

Let's dive right in!

Cousera Videos

Watch them all😊

  1. Why Machine Learning is exciting

  1. What is Machine Learning?

  1. Logistic Regression

  1. Interpretation of Logistic Regression

  1. Motivation for Multilayer Perceptron

  1. Multilayer Perceptron Concepts

  1. Multilayer Perceptron Math Model

  1. Deep Learning

  1. Example: Document Analysis

  1. Interpretation of Multilayer Perceptron

  1. Transfer Learning

  1. Model Selection

  1. Early History of Neural Networks

  1. Hierarchical Structure of Images

  1. Convolutional Filters

  1. Convolutional Neural Networks

  1. CNN Math Model

  1. How the Model learns

  1. Advantages of Hierachical Features

  1. CNN on Real Images

  1. Applications and Use in Practice

  1. Deep Learning and Transfer Learning

Done!

Week 10 - Sequences, Time Series and Prediction, Part II

This week you will...

  • explore using Recurrent Neural networks (RNN) and Long Short Term Memory (LSTM) networks and see how useful they are to classify and predict on sequential data.

  • add CNNs on top of Dnns and RNNs and put it together using a real world data series -- one which measures sunspot activity over hundreds of years,

Learning Resources

  • Week 3 and 4 of the course Sequences, Time Series and Prediction

Until next week you should...

  • complete your project work

  • prepare your project presnetation according to the instructions given here

Week 1 - Course Introduction

Course session

Welcome and Introduction round

Introduction of the course, opencampus, the course instructor and the course participants

Tool Set-Up

  • Colab

  • Editor (VSCode)

  • Virtual Environments

  • Git/Github

Walk-through

PyTorch 101 (Lab 01)

A visual overview of the workflow in the Colab notebook you can get in the PyTorch diagram below:

97KB
pytorch diagram.pdf
pdf

To-do

😊

  1. Watch the following introduction video to the PyTorch framework

  1. Watch all the videos on the next page - they are derived from a former Coursera Course

  2. Go for your own through the Colab Notebook above (Pytorch101) and try to understand and repeat the steps for your own. Thereby you should also solve Task 1-3 in the notebook. You can create therefore a copy of the notebook in your Drive or download the notebook to work locally on it. Ensure that you sufficient computing resources available (i.e gpu) if you choose to work locally.

😊😊

Try to improve the accuracy in the PyTorch 101 notebook by tweaking the amount of layers and number of neurons

😊😊😊

Familiarize yourself with basic PyTorch Tutorials:

  • https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html (First part)

  • https://uvadlc-notebooks.readthedocs.io/en/latest/tutorial_notebooks/tutorial2/Introduction_to_PyTorch.html

Prequisites

There are certain requirements which form the basis for a successful course participation. If you do not have the mandatory requirements listed below, you should consider enrolling in a more basic course of our offerings. Alternatively bring yourself up to speed. Under additional ressources on the left sidebar you find the necessary ressources. Since the course has a really high pace it will be absolutely necessary to straighten these basic requirements before the course!

Mandatory

Python

Here is a refresher notebook:

Math

Linear Algebra, Probability Theory (at least the basics)

Machine Learning

Basics:

  • What is a neural network

  • What is a forward/backprogragation

  • What is a loss

  • What is an activation function

  • What is train/val/test

Totally optional

You can set up your PC for local development. A guiding notebook is here:

Here different IDEs are presented and compared:

Intermediate Machine Learning

Hybrid Format - Every Thursday 18h00-19h45

Taken your first steps in ML and thirsty for becoming a fully equipped practitioner? Then this course is perfectly right for you! You will learn+build all relevant NN Architectures with the best tools

The next pages serve as the course book. Go ahead and dive in!

Week 6 - Natural Language Processing, Part I

This week you will...

  • get an understanding for the importance of tokenization of a text when training a neural network for texts, for example, to do a sentiment analysis. Tokenization is the process of converting the text into numeric values, with a number representing a word or a character.

  • learn about embeddings, where the text tokens are mapped as vectors in a high dimensional space. With embeddings and labelled examples, these vectors can then be tuned so that words with similar meaning will have a similar direction in the vector space. This will begin the process of training a neural network to understand sentiment in text -- and you'll begin by looking at movie reviews, training a neural network on texts that are labelled 'positive' or 'negative' and determining which words in a sentence drive those meanings.

Learning Resources

467KB
241205_NLP in TensorFlow-Part-I.pdf
pdf
  • Week 1 and 2 of the course Natural Language Processing in TensorFlow

Until next week you should...

  • complete week 3 and week 4 of the course Natural Language Processing in TensorFlow

  • complete this notebook to generate text in the unique speaking style of Star Wars character Master Yoda.

  • consider a baseline model or a baseline comparison for your project task according to the instructions given here

  • document the evaluation results of your baseline model and the used metric(s) in your project repository

Week 2 - Recap ML Basics, Intro to PyTorch

Course session

Quiz

ML Basics recap

Solutions exercises

Presentation from the participants of the tasks from PyTorch101

Walk-through

PyTorch 202 (Lab 02)

To-do

😊

Go for your own through the Colab Notebook above (Pytorch202) and try to understand and repeat the steps for your own.

Watch the videos on the next page

Go through the following notebooks and complete the second one (assignment notebook):

The redundancy between some notebooks is desired to reintroduce the concepts in a different way and hence enrich your learning experience!

😊😊

Try to improve the accuracy in the PyTorch 202 notebook by tweaking the amount of layers and number of neurons

😊😊😊

Familiarize yourself with basic PyTorch Tutorials:

  • https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html (Second part)

  • https://uvadlc-notebooks.readthedocs.io/en/latest/tutorial_notebooks/tutorial3/Activation_Functions.html

  • https://uvadlc-notebooks.readthedocs.io/en/latest/tutorial_notebooks/tutorial4/Optimization_and_Initialization.html

Week 5 - Recurrent Neural Networks

RNNs

Course session

Faster Coding with ChatGPT, Stackoverflow and clever search

Deep dive

  • What are Embeddings?

  • Reinforcements of and insights into RNNs beyond Coursera

Solutions exercise RNN

Presentation from the participants of the RNN assignment from Coursera

Paddy challenge

Logistic regression baseline for the Paddy Competition

Walk-through

Basic CNN in PyTorchLightning

PyTorch 404 (Lab 04)

To-do

😊

Watch the videos on the next page

Build your own model(s) for the Paddy challenge and try to achieve the best accuracy. Log your results that you can present them in the class!

😊😊

Add the the test functionality and create a submission.csv and upload it to the leaderboard

Week 6 - CNN and RNN Applications

Hands-on

Course session

Kaggle

Presentation of experiments with the goal of improving the classification accuracy

Transfer Learning

Theory and Applications

Walk-through

PyTorch 505

Transfer Learning CNN in PyTorchLightning:

To-do

😊

Watch the videos on the next page

Watch the following Seminar about Transformers:

😊😊

Go on using ideas discussed in this session and go on improving the accuracy on the Paddy Dataset

Week 4 - Convolutional Neural Networks

CNNs

Course session

Kaggle - Our first challenge: Paddy

Exploratory Data Analysis(EDA) for Paddy Disease Classification

Solutions exercise CNN

Presentation from the participants of the CNN assignment from Coursera

Walk-through

PyTorchLightning

PyTorch 303 (Lab 03)

To-do

😊

Go for your own through the Colab Notebook above (PyTorch303) and try to understand and repeat the steps for your own.

Do Week 4 of the Coursera Course

Please register at kaggle.com and join the competition. Go through the Exploratory Data Analysis Notebook session and create your own EDA. Here is the link to the competiton:

The main objective of this Kaggle competition is to develop a machine or deep learning-based model to classify the given paddy leaf images accurately. A training dataset of 10,407 (75%) labeled images across ten classes (nine disease categories and normal leaf) is provided. Moreover, the competition host also provides additional metadata for each image, such as the paddy variety and age. Your task is to classify each paddy image in the given test dataset of 3,469 (25%) images into one of the nine disease categories or a normal leaf.

So that is where we will be heading in the next sessions, trying different tools and techniques to tackle this challenge.

Here again my EDA Notebook:

😊😊

😊😊😊

Week 7 - Transformers & Hugging Face

Course session

Explanatory Session Part 1

Self-attention and multihead attention

Hugging Face Introduction

Library and Use of HuggingFace for working with transfomer models

Explanatory Session Part 2

Transformer Encoder and Positional Encoding

Explanatory Session Part 3

Vision Transformer

Walk-through

Finetuning Vision Transformer on Kaggle Paddy Dataset

To-do

😊

Look at current Kaggle competitions and make proposals

😊😊

Go through this excellent site explaining Transformers:

Do Chapter 1-3 of the HuggingFace NLP course

😊😊😊

Look closer at the Pytorch module nn.Transformer (documentation) and go through a tutorial on how to use it for next token prediction.

Watch this excellent "Build from Scratch" video from Andrej Karpathy

Cousera Videos

Sequence-to-Sequence Encoder and Decoder

The Transformer Network

Coursera Videos

Watch them all😊

  1. Motivation Diabetic Retinopathy

  1. Breakdown of the Convolution (1D and 2D)

  1. Core Components of the Convolutional Layer

  1. Activation Functions

  1. Pooling and Fully Connected Layers

  1. Training the Network

  1. Transfer Learning

Done!

Coursera Videos

Watch them all😊

  1. How do we define learning?

  1. How do we evaluate our Networks?

  1. How do we learn our Network?

  1. How do we handle Big Data?

  1. Early Stopping

Done!

Week 11 - Final Presentations

Final Session

Week 3 - Intro Kaggle competition - EDA and baseline models with PyTorch

Learning and testing - a.k.a. don't do Bullshit Machine Learning

Course session

https://drive.google.com/file/d/18VsrKSqNFaWeWsL24ULFrNnwpghpdwJZ/view?usp=sharing

Walk-through

Hyperparameter experiment

The following notebook will show how to set up a hyperparameter experiment in plain PyTorch. More importantly it give you the results and enables you to analyze and play around

Kaggle

  • Introduction

  • Titanic

Solutions exercise MLP

Presentation from the participants of the MLP from Coursera

To-do

😊

Watch the videos on the next page

Go through the following notebooks and complete the second one (assignment notebook):

The next task is to analyze the results of the hyperparameter experiment and create a small presentation on your findings(e.g. batch size of 16 with lr=0.2 seems to equal batch size of 1 with lr=0.01). Here is the notebook again:

😊😊

Run your own hyperparameter experiment

😊😊😊

Do your own EDA on the Titanic Dataset and/or look at other EDA notebooks from competitors. Make a final presentable EDA notebook.

Familiarize yourself with this PyTorch Tutorials:

Cousera Videos

Word Vectors

Attention Mechanism

Week 8-10 - Kaggle competiton sessions

Kaggle Competition

Week 3 - Prompt Engineering & Demo Chatbot

Course session

Recap

Discussion of last weeks topics and selected homework presentations

Presentation

Prompt Engineering principles

Walk-through

Prompt Engineering notebook

You can also look at here at any time: https://github.com/WikiMind-GmbH/knowledge-base/tree/main/llms/prompt-engineering

Demo Chatbot https://github.com/WikiMind-GmbH/knowledge-base/tree/main/llms/first-project

To-Do

🤖

Use the learned methods to build a simple implementation of your project idea. Create a 90 second pitch to showcase it in the next session.

🤖🤖

Deploy your first prototype on Streamlit Cloud or elsewhere

🤖🤖🤖

Try to also build a demo app with Gradio and compare the differences to Streamlit

Week 1 - Intro + Organisation

Think about your project:

What are your skills and interests?

What motivates you?

Watch the first YouTube-Tutorials

THIS PLAYLIST IS OPTIONAL:

Projects & Frameworks

Here we present some potential project ideas:

For the semester project - you can bring your own data - we will discuss this in the first/second session. Nevertheless here you can find some resources to think about a potential project:

Check out these frameworks:

References / Books

YES.....books.....you may heard about it....these things were used in former times ;-)

Last but not least - here are some very good book references. It is not required or requested to buy any of these books. If you are enrolled as a student at CAU, FH Kiel or another university you might have access to these books via the SpringerLink of your home institution. They cover the course material quite well and provide GitHub-Repositories for the codes which where used throughout the book. Unfortunately there is no 1:1-Coursera course matching these books perfectly - but we will do our best ;-)

Some additional course material and MOOCs if you want you expand your knowledge at your own pace:

From LLMs to AI Agents🤖

Hybrid Format - Every Thursday 18h00-19h45

Taken your first steps in AI and programming and thirsty for becoming a fully equipped AI engineer? Then this course is perfectly right for you! You will learn+build all relevant LLM and Agents Architectures with the best tools.

The next pages serve as the course book. Go ahead and dive in!

Lecture material + YouTube

For the summer-term 2024 we use mainly YouTube playlists and freely available resources.

Check out the more detailed playlists in each week.

In case you enjoy Coursera - here are some suggestions:

  • register with Google and the Coursera platform to get corresponding accounts. Since we switched for the second/third run our video lecture sources (the Coursera part is optional - but still benefical for the interested) this part is optional.

Please enroll/attend/complete the following Coursera MOOCs during the semester:

Requirements for a Certificate of Achievement or ECTS

The conditions to be met in order to receive a Certificate of Achievement (and ECTS) are:

Attendance:

If you attend via Zoom, please make sure to use your full name, which should be the same that you used to register at edu.opencampus.sh. Otherwise your attendance will not be recorded!

Please switch on your camera - ask questions - be (inter)-active!!

Projects:

Check the Projects section to learn more about the projects.

Week 3 - Labour Day

Work on your semester project !!!

Plot your data... ;-)

Think about an appropiate approach for your problem

Formulate some questions about things you do not know

OPTIONAL:

Week 4 - State-Space models // Filtering

Continue working on your semester project !!!

Define an appropriate approach for your problem

Formulate some questions about things you do not know

OPTIONAL:

Week 2 - SARIMA(X) + GARCH-Models

Watch the second YouTube-Tutorial:

Work on your semester project topic and get started.

This means:

Connect to your team members

Launch a GitHub Repository

Prepare your data

OPTIONAL:

Week 1 - Course Introduction

Course session

Welcome and Introduction round

Introduction of the course, opencampus, the course instructor and the course participants

Walk-through

First Steps notebook

You can also look at here at any time: https://github.com/WikiMind-GmbH/knowledge-base/tree/main/llms/first-steps

To-Do

🤖

Set-up everything that it works for for you e.g. VSCode/Colab, ollama and API Keys and create your own notebook where you use at least one of the presented models/providers

🤖🤖

Start a course project where you manage your following homework. Start tracking with git and set up a public github repo.

🤖🤖🤖

For this first week there is nothing else.

Hello and welcome🤖

Great that you want to dive into the deep waters of Large Language Models and AI Agents. These are exciting times with major advancements on a quarterly basis with new models releases of OpenAI, Anthropic, Google, DeepSeek and so many more.

This course brings you from beginner to intermediate or even advanced.

On the next pages you can see what the content of each course week will be starting with what will happen during each of our course sessions. I have divided the course into three levels of course work:

🤖 Beginner

The part after one 🤖 is mandatory for each course participant for a for successful participation.

🤖🤖 Intermediate

The part after two 🤖🤖 is voluntary but recommended.

🤖🤖🤖 Expert

The part after three 🤖🤖🤖 is completely voluntarily for the ones who really want to know.

Alternatively you can just follow the course as a spectator, you won't need to do any of the exercises but you also do not get a certificate. But though you will learn a lot about this exciting field!

Remember the course instructor(me) is also fallible so please question me if you see something that does not seem kind of right to you. Also always ask questions especially if you don't fully understand something. This is really why we give this course afterall so that you understand everything🤖

Own contributions or suggestions for improving the course as well as feedback are always welcome🤖

Let's dive right in!

Week 6 - Extremes // Anomalies // Signatures

Continue working on your semester project !!!

OPTIONAL --- If you need to brush-up your knowledge on Trees:

Advanced Time Series Prediction

Hi everybody......it´s Kristian - your course instructor. I will guide you through the "Advanced Time Series Prediction"-course this semester.

Welcome to all participants.

We start with a short introduction of the course topics. Get to know each other and explain the course structure and all the required tasks for a successful participation.

This requires i.e.: Give a project presentation and provide a well documented code with data via GitHub. Addtionally you are only allowed to miss two class sessions during the semester.

Week 10 - NBEATS(x) + NHITS

Finalize your presentation !!!

Finalize your semester project !!!

OPTIONAL:

Week 11 - LLM for time series problems

Finalize your presentation !!!

Finalize your semester project !!!

OPTIONAL:

Week2 - RAG +Introduction to frameworks(langchain & llamaindex)

Course session

Recap

Discussion of last weeks topics and selected homework presentations

Walk-through

RAG notebook

You can also look at here at any time: https://github.com/WikiMind-GmbH/knowledge-base/tree/main/llms/rag

Introduction to langchain https://github.com/WikiMind-GmbH/knowledge-base/tree/main/llms/llm-frameworks/langchain

Introduction to llamaindex https://github.com/WikiMind-GmbH/knowledge-base/tree/main/llms/llm-frameworks/llamaindex

To-Do

🤖

Play around with the RAG notebook and change it to your personal interests.

Go through the langchain rag notebook.

🤖🤖

Create RAG notebook with llamaindex.

🤖🤖🤖

Change the search function in the RAG notebook to cosine similarity

Week 7 - Tree models: XGBoost // LightGBM // CatBoost

Continue working on your semester project !!!

Week 5 - Dependence concepts: Copula // Gaussian Processes // RMT

Continue working on your semester project !!!

Try to answer/motivate these questions:

What is you idea/topic?

Which data do you use?

How is it structured?

Is there something special you want to forecast?

OPTIONAL:

Week 12 - Final Presentations

Finalize your semester project !!!

CONGRATULATIONS - YOU MADE IT !!!

Week 1

To-Do (until 23/04/2025)

Homework

  • Buy the udemy course (ideally for the lower price, check coupon code at https://appbrewery.com/)

  • Do the first day of the course

    • Watch the videos

    • Do the interactive coding exercises

Week 13 - Final Presentations (Back-Up)

Finalize your semester project !!!

CONGRATULATIONS - YOU MADE IT !!!

Python: Beginner to Practitioner

Python Course in the Summer Term 2025

The session takes place every Wednesday 19h00 to 20h30 in starterkitchen (Kuhnkestr. 6) For the course it is mandatory to purchase the course material (https://www.udemy.com/course/100-days-of-code/. Discounts are available via udemy or https://appbrewery.com/. It should cost you around 15€.) This gitbook contains the main information you need for the course (e.g. homework assignments, project specifications and extra material)

Week 3

To-Do (until 07/05/2025)

Homework

  • Do days 4 & 5 of the course

    • Watch the videos

    • Do the interactive coding exercises (online at udemy and in PyCharm)

Week 2

To-Do (until 30/04/2025)

Homework

  • Do days 2 & 3 of the course

    • Watch the videos

    • Do the interactive coding exercises (online at udemy and in PyCharm)

Week 5

To-Do (until 21/05/2025)

Homework

  • Do days 8, 9 & 10 of the course

    • Watch the videos

    • Do the interactive coding exercises (online at udemy and in PyCharm)

Optionally

  • Do day 11 (BlackJack)

Week 4

To-Do (until 14/05/2025)

Homework

  • Do days 6 & 7 of the course

    • Watch the videos

    • Do the interactive coding exercises (online at udemy and in PyCharm)

Week 8

Note1: Object Oriented Programming is a difficult but powerful concept, please take your time to revise the topic!

Note 2: If you want to install packages in the environment we set up during the course, you can do so by running %pip installpackage_name (notice the %-sign!) e.g. %pip install PrettyTable in one of your notebook cells after you selected the environment. This is only needed once, after that it can always be reimported with import. If it doesn't work (e.g. in Colab, try !pip installpackage_name with ! instead of %)

To-Do (until 11/06/2025)

Homework

  • Do days 16 & 17 of the course

    • Watch the videos

    • Do the coding exercises

Group Project

  • Get started with your group project

  • You can find all information regarding the Final Project here

Week 10

To-Do (until 25/06/2025)

Homework

  • Do days 24 & 25 of the course

    • Watch the videos

    • Do the coding exercises

Week 9

To-Do (until 18/06/2025)

Homework

  • Do days 18 & 19 of the course

    • Watch the videos

    • Do the coding exercises

Optionally

  • Do days 20-23, as these will be skipped and not discussed in the course

Week 11

To-Do (until 02/07/2025)

Homework

  • Prepare slides for a five to ten minute presentation of your project

  • There will be room for discussion after each presentation

  • The format should be a project pitch, i.e. an interesting presentation of your vision

    • No code screenshots!

    • You can also talk about possible difficulties and options you tried

  • Upload the slides as PDF in the Mattermost channel before the session

Week 7

To-Do (until 04/06/2025)

Homework

  • Decide for one of the two final projects (they will be shown on your certificate)

    • Knowledge Cards: Flash Card Tool

    • Digital Pet: Interactive Virtual Companion

  • List out what data the program has to handle (e.g. flash card with front and back, pet stats like hunger) and the matching data structures you need in python

  • Create a flow chart for the program, like you have seen with hangman in the course:

Flowchart for the hangman program
  • We will form groups of ~4 people and you will get time to discuss together

Optional Assignment

  • Write a function draw_arrow(n) that takes an integer n and prints the following pattern:

n = 3

  *
 ***
*****
  *
  *

n = 5

    *
   ***
  *****
 *******
*********
    *
    *
  • Note that the length of the stem is always 2 and only the size of the arrowhead is changing

  • Use a .ipynb file.

Week 9 - Transformers + TemporalFusionTransformers

Finalize your presentation !!!

Finalize your semester project !!!

OPTIONAL:

Final Project

  • The deadline for submitting your well documented project is the 31/07/2025 23:59

  • You have to prepare a pitch presentation for the session on 02/07/2025

  • Your submission should tell a story:

    • What is the goal of the project?

    • What is the road map to reach that goal?

    • What did you try / did not work / can be improved upon?

  • You have to at least hand in a Jupyter Notebook documenting code snippets (i.e. spotlights on important code parts), also if you are just working with .py files

  • You can alternatively upload a zip file containing the Jupyter Notebook and needed project files (own libraries, resources, diagrams)

  • In a group project it should become clear, who participated and who worked on what part

General remarks on the project

  • The project should at least look and feel like the Projects you build in the course

  • Use a GUI

    • E.g. Tkinter (discussed in day 27)

    • Pygame is not difficult either

  • Use of libraries in general is encouraged!

Model Notebook

Please follow the structure of this notebook for your submission (usage of chapters, introductory block, individual contributions, additional resources like diagrams etc.):

If you want to include graphics or other files, please contain everything in one zip file. The opencampus.sh system only accepts single file uploads. Subsequent uploads will overwrite previous submissions!

Setup Instructions for Jupyter Notebook Support

Setting up the IDE

Instructions for PyCharm (Version 2025.1 or newer)

  • Make sure you have the latest, unified Version, not the Community Edition

  • If you are coming from the Community edition you can import all of your settings

    • To get rid of the messages to switch to Pro, you have to cancel the 30-days-trial-subscription (top right corner, scroll all the way down, click continue with core version, click cancel subscription and restart PyCharm)

  • Open a new project (File > New Project)

  • Select Pure Python and Interpreter Type Project venv and adjust the environment location on disk as needed

  • From the menu create a new file (File > New) and select Jupyter Notebook

  • Run a code cell to see that it works (takes some time on first start in a new project, because it installs some dependencies into the project folder's environment)

Instructions for VS Code

  • Install VS Code and then the extensions Python and Jupyter (both by Microsoft) from the extensions pane

  • In the file explorer pane open a folder where you want your project to be stored

  • Create a Jupyter Notebook (File > New > Jupyter Notebook)

  • Click on Select Kernel > Python enviroments > New environment > python venv > Python (global)

  • Run a code cell to see that it works (takes some time on first start in a new project, because it installs some dependencies into the project folder's environment)

Installation of other libraries

  • After you have setup Notebook support in VS Code and/or PyCharm you can install new packages into the project folder (local venv environment) by executing a cell like this: %pip install package_name

​

Resources

Solutions

Exercise: Create a flow chart for a simple calculator

Arrow Challenge

Write a function draw_arrow(n) that takes an integer n and prints the following pattern:

n = 3

  *
 ***
*****
  *
  *

n = 5

    *
   ***
  *****
 *******
*********
    *
    *

Solution:

def draw_arrow(n):
    for i in range(n):
        #number of stars:
        stars = (i*2 +1) * "*"  # 1, 3, 5, 7, ...
        #number of spaces
        spaces = ((n-i) - 1) * " " # n-1, n-2, n-3, ...
        #print row
        print(spaces+stars)
    
    #print shaft
    shaft_spaces = (n-1) * " "
    print(shaft_spaces+"*")
    print(shaft_spaces+"*")

Try it out here

Worklabs

Week 1 (Variables):

  • https://colab.research.google.com/drive/1L0JOZpw0hyUyL1wsukfDEYnrLbtrzMXv

Week 2 (Data Types):

  • https://colab.research.google.com/drive/19e0d1XQPl_N-usKunopxeCHWzBH55Mce

Week 3 (For-Loops):

  • https://colab.research.google.com/drive/1N42O0Zouic_4hm6gk0xjiHYVJQIXUQfJ

Week 4 (Functions):

  • https://colab.research.google.com/drive/1jgP4itfOltBBAWitdJWJrTUzbs4pTQYM

Week 5 (Dicts):

  • https://colab.research.google.com/drive/1jSkCSrWFnYqITuYH4g-byJGqjRO9AIQ3

Week 8/9 (OOP):

  • https://colab.research.google.com/drive/1gahgfS0EzxWU-07bQAHWAWGGlMfW3CPY

Week 10 (JSON):

  • https://colab.research.google.com/drive/16v-Nj90ANfjbEXCzaddw8eMXZBuYjVON

Preparation

Before the first class you should ...

  • If you are not familiar with the Hugging Face API yet, do at minimum chapter 1 and 2 of the Hugging Face NLP course before the start of the course. Further, I strongly recommend to additionally complete the chapters 3, 5 and 6.

  • Register to the Alpha Signal newsletter.

  • Get a Discord account and enter the LAION community and the EleutherAI community.

Week 8 - (Deep) recurrent architectures for time series data

Continue working on your semester project !!!

OPTIONAL:

Harvard Course

Advanced Material with Additional Assignments (Totally Optional)

Week 0 (Functions)

Assignments:

  • ​https://colab.research.google.com/drive/1Rk6TAFacJJQ4CxM2SF59ezqJj2VkBJ9P​

  • https://colab.research.google.com/drive/1pfFP971d3aRHno91KdVTTbywVpUMnMSk

Week 1 (Conditionals)

Assignments:

  • https://colab.research.google.com/drive/1HVemFckA3FqYe3DdirA3tYJYTx5_Pvga

Week 2 (Loops)

Assignments:

  • ​https://colab.research.google.com/drive/1vC07xaVcj20v7GC-w4vt-2aoOKaeQKuE

  • ​https://colab.research.google.com/drive/1R6tIPUzGGTvAyyFgkr2xRwGotQXPZP_L

Week 3 (Exceptions)

Assignments:

  • https://colab.research.google.com/drive/1z9xqzcOV5FLoQl4PhNzZSIZJDkd7JgFC

Week 4 (Libraries)

Assignments:

  • https://colab.research.google.com/drive/1swsc4earaul7lo00q1KL1FlH6MLPZ8lG

Week 5 (Unit Tests)

Week 6 (File I/O)

Assignments:

  • https://colab.research.google.com/drive/1CwmTFMU36ZlOfd3OuYKN5QKfqZ6pLRDK

Week 7 (Regular Expressions)

Week 8 (Object-Oriented Programming)

Assignments:

  • https://colab.research.google.com/drive/1_XPcB6K3Rn65GwRcUTulsdtwAhKIlp9U

Week 9 (Et Cetera)

Week 2 - Project Definition and Introduction to Fine-Tuning

This week you will...

  • discuss the definition of your project for the course.

  • discuss issues of Niels Rogge's video on Fine-Tuning

Learning Resources

  • from Niels Rogge

Until next week you should...

1MB
240422_SFT.pdf
pdf
Creating your own ChatGPT: Supervised fine-tuning (SFT)
LLM Engineering: Structured Outputs

Fine-Tuning and Deployment of Large Language Models

Week 4 - Model Evaluation

This week you will...

  • discuss important aspects of evaluating models.

  • discuss which models you want to use for your project.

Learning Resources

3MB
240506_Model Evaluation.pdf
pdf

Until next week you should...

Week 6

To-Do (until 28/05/2025)

Homework

  • Do days 12 & 13 of the course

    • Watch the videos

    • Do the interactive coding exercises (online at udemy and in PyCharm)

Optionally

  • Do days 14 & 15, as these will be skipped and not discussed in the course

Local Setup Instructions

In the session we will setup PyCharm (and optionally VS Code) to work with Jupyter Notebooks.

If you want to use VS Code, please download the installer before the session.

Follow the instructions here

Requirements for a Certificate of Achievement or ECTS

The conditions to be met in order to receive a Certificate of Achievement (and ECTS) are:

Attendance:

If you attend via Zoom, please make sure to use your full name, which should be the same that you used to register at edu.opencampus.sh. Otherwise your attendance will not be recorded!

Projects:

Check the Projects section to learn more about how to get started, complete, and submit you project.

Week 1 - General Introduction

This week you will...

  • get all details about the structure and form of the course.

  • get to know your fellow course participants.

  • discuss the general types of training large language models.

  • discuss current sources for staying up-to-date.

Learning Resources

6MB
240415_General Introduction.pdf
pdf
  • Hugging Face NLP course

  • YouTube channel from Yannic Kilcher

Until next week you should...

Week 9 - Efficient Inference

This week you will...

  • learn about different ways of using special tokens for instruction tuning

  • discuss problems in model evaluation

Learning Resources

2MB
240610_Inference.pdf
pdf
  • Short blog on how to fine-tune with Hugging Face AutoTrain

Until next week you should...

Week 3 - Fine-Tuning Characteristics

This week you will...

  • discuss the definition of your project for the course.

  • discuss issues of Niels Rogge's video on Fine-Tuning

Learning Resources

5MB
240429_Fine-Tuning Characteristics.pdf
pdf

Until next week you should...

Week 8 - Tokenization for Instruction Tuning

This week you will...

  • learn about different ways of using special tokens for instruction tuning

  • discuss problems in model evaluation

Learning Resources

1MB
240603_Tokenization.pdf
pdf
  • Notebook showing different examples of tokenizations

Until next week you should...

Week 10 - Project Presentations

This week you will...

  • present your project in the final presentations. :-)

After the Final Presentation you should...

  • complete your project documentation and submit it according to the instructions given here

Opencampus Paddy PyTorch Logistic Regression
Logo
Paddy Doctor: Paddy Disease Classification
Paddy Doctor: Paddy Disease Classification
Opencampus Paddy EDA
Opencampus Paddy EDA
Logo
Logo
Logo
Logo
Google Colaboratory
Logo