Inspiration
The main inspiration is from the e-commerce customer dissatisfaction, where the customer ends up not getting what they had initially had in mind. The popular what I wanted vs what I got campaign on social media platforms. Owing to the fact that smartphones are the most sold products in the e-commerce space I decided to use it as a testcase.
What it does
The smartphone inspector tool uses previous buyer reviews to enable a new buyer better understand the different aspects of the product, in this case, a smartphone. Further than that, it shows whether the sentiments on the different aspects were positive, negative or neutral (sentiment analysis)
A person using the tool only inputs the url e.g link of the smartphone on Jumia then the system will display to the user : the details of the phone, all the reviews of the phone, a chart displaying the classification of the sentiments.
How I built it
The building of the tool, was in a sequential order such that one module was dependent on the preceding module being complete. The reviews had to be scraped off Jumia platform using BeautifulSoup then stored in a dataframe then the reviews are cleaned so that they can be fit to be used as input in the machine learning models.
Cleaning Process: The cleaning process involved setting case text as lowercase, remove punctuation, remove extra white space in string and on both sides of string, removing stopwords using nltk libraries, The reviews were then used as input to the topic modelling aspect and the sentiment analysis.
Topic Modeling Here the reviews were clustered into different topics i.e aspects such as battery, camera, screen, feel, storage. They were clustered based on the occurrence of keywords as defined by a dictionary.
Sentiment Analysis Using a pre-trained model the reviews of the different aspects were classified as either positive neutral negative.
User Interface There cannot be a tool without the user interface, this was the collaboration of all the back-end development into one bag. This was done using Django Framework. The UI was done in bootstrap, css and html.
Challenges I ran into
The key challenge was being able to build the system in such a way that the topic modeling will communicate with sentiment analysis bit in a coordinated manner to bring the expected results to the user.
Topic modeling was also a new field in machine learning that I was trying to figure out. While it is a unsupervised model, I had to tweak it to be a supervised model in order to meet the requirements of the tool i.e classifying the reviews into the already defined aspects.
Accomplishments that I proud of
The system works just fine. It gives appropriate feedback if the user has not entered a valid URL i.e a smartphone on Jumia platform only.
I was able to successfully bring the two ideas into one product.
What I learned
Topic modeling as a field in machine learning, it was an eye-opener.
Beyond the development bit, I was able to reach out to key experts in the natural language processing space and provided key insights on the way forth in regards to my project. That really showed me how mentorship is important.
What's next for Smartphone Inspector Tool
The logic of this system can enable a developer to develop a system that compares sentiments of different aspects of different products on the e-commerce platforms.
The system can also be improved by increasing the number of supported e-commerce platforms to give the users more options of the desired platform they wish to shop from. The incorporation of more e-commerce platforms should be dependent on the legality of crawling the sites.
Moreover, metrics on the user’s interactions can be included in to assess their attitude towards the system and later incorporating a review section where users can see the reviews of other users which will also increase their confidence levels when using the system
Log in or sign up for Devpost to join the conversation.