Live data from Hacker News

CS 168: The Modern Algorithmic Toolbox

web.stanford.edu

11–20 of 101 posts

Re: CS 168: The Modern Algorithmic Toolbox

#11
post #2

Wish the videos were public too!

My (heretical?) opinion is that videos are a waste of time compared to text for the majority of content and the majority of people. There are some ideas that can be very nicely visualized and some people (e.g. dyslexics, non-native speakers) who struggle with text. For the rest I think text is better.

I disagree strongly with this opinion. Videos and text can play different roles in the comprehension of ideas.

My experience is that if I'm comfortable with a topic, text is far more effective as a medium to absorb knowledge from. For learning programming languages, for example, I've found it much more effective to read books that to sit for lectures or online videos.

However, for topics like complex mathematics or algorithms, especially with dense terminology, text often appears like an impenetrable wall of text for me. Good video lectures help me see through the professor's thought process and divide the problem in smaller, more comprehensible parts.

In my opinion, the strongest advantage of video content is that they include an element of guided attention. A good video can forcefully mute the secondary details and highlight the essence of a concept or process.

I can see how you can spend hours on videos and not learn a lot though. After getting an insight from a video, the concepts need to be practiced through exercises, which is active as compared to passive watching, else the advantages are lost because the information can be easily forgotten.

Re: CS 168: The Modern Algorithmic Toolbox

#12

Looks really good. Interesting to me is that a lot of the material you could also find in a theoretical machine learning course or in an applied mathematics course. Before seeing the syllabus I was expecting more on streaming algorithms, randomized algoriths, etc. In my experience most Computer Science students get a bit freaked out when, e.g., concentration inequalities enter the scene. "Nothing I learned in CS has…

>"Nothing I learned in CS has an application to industry programming" is a regular complaint in discussion on education here and elsewhere. This is a good course to point to for people who have this very limited view on CS.

> Lecture 11 (Mon 5/2): Graphs as matrices and the Laplacian of a graph. Interpretations of the largest and smallest eigenvectors/eigenvalues of the Laplacian. Spectral embeddings, and an overview of applications (e.g. graph coloring, spectral clustering.)

What industry fields does this apply to? Machine Learning?

Re: CS 168: The Modern Algorithmic Toolbox

#13
post #12

Looks really good. Interesting to me is that a lot of the material you could also find in a theoretical machine learning course or in an applied mathematics course. Before seeing the syllabus I was expecting more on streaming algorithms, randomized algoriths, etc. In my experience most Computer Science students get a bit freaked out when, e.g., concentration inequalities enter the scene. "Nothing I learned in CS has…

>"Nothing I learned in CS has an application to industry programming" is a regular complaint in discussion on education here and elsewhere. This is a good course to point to for people who have this very limited view on CS. > Lecture 11 (Mon 5/2): Graphs as matrices and the Laplacian of a graph. Interpretations of the largest and smallest eigenvectors/eigenvalues of the Laplacian. Spectral embeddings, and an overview…

Here's an example:

The web is a graph. Each node in the graph is a web page. Each edge is a connection a hyperlink between pages. You can represent a graph as a matrix.

If you random click on links you'll end up visiting some web pages (the more connected ones) more often than others. You can define a probability distribution over pages as "what is the probability I'll end up at this web page after an infinite number of clicks". This is the stationary distribution of a Markov chain.

The stationary distribution is the largest eigenvector of the matrix that represents the graph. This gives a way to compute the stationary distribution via well studied algorithms.

You can use this idea to

1) assign importance to pages based on the magnitude of the probability, to improve web search. You might call this algorithm PageRank.

2) found a company called Google that is currently worth USDtrillions.

Re: CS 168: The Modern Algorithmic Toolbox

#15
post #12

Earlier quoted context omitted.

>"Nothing I learned in CS has an application to industry programming" is a regular complaint in discussion on education here and elsewhere. This is a good course to point to for people who have this very limited view on CS. > Lecture 11 (Mon 5/2): Graphs as matrices and the Laplacian of a graph. Interpretations of the largest and smallest eigenvectors/eigenvalues of the Laplacian. Spectral embeddings, and an overview…

Here's an example: The web is a graph. Each node in the graph is a web page. Each edge is a connection a hyperlink between pages. You can represent a graph as a matrix. If you random click on links you'll end up visiting some web pages (the more connected ones) more often than others. You can define a probability distribution over pages as "what is the probability I'll end up at this web page after an infinite number…

...or, you could just

1) use the raw count of inbound links, weighted by the count of inbound links of the linking pages, normalize by the total number of links on that page, and run it a few iterations to get a first approximation of the probability distribution. This is a pretty intuitive approach, would almost certainly have been good enough for Google, and avoids all the jargon, probability, and "well studied algorithms".

2) found a company called Google that is currently worth US$trillions.

I love algorithms as much as the next guy, but PageRank is not a fantastic example of success-because-I-knew-eigenvectors despite what their PR folks would have you believe. One can't deny, though, that Google's PR has definitely attracted them a lot of super smart engineers over the decades, especially in the early days!

Re: CS 168: The Modern Algorithmic Toolbox

#16
post #5

Very neat. They write: > In this course, we’ll be looking for the following trifecta: (i) ideas that are non-obvious, even to the well-trained computer scientist, so that we’re not wasting your time; (ii) conceptually simple — realistically, these are the only ideas that you might remember a year or more from now, when you’re a start-up founder, senior software engineer, PhD student, etc. (iii) fundamental, meaning t…

I don’t understand the connection between 1 and 2.

What happened to the relationship between Apple and Akamai?

Re: CS 168: The Modern Algorithmic Toolbox

#19
post #12

Looks really good. Interesting to me is that a lot of the material you could also find in a theoretical machine learning course or in an applied mathematics course. Before seeing the syllabus I was expecting more on streaming algorithms, randomized algoriths, etc. In my experience most Computer Science students get a bit freaked out when, e.g., concentration inequalities enter the scene. "Nothing I learned in CS has…

>"Nothing I learned in CS has an application to industry programming" is a regular complaint in discussion on education here and elsewhere. This is a good course to point to for people who have this very limited view on CS. > Lecture 11 (Mon 5/2): Graphs as matrices and the Laplacian of a graph. Interpretations of the largest and smallest eigenvectors/eigenvalues of the Laplacian. Spectral embeddings, and an overview…

Photogrammetry & image processing, anything to do with dimension reduction (basically every field with real-world sensor data), ontology/semantic data processing...

Re: CS 168: The Modern Algorithmic Toolbox

#20
post #5

Very neat. They write: > In this course, we’ll be looking for the following trifecta: (i) ideas that are non-obvious, even to the well-trained computer scientist, so that we’re not wasting your time; (ii) conceptually simple — realistically, these are the only ideas that you might remember a year or more from now, when you’re a start-up founder, senior software engineer, PhD student, etc. (iii) fundamental, meaning t…

I don’t understand the connection between 1 and 2. What happened to the relationship between Apple and Akamai?

Sorry, I left something out. The authors mention earlier in the lecture that

> [The algorithm (Consistent Hashing)] has real applications [and] gave birth to Akamai, which to this day is a major player in the Internet. [...] (Quantitatively, Akamai serves 10-30% of all internet traffic, and has a market cap ≈ $19B.)

This makes the rejection notice so funny.

Post reply on HN