Answers.Body: <p>Epoch is defined as a full training pass over the entire dataset such that each example has been seen once. Thus, an epoch represents <code>N/batch_size</code> training iterations, where N is the total number of examples.</p>
  <p>Whereas a training step is one gradient update. In one step <code>batch_size</code> examples are processed.</p>
  <p>So, Number of training steps per epoch: <code>total_number_of_training_examples / batch_size.</code></p>
  <p>Total number of training steps: <code>number_of_epochs x Number of training steps per epoch.</code></p>
  <p>Reference: <a href="https://machinelearningmastery.com/difference-between-a-batch-and-an-epoch/" rel="nofollow noreferrer">https://machinelearningmastery.com/difference-between-a-batch-and-an-epoch/</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-01-13T17:34:50.427Z
Answers.LastActivityDate: 2022-01-13T17:34:50.427Z
Answers.UserDisplayName: prashant0598
Body: <p>Can anybody explain how the training steps work for the Tensorflow Object Detection algorithms available on the <a href="https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_detection_zoo.md" rel="nofollow noreferrer">Tensorflow 2 Detection Model Zoo</a>? For instance, YOLOv5 cycles through epochs. As I understand it, one epoch is completed after all the training data passes through the algorithm. However, the Tensorflow models I just described are set up so they pass through a certain amount of training steps (several are optimized for 100,000 training steps, including some with 200,000 and 300,000 steps, depending on the algorithm).</p>
  <p>What is the difference between epochs and these steps? Just trying to understand how the algorithm trains my data.</p>
  
Tags: <training><object-detection>
Title: How do Tensorflow models and YOLO differ in terms of training steps?
UserDisplayName: sneeze_shiny
ThreadText: # How do Tensorflow models and YOLO differ in terms of training steps?
  
  (Asked by: username_0 on 2021-11-11)
  
  Can anybody explain how the training steps work for the Tensorflow Object Detection algorithms available on the [Tensorflow 2 Detection Model Zoo](https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_detection_zoo.md)? For instance, YOLOv5 cycles through epochs. As I understand it, one epoch is completed after all the training data passes through the algorithm. However, the Tensorflow models I just described are set up so they pass through a certain amount of training steps (several are optimized for 100,000 training steps, including some with 200,000 and 300,000 steps, depending on the algorithm).
  
  What is the difference between epochs and these steps? Just trying to understand how the algorithm trains my data.
  
  **Tags:** training, object-detection
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2022-01-13. Score: 1 | Accepted answer
  
  Epoch is defined as a full training pass over the entire dataset such that each example has been seen once. Thus, an epoch represents `N/batch_size` training iterations, where N is the total number of examples.
  
  Whereas a training step is one gradient update. In one step `batch_size` examples are processed.
  
  So, Number of training steps per epoch: `total_number_of_training_examples / batch_size.`
  
  Total number of training steps: `number_of_epochs x Number of training steps per epoch.`
  
  Reference: <https://machinelearningmastery.com/difference-between-a-batch-and-an-epoch/>
  
  
  ---
  
  