Some ramblings about Conversational UI’s, Bots, and ChatBots.
At present there is a lot of attention on Conversational User Interfaces, Bots, and ChatBots – especially interesting/exciting for those who are interested (design and build) in how people interact with computers.
To reduce ambiguity it’s worth distinguishing between ‘Chat’ and ‘Bot’. Here I consider Chat as the interaction model whose interface is predominantly through natural conversation, the medium is the Conversational User Interface (Conversational UI or CUI for short).
A Bot is a agent (software application/service) that can carry out a task (semi-)autonomously on behalf of the user. Therefore the ChatBot is an Bot who interfaces with the user via conversation but achieves some task autonomously.
Recommendation Engines has become the ‘hello world’ of Data Products (or more generally the data era). Popularised by Amazon that not only found them to be more attractive (user engagement) that curated reviews and also figured out how to make it work at scale and in (near) real-time (using a technique known as item based collaborative filtering).
Once then, every digital commerce site has leveraged the idea and every Machine Learning/Data Mining book reviews the idea and implementation.
At a high, and very simplistic, level, it works by finding the distance between two entities (either people or items e.g. restaurants/food) based on a set of features (e.g. cuisine, food, song/movie genre, song artist/movie director/etc) and using your (or similar person’s) history of entities you’ve previously engagement with (bought, visited, etc) predicts what other entities you would like e.g. if 90% of your iTunes library is Jazz then other Jazz songs will have a higher weight than Rock, thus you will be recommended Jazz songs.
There are times when recommendations need something more than history of engagement, something more timely. I’m sure we have all experienced this, it’s your wives birthday and you shop on Amazon to find your recommendations have been embarrassingly polluted with items you would rather your workmates not see. One suggested improvements for recommendation engines is to use context (if possible). Google does this well (advantage of having established a strong presence of lifestyle and productivity products) e.g. if you’re looking for flights then Google Now will use this derived intent to keep you up-to-date with the latest flight deals.
But this can be achieved by other means, and the example I have in mind, we can leverage the mobiles attributes of being connected, aware, and present to determine if the recommendation is for a individual or group of friends e.g. your out with friends, using your phone to look for somewhere to eat – the phone has your contacts, location, awareness of who you’re with (neglecting privacy in this instance) – instead of using just your recommendations, it should extend the preference out to those in close proximity. It’s not hard to see how this extends to going to the movies, something to do, or music to play.
In this post we examine the techniques used to know you for purposes of improving targeted advertising.
In Pete Mortensen’s post The Future Of Technology Isnt Mobile Its Contextual, he highlights the shift in computing towards a paradigm called Contextual-Awareness Computing and outlines the four ‘graphs’ that are required before contextual computing will work, these four graphs are Social, Personal, Interest, and Behaviour. In essence, Contextual-Awareness Computing meaning computers are able to proactively react to external stimuli as opposed to being commanded by its user – these four graphs being considered the necessary information to provide relevant context. The concept lends itself well to the notion of Just-In Time Interaction/Information as touched on in Frog’s Creative Director, Scott Jenson, blog post Mobile Apps Must Die, where interactions and information are not dependent on direct input but rather your current activity i.e. your current context.