This meeting of two very different lines of work — software development and the hospitality industry — was long overdue. The hospitality industry doesn’t always make use of the latest technology, and the technology they use typically comes from various vendors and often doesn’t integrate well. Hack Hospitality aimed to bring the two groups together to create practical, useful, and usable software solutions.
Sourcetoad sponsored the Cruise Challenge, where participants were encouraged to come up with innovative solutions to issues faced by the cruise industry.
The Explori.us team. From left to right: Alex Spencer, Keri Spencer, Taylor Cox, Mandy Jacobson, Rob Venables
A number of the teams took on our challenge, and one of them produced the grand prize winner: Explori.us, an application that helps cruise passengers find the shore excursions that are best suited for them.
What makes Explori.us special is the way in which it accomplishes its goal. Rather than pepper users with a series of questions in order to determine their likes and dislikes to ultimately match them with excursions, Explori.us uses a clever combination of various artificial intelligence-powered “software as a service” services to find the appropriate excursions for a given person, using only that person’s Facebook profile. As a startup application idea, Explori.us is ambitious. As a hackathon project that’s meant to be built in a weekend, it’s downright audacious. That’s why we love it.
To use Explori.us, you would log in using your Facebook account. From Facebook, Explori.us uses your email address, gender, and most importantly, your profile photo as a starting point to determine which excursions would be the best fit.
Let’s suppose you’ve logged into Explori.us and this is your Facebook profile photo:
People usually choose a photo that they feel best represents themselves and their interests. That’s why it’s a great starting point to get information about someone. Explori.us runs the user’s profile photo through Google’s Cloud Vision service to identify objects in the photo, which it uses to produce a list of topics. For the example photo above, these are only a few of the topics that it identified:
- Mountains
- Water
- Hiking boots
- Trees
From those four topics, we humans can easily infer that the person in the profile photo probably likes nature and “outdoorsy” activities. Explori.us approximates our ability to make this kind of inference by feeding the identified items into IBM’s Natural Language Classifier service to determine what conceptual categories they fall under.
At the same time, Explori.us takes the email address associated with the Facebook account and feeds it to the FullContact service. Given an email address, FullContact responds by sending back all textual biographical information on the person connected to that email address. Just as it did with the terms extracted from the user’s Facebook profile photo, Explori.us runs the social media data that FullContact provides through IBM’s Natural Language Classifier service to get even more conceptual categories.
Just as the large amount of textual information derived from the user’s photo and social media accounts is turned into a set of a few hundred conceptual categories, those categories are further reduced to a smaller set of category markers.
At this point we’re now dealing with a pared-down set of input data. This paring down is known as dimension reduction, and it’s an important part of machine learning. The more dimensions — or, more simply, the more inputs — that a machine learning or data mining algorithm has to consider, the less accurate its predictions tend to be.
For our example profile photo, Explori.us’ systems took the identified items, placed them into categories, and then derived the following category markers:
- Sports: Climbing
- Sports: Canoeing and Kayaking
- Hiking Boots
- Trees
Once the category markers are derived, they’re mapped to statistical models, each one corresponding to a different variable that describes some aspect of an excursion:
- Activity level
- Preferred category
- Preferred price
- Duration
These models are used to create a request that’s fed into Amazon’s machine learning service to perform multinomial logistic regression, a statistical analysis method that tries to connect a choice or the outcome of an event with a number of independent factors that contribute to that choice or outcome. Examples of multinomial logistic regression include:
- Determining the next major repair a car will need, given its make and model, age, mileage, current condition, the climate in which it’s operated, and maintenance history.
- Predicting which candidate a voter will choose, going by the voter’s income, level of education, occupation, and where the voter lives.
In this particular case, multinomial logistic regression is being used to determine which excursions will be the best match for the user, based on the excursion variables listed above.
As impressive as Explori.us’ machine learning software is, it’s only part of the solution. That software also needs to be “trained” by feeding it lots of data, which requires actual human input.
Since there wasn’t any data on passenger excursion preferences, the team had to find a way to seek it out. They created a survey that asked people to provide the following information:
- Their Facebook public profile page
- The level of activity they’d prefer on an excursion
- The types of excursions that they’d prefer
- What they’d want to pay for such an excursion
- How long their ideal excursion would be
The answers to the survey would be used as sample data to train the machine learning system to match people to excursions. Explori.us would learn to match people’s social media artifacts — their photos, posts, and bios — with the variables describing their ideal excursion, and use this data as examples to predict which excursions people would prefer based on their Facebook media profile.
To find people to complete the survey, the team employed Amazon’s Mechnical Turk “marketplace for work” service, offering a small (30 – 50 cents) reward for completing it.
At the end of their presentation, they asked if we had any questions. Our CEO Greg Ross-Munro summarized our amazement at their work with his first question: “You built this in two days?!”
To the Explori.us team…
- Taylor Cox
- Mandy Jacobson
- Alex Spencer
- Keri Spencer
- Rob Venables
…we’d like to congratulate you on a job well done and on winning the Hack Hospitality grand prize! The ingenuity, complexity, and potential usefulness of your solution to a cruise industry problem exemplifies not only the sort of solution we were hoping to see as a result of the hackathon, but also the sort of Tampa Bay technology talent that we wanted the hackathon to highlight. Nicely done!
To learn more about the project, watch the demo the Explori.us team gave at Sourcetoad’s headquarters.
[arve url=”https://player.vimeo.com/video/235364574?color=84bd00″ /]