How does one start learning artificial intelligence?
What is artificial intelligence?

Artificial Intelligence is a very broad field and it covers many and very deep areas of computer science, mathematics, hardware design, and even biology and psychology. 

What math do you need?

As for math, I think calculus, statistics, and optimization are the most important topics, but learning as much math as you can won't hurt.

Free resources for beginners

There are many good free introductory resources about AI for beginners.
I highly recommend starting with this website AI Playbook, which is intended to help newcomers (both non-technical and technical) begin exploring what's possible with AI. They also published two videos about the general concepts of AI, you can find them on Youtube AI, Deep Learning, and Machine Learning: A Primer and The Promise of AI.

What is your goal?

Once you have a clear understanding of the basic AI terms and approaches, you have to figure out what your goals are. What kind of AI software do you want to develop? What industries are you interested in? What are your chances to get involved in projects of big companies? It's easier to pick up the right tools when you know exactly what you want to achieve.

AI, machine learning and deep learning

For most newcomers to AI the most interesting area is deep learning.
Just to make it clear, there are many areas of AI outside of machine learning and there are many areas of machine learning outside of deep learning.


  Artificial Intelligence > Machine Learning > Deep Learning


Most of the recent developments and hyped news are about DL.

Neural networks

If you got interested in deep learning too, you have to start with learning about the concepts of artificial neural networks. Fortunately, it's not too difficult to understand the basics and there are lots of tutorials, code examples and free learning resources on the web and there are many open-source frameworks to start experimenting with.

Frameworks and libraries

Python

The most popular such deep learning framework is TensorFlow. It's backed by Google. Love it or hate it, it's a Python-based framework. There are many other Python-based frameworks and libraries, as well. Scikit-learn, theano, Keras are frequently mentioned in tutorials too. (A tip: if you use Windows you can download WinPython that includes all of these frameworks.)

Java

As for Java frameworks, unfortunately, there are not so many options. The most prominent Java framework for DL is Deeplearning4j. It's developed by a small company and its user base is much smaller than the crowd around TensorFlow. There are fewer projects and tutorials for this framework. However, industry specialists say Java-based frameworks eventually integrate better with Java-based big data solutions and they may provide a higher level of portability and easier product deployment. Just a sidenote: NASA's Jet Propulsion Laboratory used Deeplearning4j for many projects.

Resources

If you decide to go with the flow and want to start learning more about TensorFlow, I recommend you check out the YouTube channels of DeepLearning.TV, sentdex and Siraj Raval. They have nice tutorials and some cool demos. And if you decide to take a deeper dive, you can sign up for an online course at Udacity or Coursera.

Other programming languages

It also may be interesting to you to know that there are other deep learning frameworks for the Java Virtual Machine with alternative languages, for example, Clojure. (Clojure is a dialect of LISP and it was invented by John McCarthy, the same computer scientist who coined the term "artificial intelligence". In other words, there are more modern and popular programming languages and tools, but it's still possible, and kinda cool, to use the language for AI that was originally designed for AI. ThinkTopic in Boulder and Freiheit in Hamburg are two companies that use Clojure for AI projects. And if you want to see something awesome to get inspiration to use Clojure in AI and robotics, I recommend you to check out the YouTube video OSCON 2013: Carin Meier, The Joy of Flying Robots with Clojure. (Mentioning Clojure in this answer was just an example to show you there is life outside of the bubble of Python-based AI frameworks.)