How to Evaluate Stochastic Algorithms?


Algorithms like neural networks are stochastic. That means, that even when the same algorithm is trained on the same data it can give different results.

The reason is, stochastic algorithms use randomness as part of the learning process. In the case of neural networks, they are initialized with random weights.

So how do you evaluate a neural network, let alone report its performance?

  • Approach 1: You can fix the seed for the random number generator so that the neural network always gets the same “random weights”. Your network will make consistent predictions but the skill estimate will be fragile.
  • Approach 2: (do this) A more robust approach is to repeat your algorithm evaluation multiple times and report the average performance.

But how many repeats?

Deep neural networks are slow to train, so we want as few repeats as possible. The answer is that we can use some simple statistics. Below illustrates the principle of stochastic gradient descent algorithm, which shows How to Evaluate Stochastic Algorithms?

stochastic-gradient-descent How to Evaluate Stochastic Algorithms? algorithms machine learning

stochastic gradient descent

–EOF (The Ultimate Computing & Technology Blog) —

GD Star Rating
loading...
272 words
Last Post: Update: Phishing Emails & QuickHostUK's Response to WannaCry Ransomware Attacks
Next Post: The Simple Counter Implementation in PHP

The Permanent URL is: How to Evaluate Stochastic Algorithms?

Leave a Reply