It is almost impossible to solve all problems from the first principles. Researchers have proposed many architectures of neural networks that can be a starting point for our work. Some are extremely domain specific like CNN and RNN. Others are more generic, designed to address some common problems. Let us check out some of the important ones here.