Transcripts
1. Course Overview: Hello everyone. It's a
beautiful day to be alive. Today we have a
very amazing course that's going to make our
life super, super easy. The course is titled
I for everyone, the core of the course is
to simplify a I make I, very simple for anybody no
matter what your background, what your freedom of expertise,
what you do in life. We are going to take I, which is a very complex term, very complex field,
and simplified, make it easy for anybody involved and that's the
goal of our course. A simplified approach
which means everything going to be laid out in a
very, very easy manner. So we can understand how you can use AI in your daily life, in your work, and in any
one of your hobbies. So let's talk about this
together. All right, so mainly the courts will cover the main building blocks which are introduction to
artificial gellation. So what is AI? How
can we define it? We're also going to
cover machine learning and diplaring because these are some cubs that are used a lot by AI developers and
people in the field. So we're going to simplify the, make them easy
fundamentals of AI. So what are the main
building blocks of AI? What is AI from technical and also from an
intellectual perspective? How can we think about AI? And how, what is going on
behind the neighborhood, if you will, behind
the curtains. And finally, building
projects with AI. So we're going to be
thinking about a project. What are the steps that we're going to take note
to build a project? And how can we build
a great AI project following a very simple
step by step approach? Then we're going to apply this project in a reward situation. Okay, So three main points. Introduction to AI,
fundamentals of AI, and building a project using artificial intelligence.
All right.
2. AI vs Machine Learning vs Deep Learning: Now let's talk about artificial intelligence by
giving it a quick definition. Then speak about
machine learning, and finally speak
about learning. The goal here is to
make it easy for us to understand artificial
intelligence, machine learning, and learning from a
very easy perspective, so no technical words
here, nothing crazy. Keep it simple. The
goal is to simplify it. And I also added machine
learning, a deploying here, because a lot of times
they are using articles, online news, et cetera, on newspapers, in your media. So it's always good for us to understand these keywords and make sure that we understand
them because they're always used. And simplify them. So we can use them in our daily conversations
and we can understand if we're
building an AI tool, what are we talking about
and how can we use it? So we start with
artificial intelligence. What is artificial intelligence? Artificial intelligence,
also known as AI, is a field in
computing that makes machines think and
act like humans. The goal here is
to take a machine, computer, smartwatch,
Smartphone, smart TV, anything
that contains a CPU, Rap, anything that contains a computing, let's say hardware. Let's just think about this from a very simple perspective. Any computing tool and
everything nowadays is a computing tool that can
act and behave like a human. That's amazing. That's
great. An example. Nowadays we have a lot
of tools that can speak, that you provide them
with some text and they can take that text
and they speak to you. We have a lot of
tools that can take a picture and understand
that picture, which was really hard for computers to do in
the early days. It was very hard for a
computer to take a picture, understand it,
understand what it is, what it does, et cetera. Nowadays, tools can
take a picture and they can tell you exactly what's
happening in the picture. We have a person running in a forest wearing the following
clothing, et cetera. So this is very,
very advanced stuff that we as human beings
used to be very good at. We used to be, you
know what, this is, the only thing that computers cannot do is
understanding pictures. Understanding takes
understanding language, understanding audio to nowadays. I can do that easily. So this is anytime that you see something that's
human like a tool, a, a program that's human like that does
human like behavior. For example GPT or open AI, GPD, it does the work. It can generate
human friendly text. Text that resembles text that was written by
human beings. That's AI. So this is a really
quick definition for AI. I hope it makes sense. Second
one is machine learning. Machine learning is the
process by which computers learn and adapt from data without being
explicitly programmed. So let me simplify
the definition. Machine learning is a
subfield of AI that takes data and learn from
data without being program. Programming, if you
think about it, is the ability to give a
computer a set of instruction. Hey, computer, open this step. Hey, computer, open this tool, rate the tool, enter my name
to my E mail into my phone. So we're giving the computer some instruction.
That's a program. So anytime that you open a
program in your computer, it does step by step approach. It works by giving
an instruction. So let's say you have a
media player that plays videos in your computer
or in your phone. You open it, the
program itself will automatically open your
video, start playing it. You want to adjust
the video and go to, let's say 50% of the
video have let's say the video is 2 minutes and you want to go to the 1 minute mark, you can just drag and go
to the 1 minute mark. So these are programs, they don't understand human
logic or a human intuition. But machine learning
takes data and understands how that data is working and understand
the person in the data. I'll give you an example
in machine learning, it is a very easy example
called the churn rate example. So a lot of companies that are mainly making money
from subscriptions, they want to understand
the churn ery. They want to understand
how many people are going to cancel the subscription next month so we
can talk to them. Hey, why are you canceling the subscription and
what's going on? Can we do something better for
you in order to understand that generate or that
unsubscribe rate? What happens is
that the companies correct data about
all the subscribers, give it to a machine
learning tool. And the machine learning
tool will predict for us who are the people that
are going to unsubscribe, how it will understand
the patent. For a person to unsubscribe, they need to be between
this age and this age. They need to be using their activities between
this time and this time. So this is really
interesting because nowadays computers
can understand the data and learn from it. So machine learning
is data heavy, so we just give the
computer some data, Hey, computer take the data and then the computer will understand it and we make it easy
for us to work with. All right, now let's
talk about Diplony. Ploy is a technique
where computers learn to identify patterns and make decisions similar to
how human brain works. Diplony is a more
advanced, let's say, field than AI and machine
learning where it's data heavy. So it takes more data
than machine learning. And it works using, I'm sure you heard this
neural network. So just a way that the computer understands data using the same approach
as the human brain. In our brain, we have
some neurons that are connected to each
other so we can understand, remember, et cetera. We developed a program
that does that, but that program only works
if you have a lot of data. The churnet example
can be applied here. So the unsubscription
rate can be applied here. Also. In this case,
computer vision. So understanding a picture
can be applied here. Voice recognition
can be applied here. So pron is just a subpheld. Take about as a
subpheld that chooses program a tool that resembles
to the human brain. Very simple. The only difference
between AI machine and Per requires a lot of data. You need a huge
amount of data for the computer to understand the passion, what's
going on here? Why is this user
making that decision? Why is this image different
from another image? So this is the difference. Ai thinking like a human
being, machine learning, programming a computer program, by giving it data so it can understand how to make
decisions and deep learning. It's a technique,
a subfield of AI, where we have a program called neural networks, or neural nets, that resembles things like
human brain, you know, and it needs a huge
amounts of data to understand patterns
and make decisions. So these are three fields, simple, easy to understand, don't give them more
thinking that they deserve, very, very simple. All right.
3. AI vs Machine Learning vs Deep Learning Tasks: Now let's speak about the
tasks performed by AI. What are some of the
tasks performed by AI? So we will be speaking about
the tasks performed by AI, the task reformed by
machine learning, and the tasks performed
by in AI. What can we do? We can do image recognition, so we can recognize
images as I told you. So we have an image computer and the computer can't understand what's going on
inside the image. This was really
held for computers, speech recognition. We can easily give the
computer instructions. He computer, Can you
please open the file? Hey computer, Can
you play the video? Hey computer, can you do this? Can you open my browser? Can you go to my social media? So we give the
computer instructions and the computer
should take our audio, convert it to instructions, and then perform
the instructions in a very accurate manner. That's what super hard for computers nowadays,
it can be done. Recommendation systems, these
are systems like Netflix, so you watch a movie, Netflix will understand
your preferences, what kind of movies you
like, and you're going to get recommendations
from similar movies. Or recommendation systems
are very, very powerful. They mainly take your behavior and based on your behavior, we'll recommend the movies or anything that resembles
to what you're doing. So these are also great, great, let's say application of
AI, autonomous vehicles. So these are vehicles that
can drive themselves. So we see a lot of companies that are
currently developing autonomous cars
and vehicles that can easily understand the road, understand the vehicles that are perhaps across the
road, et cetera. And they can do the task
without any human intervention. They are very powerful,
but they are still being programmed
and being trained. Robotics, all robots that
you see in the world are all pace because they need to see computer vision.
They need to talk. Special recognition,
they need to understand audio recognition
recommendations. They need to understand
your preference so they can talk to you in a way
that makes sense to you. Autonomous, also capability. So they need to be able
to move around easily. So these are some of the
advancement that we're going to be used in the next
couple of years, and I want you to keep an
eye on them. All right. Now let's talk about some of the tasks
performed by machine. We have spam filtering. Spam filtering is the
ability for a computer to filter out your e mails
from spam and non spam. So we have an e mail the computer without
your intervention, we'll read the e mail and see, okay, this e mail
contains a bad link. This e mail is not, doesn't
locally it, oh, this is spam. So this is really advanced and this makes our life really, really easy. How it works. We give the computer a bunch
of spam and non spam data, and the computer will understand the passions of spam data or spam emails and it will in the future protective and
email is going to be spam on. So this is a great application for us to simplify our life. Sentimental analysis is
mainly used in social media. So when you are a company or you have your own brand
or your content created, you want to understand
how your people or how perhaps your users feel about your brand and
feel about your content. So if you have a sentimental
analysis tool that will take let's say Tweet or
Facebook posts or anything. And it will tell you if your customers are
happy. They're sad. They're mad. They're joyful. So it will tell you what's going on, so you
can take action. So if let's say customers are
mad, you can talk to them. If they're happy, you
can also take them. So sentimentalysis
is the ability for the computer to easily
understand the sentiment of an individual using
their expressions, their behavior and their text. Okay, fraud detection,
this is mainly using the financial industry
to understand if a transaction is fraud. So we can detect it
and we can stop it. So it works easily by giving a computer what are some fraud transactions
and non fraud transaction. And the computer will understand which are fraud and
which are not fraud. Image classification
is the reason for the computer to take an
image and classify it. So this is, let's say,
a computer image. This is an office image, this is a car image.
Very, very nice. Stock market analysis is
also another sub field where the computer will easily
use the machine learning. Try to predict the price of a stock or the pride of
any financial securities just by looking at the
historical data or the data or that financial
instrument without any issues. Okay, So very
simple applications that are revolutionizing
the world, like every big corporation out there is using these tools, is using them on
a daily basis to take advantage of the situation. Because if you're not using AI, it can be used against you. So it's really nice to use AI and think about some of
the applications to know exactly when we're
talking about AI and when we're talking about a
simple computer program. All right, now let's talk a
little bit about learning. Learning is more
advanced, as I told you. It uses normal network. So it's another
way, a program that understands data using the same approach
as a human brain. And it involves in
the following tasks. So we have natural language
processing, it's very, very important field that
understands human language. So you give the
computer some language, it will understand the words, the way that you write
sentences, the text. And it can generate
text for you. Ors can give you a response
based on your answer. So natural language
processing, Anamaly detection. So this is a great, great way for the computers to understand anything
that is abnormal. So let's say abnormal behavior
by users in your account. Abnormal behavior by
financial instruments, abnormal behavior
by your computer. So this is really used
for cybersecurity and also of the
financial industry. Anamaly detection to detect
any abnormal behavior, facial recognition. So
this is also great for, let's say, security aspects. So you want to open your
computer or your smartphone using your face,
Facial recognition. We understand your
characteristic, your facial characteristic. And we'll open your
computer or your laptop if it's really who is opening the
smartphone, the computer. Customer segmentation, another subfield of deplaring
or application of deple, where we have a pulse
of customers and we segment them based
on some behavior. We have customers
that like product A, customers that like product B, customers that like product,
so on and so forth. Text generation, so this is what everybody's talking about
nowadays like Ch GPT. So when we generate text, we ask the computer a question
and we get some text. Hey computer, can
you please write 2,500 articles about
Machelleuniformy? And the computer will write this beautifully with
crafted article. We have a lot of tools such as GPT that can
do that nowadays. And they can do it in a
very, very advanced manner, so you don't even know if
it's a human or an AI tool. All right, so these
are just some tasks, some applications
of deep learning. And I wanted to share with
you deaf so you can see. Okay, so what is, what's not, what's machining,
what's not machinery? What's ply and
what's not deploy? So we can make that
distinction between I and just simple computer
programs or software. All right, so this
was it for the tasks. Now let's talk a little bit
about the main I buildpl.
4. Building Blocks of AI: So what are AI building blocks? I created a very
simple chart for you that takes four
building blocks of AI. So in order to
create an AI tool, you need four main
building blocks. We have data algorithms, computional power, and
deployment, and maintenance. Don't worry, I will
make sure to explain each one of them in a
very, very easy manner. But these are the
main building blocks that you can think about. Every time that you're
thinking about AI. You want to develop
an AI tool in your company, in your job, in your daily task,
as a content creator, in your personal life, something
for you and your family. You can do that using AI. But you have to think about
the main building block data. Do I have data to
do that algorithm? Which algorithm should I pick? Which tool should I pick, if you will,
Computational power. Do I have a strong
computer to do that deployment and maintenance?
Where can I deploy? Where can I perhaps put this tool so I can use it in my family or my co
workers can use it? Okay. Very simple. Very easy. Now let's dive deep
into each one of them.
5. Data: Data. Data is the fuel of AI time that you
hear about data, this is the fuel
of, without data, we will never have AI. Ai needs data to
function without it. It cannot operate. If you remember the spam
e mail example. In order for us to develop
an AI based spam filter, a tool that will filter your E mails from sperm and non spa, We need a tool, or we need that tool, to, to get a lot of e mails
and for us to filter out, this is spam and
this is not spam. So the computer can understand the versions of a spam e mail and the persion of
a non spam e mail. So this is very important. It's the fuel of data. Also for the financial
transactions, we need a lot of
historical data, but a stock for
example, to understand, okay, how the prices
behave and move Quality and quantity
matter data itself. I want you to always
please do me a favor. Think about quality of data
is the data that I have. Quality data, for example, if you have a lot of spam data, but it's not clean,
it's not high quality. There is no pure distinction between what spam email
and what's a nonspam mail. Your AI tool will not
behave really well. So it's just like
us as human beings. We learn from books, we learn from courses. If the course is high quality, you will learn easily. So the same because AI is
learning, we're training AI. The data itself should
be high quality. Better data will lead to
a more reliable tool. That's why sometimes we'll have two companies that are
performing the same task. Text generation from company A and text generation
from company B. Company A is doing much better. The only reason
that they are doing that is because of their data. The data that they
use in order to train their tool is high,
high quality. Okay, now let's talk
about data preparation. Whenever you talk about data, there is always a task that
goes hand in hand with data, which is data preparation. So the data, once you have it, let's say you are in a
company and you tell your colleagues that you need a lot of data to develop a tool. That data should be
exported or taken from your colleagues or let's say you want to develop
it in your house, take it from your computer or smartphone or whatever,
and then clean it. Remove anything that's
not going to be useful if let's say it
contains times spam, or let's say a date or whatever,
you need to remove that. If the data contains a
description that's not going to be used by
your to remove it. So clean the data, make
sure the data is pure. So the case of e mail, we have the e mail title. The e mail, let's say subject. And then we have
the e mail content or the e mail body. We
give it to the computer. The computer remove, let's say, anything unrelated
that would not help the AI tool understand
and take action. Sometimes the way that I clean data is I ask
myself the question. If I was doing the
tasks manually, will this data help
me in my task? So think about cleaning the data from a
human perspective. I, we're always going to use human intelligence in this case. And it's really good
for us to clean it and follow the best practices
in order to clean the data. Okay, now let's
talk a little bit about some examples
of data in AI. So whenever we talk
about data in AI, we have four main distinctions. And these are just examples,
we have text data, so any type that you
have text based data, so let's say e mails, books, articles.
These are text data. You can give it to AI, the
AI will understand it and it will give you some
output or some results. Image data, so this
is really good for computer vision if
you're trying to develop a tool that
will understand images. So you can easily
give it a bunch of images in any format and
the tool will understand it. Numerical data. So we
have a lot of data. It's a stock market data,
financial transactions data. Let's say if you are a teacher, you have some grades
from your students. You can just give
it to the AI tool and analyze those grades. So this is really great. Numerical data is by far
the number almost used data in the AI field
because it's easy to understand and it's
also matematical, so the computer can easily
understand it on audio data. This is for audio text. If you want to
generate some audio or the computer to understand text that you give it in a
speechal recognitional manner. So we have an online assistant or an AI assistant, so
you can just speak to it. It will understand what you need and it will perform the task. So those are all some of the main data points I
want you to remember. So we have text data
like an e mail image, data like your picture, numerical data like your
financial transactions, and audio data like your audio recording or
an online assistant. So these are some examples
that I want you to remember.
6. Algorithms: Now let's talk a little
bit about algorithms. The second building block
of AI is algorithms. The brain of AI
is the algorithm. Ai uses algorithm as its brain to process the
data and make decisions. Once you have the
data, of course, we need a way for the
computer to process the data. We have an algorithm
that does that. Algorithm is just a
set of steps to tell the AI how to process the
data and understand the path. Don't worry, all
the AI algorithms are open source,
available online. If you want to
develop an AI tool, you don't have to develop
the algorithm from scratch and build
it and test it. Every great algorithm
is available online, open source, that you can use, implement, and start
working with it. So that's the beauture of AI. Second point that I want
you to think about, anytime that you're
thinking about algorithms, types of algorithm. Ai has different algorithms
for different tasks. Machinery predicts
with historical data, while learning is great for image and special recognition.
So think about it. So for every task that you are performing,
you have to think about, okay, what type of
algorithm should I use if I'm trying
to process images? What are the best algorithms, the best tools that can take my data and process
it for an image task. So you always need to take about a good algorithm
that can do the job. So just link in the puzzles. This puzzle goes, this puzzle. How can we do it easily
without any issues? Okay, Learning from the data. So I learns from the data
using different algorithms. So we have supervised
algorithms and supervised algorithm
reinforcement algorithm. Don't worry about the names. The goal is to
simplify the terms. So you just need to understand
that your goal is true. Number one, prepare the data. Number two, take the data and find what is the best
algorithm that can perform a great job for my task sample. Don't
even worry about it. Okay, next. Now
let's talk a little bit about some
examples of algorithm. So these are just some examples. I just put here four
examples for us. We start by linear recreation. Linear regation is an algorithm available online, open source, that we can all use
to develop an AI to, that takes numerical data
and predict future data. An example would be sales. You're a company and you want to predict
next month sales. You will give an AI to sales
for the last ten years and you will use linear
recreation algorithm available online for free. Once you give it to the
linear regration algorithm, the linear regulation
tool, if you will. The computer, we understand the data and there we go, we're going to have your answer. What's the next month's sales? The computer will do
the work for you. So anytime that you are using or dealing with numerical data, stock market is a
great example as well. Give it to the computer and lead the computer to the work. Okay? Decision trees. Decision trees are
amazing because they are used for
classification. Let's say example. So you have a classroom with a
lot of students and you're trying to predict which
students are going to do creating an exam and which are not going to do
creating an exam. What you can do is give an
AI tool, a decision tree. In this case, all that
data and the computer will predict this is going to pass and this student
is going to fail. So this is a great tool
if you have a decision. So you're trying to predict
if a customer is going to subscribe and subscribe an
e mail or so. Spam, spa. We have a tree. We have a
decision tree that's going to be built based on your
data, don't worry about it. It's available online so you can use it
without any issues. And this is really great for non numerical
numerical decision. Anytime that you
are doing something that is non numerical, it can be put in a decis entry. Neural networks is the one
that I explained previously. So I can do it
again. No worries. So it's mainly an algorithm, a tool that uses the human brain functionalities
in an algorithm. The people that
developed a neuron, they went and they
studied the human brains. In the human brain,
we have some neurons, They connect together
to make a decision. So let's develop a tool that
uses the same approach, and let's try to give it to a computer and see what happens. It's just an emulation as a representation
of the human brains. That's why it's called
neural network. So it's a network, it's a bunch of points that are
connected with each other. Takes data to make a decision. This is really good
for image recognition. It's amazing for
text generation. Any task that is very, very difficult to do, you give it to a
neural work which is available online for free and
it does the work for you. A random forest is
a bunch of trees. So if you have a very
difficult decision that you're trying to make, so we're trying to protect, let's say in these
particular clients, which client is most likely
to buy a product from us? So this is a very
difficult decision because who buys and who doesn't
is not an easy answer. Now it will take
a lot of data at our purchasing behavior when, how is the client always
purchasing from us in July? So we have to think about these questions and give
them to the computer. Let's say we collect
a lot of data about the customer and we give it to the computer in the
random forest format. And there we go, we are going to have our answer
using random forest. So it's also good for
decision based algorithms or decision based problems, and it's great for
complex decisions. Linear cation, numerical data, decision tree and random
forest, non numerical data. Mainly decisions norangework for complex tasks such
as computer vision. You're trying to understand
an image, voice recognition, you're trying to
understand the voice, speech recognition, et cetera. So these are some
of the examples. All the best algorithms
are available online, so you never have to
program them from scratch or learn about
programming, et cetera. All you have to do, use them
and you'll get your up okay.
7. Computational Power: Now let's speak a little bit
about computational power. So in this slide, I want to focus mainly on why do we need computational
power to develop an AI tool? All AI tools, all AI programs, they need computational
power to process the data. The idea here is we need
a very strong computer, a very strong hardware. You know, I wouldn't even
go to the DTSCPU Ram. Let's keep it very simple. We need a strong computer
to take that data, process it, and understand
how it operates. And this is a main baiting block of AI, because without Dutch
computational power, it will be hard for the
computer to process the data. Let's say we have
billions of data points, billions of let's say customers that we are trying to process. Of course, we need a very, very strong computer with a strong B CPU memory and
all the hardware techniques, a computer computer in order to process that data and
give us an answer. So it's the engine of AI. Without a strong
computer, a strong tool, hardware itself, we
are not going to be able to do anything. So AI is going to be used on a daily basis by a lot of
companies and a lot of people. So the use of computational
power is on a growing demand. A lot of companies and a lot of individuals are now
using cloud computing. So you go to Amazon or
acrosoftazu or Google Cloud. You go to one of the
cloud providers, one of the big cloud providers, and they will give you
that computational power. But you have to pay
for it, obviously. And this is something that
you need to understand that because AI needs a strong
computational power, there is a growing demand. Everybody is now trying to allocate and pay for the computational power
in order to use them. And have an amazing, amazing experience with
developing hydro. So, because computational
power is in demand, a lot of companies like Intel and all the computational
companies out there that are developing
hardware are now creating a more
advanced hardware. So a better processor, a better memory, a better
graphical processing unit. They are creating a lot of these amazing tools and amazing functionalities
that can be used by AI developer by us in
order to do the work faster. So that's the power of it. In this age that
we're living in, we are in an amazing
opportunity. Why? Because now
computers are strong, now we have a lot of data, and now we have a lot of
gums that we can use. So we are in a perfect time, in a perfect place to use
AI in our daily life, in our businesses, and
everything that we do. All right, so think
about computation power as what are some of the hardware things that I need to do in order
to get the job down, in order to make my life
easy without any issues. And we can now do that easily because of companies such
as India, such as Intel. Because they are
providing us with all of these things and we just can
use them without any issues. So that's something
to keep in mind. And they perhaps play a critical role in
the development of A, and advancement of AI. Because if you remember with me
just a few years ago, we didn't have strong computers and you had to pay a lot of money to get a very strong
fast computer nowadays, you can easily get
it or you can just, if you're developing an AA tool, you are going just to
go to a cloud provider, pay them some money, and
they will allocate for you that resource where you can put your AI tool and
make it work. Okay, now let's look at some of the examples of
computational power. We have quantum computers, These are types of computers
that are still developed. They are advanced
computers that are super fast and they can be
used a lot in cybersecurity. So these are also great
for AI because they have super speed,
fast computing power. You know, they cannot be used nowadays in a fast scale because
they're being developed. But they are the future.
And I just wanted to share with you that they
exist and they are out there. Cloud computing is the main part of the AI development
life cycle. Why? Because we have a
lot of providers that can provide us with
these computers. They have data
centers. They have people that are managing
these data centers. And they provide us with this computation power
and we just pay. And they provide us
with you services. So AWS, Microsoft Azure, Google Cloud, all they can do that for us
without any issues. Graphical processing unit. Graphics processing
unit, so GPU. Graphics processing is
a tool, is a hardware that processes the data
in a very fast manner. So it's in every computer, so every computer our
day we'll have a GPU and Text In Vida and other companies that
are working on GPUs, we have very fast GPUs that
can take data processing. So thanks to the
advancement of GPUs, we can process a lot of data and we can have
great, great results. We have TPUs, or Tensor
Processing units. These are just AI accessed applications
developed by Google. So Google is a company
that currently owns, let's say, a tool
called Tensor Flow. It's a library used for AI. They also provide us with TPUs. And these TPUs are able to create applications
that are dedicated for AI. So anytime that you
have an AI system, you can use Google TPU. They can, because they're
Google properties, so they can be mainly using Google Cloud and Google
infrastructures. And they can also play a major, major role in computational
power and AI. So think about, these
are just examples. You don't need to
go deep into them. At the end of the
day, let's say you are developing a tool. You're just going to
a cloud provider like Google Clouds or AWS allocate some resources from them
and everything's going to be taken care because they already have the infrastructure. Okay, So quantum
computers are very, very advanced, they
do the work for us. They are mainly used for cybersecurity and they're
still under development, so we still don't know
what they can do. Cloud computing, mainly the ability to use huge computational power and huge computational resources
using a cloud provider. So just like AWS Zu, Google Cloud graphic
processing units are small hardware units that are
used to process the data. Tensor processing units
are Google provided processing units that work
on also analyzing the data. And they are mainly
used for complex tasks. Complex I task, okay.
8. Deployment and Maintenance in AI: Now let's talk about model
deployment and maintenance. Once you are done and your
tool is working, your AI tool, let's say you're
developing an AI tool that helps predict, let's say, sales
in the next month. So you have a company
and you're trying to predict sales for the
next month, okay? What you can do is easily,
without any issues, just create a tool that can predict sales
based on previous sales. Very nice, very easy.
What can you do? What can you do in this case is take the tool and deploy it. You have to put the
tool in the cloud or in your personal computer or anywhere where it can
be used and accessible. If you're the only one
that is going to use it, you can deploy in your personal computer and work with it. But if you are providing the
service to allow people, and this is perhaps the
significant example or the main uses of AI, What you can do in this
case is just easily, without any issues, go
to a cloud provider. So AWS or Google Cloud sign up create an account and then buy some resources
and use them. So deployment is the ability
to take an AI model, AI tool that you developed
and put it in the web, put it in an infrastructure, a cloud provider, let's say, or in your own computer, so it can be used by you or
anybody around you, okay? Scalability, Anytime
that we think about AI, there is a very, very
good concept that I want you to understand,
which is scalability. You have to make sure that your AI tool can be scaled to
as many users as possible. You came up with a great idea, which is a tool that is used by businesses to
predict their sales. The tool, once you set, deploy it in our website using
Google Cloud for example, it should be able to scale. It should be able to
maintain the same level of performance no matter
how many users are actually using the tool. So if you have 100,000 users that are using your
two simultaneously, 1 million users, it should work perfectly
without any issues. And that's why it's
recommended to use a cloud provider because they can do the work
for you without any issues model monitoring. So monitoring AI
models is essential to catch and fix issues caused by changes in the
real world data. So it's really good for
us to always monitor if our AI tool is doing great work and get
feedback from the user. So once you have the sales data, I am going to be 100%
operational, working perfectly. Of course, you're going
to get some feedback from you, use that data, give it back to the tool, and the tool will improve
and we'll do a better job. So that's something
to keep in mind and that's something that
is very, very important. These are some of
the examples of deployment and monitoring tools. And I, these are just tools, so I don't want
you to be perhaps intimidated or these are just names of some tools that
you can be using that are all used for AI
deployment and maintenance. In order to take your I
put it in the marketplace. Okay, we have Docker is
an open source tool that can be used to deploy your
AI without any issues. We have Azure Machine Learning. It's also a cloud
service provided by Microsoft Azure that can be used in order to deploy your
machine learning tools. Okay Cubes. It's also a tool that goes hand in hand with Docker that
is used for scalability. You have a lot of AI technologies and you have a lot of users that are
using these technologies. Cubans is a tool that you
install that will make sure that your users are all happy
with the performance that, let's say one of your
tools goes down. You have a replacement easily. So just a tool to
maintain scale, make your users happy. Flow is a tool that's
used to maintain. So monitoring maintenance, making sure that if
there is a puck, you get notified,
you can fix it. Some tools that can be installed that can be used
without any issues, that for every one of them we can do a Task docker
for deployment. Let's say I'm done with
working on my AI tool. I want to put it
online. I can use Docker Azure Machine
Learning is a sub field, let's say a sub
service of Turqets. I can just go to Azure, pick that service
and I can buy it and deploy my AI to Cubonetis's, what you call an orchestrator. So pretty much it monitors all the AI services
that are running. And if one of our services goes down, there
is a replacement. Scalability is also there. We have a lot of users,
no user shifts that performances beds or really
good airflow for monitoring. Making sure that all
the services are working perfectly without
any problem, okay.
9. Building an AI Project: Now it's time for us to talk about the AI project life cycle. How can we build
an AI project from step number one to step number five easily without an issue? We start first, we have
to identify the problem. So before you do anything, you have to sit down
and you know what. Let me think about the problem. What am I trying to solve? Am I trying to protect sales? Am I trying to
understand images? Am I trying to create a
tool that enables me to fix or remove all spams by
filtering out the spam? And as well so
identify the problem, understand what kind of problem I'm trying to fix using it. So this is a very
important step because if the problem that
you're trying to affix is not clearly defined, what will happen is that you're
going to have a mismatch. Okay? Collecting and
preparing the data. Once you identify
the problem and you understand exactly what
you're trying to solve, the next step is you have to collect and prepare the data. We have to go and start
collecting the data. If you have a company you're working in a company,
it will be easy. You can just talk to your
colleagues and get the data. If you don't have
the data, you can go to an open source data provider. So go online, find free data that you can
use without any issues. So open source data, if
you don't have the data, you can also go create a survey, talk to your customers and
get some input from them. So collecting and preparing
the data, collected data, put it in your computer or
put it in a cloud provider. And then clean it.
Make sure that you remove all the stuff that
you don't need from it. Choosing and implementing
an AI model. So once you collect
and prepared the data, the next step is I have to pick an AI model and I have to
implement it in my computer. So as I said, so AI models are
available online, so all AI technologies
are open source. So if it's a numerical tool, you can use the
sellinar regression. If it's a decision you
can use decision tree. So just pick and
choose over this case, what can I use once you do it?
You can just implement it. Whenever you implement
it, just run it. You just have to click on
the Run button to get it to run training and
evaluating the model. So once you implement a model, what you need to do is you
have to take the data, put it in the model to train it too. They need to be trained. You have to give them the
data so you can understand the situation and based
on the situation, they can make decisions. So we train it and we evaluate if the
model is doing well. Is it going to correct if it's giving us the correct
answer all the time? These are some of the
questions that you need to ask and we have a lot of tools nowadays that
are free that can do the training for us and
also the evaluation, so you don't need to do any heavy lifting,
deployment, and maintenance. So this is the last step. We take the tool, put it online, let's say in a cloud provider. If it's offline, you can just put it in your own computer, put it in your smartphone. So just deploy it in a particular system and
start working with it. And make sure that
you maintain it. Make sure that if you have
new data added to it, that's very, very easy. So we start with it and
define the problem, then we collect data and
we prepare the data. Then we choose which
model we're going to use. We train it and we evaluate it. And finally, we deploy it
and maintain it. Okay.
10. Identifying the Problem: Now let's talk about perhaps a real world situation where we are going to implement the step by step approach. And we are going to
understand how we can easily use AI to
solve the problem. We have been receiving a lot of emails and some
of them are spam. And oh my God, we have so many bad emails
that we don't need to like, we need to find a solution. We're running a small
company as a team. And we decided, you know what, let's create a I spam fat. Sounds like a good idea. And that tool can
also be used by our colleagues and
other partners, let's say in our
company partnerships with other companies
that we have. We sat down together and we said the problem is we're
trying to develop a tool that will help us solve the issue of
receiving spam, e mails on a daily basis. Okay, how can we think
about the problem? In a very easy diagram,
I receive an e mail. The tool will simply tell me
if it's a spam or non spam. Very, very easy spam, not spam. Okay, now let's talk a little bit about
identifying the problem. The task is to automatically identify and filter out e mail. This is a very classification
decision problem, so we can use decision
tree in this case. And it will work 100% because
we have a decision to make. I received an E mail,
is it a Spa or not? Span Super easy. Super good. So we start with
identifying the problem. We want to automate the detection of Spa
images in our system. So we have a small team
and I would like to just identify if the images that
our company is receiving. Span or span. So far so good understanding
the context and constraint. So we have to make sure
that we understand these two points which are
the context and constraint. So do we have a
budget to do this? How much time will it take
us to develop the system? Do we have people who
understand I a little bit, who can work with AI,
who can do the work? We have the technical
team to do the work. This is also part of the
problem identification, to understand our environment. Can we do this? Can
we solve this problem Yes or no, Setting
success metric. So we have to make sure
that for this system, in order for us to say, wow, we did it. Our system is working,
we are successful. What is our success
matric In this case, use this satisfaction level. So we are going to leave
the users once they use our system with a
user satisfaction. Let's say quick form where they can just say if, if
they're happy or not. So if you're happy with the
system, give us a thumbs up. If not, give us a thumbs down. Okay? So these are some of the question I just
want to put you in the mindset of thinking
about AI in a very, very simplified
manner, all right?
11. Collecting and Preparing the Data: Now let's talk about collecting
and preparing the data. So we have to first
correct the data. Take all the emails that are
received by our company. Anybody, any employee that is receiving emails in
our corporation. We're just going to
correct the cleaning them. Remove anything that we're
not going to be used. Images from the emails, like anything that is not going to be relevant,
MGs, whatever. Clean them, make
sure that the purely subject and text and
then splitting the data, this is something
that I left out for this part of the
slides or the course, is that once you have the data, you have to take your
data and split it into training data and testing data. So let me explain. You give
the computer the lesson he computer learn the difference between spam and
non sperm email. Okay, so far so good. I'm happy. Then once the computer learns, you have to test if the computer actually
understood what you meant. How we have a small
testing data, we can give it to the computer and we see if the
computer is going to be able to detect if the
email is sperm nonspam. So once you collect the data, you need to split it
into a training set. So obviously, the
training will be huge. So let's say you have
100,000 E mails. 70,000 is going to be given
to the computer to learn. 30,000 is going to be used
in order to train, to test, to see if the computer
actually unders, and this is the same concept
in the scoring system. So we have, let's say, a semester of learning, so we learn about history, about it said a language
about computer science. And then at the end
of the semester have a quiz or an exam, a mid term, a final, whether we test our abilities, if we actually get
the material or not. So this is the same
concept we just, it was modeled from
the human behavior. As you can clearly see,
where we take data, we split into training
and testing, okay?
12. Choosing and Implementing the AI Model: Now let's talk about choosing
and implementing AI model. So the first step is we
have to choose the model. So for every situation,
as I explained, we have to think what
is the best model for this case for spam?
It's very easy. It's decision based. And anytime we have a decision, we
need to think, okay, because this is a decision, we are going to choose
a decision tree because we're giving
a computer some data and the computer
is thinking spam, non spam, very binary, very easy spam and non
spam decision implementing the model with which we can use let's say
Python for example, which is a really famous
programming language for implementing these models, Give it the data and Python can implement the decision three
for us without any issues. Okay, so once we
choose the model, we have to understand
what are the tools that we're going to use. Of course, in this case
programming language. Are we going to
use Python, Java? Are we going to
use an online tool that already
contains a decision? Three, we're just going
to give it some data. So these are some
of the questions that as a team we need to think about before
implementing this IMO.
13. Training and Evaluating the Model: Now let's think a little bit about training and
evaluating the model. It's very important
for us to think about the training and
validation and testing. Any time you think about
training and validation, we have to put ourselves in a situation where
everything makes sense. We start with
cleaning the model. We take the data that we clean, let's say in this case sperm and sperm give it to
a decision tree, which is the tool that we picked a decision, just an algorithm A. And then between the model and the model calls and
reads the text. Okay, So this is an E
mail, this is spam. Those are the patrons
that I found in a Sam. This is non spam, this is Y. And the computer
will just go over the data and find the
patrons, find the patron. Understand, just like us, like human beings, understand
how these things operate. What makes a spam e mail and what doesn't
make a spam e mail. Okay. So we can
split or separate between spam spam.
So far so good. Validating the model.
Once we're good, we have to make sure that
the model operates, run it, see if it's working,
give it a new e mail, see if it's going to
operate perfectly nice. Then the third step is testing
the model we have to take. If you remember,
we take our data, we split it into 70%
training, 30% testing. We take that 30% give it
to the model and we see if the model is going
to get an Or, an plus. So to see if the model is
going to do a good job or not. So if the model is answering
all the questions correctly, in this case identifying all the E mails as spam or
non spam without any issues. We know that our model is operational and we have
a high success rate. And we can easily deploy it. And we can start using it in our company if the model
is not doing a good job. Wait a minute, let's
get more data, let's work on it more, okay? So this is a really,
really good process. So training the model, validating the model,
and testing the model. These are three steps that are
very, very important here. And this should not be
ignored because I know that it's really good practice or best practice to
train your model. First, give it the
data validated, so run it, see if it's working. And then testing it
by giving it that test data to see if it's
operational. All right.
14. Model Deployment and Maintenance: Now let's talk about deployment and maintaining your model. So it's very, very important for us to understand if the model, if the I want we
tested it and we trained it and we
did all the work if it's going to
be used locally, so in our computers inside the organization or the
T or we need to use it, perhaps cloud provider
like AWS Sure. Or any one of the cloud
providers out there to deploy the model and start working with the model
online. So we have website, let's say that
we're accessing all together and we use that website to
filter out all our e mails. If it's a tool, we can also provide it to
other companies. So we have to think
about these are just decisions and
deploying is very easy. You just need to pick a
tool and just host or take your tool and put it
in the Cloud provider. And you're good to go very, very easy. So
deploying the model simply, you can use Docker in this case, or Azure Machine Learning
in any one of the tools. Monitoring the model is very, very important for us to
always monitor the model, see if it's operational,
see if it's working. What's missing? Are we getting good feedback from the people
that are using the model? Are people happy with what they are doing with the
model? Are they excited? Do they feel that the model
is changing their life, the daily tasks and they're not getting any
spam e mail anymore and maintaining the
model. So anytime that we get new e mails, we can give it to the model. So we can always
be up to date with the spam emails and
non spam email. So anytime that we are getting spam email,
that is tricky. We can easily give it to the AI model and the
AR model will update. You know, upgrade, understand,
oh, you know what this is. There is a new patron
for spam email. I'm going to watch out
and make sure next time to flag it
and help the user. So very important
that deployment and maintenance comes hand
in hand with monitoring. So we deploy the
model, Let's take it, put it online, monitor it, make sure the model is working. We're getting thumbs
up, everybody is happy, and then maintaining.
Anytime that we're getting new data, we can just give it
to the model without any issues easily
and quickly. Okay.
15. AI Spam Email Filter: Now let's just take a look at the diagram that I
created for us to understand how the
entire life cycle of the AI spam filter, or the AI tool that will filter all our sperm works
tip number one, Collecting and preparing
the data we can use. In this case, I just gave an example of technology Python. Python is a very powerful
programming language that is mainly used for AI, data analysis, data processing. It can be also used
for collecting data. Let's say you have
e mails and you want to collect and
put them all together in a small file or in your computer locally
or in the cloud. You can use Python. Python contains a lot of great libraries that
can do the work, that can collect all
the data easily for us, and it can also prepare
the data in Python. We have a lot of libraries
such as Pandas Numpy. I can definitely
talk about those in more advanced courses
where we can collect the data and then clean
it very fast, very easy. Once we collect and
clean the data, the next step is choosing and
implementing an AI model. In this case, we're going to
be using a decision treat, because when making a decision
spam, spam very easy. Thanks to Python, we have a library called SK
Learn, or Psychic Learn, that can easily provide us with the tool for free without paying anything. This
is really great. Python can also do
the work where we can implement the model, or implement the
tool if you will, to make it simply to
make it simpler for us and we can easily use
it without any issues. Once we're done, we can just train and evaluate the model. Once we implement the
model using Python, we can also train and
evaluate the model. Python can also do the test. If you can just take a look at the diagram correct in the data, choosing and
implementing AR model, training and
evaluating the model. All of these tasks are going
to be done using Python. Python is a great tool
because it can do correction, it can do the implementation of the AR model and it can also do the training and
evaluating the model. Thanks. So it's amazing
library in Python. A lot of libraries, a lot of tools if you will, can be implemented by us as AI developers without any
issues deploying the model. This is the last step perhaps, or before last step if you will, where we take the AI model
and we put it in the cloud. So in this case I picked
Microsoft Azure as, as my cloud provider And I'm just going to de take my model. Once it's working, I tested it. It's operational, it's
working without any issues. Take it and put it in the cloud and easily
without any issues. Make sure that I'm using it. Make sure that it's operational. Make sure that it's
working. Of course. Let's not forget that we
need to maintain it and make sure that it's working
100% without any issues. Because we don't maintain it, we might have an issue of
what's missing in our program. Are our users satisfied
with the output? So these are questions
that are very important in this case that we should
keep in mind while using AI. The last step, monitoring
and maintaining. So in this case I gave
you the logo of Get Lab. So Get as you know, is a
tool that is used to control the different changes
in your code and the different changes in your AI or any application that
you are developing. The Colso provide some
tools that are very, very good for monitoring
and maintaining your AI's. Say there are some changes in your code or in your AI tool, you can just applaud them or put them in your Cloud provider
easily without any issues. Maintaining your
tool, making sure that every time that you're
getting a new data you're adding to the tool is very critical and
important in this case. So that was it for our course. Thank you very much for taking the time and
taking the course. I'm so happy to have you on, and I'm so happy for your time. I cannot wait to see you in a more advanced course
where we talk about Python, AI, and machine learning, and how can we use
them in a daily life. Thank you and have a beautiful, beautiful, beautiful
day. See you soon.