Want to get started with Azure AI (Artificial Intelligence?
The free AI-900 learning path at Microsoft Learn is a great way to get started with Azure AI (Artificial Intelligence) and prepare for the exam. The exam is an opportunity for you to demonstrate knowledge of machine learning and AI (Artificial Intelligence) concepts and related Microsoft Azure services. Artificial Intelligence (AI) enables us to build amazing software that can improve health care, enable people to overcome physical disadvantages, empower smart infrastructure, create incredible entertainment experiences, and even save the planet! However, we need to build responsibly to ensure we don’t build AI solutions which are biased towards specific group of people.
In today’s world, we create huge volumes of data as we go about our daily lives. From the text messages, emails, and social media posts we send to the photographs and videos we take on our phones, we generate massive amounts of information. More data is created by millions of sensors in our homes, cars, cities, public transport infrastructure, and factories.
Data scientists can use all of that data to train machine learning models that can make predictions and inferences based on the relationships they find in the data.
I would recommend you go through the Free Microsoft Learn content and the AI-900 free practice test questions available at Microsoft Learn to further strengthen your knowledge. This post is in no way a complete AI-900 study guide like the one available at Microsoft Learn, however it will give you an understanding of the different terms (there are a few to remember), such as regression, classification, clustering, bot service, AI Principles and more!
I have been preparing for the Azure Fundamentals (AI-900) certification recently and thought it would be a good idea to document notes on a blog post which will hopefully help others who are preparing for the exam. My aim is to keep the notes simple and straight to the point whilst giving you the information along with examples to understand the various Artificial Intelligence (AI) terms. I have personally ben through the AI-900 Microsoft Learn content and the official practice test questions.
Let’s get started 🙂
What is AI (Artificial Intelligence)?
AI is software that imitates human behaviors and capabilities. It is like a super smart computer that can think and learn similar to a human being. Imagine it as a helpful robot friend that can do things just like us. AI can learn from the information around it, like humans do when we wish to learn new skills such as when we learn by reading a book or an online article. When we input data into a machine learning model we call this a dataset. The model can then use this information to make decisions.
What is a dataset?
A dataset teaches the machine learning algorithm how to make predictions. A dataset could include, image data, video data, audio date, numeric data and text data. Imagine you’re working on a project to predict housing prices based on various features like square footage, number of bedrooms, and location. You may have a dataset containing historical housing data. Work is carried out on the data set to label it so the algorithm can understand what the outcome needs to be.
What is Machine Learning?
Often known as the foundation of an AI System, this is the way we teach a computer model to recognise things by showing it examples. It can then use the information learned to make predictions. For example, a doctor may use clinical data from past patients to run automated tests that predict whether a new patient is at risk from diabetes based on factors like weight, blood glucose level, and other measurements. Or an owner of an ice cream shop might use an app that combines historical sales and weather records to predict how many ice creams they’re likely to sell on a given day, based on the weather forecast.
There are multiple types of machine learning including the ones shown in the diagram below. I’ll go through and explain each one below,
Supervised Machine Learning
Supervised machine learning is a general term for machine learning algorithms in which the training data includes both feature values and known label values (more on features and labels shortly). The data has been labeled for training. Supervised machine learning is used to train models by determining a relationship between the features and labels in past observations, so that unknown labels can be predicted for features in future cases.
A couple words mentioned in the text above were features and labels. Let’s understand what these are,
Features: imagine a dataset about houses. Relevant features may include, size of house, number of bedrooms and location. Or you plan to use machine learning to predict the probability of humans developing diabetes based on their age and body fat percentage. Age and body fat percentage are features. Another example of features could be in the case of a company who is using machine learning to predict various aspects of its e-scooter hire service dependent on weather. The two attributes which are features could be weather temperature and weekday/weekend.
Labels: data labelling is the process of identifying our data and adding a label to allow a machine learning model to learn. Labels are the values we aim to predict using our model and represent an output, such as, price of the house. In the above example, where I mentioned that age and body fat percentage are features, the label would be the outcome, such as the likelihood of a patient developing diabetes would be the outcome. Also, in the above example where I discussed under features, I used the example of the e-scooter company, labels (output) could be number of hires and distance travelled.
As per the diagram above, regression, classification (binary classification and multiclass classification) fell under supervised learning. Let’s go through these options.
- Regression
Regression models are trained to predict numeric label values based on training data that includes both features and known labels. The label (output) predicted are numerical values. An example of regression is the stock market, aiming to figure out where stock prices are going to be in the future by looking at previous and current trends. Price is a numerical value. Or the number of ice creams sold on a given day, based on the temperature, rainfall, and windspeed. Number of ice creams, again a numerical value. Or the fuel efficiency (in miles-per-gallon) of a car based on its engine size, weight, width, height, and length. Or an energy utility company who wants to develop a mobile app for its customers to monitor their energy use and to display their predicted energy use for the next 12 months. Regression = numerical.
It is worth understanding the two regression types below,
– Multiple linear regression: For example, there is a requirement to identify numerical values that represent the probability of humans developing diabetes based on age and body fat percentage. Multiple linear regression models a relationship between two or more features and a single label, which matches the scenario in this item.
– Linear regression:
Considers one independent variable to predict an outcome. For example, predicting house price based on square footage only. Using a single variable instead of multiple. - Classification
What are classifications? we could think of classifications in which the label represents a categorisation or class. For example, which students will pass or fail based on previous and current results, or values such as true or false, yes or no, and others.
There are two common classification scenarios,
– Binary classification
Binary classification models predict one of two mutually exclusive outcomes. For example, whether a patient is at risk of diabetes based on clinical metrics like weight, age, blood glucose level, and so on, or whether a mailing list customer will respond positively to a marketing offer based on demographic attributes and past purchases, or whether a bank customer will default on a loan based on income, credit history, age, and other factors.
In all of these examples, the model predicts a binary true/false or positive/negative prediction for a single possible class.
– Multiclass classification
Multiclass classification extends binary classification to predict a label that represents one of multiple possible classes. For example, working out if a movie is comedy, horror, adventure or sci-fi based on who stars in the movie, the director and the budget. In this classification we are handling multiple classes of movies and predicting whether they are comedy, horror and so on.
Unsupervised machine learning
Unsupervised machine learning involves training models using data that consists only of feature values without any known labels. Unsupervised machine learning algorithms determine relationships between the features of the observations in the training data. We discussed supervised learning earlier and we know that the model will output a label of whether the movie is horror, adventure, sci-fi and so on. That was supervised learning, hold that thought.
Now imagine you have a objects with no labels. You don’t know what they are. Unsupervised learning is all about discovering hidden patterns and organising things when you don’t have clear labels. It’s like solving a fun puzzle! The model has feature values, for example, size of house, number of bedrooms and locations but there are no labels or output values specified.
With unsupervised machine learning, labels are not produced by humans, the Machine Learning model does its own labelling, whereas with supervised machine learning models, humans create labels to allow the machine learning model to learn.
The most common form of unsupervised machine learning is clustering as shown in the diagram I posted above,
Clustering
A clustering algorithm identifies similarities between observations based on their features, and groups them into discrete clusters. For example, the grouping of similar flowers based on their size, number of leaves, and number of petals. Or imagine having a box of toys, but you don’t know which toys belong together because they have not been labeled. You would look at the toys and look for similarities such as all the red cars in one pile, all the blue balls go in one pile and so on. Each pile is a cluster. The goal of clustering is to find patterns and group similar toys together. Another example, a retailer wants to group together online shoppers that have similar attributes to enable its marketing team to create targeted marketing campaigns for new product launches. Clustering = grouping.
Anomaly Detection
What is anomoly detection? you may have experienced using your credit card abroad and being blocked. This is an example of an anomaly detection, as the process of using the credit card abroad triggers an alert to your bank of a possible suspicious activity. Another example, an AI workload which relies on sensors to proactively detect an upcoming failure of electronic equipment. Anomaly detection can analyse data collected in the past to identify errors or unusual changes in the present and future. To put this simply, it’s detecting things which are out of place.
Deep Learning
Deep learning is an advanced form of machine learning that tries to emulate the way the human brain learns. Just like humans, deep learning models learn from examples. Imagine a human learning to recognise animals. We see lots of pictures of cats, dogs, and elephants. Over time, we start recognising them by their features. Similarly, deep learning models look at tons of data (like images, text, or sounds) and learn patterns. However, Humans learn from a mix of experience, intuition, and reasoning. We understand context, emotions, and cultural nuances. Deep learning models don’t have feelings or intuition. They learn purely from mathematical patterns in data. Instead of one layer of understanding (like a single thought), deep learning uses neural networks with many layers. These layers help the model learn complex patterns. So, while deep learning mimics some aspects of human learning, it’s more like a super smart calculator that crunches numbers.
The aim of Neural Networks is to try and resemble how the brain works, but in this case a neuron represents an algorithm. Data is inputted into a neruron and based on what the output is, the data will be passed to one or many other connected neurons. The AI-900 learning path explains how a neural network learns
Computer Vision (Azure AI Vision)
What is computer vision? It makes decisions based on inputs such as through cameras, images and videos. For example, how many people are there in an image. How many people are wearing the colour blue. Is this an apple or orange. How many people are wearing sunglasses. Describe what is included in an image, for example, you could take a picture on your phone via an app which tells you what is in your surrounding area (a great example is the free SeeingApp from Microsoft, give it a try).
Furthermore, computer vision could detect the presence or movement of people. Azure AI Vision Spatial Analysis is a powerful service that allows you to analyse video streams from cameras and extract valuable insights related to people’s presence and movements. For example, how many people are in a shop right now, how many people entered a shop, are people wearing masks or is social distancing taking place. After people are detected, the system can track the people as they move around over time.
You may be thinking, how does the App know what is in the surrounding area based on a photo? how does it know how to recognise objects? Great question. It is based on common computer vision tasks which include,
– Image classification: this process involves training a machine learning model to classify images, for example you may classify different types of vehicles, a bus, car, cyclist, train.
– Object detection: For example a CCTV system which detects what types of vehicles are on the road in real time, such as marking the object as a bus, car or cyclist.
– Semantic segmentation: Imagine an image containing various car models. Semantic segmentation will recognise that all the cars belong to the same class, in this case a car. It detects individual pixels in the image and can highlight all cars with the colour blue which indicates that these vehicles are cars. Buses could be highlighted as red, indicating this is a bus and so on. The pixels of the image are coloured by the AI model.
– Image analysis: For example, analysing an image and providing an output via voice, “a person with a dog on a street”. A great example of this is the free Microsoft SeeingApp.
– Face detection, analysis, and recognition: a form of object detection which locates human faces in an image.
– Optical character recognition (OCR): this is a technique used to detect and read text in images. For example, road signs, signs on a store front or extract information from scanned documents.
That’s the computer vision tasks covered, however something else to know is Azure AI Custom Vision,
Azure AI Custom Vision
What is Azure AI Custom Vision? Azure AI Custom Vision is an image recognition service that allows you to build and deploy your own image models. The Custom Vision service uses a machine learning algorithm to analyse images. You submit sets of images that have and don’t have the visual characteristics you’re looking for. Then you label the images with your own custom labels (tags) at the time of submission. The algorithm trains to this data and calculates its own accuracy by testing itself on the same images. Imagine you need a special tool to recognise something unique, like whether people are wearing hard hats. Custom Vision lets you create your own tool for this specific job. You collect pictures of people with and without hard hats and teach your tool to recognise them. It’s like having a custom made solution just for you. Whereas “non-custom” vision include ready made tools that can recognise common things, like identifying cats or dogs.
Natural Language Processing
Natural language processing (NLP) is the area of AI that deals with creating software that understands written and spoken language. It can allow you to create software that can analyse and interpret text in documents, email messages and other sources. This workload includes,
1. Language (Azure AI Language)
Understand text. For example, Sentiment Analysis which can detect how happy or sad the writer is based on what language they use when writing. For example, you own a website selling t-shirts. A customer leaves a product review which is detected as a negative review based on the wording used in the review which indicates the customer is frustrated and not happy. The manager could be notified and take action, such as to contact the upset customer.
2. Translator
Used to translate text, for example to translate text from English to Spanish like translator apps we use online.
3. Speech (Azure AI Speech)
There are two capabilities of speech,
– Speech Synthesis: Text to Speech. For example, software reading out text aloud.
– Speech Analysis: Speech to Text. For example captions on a video, like what we see on YouTube videos or when we are in a Microsoft Teams meeting we can switch on captions so whatever the presenter is saying is translated to text for people to read on the screen.
4. Bot service
A chat bot on a website which can answer customer questions visiting a website and seeking help. Yes, that automated web chat most of us may have come across when visiting a third party website seeking help, for example a query on your energy or mobile bill.
Document Intelligence (Azure AI Document Intelligence)
What is document intelligence? For example scanning documents such as receipts, invoices, tax forms and more, then extracting the information.
Knowledge Mining (Azure AI Search)
What is knowledge mining? Extracting information from large amounts of information and creating a searchable knowledge store.
Generative AI (Azure OpenAI service)
Generative AI can create original content, such as creating you a story, poems, images, code, writing a book and more. For example, you could ask it to create you a unique image of a dog riding a bike, wearing a helmet whilst on the moon. Bad example, I know, but I hope you get the point.
Understanding AI Principles
AI can be very powerful and can benefit the world. However, it must be used responsibly. There are challenges and risks which an application developer needs to take into account depending on the type of AI application. For example, an autonomous vehicle capable of sensing its environment and operating without a human. What if the vehicle experiences a system failure and causes a collision. Or a medical diagnostic bot is trained to use sensitive patient data but the data is not stored securely. Or a home automation assistant which provides no audio output to visually impaired users. Or a innocent person is convicted of a crime based on evidence from facial recognition. Or a loan approval model discriminates by gender due to bias in the data with which it was trained. There are many more examples, but you hopefully get the point.
At Microsoft, AI software development is guided by a set of six principles, designed to ensure that AI applications provide amazing solutions to difficult problems without any unintended negative consequences. These include,
- Fairness – AI systems should treat people fairly without being bias. This bias could be based on gender, ethnicity or other factors targeting specific groups of people. For example you create a machine learning model to support a loan approval application. The model should predict whether the loan should be approved or denied without bias. Within Azure Machine Learning, there is a feature for model interpretation. It allows data scientists to assess how individual data features impact the model’s predictions. This capability is crucial for detecting and addressing any bias present in the model. Another example of Microsoft’s implementation of Responsible AI is with the Face service, which retires facial recognition capabilities that can be used to try to infer emotional states and identity attributes. These capabilities, if misused, can subject people to stereotyping, discrimination or unfair denial of services.
- Reliability and Safety – AI systems should perform reliably and safely. Imagine a machine learning model which diagnoses patient symptoms and recommends prescriptions. What if this model was not reliable? patients could be issued the incorrect prescription which could be life threatening. Therefore, it is important that AI based application development goes through strict/rigorous testing to ensure it is reliable and safe before moving to production.
- Privacy and Security – AI systems should be secure and respect privacy. We know that the machine learning models rely on large amounts of data. This data may contain personal details that must be kept private and stored securely.
- Inclusiveness – AI systems should empower everyone and engage people regardless of physical ability, gender, sexual orientation, ethnicity, or other factors. For example, don’t leave out people with a visual impairment. Ensure the application works for all.
- Transparency – AI systems should be understandable. Users need to be informed about the system’s purpose, functionality, and potential limitations.
- Accountability – The people who develop solutions should be accountable for AI systems. Designers and developers of AI driven solutions should operate within a governance framework and organisational guidelines that uphold well defined ethical and legal standards. Accountability defines the framework of governance and organisational principles, which are meant to ensure that AI solutions meet ethical and legal standards that are clearly defined.
Are Machine Learning tools available in Azure or do we need to build the machine learning services from scratch?
No, you don’t need to build machine learning services from scratch. Azure AI services are a portfolio of AI capabilities that unlock automation for workloads in language, vision, intelligent search, content generation, and much more. They are straightforward to implement and don’t require specialist AI knowledge. Organizations are using Azure AI services in innovative ways, such as within robots to provide life-like companionship to older people by expressing happiness, concern, and even laughter. In other use cases, scientists are using AI to protect endangered species by identifying hard-to-find animals in images. This was previously time-consuming and error prone work, which the Azure AI Vision service can complete quickly and with a high degree of accuracy, freeing scientists to do other work. These pre built services can be added into web or mobile applications.
Two types of Azure AI Resources
Azure AI services are cloud-based, and like all Azure services you need to create a resource to use them. There are two types of AI service resources: multi-service or single-service.
- multi-service resource: a resource created in the Azure portal that provides access to multiple Azure AI services with a single key and endpoint
- Single-service resources: a resource created in the Azure portal that provides access to a single Azure AI service, such as Speech, Vision, Language, etc. Each Azure AI service has a unique key and endpoint. These resources might be used when you only require one AI service or want to see cost information separately.
Are there any YouTube videos you would recommend for preparing for the AI-900 certification?
Yes, there are many. I have listed a few below. Take a look to find out which one fits your learning style. Or search for others on YouTube.
Is there a Microsoft Study guide that I can go through?
Yes, at the following link, AI-900 Azure Fundamentals Study Guide
The study guide details what topics will appear in the exam and is kept up to date as new or old topics are added to the exam.
Does the AI-900 certification expire? do I need to renew it?
Fundamental certifications including AI-900 don’t expire so you won’t need to renew the exam once you’re certified.
Is this a good certification to study for if I am new to Azure and want to start from the basics?
The AZ-900 certification is the one I would recommend. AI-900 is AI Fundamentals and AZ-900 is Azure Fundamentals. Check out my post on How do I get started with Microsoft Azure? | Cloud Build
I hope you found this post useful. All the best if you’re taking the AI-900 exam.
See you at the next post. 🙂