Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 313 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...

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.

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.

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 .)

Successful participation in at least one of the following events:

  • (participating with an AI project or startup)

  • coding camp

here
Prototyping Week
Coding.Waterkant

Week 2 - Data Import and Visualization

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

2MB
251030_Import and Graphical Representation of Data.pdf
PDF
Open
  • Get Started with GitHub Copilot in VS Code

  • Overview on GitHub Copilot in VS Code

  • Optional local installation of Python and VS Code

  • Examples for the graphical representation of data

Until next week you should...

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.

Introduction to Data Science and Machine Learning

Preparation

Before the first course session, you should ...

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:

Online 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!

Online attendance is only accredited if you have the camera on, are participating with a laptop or desktop computer, and are in a sufficiently quite location to participate in the group discussions.

GitHub
ChatGPT
Claude
this link
Introduction to Python
here
here

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

26MB
251023_Introduction.pptx
Open
  • Markdown Guide

Until next week you should...

Week 6 - Baseline Models and Linear Regression

This week we will...

  • get to know about the importance of baseline models

  • learn about naïve forecasting

  • see how linear regressions are defined

  • understand the role of cost functions

  • get an introduction into optimization functions

Learning Resources

  • on Linear Regression

Until next week you should...

Week 7 - 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
251127_Intro to Linear Regression.pdf
PDF
Open
527KB
IntroMLandLinReg.ipynb
Open
DataCamp Tutorial
The problem of overfitting
4MB
251204_Overfitting and Model Evaluation.pdf
PDF
Open
Graphical tool
Example
Neural networks intuition
TensorFlow implementation

Week 3 - Versioning with Git and Data Preparation (Part 1)

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

1MB
251106_Intro to git and data preparation.pdf
PDF
Open

Until next week you should...

Week 4 - Versioning with Git and Data Preparation (Part 2)

This week we will...

cover the following topics:

  • Versioning with Git in a Team

  • Important Issues to Consider for Feature Engineering

  • Introduction into Analyzing Time Series Data

Learning Resources

2MB
251112_Intro to git and data preparation (Part 2).pdf
PDF
Open

Until next week you should...

(You need to create a free account with DeeplLearning.AI.)

Requirements for a Certificate of Achievement or ECTS

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

Online 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!

Further: Online attendance is only accredited if you have the camera on, are participating with a laptop or desktop computer, and are in a sufficiently quite location to participate in the group discussions.

Projects:

Check the Projects section to learn more about the projects.

Week 5 - Time Series Analyses and Introduction into Machine Learning

This week we will...

  • learn about different patterns in times series

  • walk through the general procedure for training machine learning algorithms

  • get to know how to test predictions on Kaggle

  • get an impression of current developments in AI

Learning Resources

  • for graphical analyses of time series

Until next week you should...

Week 8 - 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...

7MB
251120_Time Series Analysis and Current AI Developments.pdf
PDF
Open
Example notebook
Linear Regression
Multiple Linear Regression
3MB
250612_Neural Nets.pdf
PDF
Open
introduction video
Example data preparation notebook
Example notebook
this video
this video
this course

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, Keynote 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 here.

Preparation

Before the first class you should ...

  • register with Google to get a corresponding account.

  • 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

Machine Learning with TensorFlow

Week 9 - Missing Values

This week we will...

  • learn how to use dropout layers

  • get to know different ways to handle missing values

Learning Resources

3MB
250619_Missing Values.pdf
PDF
Open
  • Example notebook for handling missing values

  • Chapter 1 of this course at datatcamp

  • Hugging Face course on the Transformers library

Until next week you should...

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
251023_General Introduction.pdf
PDF
Open
44KB
Guidlines for Presenting Assignments.pptx
Open
  • Video Neural Networks Explained (12 minutes)

  • Introductory course on Python from Kaggle

  • Tutorial on Colab on Medium

Until next week you should...

  • Watch the following videos:

    • Machine Learning Explained in 100 Seconds (Fireship, 2:30 min)

    • What is a Loss Function? Understanding How AI Models Learn (IBM Technology, 10 min)

    • Backpropagation, intuitively | Deep Learning Chapter 3 (3Blue1Brown, 13 min)

    • Parameters vs Hyperparameters (Pankaj Kumar Porwal, 5:40 min)

    • Validation data: How it works and why you need it (Galaxy Inferno Codes, 5:40 min)

    • TensorFlow Tutorial 3 - Neural Networks with Sequential and Functional API (Aladdin Persson, 21 min)

    • TensorFlow Tutorial 14 - Callbacks with Keras and Writing Custom Callbacks (Aladdin Persson, 11 min)

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

  • Complete the two assignments given in the following notebooks:

    • Assignment Notebook 1

    • Assignment Notebook 2

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

526KB
251030_Introduction_Part_I.pdf
PDF
Open
  • Machine Learning Explained in 100 Seconds (Fireship, 2:30 min)

  • What is a Loss Function? Understanding How AI Models Learn (IBM Technology, 10 min)

  • Backpropagation, intuitively | Deep Learning Chapter 3 (3Blue1Brown, 13 min)

  • Parameters vs Hyperparameters (Pankaj Kumar Porwal, 5:40 min)

  • Validation data: How it works and why you need it (Galaxy Inferno Codes, 5:40 min)

  • TensorFlow Tutorial 3 - Neural Networks with Sequential and Functional API (Aladdin Persson, 21 min)

  • TensorFlow Tutorial 14 - Callbacks with Keras and Writing Custom Callbacks (Aladdin Persson, 11 min)

Until next week you should...

  • Watch the following videos:

    • Cross Validation (StatQuest Video, 6 min)

      • The video is mandatory

      • The accompanying notebook is optional

    • Bias and Variance (Overfitting) (StatQuest, 7 min)

    • Model Evaluation (Confusion Matrix) (StatQuest, 7 min)

    • Callback Functions in TensorFlow (DigitalSreeni, 10 min)

  • 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 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
Open
  • Cross Validation (StatQuest Video, 6 min)

  • Bias and Variance (Overfitting) (StatQuest, 7 min)

  • Model Evaluation (Confusion Matrix) (StatQuest, 7 min)

  • Callback Functions in TensorFlow (DigitalSreeni, 10 min)

Until next week you should...

  • Watch the following videos:

    • Theory:

      • Neural Networks Part 8: Image Classification with Convolutional Neural Networks (CNNs) (StatQuest with Josh Starmer, 15 min)

      • C4W1L04 Padding (DeepLearningAI, 9:50 min)

      • C4W2L10 Data Augmentation (DeepLearningAI, 9:30 min)

    • Practice:

      • TensorFlow Tutorial 4 - Convolutional Neural Networks with Sequential and Functional API (Aladdin Persson, first 10 min)

        • Note: After the first 10 min, the functional API is covered, which you likely will not need for your projects. Of course, you are free to optionally also watch the rest of the video.

      • TensorFlow Tutorial 18 - Custom Dataset for Images (Aladdin Persson, first 7 min)

        • Note: The second method presented in the video (minutes 8 through 14) is deprecated and should no longer be used. The methods presented in the remainder of the video are not relevant to this week's assignment but may be interesting if you're doing a computer-vision project.

      • Data Augmentation - Deep Learning with Tensorflow | Ep. 19 (Kody Simpson, 23 min)

        • Note: Don't be confused by the alternative approach to do data augmentation that is shown first in the video. The presentation of the method relevant for this week's assignment starts at around timestamp 9:30.

  • Set up 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

  • Optional:

    • To get a better theoretical understanding of Convolutional Neural Networks, the playlist from DeepLearningAI from which some of the videos for this week were taken is generally a good source. In particular, you may find the videos (11 min) and C4W1L11 Why Convolutions (9:40 min) interesting. Naturally, you are free to watch more videos.

Week 10 - Sequences, Time Series and Prediction

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.

  • 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 1 and 2 of the course

Until next week you should...

  • complete your project work

  • prepare your project presentation according to the instructions given

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

  • (8 min)

  • on how to implement transfer learning with CNNs (12 min)

  • to learn about multi-class classification

Until next week you should...

  • Prepare questions for the instructor team on potential problems you see in your project

  • Watch the following videos:

    • (9 min)

    • (5 min)

    • (6 min)

    • (8 min)

    • (8 min)

  • Complete the exercise assignment in

complete the first milestone, that is the literature review and descriptive statistics, on Sunday before the feedback session next week! Follow the instructions given in the template repository and share the link to your project repository in the Google Sheet including the current list of projects, so we can review you completions there.

Sequences, Time Series and Prediction
here
1MB
250522_CNNs in TensorFlow-Part-II.pdf
PDF
Open
Presentation Slides from this week
Introduction on Transfer Learning
Video
Blog
What is NLP
NLP Zero to Hero Part 1
NLP Zero to Hero Part 2
NLP Zero to Hero Part 3
Embeddings explained
this notebook

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!

Week9 - Project Feedback Session

This week you will...

  • get individual feedback on your project idea from one of the instructors

Make sure you complete the first milestone, that is the literature review and descriptive statistics, on the Sunday before the feedback session! Follow the instructions given in the template repository and share the link to your project repository in the Google Sheet including the current list of projects, so we can review you completions there.

We will then assign your project team a time slot within the regular course time with one of the instructors.

Until next week you should...

  • complete tasks of the assignment in this notebook.

  • complete the tasks in this assignment notebook.

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
Open

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

Week 7 - 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

  • Week 1 and 2 of the course

Until next week you should...

  • watch [6 Min]

  • watch [5 Min]

  • watch [8 Min]

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

  • watch the videos "", "", and "" to help you evaluating and improving your model

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

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

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

Learning Resources

  • (StatQuest with Josh Starmer, 15 min)

  • (DeepLearningAI, 9:50 min)

  • (DeepLearningAI, 9:30 min)

  • (Aladdin Persson, first 10 min)

  • (Aladdin Persson, first 7 min)

  • (Kody Simpson, 23 min)

Until next week you should...

  • watch video to get an introduction on transfer learning (8 min)

  • watch video to learn how to implement transfer learning with CNNs (12 min)

  • work through blog to learn about multi-class classification

  • complete the exercise assignment in

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

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

Week 6 - Project Feedback Session

This week you will...

  • get individual feedback on your project idea from one of the instructors

Make sure you complete the first milestone, that is the literature review and descriptive statistics, on the Sunday before the feedback session! Follow the instructions given in the template repository and share the link to your project repository in the Google Sheet including the current list of projects, so we can review you completions there.

We will then assign your project team a time slot within the regular course time with one of the instructors.

Until next week you should...

  • Watch the following videos:

    • (9 min)

    • (5 min)

    • (6 min)

    • (8 min)

    • (8 min)

  • Complete the exercise assignment in

467KB
241205_NLP in TensorFlow-Part-I.pdf
PDF
Open
Natural Language Processing in TensorFlow
ML with RNNs (NLP Zero to Hero - Part 4)
LSTM for NLP (NLP Zero to Hero - Part 5)
Training an AI to create poetry (NLP Zero to Hero - Part 6)
this notebook
Why human-level performance?
Avoidable bias
Understanding human-level performance
here
627KB
251113_CNN_Part_I.pdf
PDF
Open
Neural Networks Part 8: Image Classification with Convolutional Neural Networks (CNNs)
C4W1L04 Padding
C4W2L10 Data Augmentation
TensorFlow Tutorial 4 - Convolutional Neural Networks with Sequential and Functional API
TensorFlow Tutorial 18 - Custom Dataset for Images
Data Augmentation - Deep Learning with Tensorflow | Ep. 19
this
this
this
this notebook
here
What is NLP
NLP Zero to Hero Part 1
NLP Zero to Hero Part 2
NLP Zero to Hero Part 3
Embeddings explained
this notebook

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

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 8 - 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

  • Will be provided here soon.

Until next week you should...

  • prepare questions for the instructor team on problems you have in your project or potential improvement ideas you are thinking of.

complete the second milestone, that is the definition of an evaluation metric and the estimation of a baseline model, on Sunday before the feedback session next week! Follow the instructions given in the template repository. We will review your completions via the link to your repository provided in the Google Sheet including the current list of projects.

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:

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 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

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!

Cousera Videos

Watch them all😊

  1. Introduction to the Concept of Word Vectors

  1. Words to Vectors

  1. Example of Word Embeddings

  1. Neural Model of Text

  1. The Softmax Function

  1. Methods for Learning Model Parameters

  1. More Details on How to Learn Model Parameters

  1. The Recurrent Neural Network

  1. Long Short-Term Memory

  1. Long Short-Term Memory Review

  1. Use of LSTM for Text Synthesis

  1. Simple and Effective Alternative Methods for Neural NLP

Done!

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.

Watch the videos on the next page

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

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 3 - Intro Kaggle competition - EDA and baseline models with PyTorch

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

Course session

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:

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!

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

Cousera Videos

Sequence-to-Sequence Encoder and Decoder

The Transformer Network

Week 8-10 - Kaggle competiton sessions

Kaggle Competition

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!

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

Cousera Videos

Word Vectors

Attention Mechanism

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

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

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 11 - Final Presentations

Final Session

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 () and go through a on how to use it for next token prediction.

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

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.

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.

documentation
tutorial

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.

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:

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 - Intro + Organisation

Think about your project:

What are your skills and interests?

What motivates you?

Watch the first YouTube-Tutorials

THIS PLAYLIST IS OPTIONAL:

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:

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:

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 6 - Extremes // Anomalies // Signatures

Continue working on your semester project !!!

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

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

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:

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

Continue working on your semester project !!!

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

Continue working on your semester project !!!

OPTIONAL:

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 9 - Transformers + TemporalFusionTransformers

Finalize your presentation !!!

Finalize your semester project !!!

OPTIONAL:

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 11 - LLM for time series problems

Finalize your presentation !!!

Finalize your semester project !!!

OPTIONAL:

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 13 - Final Presentations (Back-Up)

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 10 - NBEATS(x) + NHITS

Finalize your presentation !!!

Finalize your semester project !!!

OPTIONAL:

Week 12 - Final Presentations

Finalize your semester project !!!

CONGRATULATIONS - YOU MADE IT !!!

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

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
Open

Until next week you should...

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)

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 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
Open
  • Hugging Face NLP course

  • YouTube channel from Yannic Kilcher

Until next week you should...

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
Open

Until next week you should...

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

1MB
240422_SFT.pdf
PDF
Open
  • Creating your own ChatGPT: Supervised fine-tuning (SFT) from Niels Rogge

Until next week you should...

C4W1L06 Convolutions Over Volumes

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 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 10

To-Do (until 25/06/2025)

Homework

  • Do days 24 & 25 of the course

    • Watch the videos

    • Do the coding exercises

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

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.

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

​

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

Resources

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

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 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)

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!

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.

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

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

  • on how to fine-tune with Hugging Face AutoTrain

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

  • showing different examples of tokenizations

Until next week you should...

2MB
240610_Inference.pdf
PDF
Open
Short blog
1MB
240603_Tokenization.pdf
PDF
Open
Notebook
Google Colabcolab.research.google.com
Stanford CS224N NLP with Deep Learning | 2023 | PyTorch Tutorial, Drew KaulYouTube
Google Colabcolab.research.google.com
Google Colabcolab.research.google.com
Logo
Logo
Logo
Google Colabcolab.research.google.com
Logo
Google Colabcolab.research.google.com
The first notebook
Logo
Google Colabcolab.research.google.com
Logo
Google Colabcolab.research.google.com
The assignment notebook
Logo
Logo
Paddy Doctor: Paddy Disease Classificationwww.kaggle.com
Paddy Doctor: Paddy Disease Classificationwww.kaggle.com
Logo
Logo
Google Colabcolab.research.google.com
First notebook
Logo
Google Colabcolab.research.google.com
Assignment notebook
Logo
Opencampus Paddy EDAKaggle
Opencampus Paddy EDAKaggle
Logo
Logo
Google Colabcolab.research.google.com
Google Colabcolab.research.google.com
The first notebook
Logo
Tutorial 5: Inception, ResNet and DenseNet — UvA DL Notebooks v1.2 documentationuvadlc-notebooks.readthedocs.io
Google Colabcolab.research.google.com
Google Colabcolab.research.google.com
Logo
Logo
Logo
Logo
Google Colabcolab.research.google.com
The assignment notebook
Logo
Coupling the Sequence Encoder and Decoder
Attention-Based Sequence Encoder
Cross Attention In the Sequence-to-Sequence Model
Multi-Head Attention
The complete Transformer Network
Stanford CS25: V2 I Introduction to Transformers w/ Andrej KarpathyYouTube
Google Colabcolab.research.google.com
Logo
Word vectors and their interpretation
Inner Products Between Word Vectors
Relationships Between Word Vectors
Intuition Into Meaning of Inner Products of Word Vectors
Introduction of Attention Mechanism
Queries, Keys, and Values of Attention Network
Self-Attention and Positional Encodings
Google Colabcolab.research.google.com
Logo
Opencampus Paddy PyTorch Logistic RegressionKaggle
The Illustrated Transformerjalammar.github.io
Logo
Google Colabcolab.research.google.com
Logo
Google Colabcolab.research.google.com
Logo
Introduction - Hugging Face LLM Coursehuggingface
Logo
Tutorial 15: Vision Transformers — UvA DL Notebooks v1.2 documentationuvadlc-notebooks.readthedocs.io
Tutorial 6: Transformers and Multi-Head Attention — UvA DL Notebooks v1.2 documentationuvadlc-notebooks.readthedocs.io
Logo
Logo
Home - investpyinvestpy.readthedocs.io
FINANCE
Data Products | Cboe DataShopdatashop.cboe.com
FINANCE
Logo
Energy-Chartswww.energy-charts.info
ENERGY
Logo
Logo
ICEwww.ice.com
FINANCE
Logo
GitHub - ranaroussi/yfinance: Download market data from Yahoo! Finance's APIGitHub
FINANCE
GitHub - mortada/fredapi: Python API for FRED (Federal Reserve Economic Data) and ALFRED (Archival FRED)GitHub
ECONOMICS
excess-mortality/all-countries.ipynb at main · dkobak/excess-mortalityGitHub
MEDICAL
Hannover | Wetterrückblick & Klimadaten | MeteostatMeteostat
WEATHER
PEGELONLINEwww.pegelonline.wsv.de
ENVIRONMENT
GitHub - javedali99/python-resources-for-earth-sciences: A Curated List of Python Resources for Earth SciencesGitHub
ENVIRONMENT
DatasetsECMWF
ENVIRONMENT
Graphs and mapsEUROMOMO
MEDICAL
Analyze Geospatial Data in Python: GeoPandas and Shapelywww.learndatasci.com
ENVIRONMENT
https://mba.tuck.dartmouth.edu/pages/faculty/ken.french/data_library.htmlmba.tuck.dartmouth.edu
ECONOMICS
Logo
Logo
Introduction — PyFlux 0.4.7 documentationpyflux.readthedocs.io
Logo
statsmodels 0.14.4www.statsmodels.org
Time Series Classification Websitewww.timeseriesclassification.com
MEDICAL
GitHub - tymefighter/ForecastGitHub
arch 7.2.0arch.readthedocs.io
Nixtla | State of the Art ForecastingNixtla
Welcome to skforecast - Skforecast Docsskforecast.org
Model References — HyperTS 0.1.4 documentationhyperts.readthedocs.io
PyTorch Forecasting Documentation — pytorch-forecasting documentationpytorch-forecasting.readthedocs.io
Time Series Made Easy in Python — darts documentationunit8co.github.io
https://www.youtube.com/playlist?list=PLvcbYUQ5t0UHOLnBzl46_Q6QKtFgfMGc3
Forecasting Volatility: Deep Dive into ARCH & GARCH ModelsMedium
https://www.youtube.com/playlist?list=PLzAfHlPtM1I4bPhNE5FKOi0S7erZqm5pg
Logo
Logo
Logo
V-Lab: Volatility Analysis DocumentationV-Lab
Logo
GluonTS documentationts.gluon.ai
Logo
https://www.youtube.com/playlist?list=PLblh5JKOoLULU0irPgs1SnKO6wqVjKUsQ
https://www.youtube.com/playlist?list=PLblh5JKOoLUKAtDViTvRGFpphEc24M-QH
https://www.youtube.com/playlist?list=PLblh5JKOoLUJjeXUvUE0maghNuY2_5fY6
GitHub - iankhr/armagarch: ARMA-GARCHGitHub
Multivariate GARCH with Python and Tensorflow – Sarem Seitzsarem-seitz.com
https://www.youtube.com/playlist?list=PLzAfHlPtM1I7jej6_SxBAbBR-XQM0SBn0
DCC-GARCH/examples/dcc_garch_modeling.ipynb at master · Topaceminem/DCC-GARCHGitHub
V-Lab: Correlation Analysis DocumentationV-Lab
https://www.youtube.com/playlist?list=PLtIY5kwXKny91_IbkqcIXuv6t1prQwFhO
https://www.youtube.com/playlist?list=PL0vEWJI_pj7SWa-cOUZZlHtpMQ7ULrTdY
GitHub - vishnukanduri/Time-series-analysis-in-Python: I perform time series analysis of data from scratch. I also implement The Autoregressive (AR) Model, The Moving Average (MA) Model, The Autoregressive Moving Average (ARMA) Model, The Autoregressive Integrated Moving Average (ARIMA) Model, The ARCH Model, The GARCH model, Auto ARIMA, forecasting and exploring a business case.GitHub
https://www.youtube.com/watch?v=Gka11q5VfFI
https://www.youtube.com/watch?v=WMOrCBxxgvA
Logo
Logo
https://www.youtube.com/watch?v=s2K1JfNR7Sc
Media Hopper Createmedia_hopper
Iain Explains Signals, Systems, and Digital CommsYouTube
Time Series Analysis by State Space MethodsOUP Academic
https://www.youtube.com/watch?v=i7JNt5qN2Sg
https://www.youtube.com/watch?v=vmb79c-RsIU
https://media.ed.ac.uk/channel/Probability++Estimation+Theory+and++Random+Signals+%28PETARS%29/174860421
https://www.youtube.com/@iain_explains/playlists
https://www.youtube.com/playlist?list=PLMrJAkhIeNNSVXUvppZTYNHKQUD-oWys9
https://academic.oup.com/book/16563
https://www.youtube.com/playlist?list=PL6Vi_EcJpt8E96_JTKoOKY3HYWVGjf6b4
https://www.youtube.com/playlist?list=PLMrJAkhIeNNQkv98vuPjO2X2qJO_UPeWR
https://www.youtube.com/watch?v=sa7E9qUHYXw
https://www.youtube.com/playlist?list=PLMrJAkhIeNNT_Xh3Oy0Y4LTj0Oxo8GqsC
Towards Data ScienceTowards Data Science
https://www.youtube.com/watch?v=IaSGqQa5O-M
https://www.youtube.com/playlist?list=PLJYjjnnccKYDppALiJlHskU8md904FXgd
https://www.youtube.com/watch?v=d_qvLDhkg00
https://www.youtube.com/playlist?list=PLblh5JKOoLUIE96dI3U7oxHaCAbZgfhHk
Logo
Logo
Logo
Logo
Logo
Logo
https://www.youtube.com/playlist?list=PLmZlBIcArwhMJoGk5zpiRlkaHUqy5dLzL
https://www.youtube.com/watch?v=xcbj0RE3kfI
https://www.youtube.com/watch?v=S31E-ftRfQI&list=PL3N9eeOlCrP5cK0QRQxeJd6GrQvhAtpBK&index=24
https://www.youtube.com/watch?v=u1vLJBwOFC8&list=PLZsOBAyNTZwYE5IM1g_3yNXuxaH_QRSoJ
https://www.youtube.com/watch?v=_K1OsqCicBY
https://www.youtube.com/watch?v=q222maQaPYo
https://www.youtube.com/watch?v=j0eioK5edqg
https://www.youtube.com/watch?v=B_a0K2Uj85Q
https://www.youtube.com/watch?v=6S2v7G-OupA
https://www.youtube.com/playlist?list=PLvy_Rp6CaRZRCOzlPVL4SpjPiqm80KIpH
Logo
Logo
Logo
Logo
https://www.youtube.com/playlist?list=PLKsJFg6SO0Ujr6tZHSImQ50vuNPoZ3NOl
https://www.youtube.com/playlist?list=PLKsJFg6SO0UgQD2erzgNKrJEnsnpKcBxX
https://www.youtube.com/watch?v=pkZhtscaX1M
Course Detail | NVIDIAlearn.nvidia.com
https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+C-TC-01+V1
Logo
Logo
Week 1 Conditionals - CS50's Introduction to Programming with Pythoncs50.harvard.edu
Logo
Week 0 Functions - CS50's Introduction to Programming with Pythoncs50.harvard.edu
Logo
Practical Time Series AnalysisCoursera
Enroll and complete this course in Coursera
Practical Time Series AnalysisCoursera
This is a nice time series course with a focus on R/RStudio. It goes slightly deeper then our first course but lacks machine learning techniques. Nevertheless a very good ranked course and worth doing it - if you like to deepen your knowledge.
Specialized Models: Time Series and Survival AnalysisCoursera
Enroll and complete this course in Coursera
Logo
Logo
Logo
Week 3 Exceptions - CS50's Introduction to Programming with Pythoncs50.harvard.edu
Logo
Week 4 Libraries - CS50's Introduction to Programming with Pythoncs50.harvard.edu
Logo
https://link.springer.com/book/10.1007/978-1-4842-8978-5link.springer.com
https://github.com/Apress/time-series-algorithm-recipes
Logo
https://link.springer.com/book/10.1007/978-1-4842-5992-4link.springer.com
https://github.com/Apress/hands-on-time-series-analylsis-python
https://link.springer.com/book/10.1007/978-1-4842-7150-6link.springer.com
https://github.com/Apress/advanced-forecasting-python
Time Series Forecasting using Deep LearningBPB Online
https://github.com/bpbpublications/Time-Series-Forecasting-using-Deep-Learning
Modern Time Series Forecasting with PythonPackt
https://github.com/PacktPublishing/Modern-Time-Series-Forecasting-with-Python
Logo
app_deep_learning/t81_558_class_10_1_timeseries.ipynb at main · jeffheaton/app_deep_learningGitHub
Machine Learning for Time-Series with PythonPackt
https://github.com/PacktPublishing/Machine-Learning-for-Time-Series-with-Python
Logo
Time Series Forecasting in PythonManning Publications
https://github.com/marcopeix/TimeSeriesForecastingInPython/tree/master
https://link.springer.com/book/10.1007/978-3-031-13584-2link.springer.com
https://github.com/QuantLet/pyTSA/
Logo
Forecasting: Principles and Practice (2nd ed)robjhyndman
This book is freely available and provides additional information. Focus on R/RStudio.
Logo
Transformers Explained Visually (Part 1): Overview of Functionality | Towards Data ScienceTowards Data Science
https://www.youtube.com/watch?v=L8HKweZIOmg
https://www.youtube.com/watch?v=viZrOnJclY0
Time Series Analysis with Python CookbookPackt
https://github.com/PacktPublishing/Time-Series-Analysis-with-Python-Cookbook
Logo
https://www.youtube.com/watch?v=RZQJk0hf3sI
https://www.youtube.com/watch?v=PSs6nxngL6k
https://www.youtube.com/playlist?list=PLmZlBIcArwhOPR2s-FIR7WoqNaBML233s
Logo
Week 5 Unit Tests - CS50's Introduction to Programming with Pythoncs50.harvard.edu
Logo
Week 2 Loops - CS50's Introduction to Programming with Pythoncs50.harvard.edu
Logo
https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi
https://www.youtube.com/watch?v=p3Xc_TJU8SI
Logo
Logo
Logo
Google Colabcolab.research.google.com
Logo
https://www.youtube.com/watch?v=UBDgSHPxVME
https://www.youtube.com/watch?v=sOXROWJ70Pg
https://www.youtube.com/playlist?list=PLY11JnnnTUCabY4nc0hKptrd5qEWtLoo2
https://www.youtube.com/playlist?list=PLPjEEUWIWhQV7X6dXfrVP3w0KBBLBVJ0j
https://www.youtube.com/watch?v=YCzL96nL7j0
https://www.youtube.com/watch?v=osfZc35FgQQ
https://www.youtube.com/watch?v=8t64QaTdBcU
https://www.youtube.com/watch?v=2ekL5oG6RVo
https://www.youtube.com/watch?v=eiP3oJ0Lkbs
https://www.youtube.com/watch?v=AsNTP8Kwu80
Logo
Logo
Logo
Logo
https://www.youtube.com/watch?v=Zyj8iFSK7xY
Logo
https://www.youtube.com/watch?v=L-hRexVa32k
https://www.youtube.com/watch?v=Ei0klF38CNs
Write a caption ​ ​https://www.youtube.com/watch?v=kbK53gkPaRQ
Logo
Logo
Logo
https://www.youtube.com/watch?v=XhAGTt3UO_w