Artificial Intelligence with Machine Learning in Java: Intro to AI & ML
A summary of the AiML Oracle course: Part 1
I believe this is one of the best self learning courses for those who are new to Machine learning (ML). In this post I’ll summarize the main topics of the first 2 chapters of the course, which are titled Introduction to AI & Machine Learning.
Things You’ll Learn:
※ What is Artificial Intelligence & what is Machine learning.
※ Difference between Supervised & Unsupervised learning.
※ Difference between Data & Information.
※ Difference between Classification & Regression.
Table of Content
● Introduction to AI
● Data and Information
● Categorizing Data
● Why Now?
● Machine Learning Workflow
Note: The content and the structure of the post are based on my understanding of the concepts provided by Oracle Academy AiML course.
Introduction to AI
What is Artificial Intelligence?
According to the course: machines that behave intelligently. But what is considered as an intelligent behavior in machines?
“ I propose to consider the question ‘can machines think” ~ Alan Turing
Measuring intelligence has been long debated; Alan Turing developed the Turing test in 1950s, he purposed that this test can be used to determine “Whether or not a machine is considered as intelligent?”.
In 1980s John Searle proposed the Chinese room argument. He argued that Turing test could not be used to determine whether a machine is intelligent.
Turing test:
Three rooms isolated from each other, one of the rooms has a human interrogator that asks a series of questions to the other two rooms, one of which has a human responder and the other a Computer program. The goal of the interrogator is to figure out which room has the human responder, if the interrogator failed to identify the human then according to the test the computer program is considered to be intelligent.
Chinese room:
hypothetical premise: You are alone in a room with a computer program(set of instructions) that knows how to respond to Chinese characters slipped through an opening. You do not understand Chinese, but you follow the program for manipulating symbols, and send appropriate strings of Chinese characters back out of the opening, which leads those outside to believe there is a Chinese speaker in the room (Your program passed the Turing test) but does the program literally understand Chinese? Or does it simulate the ability to understand Chinese ?
Note: No machine passed the Turing test so far (2021).
Another definition of A.I: According to the course: Software that demonstrates an aptitude to learn a particular task.
▶ In the book: Artificial Intelligence: A Modern Approach, by Peter Norvig & Stuart J. Russell, the definition of A.I can be divided into 4 categories, the first definition falls under the Acting Humanly category & the second falls under Rational Agent category.
What is Machine Learning?
The science of getting computers to act without being explicitly programmed. — Sandford University
Let the computer program learn & improve from experience. ML algorithms can be used to build machines that in some sense behave intelligently.
In Machine learning the aim is to not carry out a specific task but rather, gain information that can be used later against a similar world problem. Develop general purpose algorithm that solves specific problems.
What is Data Exhaust?
The trail of data that you leave behind. Data exhaust helped in the growth of Machine learning.
Example of data exhaust:
• Pages you visited today on google.
• Watch history on Netflix.
ML used to aid services:
• Google uses ML to improve their search engine.
• Netflix uses ML to improve their personalized suggestions for users.
Data and Information
Data VS Information:
Exercise:
Categorizing Data
For a machine to learn there must be some input, and there are different ways a machine can learn. According to the course: Machine learning algorithms can be split into two categories (learning sub-fields):
• Supervised learning
• Unsupervised learning
▶ I read books that split the learning subfields into 3, 4 and even 5!. The course simplified the categories into just 2.
Supervised Learning:
Supervised learning algorithms use known labels, we train the algorithm with training data, & test it’s accuracy with test data.
Example:
You have 1000 photos with labels on them (That’s a cat or That’s a dog), you use these photos to train a supervised learning algorithm to distinguish cats from dogs.
Generalization
In ML we do not focus on very specific tasks, therefore it is important to produce a good test data that is flexible and improves the ability to accurately respond to future yet unseen data.
Unsupervised Learning:
Unsupervised learning algorithms used when the structure of the dataset is unknown, Data can’t be classified or labeled, in short: unlabeled.
Example:
You have 1000 photos of 8 different people, but you don’t have a label of who is in the photo, you want to divide this dataset into 8 piles, each pile with the photos of one individual.
Most data is a mixture of labeled & unlabeled data. According to the course: Data label falls into two categories:
• Classification: Data label has discrete values.
• Regression: Data label has continuous values.
Exercise:
Types of Data:
- Structured: Data that can be stored in spreadsheet with rows and columns, example: Titanic dataset of all the passengers.
- Unstructured: Data that cannot be stored in a spreadsheet with rows and columns, example: Audio, image, video, Invoice.
Why Now?
Reasons behind the growth of A.I. :
• Increase in data.
• Increase in processing power.
• Companies invest in A.I. to improve reputation and sales.
It took around 15 years for a home product to match the fastest super computer at that time.
Moore’s Law:
In 1965 Gordon Moore stated that the number of transistors on a microchip doubles every 2 years & the cost of the computer is halved.
Machine Learning Workflow
What is a Machine learning workflow?
Workflow is about identifying the phases that has to happen in a machine learning project.
CRISP-DM
Cross-industry standard processing for data mining is a workflow model that consists of 6 stages:
1. Business Understanding
2. Data Understanding
3. Data Presentation
4. Modeling
5. Evaluation
6. Deploy
Ask Your self at every stage of the workflow:
Stage 1: What questions needs to be solved? What is my goal?
Stage 2: Where will I get the data from?
Stage 3: Which data is required ? What data do I need to achieve the goal?
Stage 4: What machine learning algorithm will I use?
Stage 5: How accurate are my results? How will I evaluate the model?
Stage 6: push out the solution.
End. Good luck in your Journey.
Part 2: Trees & Recursion