Value Delivered
-
Defining hotel amenities comparison criteria and the overall product concept.
As the idea emerged and product concept was discussed, our team outlined the product workflow as follows: A user searches for a hotel by name or URL. The system detects amenities descriptions in reviews, including those discussing bathroom, lounge, breakfast, air conditioning, location, etc. Then a trained algorithm analyses the reviews for word-markers of positive, neutral, or negative guest experiences of the amenities. The results for each category and an overall score of a hotel are aggregated and returned to a user. As a result, a user can explore individual amenity ratings and compare them to the other hotels without reading full reviews. Since the implementation needed machine learning, our team started product development with training dataset preparation. -
Preparing a dataset with labeled sentiment for amenities.
For model training, we collected a hotel review dataset that consisted of about 100,000 samples from public sources, including datasets available at Kaggle. As these datasets didn’t have labeled sentiment for various hotel amenities, the team had to label them semi-manually. Once the dataset was ready, data scientists could proceed to model training. -
Training a model to score and analyze the reviews by amenities.
Our engineers tried several different approaches to find a proper model to score the amenities, like classic natural language processing approaches and the latest deep learning models like BERT. As a result, they decided on two neural networks for sentiment analysis, a convolutional neural network for scoring hotels by whole reviews (1D-CNN with GloVe embeddings) and HAPN (hierarchical attention based position-aware network) to score individual amenities. This allows users to get both general impressions about hotels and drill down into specific service details if those details are critical for a pleasant stay. The final step of Choicy development was the user interface design and engineering. -
Creating a user-friendly interface.
Our UX/UI designer suggested a minimalistic design of the application interface. A home page and the page with the reviews has a search box where a user can type a hotel’s name or insert a URL. The page has various navigation components like tags that help simplify the search, compare the hotels by the amenities, and categorize them. The user interface was created using JavaScript.
Approach and Technical Info
The project’s scope was 7.5 man-months. The product was completed over the course of 2 months by a team of five professionals: 2 machine learning engineers, a software engineer, a UI/UX designer, and a project manager.
The technology stack of the project included Python, NLTK, Keras, and TensorFlow (for the algorithms), HTML and JavaScript (for the user interface).
Services provided within the project framework: Data Science Consulting.
Wondering how to build
an exclusive software product for your business?
Discuss your project needs with our architects.