Sentimental Analysis

Azure Cognitive Services

Platform Services

Decision: Accelerates decision making and allows smart decision making. E.g Anomaly Detector, Content Moderator

Vision: Identifies and analyses content for example images and videos. E.g Computer vision, Form Recognizer, Face Recognizer

Speech: Identifies and integrates speech processing functionality to app and services. E.g Speech to Text, Text to Speech, Speech Recognition

Language: Identifies and extracts meaning from unstructured text through intelligent analysis. E.g Text Analytics, Immersive Reader, QnA Maker

Search: Identifies and extracts content relevant from user’s query. E.g Bing Video Search, Bing Visual Search, Bing Local Business Search

Text Analytics API

Overview: Provides natural language processing from raw text for sentimental analysis as well as key phrase extraction and language detection.

Strengths:
- Applicable for structured or unstructured text
- Provides sentiment labels (positive, negative, neutral)
- Provide confidence scores ranging from 0 to 1 to indicate the confidence and probability in the label’s classification

Limitations:
- Limitation of under 5,120 characters long per document
- Limited sentimental labels (no custom labels can be added)
- Quality decreases for longer texts
- Not suitable for long feedback or reviews

Services:
- Opinion Mining
- Language Detection
- Named Entity Recognition
- Key Phrase Extraction
- Personally Identified Information Recognition

Tutorial Link

Core ML

Platform Services

Vision: Identifies objects within images or videos. E.g Image classification, object detection and Action Classification

Speech: Identifies sound within video or audio clips. E.g Sound Classifier

Language: Identifies sentiments or words within natural language. E.g Text Classifier, Word tagger

Search: Search for any relevant information from a content. E.g Resnet50, MobileNetV2, SqueezeNet

Text Classifier

Overview: Core ML is an Apple framework in where developers can easily create machine learning models can integrate that model or existing model that Core ML already offers into their iOS or MacOS applications.

Strengths:
- can predict the sentiment from a text
- make model with ease
- does not require strong computers to train the model
- convert any model into readable core ml model format
- can be used in iOS or macOS applications

Limitations:
- can only be used in apple devices limited to iOS and macOS
- need bigger with variation dataset to make the model effective
- not enough pre built models

Services:
- word search
- sentiment prediction

Tutorial Link

Platform Comparison

Azure Cognitive Services

Fully capable of delivering and performing sentimental analysis on structured or unstructured text.

Does not need to train model to do predictions and provide confidence score

Opinion mining feature provides a service, where it picks up on opinions as target (noun or verb) and an assessment (adjective) for these targets, essentially providing more granular information about opinions related to attributes of products or services in text.

Limited classification of labels (only positive, negative or neutral) , allowing no addition of custom sentiment labels by the developer

Have data limits where the document(sentences) must be under 5,120 characters long per document.

Core ML

Also able to deliver and perform sentiment analysis on structured and unstructured text

The user need to create their own model to perform certain predictions providing easability, features and flexibility

Can use word logger to identify or search for specific words and its corresponding synonyms within sentences or paragraphs

Not enough pre built models forcing users to make and train models

Must use big and complex datasets covering different variations. But no limit of characters that can be used to run the prediction

Often predicts wrong due to large sentences as datasets might not cover variation of long sentences from which the model gets trained on

Google Cloud API

Can provide sentimental analysis to show overall attitude whether positive or negative using a numerical score.

Prebuilt models can be imported through libraries, or a custom model can also be created.

Response parsing is done by looking for specific words/phrases and running them through the “analyze_sentiment” method.

Aside from the default labels of positive, neutral and negative, custom labels can be added by modifying the analyze method. This is done by attributing labels over certain score ranges (generally from 0 to 1)

While the data size has limits it is sufficient for most programs, specifically it allows a max size of 100GB, between 1000 to 200 million rows, between 2 to 1000 columns and at most 5 datasets.

Output accuracy decreases as the data size increases, but if the data is split among multiple files, accuracy reduction is mitigated somewhat.

Google Cloud

Platform Services

Vision:
- Custom and already existing models used to detect emotion, text and other categories

Speech:
- Recognizes sound using text-to-speech with 220+ voices and 40+ languages

Language:
- Cloud natural language and translation is available through sentiment analysis and language detection with glossary respectively.
- Language packages can also be stored, managed and modified as Artifact Registries
- Natural language interpretation from Healthcare AI is possible giving real-time insights from medical data.

Search:
- Data storage can be handled with multiple methods such as BigQuery, Looker and Dataproc, providing Dataflow, cataloging and analytics.

Text Classifier

Overview: Starting from an existing data source, an ML model is coded, trained, and then evaluated through several metrics. Next, it is deployed onto the cloud, from which data predictions, ongoing monitoring and management of the data models can continue.

Strengths: - sentiment is analyzed by data from customizable files
- make model with ease
- does not require excessive processing power since it is mostly handled by the cloud
- can be used with any windows environment with multiple languages

Limitations: - no cross-platform functionality
- make model with ease
- does not require strong computers to train the model
- models can be customized but require extra processing

Services:
- AutoML
- DialogFlow
- Recommendations AI

Tutorial Link