CS747 - Foundations of Learning and Intelligent Agents
Instructor
Prof. Shivaram Kalyanakrishnan
Semester
Autumn 2023-24
Course Difficulty
The course leans more towards the difficult side and delves quite a bit into math. Although the slides are very clear conceptually, you will require a very good understanding of all the topics covered to score well in the exams. The programming assignments are challenging but totally worth it. It is recommended to take the course in the 5th or 7th semesters. Also, having done some first course in probability (EE325, SI427, SC629) is sure to be of great help.
Time commitment needed
The programming assignments usually take quite a good amount of time to be completed and are dependent on the skill level of the student. The professor gives around two weeks to complete an assignment, and 20-30 hours is a good estimate of the hours you might have to put to finish an assignment on average. The endsem and midsem would need a good amount of studying to score well, as the questions are fairly mathematical, often requiring you to implement some algorithm, or even proving something covered in class. There are no quizzes.
Grading Statistics
The grading was quite harsh. The professor generally keeps the cutoff for AA as 90+ and the policy for the rest of the grades isn’t specified. Further, he is EXTREMELY intolerant and serious about plagiarism, even minor offences, and these scenarios are dealt by the CSE D-ADAC. Also, the grading statistics were drastically different in the online and offline sems, so do not rely on the older ones. In the Autumn 23-24 offering (offline), these were the stats AA 3 AB 28 AU 2 BB 53 BC 25 CC 29 CD 34 DD 13 FR 13 Total 200
Attendance Policy
These is no attendance policy. However, attending the lectures is strongly recommended due to the following two reasons: (1) The lectures are quite interesting and there is a very good exchange of ideas between the instructor and the students. (2) Sometimes the professor puts questions on ideas discussed during class as a digression, but not covered in the slides
Teaching Style
The teaching style is excellent, the slides are very detailed. The course website is very well-structured and regularly updated. The professor also links relevant papers and references on his course website.
Feedback on Assignments/ Tutorials/ Projects
The averages for the midsem and endsem are usually on the lower side. The assignments are the major scoring parts. A few test cases are also provided to check whether your code is correct.
Feedback on Exams (Written Evaluation)
The exams are subjective. The midsem usually has 4-5 questions and the endsem 7-8. The papers cover the breadth of the course and go into conceptual depth. The endsem was mostly post-midsem. Past papers from almost the last 5-6 offerings are available on the course website, and attempting those is surely necessary if you want to try for a high grade (anything above BB)
Future Tracks
You can try courses like CS748 (project based and deeper version of CS747 offered by the same instructor), or EE6106 (goes into the depth of Multi-Armed Bandit theory).
Course Importance
This course is a very good course to become adept at starting out with reinforcement learning. Most of the materials on the internet usually take a very shallow approach which does not give you enough insight into the algorithmic side of the topic. Reinforcement learning is a very up-and-coming field of AI, with a lot of research going on, and applications in robotics, trading, banking, and health care. Further, this course is avery much recommended if you are interested and curious about topics such as statistics, optimization and controls
Additional Details
I shall reiterate that the professor is very STRICT about punctuality and integrity, so ensure that you submit all evaluations on time and stay miles away from any breach of the code of conduct.
Written By
Chinmay Makarand Pimpalkhare