Inspiration

Websites like TripAdvisor, Expedia, Hotel.com and Booking.com that has review systems for their travel destinations/attractions. We wanted to implement AI into these to make them more smart in terms of their review section, as it can sometimes be overwhelming to read many reviews.

What it does

It basically takes in a hotel review as input, and a BERT-trained AI model will process the review and give a sentimental analysis rating which take on a percentage value. Moreover, the review will be summarised which uses GPT-2 to generate a summary of the review, extracting only the important points of the review and making it short and succinct. Finally, the previous results of the AI are stored in a session storage, enabling users to read what was the previous results that the AI gave.

How we built it

The AI was created using the TensorFlow software library in Python. The AI uses Natural Language Processing (NLP) and performs a process known as sentimental analysis to detect whether the emotion of the review is positive or negative. The AI is also trained to recognise common and key details of reviews, which helps to determine the score of the review. The AI also utilises a pre-trained BERT (Bidirectional Encoder Representations from Transformers) to improve accuracy of model, as well as GPT-2 to summarise reviews. The application itself is built on Flask.

Challenges we ran into

Tried a few ways to summarise, including Ngram Models which continues a sentence based on a corpus, and even SBERT to answer simple questions about the reviews. Unfortunately, those did not work well and we ultimately just decided to use a GPT-2 summarizer to do it. This was also our first time using Flask. There was a lot of trouble trying to integrate the AI since the model was big and we ended up uploading the model to hugging face. Moreover, as the model was very big, we could not make the application work on PythonAnywhere.

Accomplishments that we're proud of

We are proud that we were able to make a functioning model that was accurate and worked and that we were able to integrate the AI into the flask web application.

What we learned

How to fine-tune a pre-trained BERT model, upload a fine-tuned model to huggingface, as well as to integrate AI into a flask application and to work together as a pai

What's next for SwiftVoyager

Improvements can still be made to it. Having an overall summarizer for all reviews ever made would make it better for people to gain better insights into the overall trends of the reviews, as well as fine-tuning the GPT-2 summarizer. We can also improve it by supporting multiple languages. Finally, we can make the interface more appealing.

Built With

Share this project:

Updates