A common application of Fuzzy.ai is in powering custom recommendation engines. For many companies, generic solutions don’t offer enough flexibility (or require too much work manually setting up links between all of the different products in the catalog), and building a custom recommendation engine from scratch requires way too much time and effort.
To show how easily it can be done, we’ve put together an open source Product Recommendation plugin for Drupal Commerce stores that lets anyone spin up their own product recommendation engine with Fuzzy.ai.
How Do The Recommendations Work?
When a user is looking at a product page on an online store, the goal of this recommendation agent is to identify the other products in the catalog that might be relevant.
The way Fuzzy.ai differs from other machine learning platforms is that we let developers encode their own knowledge about how a system should work as a set of rules. The Fuzzy.ai API uses those rules to provide recommendations. Over time, as feedback is sent to Fuzzy.ai on how well the rules performed, the API learns and improves automatically.
In our sample recommendation agent, we identified a few rules that might show affinity between the current product and each of the other products in the catalog:
- If the current product and another product are in the same category, it’s likely to be a good recommendation
- If the current product and another product are not in the same category, it’s less likely to be a good recommendation
- If the current product and another product have very different prices, it’s less likely to be a good recommendation (i.e. it decreases affinity)
- If many customers who bought the current product also bought another product, that’s likely to be a very good recommendation (i.e. it increases affinity)
- If the current product and another product have many of the same words in their titles, it’s likely to be a good recommendation (i.e. it increases affinity)
- If the current product and another product have many of the same works in their descriptions, it’s likely to be a good recommendation (i.e. it increases affinity)
Here’s what those rules look like when created within Fuzzy.ai:
Keep in mind that these were purposely chosen because they can work generically for many online stores. Specific stores may have other rules that make sense, for example, a clothing store may want to show products for the same season and so might add rules like:
- If sameSeason is true then affinity is high
- If sameSeason is false then affinity is very low
If you want to try it for yourself, sign up for a Fuzzy.ai account and follow the instructions in the Drupal Commerce Recommendation Engine plugin on GitHub.
This project is meant as a starting point. Every developer will likely have their own modifications to make to the rules and integration in their ecommerce platform.
In an upcoming blog post, we’ll talk about how to add feedback into this recommendation engine so that it can learn based on actual customer behavior over time.