Posts

What is Stochastic gradient descent and Mini Batch Gradient Descent in ML?

Image
 Here we are going to discuss the second and third types of gradient descent which are known as Stochastic Gradient Descent and mini-batch gradient descent. Stochastic gradient descent The word ‘Stochastic’ means a system or a process that is linked with a random probability. Hence, in Stochastic Gradient Descent, a few samples are selected randomly instead of the whole data set for each iteration. In Gradient Descent, there is a term called ‘batch’ which denotes the total number of samples from a dataset that is used for calculating the gradient for each iteration, In typical Gradient descent optimization, like Batch Gradient Descent, the batch is taken to be the whole dataset. Although, using the whole dataset is really useful for getting to the minima in a less noisy or less random manner. But the problem arises when our datasets get really huge. Stochastic gradient descent (often abbreviated SGD) is an iterative method for optimizing an objective function with suitable smoothness p

How Artificial intelligence is becoming sustainable?

  A research group from Politecnico di Milano has developed a new computing circuit that can execute advanced operations, typical of neural networks for artificial intelligence, in one single operation. The circuit performance in terms of speed and energy consumption paves the way for a new generation of artificial intelligence computing accelerators that are more energy-efficient and more sustainable on a global scale. The study has been recently published in the prestigious Science Advances. Recognizing a face or an object, or correctly interpreting a word or a musical tune are operations that are today possible on the most common electronic gadgets, such as smartphones and tablets, thanks to artificial intelligence. For this to happen, complicated neural networks need to be appropriately trained, which is so energetically demanding that, according to some studies, the carbon footprint that derives from the training of a complex neural network can equal the emission of 5 cars through

What is Job Scheduling and CPU Scheduling in ML?

Image
  Multiple Programming, Multitasking, Multi-threading Multi-programming  shows our OS can handle multiple threads at the same time using multi-threading techniques. Many software packages for modern computer systems are multi-threaded [2]. For example, a web browser can use one thread to display images and a second thread to retrieve data from the network.                                      Figure  1 : Multi-programming                                      Multitasking  is based on time sharing. CPU defines a separate time slot for each task. For example, if we have 3 jobs we denote jobs as j1, j2, and j3. CPU a lot of T1 time to j1 job, T2 time slot to j2 and T3 will assign to j3 job CPU complete all these jobs in nanoseconds. Figure  2 :Multitasking     Multi-programming  means more than one program can execute at the same time handled by the CPU. The multitasking concept is based on context switching it’s a logical extension of multitasking [3]. When the CPU performing the j1 job