CSE498, Collaborative Design, Spring 2017
Computer Science and Engineering
Michigan State University



Amazon, the largest online retailer in North America, sells a large variety of products. After a sale, customers may post reviews related to all aspects of the sale. On average, users write millions of reviews per year.

With the large number of reviews posted, the likelihood that customers encounter reviews unrelated to product quality is high. Without an automated way of classifying reviews, customers may have to sift through many useless reviews when researching a big-ticket item.

Our Amazon Customer Review Analyzer, ACRA, automatically classifies customer reviews into two categories, those related to product quality and those unrelated to product quality. To do so, ACRA uses natural language processing and machine learning.

This automatic classification of reviews allows Amazon shoppers to focus only on reviews that are relevant to product quality, thereby enhancing their shopping experience.

Amazon shoppers can search for products using our ACRA iPhone app, which separates reviews into product quality and non-product quality categories. Additionally, users can report misclassified reviews to refine and crowdsource our classifier’s performance.

Our iPhone application is written in Swift and communicates with our backend using API Gateway and Lambda hosted on Amazon Web Services (AWS). Amazon Machine Learning and Python’s NLTK library are used to classify reviews hosted in AWS’s S3 and DynamoDB.