Building a constantly evolving “Recommendations engine” for apps
Last year, the Gorilla Arm team designed and built the COIN app — a secondary market place for rare art and collectibles, connecting sellers with both experts in their field, and regular buyers. From the very start we knew that meaningful recommendations, to both experts and users, would add enormous value to the platform. Therefore, we used our knowledge of machine learning and graph theory to design a new recommendation engine — one that is generic enough to be used in different app scenarios and which is easily extensible and adaptable at the same time.
Tagging the data
The engine works by associating tags against each data component, such a user, or an item that is for sale. Tags are identified with a description and can represent any type of information — such as a category, brand or artist name, but could also describe age, material, colour, theme or any other descriptive attribute. During the onboarding process, we associate tags with the user and when a user uploads a new item for sale, tags are automatically generatedand associated with the item based on the the items’ properties.
The recommendation engine works by building a graph between these tags, and in turn can identify hidden relationships between them which may have seemed completely unconnected i.e. identifying users who are interested in both vintage furniture and contemporary watches. As tags are associated with new users and items, new connections between these disparate tags are made, and the engine delivers more reliable results whilst becoming more robust. The engine is also constantly evolving as new tags are added, to identify new trends over time.
Testing for success
By analysing our client’s pre-existing database of content, we extracted over 30,000 tags and tens of thousands more connections between them. In order to use this vast dataset to correctly match users with items, we used a basic machine learning algorithm. After performing numerous tests to ensure that the engine returns relevant results, we made a final proof of concept by comparing the client’s expected outputs against that of the engine.
Recommendation engines form an almost essential part of every app these days. Delivering meaningful and relevant results to a user can make huge differences in their retention and engagement. If you are interested in learning more about how Gorilla Arm can help deliver better results to your users, contact us now.