Syllabus

Course Description

An introduction to the theories, designs, and implementation techniques used to construct modern search engines. Topics include: search engine architecture, search interfaces, query expansion, crawling, indexing, ranking, retrieval models (e.g., TF-IDF, BM25), and search engine evaluation. Additionally, students will study current directions in the research literature. The course is project-based. Lectures will initially cover core concepts, gradually moving toward topics pertinent to student projects. For their projects, students will construct parts of a search engine in groups, provide written reports, and give related presentations in-class.

Important Note: Students are expected to have background comparable to CSCI 331 (Introduction to Intelligent Systems). Credit Hours: 3

Course Outcomes

  • Students will describe the basics of search interface and search engine architecture and design. (Assignments)
  • Students will select appropriate techniques to address information retrieval problems. (Assignments and Projects)
  • Students will apply performance evaluation methods for information retrieval. (Projects)
  • Students will apply information retrieval techniques. (Project implementations)
  • Students will summarize modern information retrieval techniques verbally and in writing. (Project presentations and written reports)

Instructor and TA Contact

Instructor: Dr. Richard Zanibbi
Office: GOL-3551
Phone: 585-475-3551

Teaching Assistant: Behrooz Mansouri

  • Lectures: Lectures will be delivered in-person by the instructor using a Blended A/B format (i.e., half the class in the room, half attending online through Zoom), and lectures will be recorded.
  • Office Hours: As required by RIT for Fall 2020, all office hours will be held online, over zoom. The zoom links for office hours will be made available through MyCourses. Office hours will not be recorded.
  • Tutorial: starting Friday of Week 2, there will be tutorials Fridays from 12pm-1pm over Zoom with the course TA.
  • Class discord (online chat): In addition to office hours and email, the instructor, TA, and class will be available through an online chat (text only) using discord. Please use this for asking clarifying questions about assignments and course material, and for general discussion about the course and Information Retrieval. Please note that the same restrictions as given below for email apply. Do not use this resource for anything other than discussions about the course with your instructor, TA, and classmates.
  • Email: The instructor and TA will try to respond to emails within 24 hours. However, email received on Friday afternoons and weekends may not receive a reply until the following Monday. Questions about homework and other assignments on the day that they are due will not be answered.

Course Policies

  • Submissions. All homework, both written and code, must be submitted through MyCourses. All programming homeworks/labs, they must be (easily) executable on the CS department Linux machines. More details on allowed libraries etc. will be given with each assignment (what is allowed for some may not be allowed for others).
  • Late Policy. Late submissions will be accepted up to 48 hours after the deadline, with a 20% penalty.
  • Homeworks, projects, and exam grade can be disputed within one week after the graded work is handed back. Discuss any grading concerns that you have with the instructor, and not the TA.
  • Homework and Projects. The homework assignments (not projects) in this course are to be done on your own. You may discuss homeworks with your classmates, tutors, and the instructor, but you must create all submitted work for assignments on your own. It is not acceptable for a student to prepare an answer or answer set and share this with other students. Projects will be done by groups of 2 students - for this work, the same restrictions apply as for homeworks, except to the group rather than the individual.
  • Lecture. This is an advanced course that will cover a wide variety of topics, some being complex and/or counter-intuitive. Students should raise their hands to ask clarifying questions, to check their understanding, or to share an idea. Sometimes the instructor will not call on the student right away to make sure that the course progresses at a reasonable pace. Students are always welcome to send questions over email or talk to the instructor during office hours (see top of page).
  • Readings. Students are expected to actually complete assigned readings. For research papers, students will be selected at random to comment and discuss on papers in-class (in a panel format), and/or submit a brief written analysis. 
  • Grading. For full points, deliverables in the course including question answers, code, presentations and write-ups must be: 
Correct and complete: all parts of the question or assignment are addressed correctly.
Justified: if a question asks for an explanation or justification, it must be provided for full points.
Clearly written: answers and reports should be written with care and attention to language, and provide the context needed to understand the answer with a reasonable effort. Note that the goal here is clarity. Make your answer understood in simple terms wherever possible.
Provided in the requested format. For example, files are submitted in the correct format, a question that asks for a written description is not answered using a bulleted list, etc.

Attendance Policy and Absences from Class

Fall 2020 is a very unusual semester. However, the same approach to attendance should be taken as in 'normal times.' Students are responsible for making arrangements to complete course requirements, even if they miss classes.

Due to medical as well as academic concerns, the instructor will be taking attendance during lectures. Some students may be permitted to take this course completely online, or to attend some of their scheduled in-person classes, and some online. However, students will be expected to attend all lectures (in-person or online) unless there are extenuating circumstances. And if extenuating circumstances arises, you should communicate this to the instructor as soon as you reasonably can.

Related to this, RIT has policies forthcoming about how students should inform instructors when their 'official' instruction mode changes. Students are expected to keep the instructor informed of these changes, for the benefit of both the class and themselves.

We will follow official RIT policies regarding changes in instructional mode throughout the semester, and students should expect that these policies and procedures are likely to change over time.

Please also review the statement below, regarding RIT's official policy on attendance.


The following was added at the request of Dr. Ellen Granberg, Provost and  Senior Vice President for Academic Affairs.

RIT’s official policy on attendance states that:

"Absences, for whatever reason, do not relieve students of their responsibility for fulfilling normal requirements in any course. In particular, it is the student’s responsibility to make individual arrangements in advance of missing class due to personal obligations such as religious holidays, job interviews, athletic contests, etc., in order that he or she may meet his or her obligations without penalty for missing class." (RIT Governance Policy D4.0, Section I.B)

Therefore, if a student needs to miss class, there are mutual responsibilities for students and faculty. It is the student’s responsibility to notify the faculty member in advance of the planned absence. With advance notice of the planned absence, it is the faculty member’s responsibility to ensure that the student can fulfill all class assignments and expectations without penalty or bias.

COVID-19 SYLLABUS ADDENDUM
(from RIT Provost's Office)

We are all aware of the unique circumstances of this fall semester resulting from the worldwide COVID-19 SARS-2 pandemic. RIT has consulted federal, state, and local guidelines and policies to implement a safe, yet educational environment for students, faculty and staff. These guidelines, located at https://www.rit.edu/ready are routinely updated as conditions change.
What do these mean for this class? When we meet in person everyone will wear a mask that covers their mouth and nose at all times and have freshly washed or sanitized hands. In class, students will sit in assigned seats in the locations designated by faculty. We will not congregate in hallways, bathrooms or classrooms prior to or after class.

Any presence of fever or other COVID-19 symptoms will be reported on the RIT Daily Health Screen Monitoring https://www.rit.edu/news/rit-launches-daily-health-screen-monitoring-covid-19-symptoms; please notify Prof. Zanibbi (rxzvcs@rit.edu) so that the best way to accommodate your learning can be planned.
 
We will talk in class about these expectations to ensure that we all are comfortable with what is happening during class. I encourage your communication about any special needs or concerns. Together we will learn about Information Retrieval in a safe and productive format!

Required Materials

All required materials for the course will be provided through MyCourses. Some additional resources may be found on the resources web page.

Grading

 Component Weight
 Quizzes   10%
 3 Assignments   30%
 3 Research Paper Discussions   15%
 3 Projects (10%, 10%, 15%)    35%
 Exam (Proj. 3 Presentation)   10%

Common Course Policies for the RIT Department of Computer Science 

  • Rescheduling an Exam. Exams can not be made up except for real emergencies in which case proper documentation (like a doctor's note) will be required. If at all possible, you should contact me prior to the exam. Oversleeping, cars that don't start etc. do not constitute a valid excuse. RIT's Academic Senate revised the Final Examination Policies on March 28, 2013. Please refer to the policies for related questions.
  • Course withdrawal. During the add/drop period, you may drop this course and it will disappear from your transcript. After that time, you can only withdraw from the course; the course will appear on your transcript with a grade of W. See the institute's calendar regarding the add/drop period and latest withdrawal date.
  • Disability Services. RIT is committed to providing reasonable accommodations to students with disabilities. If you would like to request accommodations such as special seating or testing modifications due to a disability, please contact the Disability Services Office. It is located in the Student Alumni Union, Room 1150; the web site is www.rit.edu/dso. After you receive accommodation approval, it is imperative that you see me during office hours so that we can work out whatever arrangement is necessary. 
  • Academic IntegrityThe Department of Computer Science Policy on Academic Honesty will be enforced. You should only submit work that is completely your own. Failure to do so counts as academic dishonesty and so does being the source of such work. Submitting work that is in large part not completely your own work is a flagrant violation of basic ethical behavior and will be punished according to department policy.