Multi-Threading: Concurrency and Synchronization
A discussion on concurrency in multithreaded applications. Outline of the blog: Understanding Concurrency Concurrency Challenges: Synchronization — Race conditions — Dealing with Race Conditions: Mutual Exclusion Lock — Deadlocks Understanding Concurrency Concurrency in the context of computer science refers to the CPU's ability to manage and progress on multiple tasks/processes simultaneously.
Classification using Gaussian Naive Bayes from scratch
Gaussian Naive Bayes is an extension of the Naive Bayes classification algorithm especially used for problems involving continuous numerical data. This blog will discuss implementing multiclass Classification using Gaussian Naive Bayes through a vectorisation approach. We will start with the basics of Bayes’ Theorem, Gaussian distribution and Naive Bayes. …