Skip to content

A product review analysis app to determine the sentiment of customer reviews, using AWS.

Notifications You must be signed in to change notification settings

swarajlaha/sentiment-analysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sentiment-analysis

A Product Review Analysis App to Determine the Sentiment of Reviews, using AWS.

Description

The application processes user/customer reviews, taken from a .csv file and categorises the review sentiment as- 'Positive', 'Negative' or 'Neutral', based on certain keywords, that can be found in the review, using AWS Comprehend, which is a service that uses machine learning to find insights and relationships in text and returns the sentiment accordingly.

Further, an email notification is triggered using AWS SNS, to a specified mail id, when the sentiment happens to be 'Negative' and all the sentiment data is stored in AWS DynamoDB, for reference.

The entire process is managed by an AWS Step Function, which consists of Lambda functions, that trigger various other AWS Services like- Comprehend, SNS, DynamoDB. The State Function is in turn triggered by a Lambda function, which occurs when an S3 PUT Event takes place, i.e., when a .csv file, consisting of customer sentiment data is uploaded to S3.

Once the file is uploaded to S3, the Step Function runs and generates the sentiment of the review, which then carries out the task depending on the sentiment result.

workflow Workflow Diagram of the App

step-function

Step Function depicting the Process

csv-file

CSV file uploaded in S3

dynamodb-review DyanmoDB Table showing Customer Review and Sentiment

sns-email Email received for Negative Reviews

About

A product review analysis app to determine the sentiment of customer reviews, using AWS.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages