Programming Artificial Intelligence 101

Programming Language

Python logoThough several programming languages can be used to develop Artificial Intelligence applications, the language that is most often used and advised to use is Python, because it is a general purpose language designed for readability.

Learning Python

Documentation and resources can be found to use and learn the language on the official Python website, especially with the complete tutorial available for each version of Python.

If you already have programming experience, you can have a brief overview of the syntax and specificity of Python in this video. This great course on problem-solving with algorithms and data structures will give you a complete, step-by-step approach to learning Python with explanations, videos and exercises, while this other tutorial from Stanford quickly goes over Python basics but dives deeper into using the Numpy, SciPy and Matplotlib modules for scientific computing.

Other languages that are often used include: Java, Lisp, Prolog, C++, R…

Python Programming Tools

Here is a series of programming tools and other systems to assist in the programming of AI applications.

  • PyCharm: an Integrated Development Environment – IDE – used in computer programming, specifically for the Python language.
  • Jupyter: the Jupyter Notebook is an open-source web application to create and share documents with live code, equations, visualizations.
  • NumPy is the fundamental package for scientific computing with Python.
  • TensorFlow: an open-source machine learning framework originally developed by Google Brain researchers and engineers.
  • Anaconda: Anaconda is a platform for Python and R data science and machine learning on Linux, Windows, and Mac OS X.
  • TFLearn: a deep learning library featuring a higher-level API for TensorFlow
  • Scikit-Learn: an open-source machine learning library for Python
  • Pandas: open-source data structure and analysis library for Python
  • Caffe: a deep learning framework made with expression, speed, and modularity in mind
  • Keras: a high-level neural networks API, written in Python
  • Pytorch: an open source machine learning library for Python, used for applications such as natural language processing.

Data

List of datasets used for Machine Learning research – Wikipedia

Cloud services providers

Certain AI applications may require large computing power to process important amounts of data. Fortunately, several companies provide such services on a regular or on-demand basis. Here are the most famous cloud computing services.

Robotics

ROS – the Construct: Robots and environment simulator to train robots