Machine Learning

From TedYunWiki
Jump to navigation Jump to search

Types of Machine Learning

  • Supervised Learning
    • Regression Problem: Continuous valued output.
    • Classification Problem: Discrete valued output.
  • Unsupervised Learning
    • Clustering

Linear Regression

Terminologies

  • $x^{(j)}_i$ feature vectors
  • $y_i$ outcomes
  • $h(\theta)$ the hypothesis
  • $J(\theta)$ the cost function
  • $\alpha$ the learning rate

Advanced Optimization Algorithms

There are advanced algorithms (from numerical computing) to minimize the cost function other than the gradient descent. For all of the following algorithms all we need to supply to the algorithm is a code to compute the function $J(\theta)$ (the cost function) and the partial derivatives of the cost function $\frac{\partial}{\partial \theta_i} J(\theta)$.

  1. Conjugate gradient
  2. BFGS
  3. L-BFGS

Advantages

  • No need to manually pick $\alpha$ (the learning rate in gradient descent)
  • Often faster than gradient descent

Disadvantages

  • More complex

Classification Problem

Logistic Regression

  • $h(\theta) = 1 / (1 + e^{-\theta^T x})$ (Note $f(z) = 1 / (1 + e^{-z})$ is called the sigmoid function / logistic function.)
  • $J(\theta) = y \cdot \log h_\theta(x) + (1-y) \cdot \log (1-h_\theta(x))$ This comes from Maximum Likelihood Estimation in Statistics.

Cocktail Party Problem

  • Algorithm
    • [W, s, v] = svd((repmat(sum(x.*x, 1), size(x, 1), 1).*x)*x');