Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added 1 report(21270) and modified significantly another report(10601) #59

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ expect from the core classes from the ECE and CS programs at CMU.
- [18-847F: Foundations of Cloud and Machine Learning Infrastructure](electives/18847F.md)
- [18-898D: Graph Signal Processing and Geometric Learning](electives/18898D.md)
- [24-104: Maker Series: Intro to Modern Making](electives/24104.md)
- [21-270: Introduction to Mathematical Finance](electives/21270.md)
Comment on lines 77 to +78
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's keep this in numerical order

Suggested change
- [24-104: Maker Series: Intro to Modern Making](electives/24104.md)
- [21-270: Introduction to Mathematical Finance](electives/21270.md)
- [21-270: Introduction to Mathematical Finance](electives/21270.md)
- [24-104: Maker Series: Intro to Modern Making](electives/24104.md)

- [80-180: Nature of Language](electives/80180.md)
- [80-405: Game Theory](electives/80405.md)
- [82-208: Eastern Europe: Society and Culture](electives/82208.md)
Expand Down
28 changes: 19 additions & 9 deletions electives/10601.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# 10-601: Introduction to Machine Learning
# 10-301/601: Introduction to Machine Learning

| Category | Difficulty |
|:-: | :-: |
Expand All @@ -9,6 +9,14 @@ Intro to ML is one of the most popular CS electives at CMU, as ML has been a ver
The class will cover a good variety of ML concepts, but does not go too much into detail since it is
just an introductory class.

## Prerequisites

- One probability course, be it 36-225, 36-217, or some equivalent
- Concepts (21-127, 15-151 or equivalent)
- 15-122

Skipping these prerequisits, especially the math ones, is not recommended. This course is essentially half math.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you claim it's half math -- you should mention which maths are used.

Suggested change
Skipping these prerequisits, especially the math ones, is not recommended. This course is essentially half math.
Skipping these prerequisites, especially the math ones, is not recommended. This course is essentially half math and heavily uses concepts related to probability and proof writing.


## Topics covered

- **Decision Trees**
Expand Down Expand Up @@ -39,14 +47,13 @@ The class is very well organized, and follows the approximate structure:

## Homeworks

Homeworks are straightforward implementations of algorithms that are covered in class. Lecture slides and the lectures themselves go into algorithms in a great depth, so the homeworks should not be too bad. In addition, since the algorithms are often well-known in the ML field, you can
find lots of support for them online as well. The handouts provided for the homework is detailed, so make sure to read that as well. Definitely make sure to write your own tests for your program if it is possible, since that can help you uncover bugs you can't find on Autolab.
Homework is usually split into programming and written sections. There are also times when homework is exclusively written. No extensive knowledge of latex is needed as a template is usually provided, although it is helpful to know. For many, the programming part may be easier than the written part. The written portion of the assignment is usually key to understanding aspects of the programming section, so skimming the written portion at bare minimum is extremely important.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Homework is usually split into programming and written sections. There are also times when homework is exclusively written. No extensive knowledge of latex is needed as a template is usually provided, although it is helpful to know. For many, the programming part may be easier than the written part. The written portion of the assignment is usually key to understanding aspects of the programming section, so skimming the written portion at bare minimum is extremely important.
Homework is usually split into programming and written sections. There are also times when homework is exclusively written. No extensive knowledge of LaTeX is needed as a template is usually provided, although it is helpful to know. For many, the programming part may be easier than the written part. The written portion of the assignment is usually key to understanding aspects of the programming section, so skimming the written portion at bare minimum is extremely important.


The programming sections of homeworks are straightforward implementations of algorithms that are covered in class. Lecture slides and the lectures themselves go into algorithms in a great depth, so the homeworks should not be too bad. In addition, since the algorithms are often well-known in the ML field, you can find lots of support for them online as well. The handouts provided for the homework is detailed, so make sure to read that as well. Definitely make sure to write your own tests for your program if it is possible, since that can help you uncover bugs you can't find on Gradescope.

As a trick, sometimes your program might take a while to run on your computer. If you run your program on the Andrew machines at CMU instead, you might find a considerable boost in your program speed.

There are often also short-answers for homeworks. They give you LaTeX
templates to fill in, but you don't need to know that much LaTeX to work
with it.
Please note that it is best to use Python for the programming assignments because almost all the TAs and instrutors are best equipped to debug Python code. In prior semesters, Java, C++, and Python were allowed, however as of Spring 2022 only Python is allowed for homework submission.

## How to study for exams

Expand All @@ -55,10 +62,13 @@ breadth of material so it is hard to learn everything in depth.
For exams, it is important to know all your **equations and algorithms**.
Fortunately, you have a cheatsheet so you can put those on there!

The best thing you can do is to take the practice exams from the course website.
There is a chance that the exact same question shows up in the actual exam.

In addition, you can also do other school's exams for extra practice on the topic.

## External materials for the class

The good news about ML is that it is a very widely taught course, so there are lots of good materials about it outside of CMU. The most notable source for ML education is Andrew Ng's CS229 course at Stanford. His course notes are great and his class has lots of great content.

You can find [course materials here](https://github.com/SKKSaikia/CS229_ML).
## External materials for the class

The good news about ML is that it is a very widely taught course, so there are lots of good materials about it outside of CMU. The most notable source for ML education is Andrew Ng's CS229 course at Stanford. His course notes are great and his class has lots of great content.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The old link is dead, but looks like https://github.com/maxim5/cs229-2018-autumn is still alive, and it's probably worth linking https://cs229.stanford.edu/ as well

35 changes: 35 additions & 0 deletions electives/21270.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# 21-270: Introduction to Mathematical Finance

| Category | Difficulty |
| :------: | :--------: |
| HW | 3 |
| Exams | 4 |
| Quizzes | 3 |

Disclaimer: Course taken remotely in Spring 2021.

Course is a math/science elective possible for ECE majors. This course is an introduction to mathematical finance and an introductory course for the computational finance minor/major. This course is primarily using math to price items such as bonds and options. Heavily abstracted, so don't expect to take this course and immediately be able to model the prices of bonds and options, however it is a good starting off point.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there Black Scholes? Are there other major equations you learn about?

Is this useful for people pursuing a career in quant / finance?


## Homework

Homework is due weekly, and its topics are tested on quizzes the following week. Homework at the beginning of the semester is mainly plug and chug, however the homework shifts towards more proof based questions towards the end of the semester. Some of them may be a bit tricky, so don't be afraid of going to office hours.

## Quizzes

Quizzes are assigned weekly and are restated or a variation on homework questions and topics presented in the previous week. One note sheet allowed for quizzes, otherwise closed book.

## Exam

There is one midterm and one final exam. Both are closed book, but one note sheet is allowed. Exam questions are just variants of the quiz questions, so there won't be shock questions that you've never seen before. Remember to pace yourself.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remember to pace yourself ... because? Is it easy to make mistakes?


## Course Structure
15% Homework
40% Quizzes
20% Midterm
25% Final
Comment on lines +26 to +29
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is worth making into a list, maybe bullets is fine

Suggested change
15% Homework
40% Quizzes
20% Midterm
25% Final
- 15% Homework
- 40% Quizzes
- 20% Midterm
- 25% Final


## Tips to succeed

The quizzes make up a lot of your grade. Don't skip them.
I would suggest having one note sheet that you keep throughout the semester. Add topics onto the note sheet every week for the quizzes, and you will no longer find the need to create a note sheet by the time the midterm and final happens.