CS-GY 6923: Machine Learning
1.0.0
1.0.0
  • Introduction
  • What is Machine Learning?
  • Types of Machine Learning
    • Supervised Learning
      • Notations
      • Probabilistic Modeling
        • Naive Bayes Classifier
      • Linear Regression
      • Nearest Neighbor
      • Evaluating a Classifier
      • Parametric Estimation
        • Bayesian Approach to Parameter Estimation
        • Parametric Estimation for Simple Linear Regression
        • Parametric Estimation for Multivariate Linear Regression
        • Parametric Estimation for Simple Polynomial Regression
        • Parametric Estimation for Multivariate Polynomial Regression
      • Bias and Variance of an Estimator
      • Bias and Variance of a Regression Algorithm
        • Model Selection
      • Logistic Regression
      • Decision Trees
        • Using Decision Trees for Regression
        • Bias and Variance
      • Dimensionality Reduction
      • Neural Networks
        • Training a Neuron
        • MLP
          • Regression with Multiple Outputs
          • Advice/Tricks and Issues to Train a Neural Network
        • Deep Learning
      • Support Vector Machines
      • Ensemble Learning
    • Unsupervised Learning
      • K-Means Clustering
      • Probabilistic Clustering
    • Reinforcement Learning
Powered by GitBook
On this page
  • Batch Training
  • On-Line Training
  • Stochastic Training

Was this helpful?

  1. Types of Machine Learning
  2. Supervised Learning
  3. Neural Networks

Training a Neuron

Batch Training

This is possible when all the data is already available.

Training is done using batches of the data.

Each time the weights are updated, compute gradient for the entire dataset.

Repeat until convergence:
    for all i in {1...d}
        w_i = w_i + eta*sum((r^t-y^t)x_i^t)

One pass through the dataset constitutes an epoch.

On-Line Training

Train using one example at a time. Update the weights only based on that example.

wi←wi+η(rt−yt)xitw_i \leftarrow w_i + \eta (r^t-y^t)x_i^twi​←wi​+η(rt−yt)xit​

This is more efficient than batch training.

Stochastic Training

The idea is to train in an on-line fashion.

Repeat until convergence of weights (or some other stopping condition):
    for each x^t (in some order):
        for all i in {1...d}
            w_i = w_i + eta*(r^t-y^t)x_i^t
PreviousNeural NetworksNextMLP

Last updated 5 years ago

Was this helpful?