Natural language processing (NLP), along with machine learning, deep learning, computer vision, and image recognition, are all branches of artificial intelligence (AI). The goal of NLP software is to build computer systems that will accept input in the form of spoken or written language and will provide spoken or written output i.e. communicate as if the computer system were a human.