ECS 189G, Winter 2020
[Informative, intended to help you do well in the course. NOT intended
to intimidate. :-) ]
Course Prerequites and Content
Please carefully read the
course flyer, especially regarding
prerequisites -- they matter a lot!
We will use the R programming language.
It is NOT assumed that you have prior background in R. However,
you are expected to pick up the basic material on your own. It is
required that you read my quick
online tutorial. It's designed for nonprogrammers, so you'll find
it quite easy to follow.
I Teach Differently from Others
- Quizzes EVERY week. Open book.
- End-of-quarter term project, with WRITTEN report.
- Group work plays a central role in homework, term project.
Constant coordination with teammates is key.
- Quizzes are taken on your laptop computer, in class, using
the
OMSI system.
- Quizzes emphasize insight, not rote memorization of
formulas, patterns or programming language syntax.
Good Fit for You?
This is a course on recommender systems, a branch of machine learning.
Successful application of ML methods requires keen insight and
intuition; it is not cookbook "Step A, Step B,..." methodology.
I believe you will enjoy and value this course if:
- You feel that exploring the How? and the Why? of a course is an
integral part of a university education. You thus appreciate digressions in
lecture, provided they are related to the class.
- You are comfortable with being required to do detailed reading and
being tested on it.
- You believe that a student's hard work should be rewarded with
a generous course grade. (See below.)
On the other hand, the course may not be a very good fit if:
- You plan to take it for a P/NP grade.
- You feel that all possible aspects of a course should be covered
in lecture, rather than some being relegated to the assigned reading.
- You prefer a highly structured class that sticks to fundamentals,
has practice exams that are similar to the real exams, provides detailed
outlines to programming assignments, and so on.
Exams
- No midterms or final.
- Group term project in lieu of final, due on the day of
the scheduled final. Make sure this fits into your anticipated
final exam schedule in terms of workload.
- Quizzes are given in discussion section EVERY WEEK.
Quiz problems range from straightforward to very challenging.
- There is a special Group Quiz on the last day of lecture.
- Quiz problems will often refer to specific pages in the
book. (Open book Quizzes, no memorization needed.)
It is REQUIRED that you read the textbook, in complete
detail, and give it careful thought.
- Quiz scores tend to be low, but letter grades are generous.
-
All old Quizzes may be viewed
here.
- Quizzes form 60% of your course grade.
Homework
- About 3-4 assignments during the quarter.
- Homework is done in GROUPS.
- Grading is done interactively, by Group, but
INDIVIDUALLY by Group member.
- TA will ask each member of the Group questions, both about
the assignment and about the course material in general.
Each Group member receives a separate grade; one member may get
an A+ while another gets a D.
Textbooks:
Our main textbook is
here.
But PLEASE NOTE: The book is short a few chapters. It was
developed when I taught the course in Fall 2018, when the quarter was
substantially shortened due to regional fires. I will be adding to the
book as the quarter progresses.
As noted above, you are required to know/learn R, to the degree
presented in the above-mentioned tutorial and the appendix in our main
textbook. You will be using R heavily in the quizzes. Ours is not a
programming course, and the level of programming used usually will be
simple, but it IS used a lot.
You are REQUIRED to have hard copies of these documents -- actual
paper, not electronic (best to go to a copying store). Please print
them BEFORE classes start. Quizzes are open-book/open-notes.
Grading
- Quizzes 60%, homework/term project 40%.
- Lowest 2 quizzes dropped.
- Huge bonus for a good term project.
- Through various "special offers," many students find that
their course grade ends up much higher than their average grade
in the quizzes.
Example: In ECS 132 last quarter, there was a student with a C
average on the quizzes, and a B average on the homework. His team
had an A- on the term project. This student ended up with an A
course grade! Again, this was due to the "special offers."
This was not an isolated incident at all; there were many students
whose course grade was much higher than their quiz grades.
Lecture/Learning Format
- It is expected that the student be NON-PASSIVE in
learning.
Most of the student learning comes from reading the
textbook in very careful, thoughtful detail.
- I used to lecture in the traditional way -- I spent time
writing on the board, the students spent time copying it to paper.
- Then I realized, "What a colossal waste!" So, now I give
you the printed notes, so you and I can spend the time
discussing the material.
- So, in lecture, we DISCUSS the book. I almost never write on
the board, nor do I have Powerpoint slides.
- It is NOT recommended that students read the book ahead of
the lecture. In the lecture,
I prepare you to do the reading.
- In some cases, I will not lecture on a certain section of the
book, and simply have you read it on your. I choose for such sections
ones that I believe you'll have no trouble with. But if you do have
questions, please make sure you ask me or the TA.
- Goals of the lecture:
- Clarify issues brought up by students concerning reading
related to the last lecture.
- Prepare students for the next reading material, by giving
an overview of what the material will do, and going into the
more difficult examples in detail .
- You could decide to skip lecture and just read the book, but
it IS really helpful to go to lecture. There will be
spur-of-the-moment examples and insights, answers to students'
questions. etc. And you are responsible, in Quizzes and
interactive Homework grading, for everything that comes up in
lecture.