Conditions for Obtaining Credit:
- Mandatory: Completion of a project and its in-person presentation during the lecture (on December 16, 2025, or earlier). Update (Nov 14): Please make sure you do not miss the important deadlines below. E.g., the deadline for project topic approval is 18 November.
- Voluntary (but contributes to the final grade): Participation in practical sessions.
Active Participation in Practical Sessions
- Attendance is not mandatory, but it is recommended and will contribute to a better grade.
- Active participation means focusing on the class, being involved in solving problems, and communicating.
-
Grading of attendance: 1 point for active participation in one class, with a maximum of 12 points possible.
- For an A grade based on attendance: at least 9 out of 12 points
- For a B grade based on attendance: at least 7 out of 12 points
- For a C grade based on attendance: at least 5 out of 12 points
- For a D grade based on attendance: at least 3 out of 12 points
- For a E grade based on attendance: at least 1 out of 12 points
- If you cannot attend the class for valid reasons (e.g., a timetable conflict), you may arrange in advance to do individual work combined with regular consultations. In that case, the attendance requirement will be adjusted accordingly.
- If there is sufficient student interest, 2–4 optional homework assignments will be offered during the semester. Completing them will allow you to earn bonus points toward the attendance requirement.
Project Development and Presentation
During this course, you will work independently on a project. You will then present this project during a practical session. The goal of the project is to apply one of the studied models to a real-world data problem and to experiment with various methods and techniques.
-
What does the project involve?
- Choice of task and dataset: Select a suitable task and a corresponding dataset. For example, it can be classification, regression, working with image, textual or sequential data – whichever interests you. If you are unsure, I will be happy to suggest a task. Update (Nov 14): If you decide to use an existing dataset, please avoid overly common or “ready-made” datasets (such as those directly from Keras).
- Data preprocessing: It is crucial to prepare the data thoroughly for training the models – this can include cleaning, augmentation, etc.
- Model selection and application: Use one or more of the covered models that are suitable for the chosen problem.
-
Experimentation:
- Try different approaches (e.g., various models, different variations of one model, different architectures or parameter choices, pre-trained models). You can also apply techniques to improve training (e.g., regularization, dropout, data augmentation, ...). The experimentation process is important. How (and to what extent) you experiment is up to you, but I am happy to give advice.
- Compare the results of multiple models, settings or approaches.
- Evaluation: Assess the results of your experiment – how well does your model (or models) perform? Which techniques had the greatest impact and how? What was the biggest challenge for you? Did you learn anything new?
- Tip: If you have already worked or are currently working on some project related to neural networks (e.g., as part of a bachelor’s thesis or any other research), you can use it for this course upon agreement.
- Important: Students who have previously completed the course Neural Networks 1 are required to select a different project topic than in that course, preferably focusing on another type of task or model.
-
Important deadlines:
- Noveber 18, 2025: Selection of the task and its approval.
- Between the task selection and the final presentations, there will be opportunities for individual project consultations (regular or one-time, depending on the student’s interest and needs). These consultations are voluntary, but they can help you refine your approach and address potential difficulties in advance.
- December 9 or December 16, 2025: Presentations of the completed projects to the class. Along with the presentation, you will submit the annotated source code (a notebook is ideal), input data, output visualizations, and possibly slides (materials) for your presentation. If needed, you can present earlier by prior arrangement.
- Additional notes: If you do not finish your project on time, you will present the current status during the practcal session and then submit a more detailed project report by September 4, 2026 at the latest. The final defense of the project will then take place during an individual consultation. Similarly, if the project and its presentation have significant shortcomings or are insufficient in scope, I may ask you to supplement them, and then submit and present these additions later (by September 4, 2026 at the latest).
- The specific grade (A–E) will depend on the scope and quality of the project. Whether the project was submitted on time will also be taken into consideration.
FAQ about Projects
-
What structure should the final presentation have?
- A description of the task you decided to solve.
- A description of the data (the nature of the data, features, number of samples, etc.) and their source (or how you obtained the data).
- How you preprocessed the data.
- A description of the experiment – which models, techniques, and parameter settings you tried, and how.
- Results of the experiment (appropriate visualization using tables, images, or graphs) + your own commentary.
-
Where can I get data?
- Kaggle: https://www.kaggle.com/datasets
- UCI Machine Learning Repository: https://archive.ics.uci.edu/
- KDnuggets: https://www.kdnuggets.com/datasets/index.html
- GitHub: https://github.com/topics/machine-learning-datasets
- Google Dataset Search: https://datasetsearch.research.google.com/
- OpenML: https://www.openml.org/
- Time series (e.g., currency rates, stock prices), and so on. Update (Nov 14): Of course, you do not need to use any public dataset — you may work on your own task with your own data (for example, your personal photos, training on data from your simulations or calculations, etc.). If you choose to use an existing dataset, please avoid overly common or “ready-made” datasets (such as those provided directly in Keras).
-
Which models should I choose?
You can select any of the models covered in the course. I particularly recommend:- A multilayer perceptron (MLP).
- A convolutional neural network (CNN) or its enhancement.
- A recurrent neural network.
- A generative model.
-
How do I compare models?
- Divide the data into the training,validation and testing subsets. An independent testing set is crucial for evaluation.
- Try different architectures or hyperparameter settngs.
- Present the results in table form, and evaluate them in your own words.
-
Update (Nov 14): What should the presentation look like?
- You are encouraged to present your work directly from your Python notebook (there is no need to prepare a PowerPoint presentation, e.g.). Please include your notes, explanations, visualisations, tables, and any other relevant outputs directly in the notebook. If you prefer to create a separate presentation, you may do so — but please be ready to show your notebook with the solution on request and submit it together with your project.
- The expected presentation length is 15–20 minutes. If you feel that 15 minutes is not enough to properly present your project, it may be possible to arrange a longer presentation, provided there is enough time during the class.