Yes, it is required. If you want to learn machine learning, you’ll need to experiment with various types of data, models, and validations, optimize hyper-parameters, visualize what’s going on inside the algorithms, vectorize your variables, and so on. Python has dedicated libraries for each of these tasks. No other language is as devoted to Machine learning /Artificial intelligence as Python. Furthermore, deep learning algorithms, which are popular these days, are extremely flexible in Python due to open source libraries such as Keras and Tensor-flow, which are free in Python and also allow you to use GPU for large scale computations. Python is a preferred language for Machine Learning due to all of these factors.