Difference between revisions of "SC:Soft Computing"
Line 28: | Line 28: | ||
===Detailed course schedule=== | ===Detailed course schedule=== | ||
− | A detailed schedule of the course can be found here; topics are just indicative while days and teachers are correct up to some last minute change ( | + | A detailed schedule of the course can be found here; topics are just indicative while days and teachers are correct up to some last minute change (they will be notified to you by email). |
{| border="1" align="center" style="text-align:center;" | {| border="1" align="center" style="text-align:center;" | ||
Line 34: | Line 34: | ||
|Date || Day || Time || Room || Teacher || Topic | |Date || Day || Time || Room || Teacher || Topic | ||
|- | |- | ||
− | | | + | |06/10/2011 || Thursday || 14:15 - 16:15 || || Andrea Bonarini || |
|- | |- | ||
|15/03/2011 || Tuesday || 14:15 - 16:15 || 3.6 || Matteo Matteucci || Two examples from classification (Ch. 2) | |15/03/2011 || Tuesday || 14:15 - 16:15 || 3.6 || Matteo Matteucci || Two examples from classification (Ch. 2) |
Revision as of 22:31, 5 September 2011
The following are last minute news you should be aware of ;-)
06/10/2011: the Soft Computing course starts today!
Contents
Course Aim & Organization
Soft Computing includes technologies (Fuzzy Systems, Neural Networks, Stochastic Algorithms and models) to model complex systems and offers a powerful modeling tool for engineers and in general people needing to model phenomena. Among the application areas, we mention: data analysis, automatic control, modeling of artificial and natural phenomena, modeling of behaviors (e.g., of users and devices), decision support.
The course will introduce rigorously the fundamentals of the different modeling approaches, will put in evidence the application possibilities, by comparing different models, examples and application cases, will introduce design techniques for systems based on these technologies.
Teachers
The course is composed by a blending of lectures and exercises by the course teacher and the teaching assistant:
- Andrea Bonarini: the teacher
- Matteo Matteucci: the teaching assistant
Course Program
- What is Soft Computing: fuzzy systems, neural networks, stochastic algorithms and models;
- Fuzzy models: fuzzy sets, fuzzy logic, fuzzy rules, motivations for fuzzy modeling;
- Neural networks: basics, supervised and unsuprvised learning, main modelsi, selection and evaluation;
- Stochastic models: basics, optimization of models, fitness function, model definition, genetic algorithms, reinforcement learning, bayesian networks;
- Hybridization: motivations, neuro-fuzzy systems, genetic algoritms to optimize neural networks and fuzzy systems;
- Applications: motivations, choices, models, case studies.
Detailed course schedule
A detailed schedule of the course can be found here; topics are just indicative while days and teachers are correct up to some last minute change (they will be notified to you by email).
Date | Day | Time | Room | Teacher | Topic |
06/10/2011 | Thursday | 14:15 - 16:15 | Andrea Bonarini | ||
15/03/2011 | Tuesday | 14:15 - 16:15 | 3.6 | Matteo Matteucci | Two examples from classification (Ch. 2) |
22/03/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Discriminating functions, decision boundary and Linear Regression (Ch.4.1, Ch. 4.2) |
23/03/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Luigi Malago | Linear regression methods (Ch 2.1, 2.2, 2.3 and 2.3.1, 2.4, 2.6 and 2.6.1, 2.7 and 2.7.1, 2.8 and 2.8.1, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.9, see paper "Least Angle Regression" linked below, pages 1-16) |
29/03/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Linear Discriminant Analysis (Ch. 4.3) |
30/03/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Luigi Malago | Linear regression methods (see 23/03/2011) |
05/04/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Luigi Malago | Linear regression methods (see 23/03/2011) |
06/04/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Luigi Malago | Linear regression methods (see 23/03/2011) |
12/04/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Logistic regression (Ch.4.4) |
13/04/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Davide Eynard | Clustering I: Introduction and K-Means |
19/04/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Perceptron learning |
20/04/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Davide Eynard | Clustering II: K-Means Alternatives, Hierarchical, SOM |
27/04/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Davide Eynard | Clustering III: Mixture of Gaussians, DBSCAN, Jarvis-Patrick |
03/05/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Maximum margin classification (Ch. 4.5.2) |
04/05/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Davide Eynard | Clustering IV: Evaluation Measures |
10/05/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Kernel Smoothing Methods and Kerned Density Estimation (Ch.6.1, Ch.6.6, Ch.6.9) |
11/05/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Matteo Matteucci | Gaussian Mixture Models (Ch.6.8) and the EM Algorithm (Ch.8.5) |
17/05/2011 | Tuesday | No Lecture today! | |||
18/05/2011 | Wednesday | No Lecture today! | |||
24/05/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Decision Trees (handout + Ch. 9.2) |
25/05/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Matteo Matteucci | Classification Rules (handout + Ch. 9.2) |
31/05/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Rule pruning and Sequential Covering Algorithm (handout + Ch. 9.3) |
01/06/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Matteo Matteucci | Sequential Covering Algorithm (handout + Ch. 9.3) |
07/06/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Support Vector Machines (Ch. 12.1, Ch. 12.2, Ch. 12.3.0, Ch. 12.3.1 + SVM paper) |
08/06/2011 | Wednesday | No Lecture today! | |||
14/06/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Model selection theory (Ch. 7.1, Ch. 7.2, Ch. 7.3 + Bias and Variance notes) |
15/06/2011 | Wednesday | 14:15 - 16:15 | 4.2 | Matteo Matteucci | Model selection practice (Ch. 7.4, Ch. 7.5, Ch. 7.6, Ch. 7.7, Ch. 7.10) |
21/06/2011 | Tuesday | 13:15 - 15:15 | 3.6 | Matteo Matteucci | Question and Answers |
Course Evaluation
The course evaluation is composed by two parts:
- A homework with exercises covering the whole program that counts for 30% of the course grade
- A oral examination covering the whole progran that count for 70% of the course grade
The homework is just one per year, it will be published at the end of the course and you will have 15 days to turn it in. It is not mandatory, however if you do not turn it in you loose 30% of the course grade. There is the option of substitute the homework with a practical project, but this has to be discussed and agreed with the course professor.
Teaching Material (the textbook)
Right now, the official course website is maintained by Andrea Bonarini at [1]
Lectures will be based on material taken from the aforementioned slides and from the following book.
- The Elements of Statistical Learning: Data Mining, Inference, and Prediction. by Trevor Hastie, Robert Tibshirani, and Jerome Friedman.
Some additional material that could be used to prepare the oral examination will be provided together with the past homeworks.
Teacher Slides
In the following you can find the lecture slides used by the teacher and the teaching assistants during classes:
- Course introduction: introductory slides of the course with useful information about the grading, and the course logistics. Some examples from supervised learning and two algorithms for classification (taken from The Elements of Statistical Learning book).
- Linear Classification Examples: slides presenting images, tables and examples about (generalized) linear methods for classification (taken from The Elements of Statistical Learning book).
- Kernel Smoothing Examples: slides presenting images, tables and examples about Kernel Smoothing, Kernel Density Estimation and Gaussian Mixture Models (taken from The Elements of Statistical Learning book).
- Decision Trees and Classification Rules: these slides have been used to present decision trees and decision rules complementing the material in Ch. 9.2 of the The Elements of Statistical Learning book.
- Support Vector Machines: these slides have been used to present Support Vector Machines (taken from The Elements of Statistical Learning book).
Additional Papers
Papers used to integrate the textbook
- Bradley Efron, Trevor Hastie, Iain Johnstone and Robert Tibshirani, Least Angle Regression Annals of Statistics (with discussion) (2004) 32(2), 407-499.
- Burges, Christopher J. C., 1998. A tutorial on support vector machines for pattern recognition. Data Mining and Knowledge Discovery, 2(2), 121–167.
- ...
Clustering Slides
These are the slides used to present clustering algorithms during lectures
Past Exams and Sample Questions
These are the text of past exams to give and idea on what to expect during the class exam:
- 29/06/2011 Exam
- ...
Exam Results
From time to time, you can find here results for the Soft Computing exams, please refer to the official course website for up to date news:
- Follow this link to the results of 14/07/2011 exam.
2011 Homework
Here you can find the homework for the year 2011 and the material you need to complete it. Please read the F.A.Q. below and for any unsolved doubt contact the teachers of the course.
- Homework 2011 v02 a minor change in the signature of the logistic regression function
- Homework 2011 v01 text with questions and exercises
- Dataset for the clustering exercise in csv format
Frequently Asked Questions
- How do I take the square root of a matrix?: check the diagonalization approach from [2].
- How do I compute the chi square statistics?': in the slide there is a cut and paste error since e_ij=R_it*C_tj as described here [3]
- When it is due? In which format?: The homework is due on the 29/06 and should be delivered by email. Send us (all the course teachers) the .m files in a zip archive attached to this email and a link to the pdf with the written part (not to flood our mailboxes).
- Can we do that in groups? How many people per group?: Yes, you can work on the homework in groups, but no more than 3 people per group are allowed. Put the names of all homework authors in the pdf and in all the .m files. If you discuss something with other people, w.r.t. the people in your group, point it out in the pdf file as well.
- Can we ask questions about the exercises or the code?: Yes you should! First of all, there might be unclear things in the exercise descriptions and those should be clarified as soon as possible for all (this is why the homework is versioned). But you could ask for help as well, our goal is to have you all solving all the questions and get a high grade ... but we will not do the homework on you behalf ;-)
- How the optional questions are graded?: They compensate for possible errors in the other questions; we suggest to work on them anyway to be sure you get the maximum grading.
- How the homework will be graded?: we are interested in understanding if you understood or not; thus we are not interested in the result, but we want to check how you get to the result. So please: 1) clarify all the assumptions and all the steps in your exercises 2) comment as much as possible your .m files!