- What are the prerequisites of this course?
There are no prerequisites of this
course. In earlier offerings, CS210/ESO207 and MSO201
used to be prerequisites for this course but they are no
longer prerequisites. However, fluency with concepts in
probability and statistics, linear algebra, calculus and real
analysis, and programming ability are absolutely essential for
this course even though the formal prerequisites do not
reflect these. We will use the Python language for most
programming tasks in this course so you should
familiarize yourself with it.
- I am interested in doing this course. How can I register
for this course?
Preregistration period is Apr 9-15, 2021 and add-drop period
is Jul 30- Aug 06, 2021
- All UG students (whether CSE or non-CSE): must
register via Pingala either during course
preregistration or else during add-drop
- Existing PG students: must register via Pingala
either during course preregistration or else during
add-drop
- New PG students (admitted in Jul 2021): must do
manual registration by meeting the instructor and getting
signatures on registration form or else during add-drop (assuming an offline semester)
Note that manual registration requests will not be
entertained for existing students. Existing students must
register online via Pingala, either during preregistration, or
during add-drop.
- I have heard that there is a lot of demand for this course.
What will be done if there are more add requests than there
are seats?
Indeed, this course is in heavy demand and
we are seldom able to fulfill all requests. Regretfully, this
is likely to continue. In order to ensure a fair and orderly
processing, we will follow a priority order (given below)
while processing add requests. These priority lists have been
decided keeping in mind graduation requirements (for example,
students for whom this course is compulsory/part of a basket
have been given higher priority) and graduation deadlines (for
example, students expected to graduate in 2022 have been given
higher priority).
Total number of seats: 200
Seat breakup: 100 seats for UG students, 100 seats for PG
students
Definition of UG/PG: As per the DoAA website, we will
use the following categorization
BT, BS, MSc programs are UG programs.
Dual programs such as BT-MT, BS-MS, BS-MT, BT-MS, BT-MDes,
BS-MDes, BT-MBA, BS-MBA, MSc-PhD are also UG programs.
MT, MS, MDes, MBA, PhD are PG programs.
Priority list for PG
students (80 seats)
|
Priority list for UG
students (80 seats)
|
-
PG students (MT, MS, PhD) of
the CSE department of Y19 or earlier batches
-
PG students (MT, MS, PhD) of
the CSE department of Y20 batch and those taking
admission in Jul 2021
-
PG students (any program) of
other all departments*
* Please see above for
definition of UG and PG programs. A student enrolled
in a UG program will be considered a UG student and
one enrolled in a PG program will be considered a PG
student.
|
-
UG students of Y18 or
earlier batches who have been accepted to the
CSE ML minor program*
-
UG students of Y19 batch who
have been accepted to the CSE ML minor program*
-
UG students of Y18 or earlier
batches who are either in the CSE BT or CSE
BT-MT programs or else have been accepted to the
CSE double major program#
-
UG students of Y19 batch who
are either in the CSE BT or CSE BT-MT programs
or else have been accepted to the CSE double
major program#
-
UG students of Y18 or earlier
batches not covered above
-
UG students of Y19 batch not
covered above
- UG students of Y19 batch who are either in the
CSE BT or CSE BT-MT programs or else have been
accepted to the CSE double major program#
- UG students of Y19 batch not covered above
* Only students who have
actually been accepted into the ML minor program (as
verified using published lists from the DoAA office)
will be counted here. Students who are in the
process of applying for the minor or trying to get a
"retrospective" minor by first doing courses and
then claiming a minor will not be counted here.
Students accepted into other CSE minors e.g.
Algorithms will also not be counted here.
# Only students who have been actually
accepted into the CSE double major program (as
verified using published lists from the DoAA office)
will be counted here. Students still in the process
of applying for inclusion into the double major
program will not be counte here.
|
- How will ties be broken within a given priority level?
If while processing requests of a certain
priority level we find more requests at that priority level
than there are seats left, then we will use the
first-come-first-serve (FCFS) policy to break ties. For manual
registrations, this will be indicated naturally by the time
the student visits the instructor. For online requests this
will be indicated by the time the request was made on Pingala.
-
I did do preregistration and got
accepted to the course but I dropped the course. However,
now I think I do want to do the course. What should I do
now?
You should apply again at the time of add-drop. We will
process add requests received during add-drop using the same
priority lists as mentioned above. However, you will not get
any additional preference during add-drop just because your
add request was accepted earlier.
-
I did do preregistration and got
accepted to the course but my registration got cancelled.
What should I do now?
You should apply again at the time of add-drop. We will
process add requests received during add-drop using the same
priority lists as mentioned above. However, you will not get
any additional preference during add-drop just because your
add request was accepted earlier.
- Why was FCFS used as a tie breaker and not
CPI or grades in some course?
In previous semesters, we did indeed use
grades in ESO207 as a tie-breaker since ESO207 used to be a
prerequisite for this course back then. However, since CS771
has no prerequisites anymore, FCFS is as objective an
alternative for a tie-breaker as any. We understand that other
priority lists and other forms of tie-breaking are possible.
We also understand that it is natural for an individual
student to feel that some other priority/tie-breaking method
would have been preferable, especially if that priority
list/tie-breaking method could have put that student towards
the top of the list. However, we can only adopt one priority
list and one tie-breaking method and we feel that the ones we
have chosen are fair and objective. There is no getting around
the more basic fact that the demand for this course greatly
exceeds the teaching resources (faculty, TA etc) we have. No
matter which priority list/tie-breaking method we choose, we
are bound to turn down several add requests.
- What can I expect to learn from this course?
Please take a look at the FCH [
link] to
see a tentative list of topics that we will cover in the
course. The course will seek to offer a broad exposure to
topics in machine learning with some emphasis on areas that
are currently prominent. Please note that although we will
cover neural networks of various kinds, this is not a course
focused on deep learning alone.
- Is this a theoretical course or an applied course?
The course will involve both,
understanding the statistical and algorithmic foundations of
machine learning, as well as looking at applications of
learning algorithms, indeed by implementing some of them. In
order to get the maximum benefit from this course, you will be
required to have a high degree of fluency and ease while
working with statistical distributions, concepts from linear
algebra, calculus and real analysis, and basic algorithmic
tools. The course will also require the ability to code up
machine learning algorithms. There will be programming
assignments, as well as pen-and-paper quizzes and exams. These
aspects of the course will all touch upon theoretical, as well
as applied aspects of machine learning.
- How do I brush up my basics (prob-stat, algebra, calculus
etc)?
For all the topics we mentioned above,
there are plenty of resources available online using which you
can come up to speed on these topics. During the course we
will cover these topics briefly but we cannot spend any length
of time on these basic topics. You will have to fill up any
gaps in your understanding of these topics yourself. A few of
our department courses have lecture notes/slides on some of
these topics.
http://www.cse.iitk.ac.in/users/piyush/courses/ml_autumn16/ML.html
http://web.cse.iitk.ac.in/users/purushot/courses/olo/2016-17-w/scribes.php
- What programming language would be used in the course
assignments?
For most assignments, Python will be the
language of choice. We will also expect fluent usage of
libraries like numpy, scipy, matplotlib, as well as useful
tools such as Jupyter.
-
I really want to do this course but my
add request has not been accepted. Can I meet you sometime
in this regard?
Add requests will get processed as per the priority rules mentioned above - the
priority lists will not be amended to suit an individual
student. If you feel that you have been unjustly denied a seat in the course , please send me an email with your query and I
will reply to that email.
Alternatively, you are welcome to audit the course even if you
are not registered. Please see an FAQ item on this below.
- Can I audit the course?
If you are a student or employee at IITK
then yes, of course. IITK students and employees are most
welcome to audit the course. As auditor you will be able to
attend the lectures, have access to the lecture material,
assignment, examination and quiz questions and solutions
thereto. However, due to administrative constraints, we would
be able to grade assignments for, and administer quizzes and
examinations to, only registered students, and not auditors.
Nevertheless, since auditors will have access to both the
questions and solutions, they can attempt the questions on
their own and perform self evaluation once solutions are
released.
-
What is the procedure to audit the
course?
I will announce this closer to the class dates.
- Can the class timings be changed? I have a preoccupation
that clashes with one of the lecture slots.
The Dean of Academic Affairs and the
Pingala teams have been extremely supportive and have accepted
our request to schedule the lectures at an unusual hour. This
timing completely avoids popular courses such as ESO, HSO and
MSO and in general does not clash with any regular institute
course activities. We regret that we are unable to entertain
any requests for changing the lecture slots.