learning相关面经以及一些心得总结。楼主的背景是fresh CS PhD in computer
vision and machine learning, 非牛校。

Machine learning related questions:
– Discuss how to predict the price of a hotel given data from previous
years
– SVM formulation
– Logistic regression
– Regularization
– Cost function of neural network
– What is the difference between a generative and discriminative algorithm
– Relationship between kernel trick and dimension augmentation
– What is PCA projection and why it can be solved by SVD
– Bag of Words (BoW) feature
– Nonlinear dimension reduction (Isomap, LLE)
– Supervised methods for dimension reduction
– What is naive Bayes
– How to predict the age of a person given everyone’s phone call history
– Variance and Bias (a very popular question, watch Andrew’s class)
– Practices: When to collect more data / use more features / etc. (watch
Andrew’s class)
– How to extract features of shoes
– During linear regression, when using each attribute (dimension)
independently to predict the target value, you get a positive weight for
each attribute. However, when you combine all attributes to predict, you get
some large negative weights, why? How to solve it?
– Cross Validation
– Reservoir sampling
– Explain the difference among decision tree, bagging and random forest
– What is collaborative filtering
– How to compute the average of a data stream (very easy, different from
moving average)
– Given a coin, how to pick 1 person from 3 persons with equal probability.

Coding related questions:
– Leetcode: Number of Islands
– Given the start time and end time of each meeting, compute the smallest
number of rooms to host these meetings. In other words, try to stuff as many
meetings in the same room as possible
– Given an array of integers, compute the first two maximum products(乘积)
of any 3 elements (O(nlogn))
– LeetCode: Reverse words in a sentence (follow up: do it in-place)
– LeetCode: Word Pattern
– Evaluate a formula represented as a string, e.g., “3 + (2 * (4 – 1) )”
– Flip a binary tree
– What is the underlying data structure for JAVA hashmap? Answer: BST, so
that the keys are sorted.
– Find the lowest common parent in a binary tree
– Given a huge file, each line of which is a person’s name. Sort the names
using a single computer with small memory but large disk space
– Design a data structure to quickly compute the row sum and column sum of
a sparse matrix
– Design a wrapper class for a pointer to make sure this pointer will
always be deleted even if an exception occurs in the middle
– My Google onsite questions: http://www.mitbbs.com/article_t/JobHunting/33106617.html

machine learning的职位还是很多的，数学好的国人们优势明显，大可一试, 看到一些

coursera，wiki，牛校的machine learning课件。

，对coding的复习也不应该松懈。

Classification:
Logistic regression
Neural Net (classification/regression)
SVM
Decision tree
Random forest
Bayesian network
Nearest neighbor classification

Regression:
Neural Net regression
Linear regression
Ridge regression (add a regularizer)
Lasso regression
Support Vector Regression
Random forest regression
Partial Least Squares

Clustering:
K-means
EM
Mean-shift
Spectral clustering
Hierarchical clustering

Dimension Reduction:
PCA
ICA
CCA
LDA
Isomap
LLE
Neural Network hidden layer