## Part 1: Basics of Hashing

Hashing is the process of converting a given key into another value. A hash function is used to generate the new value according to the mathematical function. The result of the hash function is known as the hash value. Let's understand this with the help of an example - You have been provided a set S of numbers. You have to perform 3 kinds of queries : Check if element X is present in the set. Add a new element X to this set, if not...

## Understanding AdaSum: Adaptive Summation Method for Scaling Distributed Training

Data-parallel distributed training of deep neural networks partitions the training dataset into N subsets with each of the N compute nodes training a subset of the data. By setting the minibatch size equal to that in...