How to get Started with AI (Artificial Intelligence)

AI is a computer system that can do tasks that humans need intelligence to do.

“An intelligent computer system could be as simple as a program that plays chess or as complex as a driverless car,” Mary-Anne Williams, professor of social robotics at the University of Technology, Sydney, said.

A driverless car, for example, relies on multiple sensors to understand where it is and what’s around it. These include speed, location, direction and 360-degree vision. Based on those inputs, among others, the “intelligent” computer system controls the car by deciding, like a human would, when to turn the steering and when to accelerate or brake.

Then there’s machine learning, a subset of AI, which involves teaching computer programs to learn by finding patterns in data. The more data, the more the computer system improves.

“Whether it’s recognizing objects, identifying people in photos, reading lung scans or transcribing spoken mandarin, if we pick a narrow task like that [and] we give it enough data, the computer learns to do it as well as, if not better, than us,” University of New South Wales professor of artificial intelligence Toby Walsh said.

AI doesn’t have to sleep or make the same mistake twice. It can also access vast troves of digital data in seconds. Our brains cannot.


Primary Goals and Applications of AI

The primary goals of AI include deduction and reasoning, knowledge representation, planning, natural language processing (NLP), learning, perception and the ability to manipulate and move objects. Long-term goals of AI research includes achieving Creativity, Social Intelligence, and General (Human Level) Intelligence.

AI has heavily influenced different sectors, that we may not recognize. Ray Kurzweil says “Many thousands of AI applications are deeply embedded in the infrastructure of every industry”. John McCarthy, one of the founders of AI, once said that “as soon as it works, no one calls it AI anymore.”

While, there are various different forms of AI as it’s a broad concept, we can divide it into the following three categories based on AI’s capabilities –

Weak AI – Also referred as Narrow AI, a weak AI focuses on one narrow task. There is no self-awareness, genuine intelligence in case of a weak AI.

Siri is a good example of a weak AI combining several weak AI techniques to function. It can do a lot of things for the user, but fails when asked question outside the limits of application.

Strong AI – Also  referred as General AI, or Human-Level AI, it’s a computer that is as smart as a human brain. This sort of AI will be able to perform all tasks that a human could do. There is a lot of research going in this field, but we still have to conquer it.

Artificial Superintelligence – Nick Bostrom, leading AI thinker, defines it as “an intellect that is much smarter than the best human brains in practically every field, including scientific creativity, general wisdom and social skills.”

Artificial Superintelligence is the reason for why many prominent scientists and technologists including Stephen Hawking and Elon Musk have raised concerns regarding the possibility of human extinction.


How to Get Started?

The first thing that you need to do is learn a programming language. Though there are a lot of languages that you can start with, Python is what many prefer to start with because its libraries are better suited to Machine Learning.

Here are some good resources for Python:

Learn Python the hard way
Coursera Python
Introduction to Computer science 

Introduction to Bots

A BOT is the most basic example of a weak AI that can do automated tasks on your behalf. Chatbots were one of the first automated programs to be called “bots.” You need AI and ML for your chatbots.Web crawlers used by Search Engines like Google are a perfect example of a sophisticated and advanced BOT.

You should learn the following before you start programming bots to make your life easier.

xpath – This will help you to inspect and target HTML and build your bot from what you see there.

regex – This will help you to process the data you feed your bot by cleaning up or targeting (or both) the parts that matter to your logic.

REST – This is really important as you will eventually work with APIs. You can use requests to do this for its simplicity.

How to Build Your First Bot?

You can start learning how to create bots in Python through the following two tutorials in the simplest way.

How to build a Python Bot

You can also start by using APIs and tools that offer the ability to build end-user applications. This helps you by actually building something without worrying too much about the theory at first. Some of the APIs that you can use for this are:

Google Cloud Prediction API Documentation
MAchine Learning for LanguagE Toolkit
Wolfarm Alpha API

Here’s a listing of a few BOT problems for you to practice and try out before you attempt the ultimate challenge.

Tic Tac Toe
Dots & Boxes

Interested in building bots? Here is an opportunity for you to participate in #UNITEDBYHCL Hackathon and win a trip to Theater of Dreams, Old Trafford, and prizes worth $10000.

Register Now!


What now?

Once you have a thorough understanding of your preferred programming language and enough practice with the basics, you should start to learn more about Machine Learning. In Python, start learning Scikit-learn, NLTK, SciPy, PyBrain, and Numpy libraries which will be useful while writing Machine Learning algorithms.You need to know Advanced Math and as well.

Here is a list of resources for you to learn and practice ML: (By Andrew Ng) (Specially for practice exercise in Python)–st101–cs271 (Includes Logic and Robotics)

Some Books for AI

We also encourage you to participate in various AI and BOT Programming Contests at different places on the Internet:

Before you start learning and contributing to the field of AI, read how AI is rapidly changing the world.

%d bloggers like this: