Microsoft Azure AI Certified AI-900 - Yatharth Chauhan
Microsoft Azure AI Certified AI-900 - Yatharth Chauhan
Microsoft Azure AI Certified AI-900 - Yatharth Chauhan
AI-900
Fundamentals
Yatharth Chauhan
WELCOME TO MY
WORLD
yatharthchauhan.me
CONNECT WITH ME
yatharthchauhan.me
1 / 26
yatharthchauhan.me
Table of Contents
Learning Paths
Describe Artificial Intelligence workloads and considerations (15-20%)
Describe fundamental principles of machine learning on Azure (30-35%)
Describe features of computer vision workloads on Azure (15-20%)
Describe features of Natural Language Processing (NLP) workloads on Azure (15-20%)
Describe features of conversational AI workloads on Azure (15-20%)
Learning Paths
Resource Topic Step
Get started
with artificial Artificial Intelligence (AI) empowers amazing new solutions and experiences;
Topic
intelligence and Microsoft Azure provides easy to use services to help you get started
on Azure
Explore Natural language processing supports applications that can see, hear, speak
natural with, and understand users. Using text analytics, translation, and language
Topic
language understanding services, Microsoft Azure makes it easy to build applications that
processing support natural language
2 / 26
yatharthchauhan.me
Predicting whether an airplane arrives early, on-time or late. A ML model analyzes patterns in the data:
Departure time, weather conditions, air-traffic volumes and associates historical patterns to predict or forecast
the possible outcome.
Predicting whether a customer would buy certain items based on their purchase history. ML model analyzes
patterns in the previous purchase history to predict the likelihood of a customer buying certain items.
Determining the likely repair costs for an accident involving a vehicle. An ML model finds patterns in the
provided information such as the amount of damage, the location of damage, and the parts damaged. This is
compared with historical data to predict the amount of time required to repair the damage and the cost of
the repair.
Uses historical data to predict or forecast an outcome based on the data input into the model
3 / 26
yatharthchauhan.me
AD is the process of using ML to find unexpected values or events. Analyzes time series data to determine the
boundaries of expected values and detect abnormalities that differ from the expected norm.
Anomalies can be detected by AI as they occur in real-time. The ML model can derive the possible boundaries
of the norm from previously seen data and then determine whether the latest data point in the time series is
an anomaly or not.
Anomaly detection boundaries that are automatically created by AI are not immutable. AI automatically
generates anomaly detection boundaries for the data points seen in the streamed or batched data. However
you can still manually adjust those boundaries to make your model more or less sensitive to the data
anomalies as required.
Detecting abnormal events in a vehicles engine. Anomaly detection detects unusual patterns or events in a
stream of data.
Detects unusual patterns or events, enabling pre-emptive action to be taken before a problem occurs. It
monitors streams of data from devices and systems and identifies unusual events, patterns, changes that
could indicate degradation or future failure. By flagging these issues, action can be taken to resolve the
potential problem before it adversely affects the operation.
Does not predict when a problem will occur or if one will. Just identifies issues that should be investigated. It
does not extract insights from the data, but instead alerts when something out of the ordinary disrupts the
expected pattern.
Detecting predestrians in the real-time video stream of an autonomous vehicle. Returns bounding box
coordinates for pedestrians.
Detecting whether people in on-line posted images are celebrities. An ML model training with domain specific
content, for example, celebrities, can determine if they are among the people detected in the online-posted
images.
Generating automatic descriptions for published images. Analyzes published images and generates human
readable sentences describing the image content. Sentences ae ordered by the confidence score that the
model assigns to each sentence as per the visual features detected.
Computer Vision can be used to analyse static images such as objects, living things or scenery.
Computer Vision can also be used to analyze live video streams, requires processing the individual frames first
but processing can be overlaid in near-real-time.
Detecting the speed limit using roadside signage. Computer vision can takes images or video streams and
extract text from the signs on the roadside.
4 / 26
yatharthchauhan.me
Determining the distance to the vehicle in front can be detected as objects and calculated.
Interpret the contents of the image and classify it, detect objects in it and analyze and describe the image.
Detecting abnormalities in health scans. Computer vision interprets and classifies images. The custom vision
service can be used to train a model with images of scans, some of which have abnormalities and some of
which do not. CV can then classify new images with a score between 0 and 1 according to the probability of
having abnormalities, where 1 indicates the highest probability.
Detecting the language in the provided text document. The ML model evaluates the text input and returns the
language with a score between 0 and 1 to reflect it's confidence.
Extracting key phrases from student essays. Discards non-essential words and returns single terms or phrases
that appear to be the subject or the object of the relevant sentences.
Knowledge Mining: Use the power of AI to explore vast amounts of information to get better insight and
uncover hidden relationship and patterns in your data. KM uses a combination of AI services to extract
meaning and relationships from large amounts of data. This information can be held in structured and
unstructured data sources, documents and databases. KM uncovers hidden insights in your data.
Interpret written text. Determine the language and the sentiment expressed. Extract key phrases, identify key
entities and actions.
Translating commands into actions is performed using NLP that extracts key phrases, intents and actions from
written and spoken text.
Detecting spam in emails. Analyzes text in email to determine if it contains a spam message.
Providing answers to a customer in a chatbot dialog. A chatbot backend processes input for a customer and
sends back answers based on a knowledge base.
Using graphics and menu's to improve the user experience with an ecommerce websites chatbot. The
chatbot's functionality is extended beyond the default text interface with more interactive components such
as graphics, menu's and buttons to improve the user experience.
5 / 26
yatharthchauhan.me
Used to create applications in which AI agents engage with humans in conversations (dialogs). Commonly
through web-chat bots.
Answering FAQs.
For example, suppose you create a machine learning model to support a loan approval application for a bank.
The model should make predictions of whether or not the loan should be approved without incorporating any
bias based on gender, ethnicity, or other factors that might result in an unfair advantage or disadvantage to
specific groups of applicants.
Azure Machine Learning includes the capability to interpret models and quantify the extent to which each
feature of the data influences the model's prediction. This capability helps data scientists and developers
identify and mitigate bias in the model.
For example, consider an AI-based software system for an autonomous vehicle; or a machine learning model
that diagnoses patient symptoms and recommends prescriptions. Unreliability in these kinds of system can
result in substantial risk to human life.
AI-based software application development must be subjected to rigorous testing and deployment
management processes to ensure that they work as expected before release.
The machine learning models on which AI systems are based rely on large volumes of data, which may
contain personal details that must be kept private. Even after the models are trained and the system is in
production, it uses new data to make predictions or take action that may be subject to privacy or security
concerns.
AI should bring benefits to all parts of society, regardless of physical ability, gender, sexual orientation,
ethnicity, or other factors.
6 / 26
yatharthchauhan.me
Users should be made fully aware of the purpose of the system, how it works, and what limitations may be
expected.
Designers and developers of AI-based solution should work within a framework of governance and
organizational principles that ensure the solution meets ethical and legal standards that are clearly defined.
7 / 26
yatharthchauhan.me
Example: Predicting the online sales volume for the next financial quarter by using historical sales
volume data and holiday seasons, pre-orders etc.
Example: predict house prices based on the location, number of rooms etc.
Example: predict if a patient needs to be admitted to hospital based on previous health records and
recent medical test results.
Example: forecasting stock market values based on macro economic changes.
Example: Predict icecream sales based on weather forecast
Example: How much credit to give a customer.
Example: predict the number of likes on a social media post.
In a regression ML scenario you predict a numeric value, typically in a continuous form. Regression makes
predictions in continuous form using historical data to predict or forecast new values.
You can input customer details and history of repayments to create the model and it will calculate the credit
limit.
Supervised Learning - each data point is either labelled or associated with a category. A supervised learning
algorithm aims to predict values or categories for other data points.
8 / 26
yatharthchauhan.me
Classification is used to make predictions in a non-continuous form. Learning from labeled data to classify
new observations.
A model trained on the labeled sets of X-ray images of various patients can analyze new images and classify
in a binary way whether a person does or does not have pneumonia.
A supervised learning method in which the model learns from labelled data to predict the class or category of
the label for new, unlabelled input data.
Supervised Learning - each data point is either labelled or associated with a category. A supervised learning
algorithm aims to predict values or categories for other data points.
Clustering analyzes data to find similarities in data points and groups them together using unlabelled data.
Explore unexpected correlations.
K-means
Unsupervised Learning. The Data is not labelled. An Unsupervised learning algorithm aims to determine the
structure of the data itself.
A learning model learns the relationships between features and the label. You can use model to predict the
label based on it's features.
9 / 26
yatharthchauhan.me
Features are the descriptive attributes used to train classification models to predict a class or category of the
outcome.
Labels are the outcomes that the model needs to predict or forecast.
A hyperparameter is used to tune the ML model. For example, the number of runs or the sampling method.
Columns in a dataset are not hyperparameters.
5. Describe how training and validation datasets are used in machine learning
The Validation and the Training Datasets are used to Build the ML Model.
The Training Dataset is not held back, it is actively used to train the model. It is the largest sample of data
used when creating an ML model.
The Validation Dataset is a sample of data held back from the training of the ML model. It helps to get an
unbiased evaluation of the model while tuning its hyperparameters. It is used after the Training but before
final testing. It is used to verify that the model can correctly predict or classify using data it has not seen
before. It is used to tune the model.
The Testing Dataset is used in the testing of the final model fit on the training dataset. Provides the final
unbiased evaluation of the model. It is an independant sample of data and is used once a model has been
completely trained with the Training and Validation datasets.
Azure Open Datasets are curated datasets made available on azure that you can import into your ML model.
6. Describe how machine learning algorithms are used for model training
An ML algorithm finds patterns in the training data that map the input data features to the label that you
want to predict. The algorithm outputs an ML model that captures these patterns.
For a Classification Algorithm that iterates over the whole dataset during the training process, you can control
the number of times by adjusting the EPOCH setting. This setting indicates how many Epochs (iterations
through the entire dataset) the ML model should be trained on.
The Batch Size Setting indicates the number of training examples used in one iteration. The smaller the batch
size the higher the number of parameter updates were epoch.
The Learning Rate setting is a tuning setting for an optimization algorithm that controls how much you need
to change the model in response to the estimated error each time the models weights are updated.
The Random Seed Setting is an integer value that helps to ensure reproducibility of the experiment across
multiple runs in the same pipeline.
10 / 26
yatharthchauhan.me
7. Select and interpret model evaluation metrics for classification and regression
Classification Metrics: AUC value of 0.4 means that the model is performing worse than a random guess. AUC
values range between 0 and 1. The higher the value the better the performance of the classification model. A
value of 0.5 indicates prediction is close to a random guess.
Classification Metrics: Precision is the proportion of true results over all positive results.
Classification Metrics: Recall is the fraction of all correct results returned by the model
Metrics used to evaluate regression methods are generally focused on estimating the amount of error, where
a small difference between observed and predicted values is an indicator of a better fit model
Regression Metrics: MAE - Mean absolute error. How close prediction is to actual outcome. The lower the
score, the better.
You split data as part of the data transformation process, where certain part of the data is allocated to train
ML model and another part to test it.
You can divide a dataset using regular expression. One set will contain rows with values that match the regular
expression and another set will contain all the remaining rows.
You can split a dataset for training/testing by rows. It can be done randomly or using some criteria such as
regular expressions.
Sampling is a technique used in machine learning to reduce the size of the dataset, but still maintaining the
same ratio of values.
Splitting is a method that is useful for dividing the dataset into training and testing subsets to feed the
model during it's training process and then test it's fit.
Normalization is a technique used in the data preparation. You transform the values of numeric columns to
use a common scale, for example between 0 and 1 without impacting the differences in the value anges or
losing information itself.
Binning is a method used to segment data into groups of the same size. Binning is used when the
distribution of values in the data is skewed and transforms continuous numeric features into discrete features
(categories).
11 / 26
yatharthchauhan.me
Feature Hashing is used to transform text data into a set of features represented as integers. Numerical data
can be used then to train text analysis models.
Data Ingestion is the process in which unstructured data is extracted from one or multiple sources and then
prepared for training ML models. Raw data may come in different formats so extracting and converting it into
supported format is a critical prep task in the ML models training process.
Example: House Location and Number of bedrooms are features. Label is price.
Classification and Regression both involve using features and labeled data (supervised learning). The data acts
as a teacher and trains the model.
Feature selection is the process of selecting a subset of relevant features(variables or predictors) to use in
building an ML model.
Feature engineering is the process of creating new features from raw data to increase the predictive power of
the ML model. Engineered Features capture additional information that is not available in the original feature
set. Examples of Feature Engineering are aggregating data, calculating a moving average and calculating the
difference over time. Features are selected and created before a model is trained and do not assist in the
measurement of a models accuracy.
Feature Selection is the process of selecting a subset of relevant features to use when building and training
the model. Feature selection restricts the data to the most valuable inputs, reducing noise and improving
training performance.
To measure the accuracy of the predictions and assess model fit you should evaluate the model. Once the
model is trained and scored, you can evaluate the scores to measure the acuracy (performance) of a trained
model.
Evaluation is the process of measuring accuracy (performance) of a trained model. A set of metrics are used to
measure how acurate the predictions of the model are. Evaluation is part of training your model. You normally
remove the evaluate model module from the inference pipeline.
The metrics used in the evaluation process vary depending on the ML type. For example, you can use
Precision and Recall with Classification models, RMSE with Regression and ADTCC with Clustering models.
Data Parallelism and Model parallelism are the two main types of distributed training. With Data Parallelism
you divide data into partitions, where the number of partitions is equal to the number of compute nodes,
which are used to train a machine learning model. The model is copied into each compute node to operate
12 / 26
yatharthchauhan.me
on an allocated subset of data. With Model Parallelism the model is segmented into different parts to run
concurrently on different compute nodes, each operating on the same data.
Compute Clusters are used to train your model. You need to create an Inference Cluster to deploy your model.
After Training a Model, but Prior to Deploying it as a Web Service you should Create an Inference Pipeline
from the Training Pipeline. This pipeline performs the same steps for the new data input, not the sample data
used in training. The new pipeline is an inference pipeline that will be used for predictions. You will publish the
inference pipeline as a web service.
If the model has low training error and high accuracy but after you deploy it you see a high error rate when
predicting new values you should cross-validate the model. Low Training Error with high Testing Error is
known as Overfitting. Overfitting means that the model does not generalise well from training data to unseen
data, especially for that data that is different from the training data. Common causes are bias in the training
data or too many features, meaning that the model cannot distinguish between the signal and the noise.
Cross-Validation - a dataset can be repeatedly split into a training dataset and a validation dataset. Each split
is used to train and test the model. Cross-validation evaluates both the dataset and the model, and it provides
an idea of how representative the dataset is and how sensitive the model is to variations in input data.
13 / 26
yatharthchauhan.me
Score the Model to measure the accuracy of a trained machine learning model. After a model has ben trained,
the model should be evaluate using a different set of data. Scoring applies new data to the trained model to
generate predictions that can be evaluated using metrics that measure how accurate the predictions of the
model are.
The Add-Rows module combines two datasets together by appending the second dataset to the first. You
would use this module in the Training Pipeline.
You can deploy a ML model as a web service to Azure Container Instances (ACI) and Azure Kubernetes Service
(AKS). Both are supported as the compute targets for the containerized model deployments. ACI offers the
fastest and simplest way to run isolated containers, while AKS provides full container orchestration, including
autoscaling, coordinated application upgrases and service discovery across multiple containers.
A compute instance is a configured development environment for ML. A Compute Instance is used as a
compute target for authoring and training models for development and testing purposes.
ACI - Azure Container Instances are used to run a prediction model as a web service in testing and debugging
scenarios.
AKS cluster is used to run highly scaleable real-time inferences as a web service.
A compute cluster is used to train models with Azure ML Designer and for running batch interference on large
amounts of data.
Automated machine learning is the process in which the best machine learning algorithm to use for your
specific data is selected for you.
In order to ensure automated ML follows the Transparency Principle of Responsible AI you should configure
the Enable Explain Best Model Option. The explanation allows you to understand why the model was selected
and how the model works. It enables you to meet regulatory requirements and provides transparency to
users.
Tabular and File Datasets are the data source types supoorted in Azure AutoML. CSV, TSV, Parquet, JSON or
SQL.
14 / 26
yatharthchauhan.me
You cannot connect datasets directly to each other. Like data sources, datasets have only output ports and
thus can only connect t modules not other datasets. However, modules can be used to combine data from
various datasets.
The Normalise data module adjusts the values in the numeric columns so that all numeric columns are on a
similar scale, between 0 and 1. A dataset that has features in different scales can bias the model towards that
feature. To mitigate bias in the model you transform the numeric features to use the same scale.
The Clean Missing Data module removes, replaces or infers missing values in the dataset. It can also remove
empty rows. Missing data can limit the accuracy and effectiveness of predictions. Clean missing data does not
adjust the scale of the data.
The Clip Values module replaces data values that are above or below a specified threshold. Clip Values is
usually used to remove anomalies or outliers in the data. Clip Values does not adjust the scale of the data.
Select columns in the dataset removes columns and creates a smaller dataset.
You can connect modules directly to each other. Modules have both input and output ports and can connect
to either datasets or other modules.
Pipeline endpoint cannot be used to send and receive data in real time. Pipelines in Azure ML designer
published to a pipeline endpoint can be used to train models, process new data etc. Data cannot be sent or
received from a pipeline in real time, but is actioned asychronously. For real time interaction, such as to
receive the models prediction results, a pipeline should be deployed as a real-time endpoint.
A real-time inference pipeline must have at least one Web Service Input Module and one Web Service Output
Module. The Web Service Input Module is normally the first step in the pipeline and replaces the dataset in
the training pipeline. The Web Service Output module is normally the final step in the pipeline.
15 / 26
yatharthchauhan.me
The Azure ML Studio does not support the use of C# or .Net. You can use Visual Studio or VSCode to create a
model in C# using the ML.NET SDK.
16 / 26
yatharthchauhan.me
Example: Assessing the damage to a vehicle from a photograph. You train the model by uploading images of
vehicles with differing levels of damage, and you label them with the class labels that you want to identify.
The model will then be able to place any new image in one of the categories.
Example: Quality control on a production line. Product labels and bottle caps can be verified to be correctly
attached by using image classification against a set of trained images of correctly labelled and capped bottles.
Example: Detecting colour scheme in a image. Colours are classified in an image as: the dominant foreground
colour, the dominant background colour, and the accent colour.
Image Classification is a ML model that predicts the category(class) that the contents of an image belong to. A
set of images is used to train the model. The model can then be used to categorize a new image.
Image classification is a process of applying class or category labels to images according to their visual
characteristics.
Example: Evaluating compliance with building safety regulations Example: Find people wearing masks in a
room. Example: Returning bounding box coordinates for all identified people on a picture. Example: Tracking
seasonal migration of animals from drone camera images.
You should use Object Detection for returning bounding box coordinates for all identified animals on a photo.
17 / 26
yatharthchauhan.me
OD can process the image to identify various animals such as cats and dogs and return their coordinates.
Identifies and tags individual visual features (objects) in a model. Object detection can recognise many
different types of objects. Azure computer vision is trained in more than 80 categories.
Object detection will also return the coordinates for a box surrounding a tagged visual feature (object). Object
detection is similar to image classification, but object detection also returns the location of a tagged object.
Object detection may be able to identify the make and model but would not be able to assess damage.
Semantic segmentation is used when an AI-based system needs to understand the context in which it
operates.
Semantic segmentation does pixel level classification of image content. As a part of the image processing,
pixels which share specific characteristics, such as parts of tissue or bones on Xray images are assigned with
the same labels to define the boundaries of the relevant body parts.
Example: Processing and validating invoices Example: Handwritten text from a students essay Example:
Extracting handwritten text from scanned copies of cheques.
Optical Character Recognition retrieves printed text from scanned documents. OCR is a process of extracting
printed or handwritten text from the input images or PDF documents.
The OCR can only extract simple text strings. Use the form recogniser to visualise data in a table like format.
5. Identify features of facial detection, facial recognition, and facial analysis solutions
Example: Identifying people in an image. Example: Customer engagement in retail Example: Validating identity
for access to business premises Example: confirm a driver is looking at the road. Example: Identify human
faces on a security cameras video stream.
Facial detection can identify human faces on an image, generate a rectangle for each detected face and
provide additional details such as age and gender, if they are wearing glasses, emotion.
Recognition of famous people is a feature of the domain-specific content where thousands of images of
celebrities have been added to the computer vision model.
The computer vision service can moderate adult content. There is a separate Content Moderator service that
provides additional functionality and review processes.
Can detect human faces and predict age and gender. Face Service can be used for a more detailed analysis:
identify head pose, estimate gender, age and emotion, detect presence of facial hair or glasses and evaluate if
two faces belong to the same person.
Azure cognitive service with a rich set of image processing functionalities to detect objects, brands or faces,
describe image content, generate thumbnails etc.
Supports 2 Project Types: Classification and Object Detection. You can specify labels to be applied to the
image as tags and return them as bounded boxes.
Let's you build and deploy image classifier trained on your custom set of images and labels such as butterflies.
Can detect the angle a head is posed at. Detect head gestures in real time.
The Verify Option takes a face and determines if it belongs to the same person as another face (twins). You
need to detect face(s) in an image using the Detect API. The Verify option can then compare the two faces.
The Find Similar operation takes a face you have detected and extracts faces that look alike from a list of faces
that you provide. Find Similar returns a subset of the faces in that list.
The Group operation creates several smaller groups from a list of faces based on the similarities of the faces.
The Identify operation takes one or more faces and matches them to people. It returns a list of possible
matches with a confidence score between 0 and 1.
Face Service can be used for a more detailed analysis: identify head pose, estimate gender, age and emotion,
detect presence of facial hair or glasses and evaluate if two faces belong to the same person.
Example: Automate data extraction from scanned copies of sales receipts minimizing development efforts.
Example: prebuilt business card model can extract info from business cards in English.
Prebuilt models are english only at this time. Custom model - spanish, chinese, dutch, french, german, italian
and portuguese.
The Form Recognizer API extracts data from a document and provides a GUI to visulaize the data in a tablelike
format.
The Form Recognizer extracts text, key/value pairs, and table data from documents.
19 / 26
yatharthchauhan.me
Example: Identifies the main points in a set of blog posts Example: Creating tags of popular mentions in
reviews on a website
Key phrase extraction performs better on larger amounts of text. The more text you provide, the better it will
do. Give it an essay.
Evaluates a piece of text and identifies the key talking points contained in the text.
Example: Dates and times of day in a document Example: Passport number Example: Extracting brand
information from a document
Named entity recognition identifies entities in a provided test and categorizes them into predefined classes or
types such as people, products, events etc.
Detects the use of people, places, organizations and other known items from a piece of text.
Example: Analyze social media for a brand Example: Determine the emotion in a text statement Example:
Mining customer opinions.
Sentiment Analysis performs better on smaller amounts of text. Less words means less distractors for the
sentiment analysis model, and for that reason, it produces a higher-quality result with smaller amounts of text.
20 / 26
yatharthchauhan.me
Sentiment Analysis returns sentiment labels and scores for the entire document.
Sentiment Analysis returns sentiment labels and scores for each sentence within a document.
Sentiment Analysis evaluates a provided text for detecting positive or negative sentiments. It then returns
sentiment labels and confidence scores, which range from 0 to 1, at the sentence and document levels. While
it can detect sentiment in blog posts it cannot identify the main points in them.
Sentiment analysis explores customer perception of products or services. Sentiment Analysis functionality
from within the set of Text Analytics services can analyze raw text for clues about positive or negative
sentiment.
Example: Discover the meaning in a text statement Example: Convert a command into smart actions.
Language modeling can be performed in many languages but only one language at a time.
Language modelling interprets the intent of a text command and turns the command into an intent which can
be converted into a smart action for a device.
Example: Real-time transcription of podcast dialogs into text. Example: Convert audio to text Example:
Detecting and interpreting spoken input is an example of speech recognition Example: Generating spoken
output is an example of speech synthesis Example: Creating a transcript of a phone call. The audio in the call
recording is analyzed to find patterns that are mapped into words. Speech recognition interprets audio and
turns it into text data.
SSML is based on XML as per the WWWC standard. SSML lets you improve the quality of speech synthesis by
fine-tuning the pitch, pronounciation, speaking rates and other parameters of the text-to-speech output.
Speech synthesis can generate human-like synthesized speech based on input text. Speech synthesis is
available in several languages and can be customised to adjust pitch, add pauses, improve pronounciation
etc. by using speech synthesis markup language (SSML). Speech synthesis assigns phonetic sounds to each
word
Speech recognition recognises and transcribes human speech. It is the ability to detect and interpret spoken
input and turn it into data so it can be processed as text. Speech is analyzed to find patterns that are mapped
to words. An acoustic model is used to convert the audio stream into phonemes, which a representations of
specific sounds and a language model maps these phonemes to words using statistical algorithms to predict
the probable sequence of words.
21 / 26
yatharthchauhan.me
Example: Enhance your chat applications functionality to enable English to Korean translation in near realtime.
Example: Enabling multi-lingual user experience on your coporate website.
Translation is the conversion of either text or audio speech from one language to another.
Text translation translates the text documents from one language to another.
Example: An AI solution that can identify and disambiguate entities in your input texts using Wikipedia as it's
knowledge base. Example: Finding out whether customers like your products from their online posts. Example:
Determine whether the occurence of the word Mustang refers to a feral horse or the model of a car
One of it's features is entity linking, which can identify and disambiguate identities of entries found in a
provided text. Entity linking uses wikipedia as it's knowledge base and can determine from the content
whether for example Mars refers to the planet or the company brand.
Some operations from the Text Analytics API include a confidence score between 0 and 1 but not all.
Sentiment analysis, language detection and entity detection do. Key phrases does not, it simply returns a list
of phrases extracted from the text.
.Net, C#, Java, Python, Javascript, Ruby and Go and PowerApp Canvas Apps
Example: Enhance a chatbot's functionality to predict the overall meaning from a users conversational text.
Example: The temperature entity extracts the temperature number and temperature scale, such a C or F.
There are two resources in a LUIS app: the authoring resource to be used to build, manage, train, test and
publish your LUIS model and a prediction resource to query the model. To use a LUIS model to find the intent
of a text statement, you need the ID of the LUIS app and the endpoing and key for the Prediction resource
but not the authoring resource.
Utterances are user inputs that LUIS needs to interpret. To train LUIS you add example utterances to each
intent you have added to your model.
Intents are the required outcome from an utterance and are linked to actions. Entities are data in an utterance.
Entities are the information needed to perform the action identified in the intent.
Features provide LUIS with hints, not hard rules, for LUIS to use when finding intents and entities.
22 / 26
yatharthchauhan.me
Prebuilt Domains contain intents, uterances and entities. The HomeAutomation Domain contains the common
utterances for controlling smart devices such as lights and appliances, with intents such as TurnOn and
TurnOff, and entities such as light.
PreBuilt intents contain intents and utterances, but not entities. You can add the intents from the prebuilt
domains without adding the entire domain model. The ToDo.Confirm intent contains utterances that confirm
that a task should be performed.
Example: Verifying and identifying speakers by their unique voice characteristics. Example: Create a custom
and unique voice font for your mobile app. Example: Translate simultaneously from one language to multiple
others for a conference presentation
Speech service requires audio training data for the machine learning model to learn about the unique
characteristics of each speaker. Then it checks with the new sample if it is the same person or identifies
whether a new voice sample matches a group of enrolled speaker profiles.
Speech service can be utilized to create a custom and unique voice font for your mobile app. It offers the
option of training private and custom-tuned models, so that you can produce recognizable, unique voice for
your text to speech mobile app.
You do not need to build a custom speech model. If your application uses generic language and works in an
environment with little or no background noise, you can utlize a baseline model pretrained on
Microsoftowned data that is already deployed in the cloud. A custom speech model is a better fit when you
need to adapt the speech service to specific noise or language.
It can transcribe audio streams and even local files in real-time. It can transcribe audio files asynchronously.
Translation is the conversion of either test or audio speech from one language to another
The Translator service uses NMT - Neural Machine Translation, which uses neural networks and deep learning
to translate whole sentences.
Language detection can evaluate text input to determine which language is used. It also returns a score that
reflects the model's confidence in it's language prediction results.
23 / 26
yatharthchauhan.me
Identify Azure services for conversational AI identify capabilities of the QnA Maker service identify
capabilities of the Bot Framework
Example webchat bot embedded in a travel site to interact with online customer and help with real-time
booking of their trips. Example: webchat bots are conversational AI agents that can use natural language
processing to understand questions and find the most appropriate answer from a knowledge base. Example:
Providing first-line automated customer service to customers across multiple channels. Example: Customer
online ordering Example: Human Resources related questions from an employee Example: an interactive
component on a banking site that understands the clients requirements and provides general answers.
A chatbot is a conversational AI solution that can utilize cognitive services and knowledge bases to conduct a
real-time conversation with humans using text, speech and other available communications channels.
Webchat bot is a specific type of chatbot that communicates via a web channel and is typically integrated with
web-enabled applications.
Web chat responds to customers using the web channel in a web browser
Example: A customer calling a support line number gets an AI-generated voice prompt with options to choose
from. Example: Providing guided customer support over Skype with conversational AI Example: an interactive
response system that transfers calls to required employee numbers
This type of conversational AI can reduce the workload on human operators by providing generic instructions
to customers, automatically transferring calls to the relevant teams, or managing the waiting queue, all of
which help support business operations even during non-working hours and holidays.
24 / 26
yatharthchauhan.me
Example: Personal Digital Assistants respond to customers using Cortana and 3rd party services. Example: An
AI solution on your smartphone that can understand your voice command and send text messages while you
drive a car. Example: A conversational AI solition that keeps users informed and productive, helping then get
things done across devices and platforms. Example: an intelligent application that checks your calendar to
automatically accept e-meeting invitations.
A personal digital assistant is a conversational AI solution that provides manegement, retrieval and update of
a users personal or business information to keep them informed and productive. It can run across devices and
platforms with access to electronic calendars, e-mail, contact lists and other applications to enable
personalised assistance with routine tasks, for example, booking a new meeting with a client.
By default a PDA will respond in the same way it was queried i.e. it will respond to text with text and speech
with speech. You can configure it to always respond with speech.
LUIS determines a users intentions. QnA Maker uses a KB with QnA pairs to answer users questions.
A skill is a bot.
Web Chat is automatically configured when a bot is created with the Framework Bot Service.
Composer can publish bots to Azure Web App and Azure Functions.
You can natively populate a Q&A Maker from a PDF or word document or by manually adding question and
answer pairs.
It cannot be a sharepoint list. Files not webpages. If the URL ends with .ASPX it will not import into QnA
maker.
App Service and Azure Cognitive Search are the Azure Resources created when a new QnA Maker service is
created. It does not create the web app bot, you can create that later if you intend to surface it through the
web channel.
25 / 26
yatharthchauhan.me
Use QnA Maker for authoring and query prediction. It provides access to the authoring and publishing APIs of
the QnA Maker service. It also uses NLP capabilities to learn about the specifics of questions in the KB and
predict at runtime witch QnA pair matches as the best answer.
You should use Application Insights to query prediction telemetry. It can collect the chatbots logs and
telemetry. It can diagnose potential issues and process telemetry data with KQL.
Cognitive Search for data storage and search. It stores the QnA pairs and maintains indexes for all published
KBs.
The Bot Framework SDK is required to develop bots using code. There are SDKs for C#, JS, TS and Python. The
Bot Framework SDK allows developers to send and receive messages with users on the configured channels.
The Azure Bot Framework Emulator is a desktop application that allows developers to test and debug bots on
their local computer.
The Bot service framework CLI tools manage bots and related services and are used in the DevOps pipelines
when deploying bots in enterprises.
The Bot Framework Composer is a tool to build bots without Code. The Bot Framework Composer uses a
visual user interface to create diaslogs and bot logic.
The Azure Bot Framework separates the logic of the bot from the communication with different apps and
platforms. When you create a bot, the bot is available for webchat. You can add additional channels to make
the bot available for other platforms like facebook, email, Teams, Slack etc.
The Azure Bot can both consume other bots and be consumed itself by another bot. A skill is a a bot that
performs tasks for another bot. You add a skill when you want to reuse or extend a bot.
You can add LUIS to your bot when you create it or later. You use the Dispatch tool to route messages from
the bot to LUIS.
You can integrate QnA Maker knowledge bases. You use the Dispatch tool to route messages from the bot to
QnA Maker. Your bot can choose which has the best response for the user.
You can integrate bots created using Power Virtual Agents. You can use the Dispatch tool to configure your
bot to work with a Power Virtual Agent Bot.
If you liked this repo, give it a and head over to: Github Repository: AZ-900: Azure Fundamentals
26 / 26