0% found this document useful (0 votes)
370 views31 pages

Ai Notes

AI involves creating software that imitates human behaviors and capabilities. Key AI workloads include machine learning, anomaly detection, computer vision, natural language processing, and knowledge mining. Machine learning is often the foundation and involves training models using data to make predictions. Anomaly detection identifies unusual activity. Computer vision interprets visual inputs. Natural language processing enables language understanding. Knowledge mining extracts information from data to create searchable knowledge stores.

Uploaded by

gfgc magadi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
370 views31 pages

Ai Notes

AI involves creating software that imitates human behaviors and capabilities. Key AI workloads include machine learning, anomaly detection, computer vision, natural language processing, and knowledge mining. Machine learning is often the foundation and involves training models using data to make predictions. Anomaly detection identifies unusual activity. Computer vision interprets visual inputs. Natural language processing enables language understanding. Knowledge mining extracts information from data to create searchable knowledge stores.

Uploaded by

gfgc magadi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 31

What is AI?

https://learn.microsoft.com/en-us/training/modules/
get-started-with-power-bi/3-building-blocks-of-
power-bi
Simply put, AI is the creation of software that imitates human behaviors and capabilities.
Key workloads include:

 Machine learning - This is often the foundation for an AI system, and is the way
we "teach" a computer model to make predictions and draw conclusions from
data.
 Anomaly detection - The capability to automatically detect errors or unusual
activity in a system.
 Computer vision - The capability of software to interpret the world visually
through cameras, video, and images.
 Natural language processing - The capability for a computer to interpret written
or spoken language, and respond in kind.
 Knowledge mining - The capability to extract information from large volumes of
often unstructured data to create a searchable knowledge store.

Understand machine learning


Machine Learning is the foundation for most AI solutions.

How machine learning works


So how do machines learn?

The answer is, from data. In today's world, we create huge volumes of data as we go
about our everyday 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 still 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.

1. A team of botanists and scientists collect data on wildflower samples.


2. The team labels the samples with the correct species.
3. The labeled data is processed using an algorithm that finds relationships between
the features of the samples and the labeled species.
4. The results of the algorithm are encapsulated in a model.
5. When new samples are found by volunteers, the model can identify the correct
species label.

Machine learning in Microsoft Azure


Microsoft Azure provides the Azure Machine Learning service - a cloud-based platform
for creating, managing, and publishing machine learning models. Azure Machine
Learning provides the following features and capabilities:

Feature Capability
Automated This feature enables non-experts to quickly create an effective machine
machine learning learning model from data.

Azure Machine A graphical interface enabling no-code development of machine learning


Learning designer solutions.

Data and compute Cloud-based data storage and compute resources that professional data
management scientists can use to run data experiment code at scale.

Pipelines Data scientists, software engineers, and IT operations professionals can


define pipelines to orchestrate model training, deployment, and management
tasks.
Understand anomaly detection

magine you're creating a software system to monitor credit card transactions and detect
unusual usage patterns that might indicate fraud. Or an application that tracks activity in
an automated production line and identifies failures. Or a racing car telemetry system
that uses sensors to proactively warn engineers about potential mechanical failures
before they happen.

These kinds of scenario can be addressed by using anomaly detection - a machine


learning based technique that analyzes data over time and identifies unusual changes.

Let's explore how anomaly detection might help in the racing car scenario.

1. Sensors in the car collect telemetry, such as engine revolutions, brake temperature, and so
on.
2. An anomaly detection model is trained to understand expected fluctuations in the
telemetry measurements over time.
3. If a measurement occurs outside of the normal expected range, the model reports an
anomaly that can be used to alert the race engineer to call the driver in for a pit stop to fix
the issue before it forces retirement from the race.

Anomaly detection in Microsoft Azure


In Microsoft Azure, the Anomaly Detector service provides an application
programming interface (API) that developers can use to create anomaly detection
solutions.

Computer Vision models and capabilities


Most computer vision solutions are based on machine learning models that can be
applied to visual input from cameras, videos, or images. The following table describes
common computer vision tasks.
Task Description
Image
classification

Image classification involves training a machine learning model to classify images


based on their contents. For example, in a traffic monitoring solution you might
use an image classification model to classify images based on the type of vehicle
they contain, such as taxis, buses, cyclists, and so on.
Object
detection

Object detection machine learning models are trained to classify individual objects
within an image, and identify their location with a bounding box. For example, a
traffic monitoring solution might use object detection to identify the location of
different classes of vehicle.
Task Description
Semantic
segmentation

Semantic segmentation is an advanced machine learning technique in which


individual pixels in the image are classified according to the object to which they
belong. For example, a traffic monitoring solution might overlay traffic images
with "mask" layers to highlight different vehicles using specific colors.
Image
analysis

You can create solutions that combine machine learning models with advanced
image analysis techniques to extract information from images, including "tags"
that could help catalog the image or even descriptive captions that summarize the
scene shown in the image.
Task Description
Face
detection,
analysis, and
recognition

Face detection is a specialized form of object detection that locates human faces in
an image. This can be combined with classification and facial geometry analysis
techniques to recognize individuals based on their facial features.
Optical
character
recognition
(OCR)

Optical character recognition is a technique used to detect and read text in images.
You can use OCR to read text in photographs (for example, road signs or store
fronts) or to extract information from scanned documents such as letters, invoices,
or forms.

Computer vision services in Microsoft Azure


Microsoft Azure provides the following cognitive services to help you create computer
vision solutions:
Service Capabilities
Computer You can use this service to analyze images and video, and extract descriptions,
Vision tags, objects, and text.
Custom Use this service to train custom image classification and object detection models
Vision using your own images.
Face The Face service enables you to build face detection and facial recognition
solutions.
Form Use this service to extract information from scanned forms and invoices
Recognizer

Understand natural language processing

Natural language processing (NLP) is the area of AI that deals with creating software
that understands written and spoken language.

NLP enables you to create software that can:

 Analyze and interpret text in documents, email messages, and other sources.
 Interpret spoken language, and synthesize speech responses.
 Automatically translate spoken or written phrases between languages.
 Interpret commands and determine appropriate actions.

Natural language processing in Microsoft Azure


In Microsoft Azure, you can use the following cognitive services to build natural
language processing solutions:

Service Capabilities
Language Use this service to access features for understanding and analyzing text, training
language models that can understand spoken or text-based commands, and building
intelligent applications.
Translator Use this service to translate text between more than 60 languages.
Speech Use this service to recognize and synthesize speech, and to translate spoken
languages.
Azure Bot This service provides a platform for conversational AI, the capability of a software
"agent" to participate in a conversation. Developers can use the Bot Framework to
create a bot and manage it with Azure Bot Service - integrating back-end services
like Language, and connecting to channels for web chat, email, Microsoft Teams,
and others.
Understand knowledge mining

Knowledge mining is the term used to describe solutions that involve extracting
information from large volumes of often unstructured data to create a searchable
knowledge store.

Knowledge mining in Microsoft Azure


One of these knowledge mining solutions is Azure Cognitive Search, a private,
enterprise, search solution that has tools for building indexes. The indexes can then be
used for internal only use, or to enable searchable content on public facing internet
assets.

Azure Cognitive Search can utilize the built-in AI capabilities of Azure Cognitive Services
such as image processing, content extraction, and natural language processing to
perform knowledge mining of documents. The product's AI capabilities makes it
possible to index previously unsearchable documents and to extract and surface insights
from large amounts of data quickly.

Challenges and risks with AI

Artificial Intelligence is a powerful tool that can be used to greatly benefit the world.
However, like any tool, it must be used responsibly.

The following table shows some of the potential challenges and risks facing an AI
application developer.

Challenge or Risk Example


Bias can affect results A loan-approval model discriminates by gender due to bias in the data
with which it was trained
Errors may cause harm An autonomous vehicle experiences a system failure and causes a
collision
Data could be exposed A medical diagnostic bot is trained using sensitive patient data, which
is stored insecurely
Solutions may not A home automation assistant provides no audio output for visually
work for everyone impaired users
Users must trust a An AI-based financial tool makes investment recommendations - what
complex system are they based on?
Challenge or Risk Example
Who's liable for AI- An innocent person is convicted of a crime based on evidence from
driven decisions? facial recognition – who's responsible?

Understand Responsible AI
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.

Fairness
AI systems should treat all people fairly. For example, suppose you create a machine
learning model to support a loan approval application for a bank. The model should
predict whether the loan should be approved or denied without bias. This bias could be
based on gender, ethnicity, or other factors that 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.

Another example is Microsoft's implementation of Responsible AI 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.

For more details about considerations for fairness, watch the following video.

Reliability and safety


AI systems should perform reliably and safely. 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 systems 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.

For more information about considerations for reliability and safety, watch the following
video.

Privacy and security


AI systems should be secure and respect privacy. 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, privacy and security need to be considered. As the system uses new data to
make predictions or take action, both the data and decisions made from the data may
be subject to privacy or security concerns.

For more details about considerations for privacy and security, watch the following
video.

Inclusiveness
AI systems should empower everyone and engage people. AI should bring benefits to all
parts of society, regardless of physical ability, gender, sexual orientation, ethnicity, or
other factors.

For more details about considerations for inclusiveness, watch the following video.

Transparency
AI systems should be understandable. Users should be made fully aware of the purpose
of the system, how it works, and what limitations may be expected.

For more details about considerations for transparency, watch the following video.

Accountability
People should be accountable for AI systems. Designers and developers of AI-based
solutions should work within a framework of governance and organizational principles
that ensure the solution meets ethical and legal standards that are clearly defined.

For more details about considerations for accountability, watch the following video.

The principles of responsible AI can help you understand some of the challenges facing
developers as they try to create ethical AI solutions.

Introduction to machine learning

Machine Learning is the foundation for most artificial intelligence solutions. Creating an
intelligent solution often begins with the use of machine learning to train predictive
models using historic data that you have collected.

Azure Machine Learning is a cloud service that you can use to train and manage machine
learning models.

In this module, you'll learn to:

 Identify the machine learning process.


 Understand Azure Machine Learning capabilities.
 Use automated machine learning in Azure Machine Learning studio to train and
deploy a predictive model.

What is machine learning?


Machine learning is a technique that uses mathematics and statistics to create a model that can
predict unknown values.

Types of machine learning


There are two general approaches to machine learning, supervised and unsupervised
machine learning. In both approaches, you train a model to make predictions.

The supervised machine learning approach requires you to start with a


dataset with known label values. Two types of supervised machine learning tasks include
regression and classification.
 Regression: used to predict a continuous value; like a price, a sales total, or some other
measure.
 Classification: used to determine a class label; an example of a binary class label is
whether a patient has diabetes or not; an example of multi-class labels is classifying text as
positive, negative, or neutral.

The unsupervised machine learning approach starts with a dataset without known


label values. One type of unsupervised machine learning task is clustering.

 Clustering: used to determine labels by grouping similar information into label groups;
like grouping measurements from birds into species.

What is Azure Automated Machine Learning?

Azure Machine Learning includes an automated machine learning capability that


automatically tries multiple pre-processing techniques and model-training algorithms in
parallel. These automated capabilities use the power of cloud compute to find the best
performing supervised machine learning model for your data.

Automated machine learning allows you to train models without extensive data science
or programming knowledge. For people with a data science and programming
background, it provides a way to save time and resources by automating algorithm
selection and hyperparameter tuning.

You can create an automated machine learning job in Azure Machine Learning studio

Understand the AutoML process

You can think of the steps in a machine learning process as:

1. Prepare data: Identify the features and label in a dataset. Pre-process, or clean and
transform, the data as needed.
2. Train model: Split the data into two groups, a training and a validation set. Train a
machine learning model using the training data set. Test the machine learning model for
performance using the validation data set.
3. Evaluate performance: Compare how close the model's predictions are to the known
labels.
4. Deploy a predictive service: After you train a machine learning model, you can deploy
the model as an application on a server or device so that others can use it.
These are the same steps in the automated machine learning process with Azure
Machine Learning.

Prepare data
Machine learning models must be trained with existing data. Data scientists expend a lot
of effort exploring and pre-processing data, and trying various types of model-training
algorithms to produce accurate models, which is time consuming, and often makes
inefficient use of expensive compute hardware.

In Azure Machine Learning, data for model training and other operations is usually
encapsulated in an object called a data asset. You can create your own data asset in
Azure Machine Learning studio.

Train model
The automated machine learning capability in Azure Machine Learning
supports supervised machine learning models - in other words, models for which the
training data includes known label values. You can use automated machine learning to
train models for:

 Classification (predicting categories or classes)


 Regression (predicting numeric values)
 Time series forecasting (predicting numeric values at a future point in time)

In Automated Machine Learning you can select from several types of tasks: 

In Automated Machine Learning, you can select configurations for the primary metric,
type of model used for training, exit criteria, and concurrency limits.

Importantly, AutoML will split data into a training set and a validation set. You can
configure the details in the settings before you run the job.

Evaluate performance
After the job has finished you can review the best performing model. In this case, you
used exit criteria to stop the job. Thus the "best" model the job generated might not be
the best possible model, just the best one found within the time allowed for this
exercise.

The best model is identified based on the evaluation metric you specified, Normalized
root mean squared error.

A technique called cross-validation is used to calculate the evaluation metric. After the


model is trained using a portion of the data, the remaining portion is used to iteratively
test, or cross-validate, the trained model. The metric is calculated by comparing the
predicted value from the test with the actual known value, or label.

The difference between the predicted and actual value, known as the residuals, indicates
the amount of error in the model. The performance metric root mean squared
error (RMSE), is calculated by squaring the errors across all of the test cases, finding the
mean of these squares, and then taking the square root. What all of this means is that
smaller this value is, the more accurate the model's predictions. The normalized root
mean squared error (NRMSE) standardizes the RMSE metric so it can be used for
comparison between models which have variables on different scales.

The Residual Histogram shows the frequency of residual value ranges. Residuals


represent variance between predicted and true values that can't be explained by the
model, in other words, errors. You should hope to see the most frequently occurring
residual values clustered around zero. You want small errors with fewer errors at the
extreme ends of the scale.

The Predicted vs. True chart should show a diagonal trend in which the predicted value
correlates closely to the true value. The dotted line shows how a perfect model should
perform. The closer the line of your model's average predicted value is to the dotted
line, the better its performance. A histogram below the line chart shows the distribution
of true values.

After you've used automated machine learning to train some models, you can deploy
the best performing model as a service for client applications to use.
Deploy a predictive service
In Azure Machine Learning, you can deploy a service as an Azure Container Instances
(ACI) or to an Azure Kubernetes Service (AKS) cluster. For production scenarios, an AKS
deployment is recommended, for which you must create an inference cluster compute
target. In this exercise, you'll use an ACI service, which is a suitable deployment target
for testing, and does not require you to create an inference cluster.

Microsoft Azure AI Fundamentals: Explore computer


vision
Computer vision is an area of artificial intelligence (AI) in which software systems are designed
to perceive the world visually, though cameras, images, and video. There are multiple specific
types of computer vision problem that AI engineers and data scientists can solve using a mix of
custom machine learning models and platform-as-a-service (PaaS) solutions - including many
cognitive services in Microsoft Azure

Introduction

Computer vision is one of the core areas of artificial intelligence (AI), and focuses on
creating solutions that enable AI applications to "see" the world and make sense of it.

Of course, computers don't have biological eyes that work the way ours do, but they are
capable of processing images; either from a live camera feed or from digital
photographs or videos. This ability to process images is the key to creating software that
can emulate human visual perception.

Some potential uses for computer vision include:

 Content Organization: Identify people or objects in photos and organize them based on
that identification. Photo recognition applications like this are commonly used in photo
storage and social media applications.
 Text Extraction: Analyze images and PDF documents that contain text and extract the text
into a structured format.
 Spatial Analysis: Identify people or objects, such as cars, in a space and map their
movement within that space.
To an AI application, an image is just an array of pixel values. These numeric values can
be used as features to train machine learning models that make predictions about the
image and its contents.

Training machine learning models from scratch can be very time intensive and require a
large amount of data. Microsoft's Computer Vision service gives you access to pre-
trained computer vision capabilities.

Learning objectives
In this module you will:

 Identify image analysis tasks that can be performed with the Computer Vision service.
 Provision a Computer Vision resource.
 Use a Computer Vision resource to analyze an image.
Get started with image analysis on Azure

The Computer Vision service is a cognitive service in Microsoft Azure that provides pre-
built computer vision capabilities. The service can analyze images, and return detailed
information about an image and the objects it depicts.

Azure resources for Computer Vision


To use the Computer Vision service, you need to create a resource for it in your Azure
subscription. You can use either of the following resource types:

 Computer Vision: A specific resource for the Computer Vision service. Use this resource
type if you don't intend to use any other cognitive services, or if you want to track
utilization and costs for your Computer Vision resource separately.
 Cognitive Services: A general cognitive services resource that includes Computer Vision
along with many other cognitive services; such as Text Analytics, Translator Text, and
others. Use this resource type if you plan to use multiple cognitive services and want to
simplify administration and development.

Whichever type of resource you choose to create, it will provide two pieces of
information that you will need to use it:

 A key that is used to authenticate client applications.


 An endpoint that provides the HTTP address at which your resource can be accessed.

Analyzing images with the Computer Vision service


After you've created a suitable resource in your subscription, you can submit images to
the Computer Vision service to perform a wide range of analytical tasks.

Describing an image

Computer Vision has the ability to analyze an image, evaluate the objects that are
detected, and generate a human-readable phrase or sentence that can describe what
was detected in the image. Depending on the image contents, the service may return
multiple results, or phrases. Each returned phrase will have an associated confidence
score, indicating how confident the algorithm is in the supplied description. The highest
confidence phrases will be listed first.

To help you understand this concept, consider the following image of the Empire State
building in New York. The returned phrases are listed below the image in the order of
confidence.

 A black and white photo of a city


 A black and white photo of a large city
 A large white building in a city

Tagging visual features

The image descriptions generated by Computer Vision are based on a set of thousands
of recognizable objects, which can be used to suggest tags for the image. These tags
can be associated with the image as metadata that summarizes attributes of the image;
and can be particularly useful if you want to index an image along with a set of key
terms that might be used to search for images with specific attributes or contents.

For example, the tags returned for the Empire State building image include:

 skyscraper
 tower
 building
Detecting objects

The object detection capability is similar to tagging, in that the service can identify
common objects; but rather than tagging, or providing tags for the recognized objects
only, this service can also return what is known as bounding box coordinates. Not only
will you get the type of object, but you will also receive a set of coordinates that indicate
the top, left, width, and height of the object detected, which you can use to identify the
location of the object in the image, like this:

Detecting brands

This feature provides the ability to identify commercial brands. The service has an
existing database of thousands of globally recognized logos from commercial brands of
products.

When you call the service and pass it an image, it performs a detection task and
determine if any of the identified objects in the image are recognized brands. The
service compares the brands against its database of popular brands spanning clothing,
consumer electronics, and many more categories. If a known brand is detected, the
service returns a response that contains the brand name, a confidence score (from 0 to 1
indicating how positive the identification is), and a bounding box (coordinates) for
where in the image the detected brand was found.

For example, in the following image, a laptop has a Microsoft logo on its lid, which is
identified and located by the Computer Vision service.
Detecting faces

The Computer Vision service can detect and analyze human faces in an image, including
the ability to determine age and a bounding box rectangle for the location of the
face(s). The facial analysis capabilities of the Computer Vision service are a subset of
those provided by the dedicated Face Service. If you need basic face detection and
analysis, combined with general image analysis capabilities, you can use the Computer
Vision service; but for more comprehensive facial analysis and facial recognition
functionality, use the Face service.

The following example shows an image of a person with their face detected and
approximate age estimated.
Categorizing an image

Computer Vision can categorize images based on their contents. The service uses a
parent/child hierarchy with a "current" limited set of categories. When analyzing an
image, detected objects are compared to the existing categories to determine the best
way to provide the categorization. As an example, one of the parent categories
is people_. This image of a person on a roof is assigned a category of people_.

A slightly different categorization is returned for the following image, which is assigned
to the category people_group because there are multiple people in the image:

Review the 86-category list here.

Detecting domain-specific content

When categorizing an image, the Computer Vision service supports two specialized
domain models:
 Celebrities - The service includes a model that has been trained to identify thousands of
well-known celebrities from the worlds of sports, entertainment, and business.
 Landmarks - The service can identify famous landmarks, such as the Taj Mahal and the
Statue of Liberty.

For example, when analyzing the following image for landmarks, the Computer Vision
service identifies the Eiffel Tower, with a confidence of 99.41%.

Optical character recognition

The Computer Vision service can use optical character recognition (OCR) capabilities to
detect printed and handwritten text in images. This capability is explored in the Read
text with the Computer Vision service module on Microsoft Learn.

Additional capabilities

In addition to these capabilities, the Computer Vision service can:

 Detect image types - for example, identifying clip art images or line drawings.
 Detect image color schemes - specifically, identifying the dominant foreground,
background, and overall colors in an image.
 Generate thumbnails - creating small versions of images.
 Moderate content - detecting images that contain adult content or depict violent, gory
scenes.

Microsoft Azure AI Fundamentals: Explore natural


language processing
Natural language processing supports applications that can see, hear, speak with, and understand
users. Using text analytics, translation, and language understanding services, Microsoft Azure
makes it easy to build applications that support natural language

Introduction
Analyzing text is a process where you evaluate different aspects of a document or phrase, in
order to gain insights into the content of that text. For the most part, humans are able to read
some text and understand the meaning behind it. Even without considering grammar rules for the
language the text is written in, specific insights can be identified in the text.

As an example, you might read some text and identify some key phrases that indicate the main
talking points of the text. You might also recognize names of people or well-known landmarks
such as the Eiffel Tower. Although difficult at times, you might also be able to get a sense for
how the person was feeling when they wrote the text, also commonly known as sentiment.

Text Analytics Techniques


Text analytics is a process where an artificial intelligence (AI) algorithm, running on a computer,
evaluates these same attributes in text, to determine specific insights. A person will typically rely
on their own experiences and knowledge to achieve the insights. A computer must be provided
with similar knowledge to be able to perform the task. There are some commonly used
techniques that can be used to build software to analyze text, including:

 Statistical analysis of terms used in the text. For example, removing common "stop words" (words
like "the" or "a", which reveal little semantic information about the text), and
performing frequency analysis of the remaining words (counting how often each word appears)
can provide clues about the main subject of the text.
 Extending frequency analysis to multi-term phrases, commonly known as N-grams (a two-word
phrase is a bi-gram, a three-word phrase is a tri-gram, and so on).
 Applying stemming or lemmatization algorithms to normalize words before counting them - for
example, so that words like "power", "powered", and "powerful" are interpreted as being the
same word.
 Applying linguistic structure rules to analyze sentences - for example, breaking down sentences
into tree-like structures such as a noun phrase, which itself contains nouns, verbs, adjectives, and
so on.
 Encoding words or terms as numeric features that can be used to train a machine learning model.
For example, to classify a text document based on the terms it contains. This technique is often
used to perform sentiment analysis, in which a document is classified as positive or negative.
 Creating vectorized models that capture semantic relationships between words by assigning them
to locations in n-dimensional space. This modeling technique might, for example, assign values to
the words "flower" and "plant" that locate them close to one another, while "skateboard" might
be given a value that positions it much further away.

While these techniques can be used to great effect, programming them can be complex. In
Microsoft Azure, the Language cognitive service can help simplify application development by
using pre-trained models that can:

 Determine the language of a document or text (for example, French or English).


 Perform sentiment analysis on text to determine a positive or negative sentiment.
 Extract key phrases from text that might indicate its main talking points.
 Identify and categorize entities in the text. Entities can be people, places, organizations, or even
everyday items such as dates, times, quantities, and so on.

In this module, you'll explore some of these capabilities and gain an understanding of how you
might apply them to applications such as:

 A social media feed analyzer to detect sentiment around a political campaign or a product in
market.
 A document search application that extracts key phrases to help summarize the main subject
matter of documents in a catalog.
 A tool to extract brand information or company names from documents or other text for
identification purposes.

These examples are just a small sample of the many areas that the Language service can help
with text analytics.

Get started with text analysis

he Language service is a part of the Azure Cognitive Services offerings that can perform
advanced natural language processing over raw text.

Azure resources for the Language service


To use the Language service in an application, you must provision an appropriate
resource in your Azure subscription. You can choose to provision either of the following
types of resource:

 A Language resource - choose this resource type if you only plan to use natural language
processing services, or if you want to manage access and billing for the resource
separately from other services.
 A Cognitive Services resource - choose this resource type if you plan to use the Language
service in combination with other cognitive services, and you want to manage access and
billing for these services together.

Language detection
Use the language detection capability of the Language service to identify the language
in which text is written. You can submit multiple documents at a time for analysis. For
each document submitted to it, the service will detect:

 The language name (for example "English").


 The ISO 639-1 language code (for example, "en").
 A score indicating a level of confidence in the language detection.

For example, consider a scenario where you own and operate a restaurant where
customers can complete surveys and provide feedback on the food, the service, staff,
and so on. Suppose you have received the following reviews from customers:

Review 1: "A fantastic place for lunch. The soup was delicious."

Review 2: "Comida maravillosa y gran servicio."

Review 3: "The croque monsieur avec frites was terrific. Bon appetit!"

You can use the text analytics capabilities in the Language service to detect the
language for each of these reviews; and it might respond with the following results:

Document Language Name ISO 6391 Code Score

Review 1 English en 1.0

Review 2 Spanish es 1.0

Review 3 English en 0.9


Notice that the language detected for review 3 is English, despite the text containing a
mix of English and French. The language detection service will focus on
the predominant language in the text. The service uses an algorithm to determine the
predominant language, such as length of phrases or total amount of text for the
language compared to other languages in the text. The predominant language will be
the value returned, along with the language code. The confidence score may be less
than 1 as a result of the mixed language text.

Ambiguous or mixed language content

There may be text that is ambiguous in nature, or that has mixed language content.
These situations can present a challenge to the service. An ambiguous content example
would be a case where the document contains limited text, or only punctuation. For
example, using the service to analyze the text ":-)", results in a value of unknown for the
language name and the language identifier, and a score of NaN (which is used to
indicate not a number).

Sentiment analysis
The text analytics capabilities in the Language service can evaluate text and return
sentiment scores and labels for each sentence. This capability is useful for detecting
positive and negative sentiment in social media, customer reviews, discussion forums
and more.

Using the pre-built machine learning classification model, the service evaluates the text
and returns a sentiment score in the range of 0 to 1, with values closer to 1 being a
positive sentiment. Scores that are close to the middle of the range (0.5) are considered
neutral or indeterminate.

For example, the following two restaurant reviews could be analyzed for sentiment:

"We had dinner at this restaurant last night and the first thing I noticed was how
courteous the staff was. We were greeted in a friendly manner and taken to our table right
away. The table was clean, the chairs were comfortable, and the food was amazing."

and

"Our dining experience at this restaurant was one of the worst I've ever had. The service
was slow, and the food was awful. I'll never eat at this establishment again."
The sentiment score for the first review might be around 0.9, indicating a positive
sentiment; while the score for the second review might be closer to 0.1, indicating a
negative sentiment.

Indeterminate sentiment

A score of 0.5 might indicate that the sentiment of the text is indeterminate, and could
result from text that does not have sufficient context to discern a sentiment or
insufficient phrasing. For example, a list of words in a sentence that has no structure,
could result in an indeterminate score. Another example where a score may be 0.5 is in
the case where the wrong language code was used. A language code (such as "en" for
English, or "fr" for French) is used to inform the service which language the text is in. If
you pass text in French but tell the service the language code is en for English, the
service will return a score of precisely 0.5.

Key phrase extraction


Key phrase extraction is the concept of evaluating the text of a document, or
documents, and then identifying the main talking points of the document(s). Consider
the restaurant scenario discussed previously. Depending on the volume of surveys that
you have collected, it can take a long time to read through the reviews. Instead, you can
use the key phrase extraction capabilities of the Language service to summarize the
main points.

You might receive a review such as:

"We had dinner here for a birthday celebration and had a fantastic experience. We were
greeted by a friendly hostess and taken to our table right away. The ambiance was
relaxed, the food was amazing, and service was terrific. If you like great food and attentive
service, you should try this place."

Key phrase extraction can provide some context to this review by extracting the
following phrases:

 attentive service
 great food
 birthday celebration
 fantastic experience
 table
 friendly hostess
 dinner
 ambiance
 place

Not only can you use sentiment analysis to determine that this review is positive, you
can use the key phrases to identify important elements of the review.

Entity recognition
You can provide the Language service with unstructured text and it will return a list
of entities in the text that it recognizes. The service can also provide links to more
information about that entity on the web. An entity is essentially an item of a particular
type or a category; and in some cases, subtype, such as those as shown in the following
table.

Type SubType Example

Person "Bill Gates", "John"

Location "Paris", "New York"

Organization "Microsoft"

Quantity Number "6" or "six"

Quantity Percentage "25%" or "fifty percent"

Quantity Ordinal "1st" or "first"

Quantity Age "90 day old" or "30 years old"

Quantity Currency "10.99"

Quantity Dimension "10 miles", "40 cm"

Quantity Temperature "45 degrees"

DateTime "6:30PM February 4, 2012"

DateTime Date "May 2nd, 2017" or "05/02/2017"

DateTime Time "8am" or "8:00"

DateTime DateRange "May 2nd to May 5th"

DateTime TimeRange "6pm to 7pm"


Type SubType Example

DateTime Duration "1 minute and 45 seconds"

DateTime Set "every Tuesday"

URL "https://www.bing.com"

Email "[email protected]"

US-based Phone Number "(312) 555-0176"

IP Address "10.0.1.125"

The service also supports entity linking to help disambiguate entities by linking to a


specific reference. For recognized entities, the service returns a URL for a
relevant Wikipedia article.

For example, suppose you use the Language service to detect entities in the following
restaurant review extract:

"I ate at the restaurant in Seattle last week."

Entity Type SubType Wikipedia URL

Seattle Location https://en.wikipedia.org/wiki/Seattle

last week DateTime DateRange

What is conversational AI

Conversational AI is a type of artificial intelligence (AI) that can simulate


human conversation.

It is made possible by natural language processing (NLP), a field of AI that


allows computers to understand and process human language. NLP is used to
analyze the meaning of text and speech, and to generate responses that are
appropriate and relevant to the conversation.
How conversational AI works

Conversational AI works by using a combination of natural language


processing (NLP) and machine learning (ML).

Conversational AI systems are trained on large amounts of data, such as text


and speech. This data is used to teach the system how to understand and
process human language. The system then uses this knowledge to interact
with humans in a natural way. It’s constantly learning from its interactions and
improving its response quality over time.

Benefits of conversational AI

- Reduce costs, and increase productivity and operational efficiency through


automation

For example, conversational AI can automate tasks that are currently


performed by humans and thereby reduce human errors and cut costs.

- Deliver better customer experience, achieve higher customer engagement


and satisfaction

For example, conversational AI can provide a more personalized and


engaging experience by remembering customer preferences and helping
customers 24/7 when no human agents are around.
Examples of conversational AI

A few application examples of conversational AI technology:

Generative AI agents: these virtual agents use generative AI to power text or


voice conversations

Chabots: often used in customer service applications to answer questions and


provide support
Virtual assistants: often voice-activated and can be used on mobile devices
and smart speakers

Text-to-speech software: used to create audiobooks, or spoken directions

Speech recognition software: used to transcribe lectures, phone calls,


captions, and more

You might also like