Digital search is fundamental to the way we interact with the modern world.
And yet, it often leaves plenty to be desired, lacking expressiveness and the ability to capture human intention, providing answers that fail to align with the user’s true desires.
With semantic technology, knowledge graphs and rules-based AI, the gap between human intention and machine understanding can be eliminated, not only providing relevant results but also allowing the user to ask more complex questions that go beyond the scope of conventional search.
If you'd like to see this demo live or to discuss using RDFox in your own application, get in touch with us here.
This demo was first presented at the Knowledge Graph Conference 2024.
Below is the transcript if you’d like to read along.
Knowledge Graph Technology is enabling some of today’s most exiting applications, ranging from autonomous vehicles and on-device IoT to large scale product compatibility and regulation compliance.
The use case we’ll be looking at today though spans just about every industry in one way of another, and that’s semantic search and recommendation.
Everyone wants a precise and instant search experience for their customers, but search is more difficult than it sounds as the users’ input is often an ambiguous approximation of their real intention which is a challenge for traditional approaches.
The same can be said for recommendations which often rely on machine learned heard-behaviour or surface level algorithms, each of which fail to capture the essence of a truly valuable recommendation.
Solutions built upon Knowledge Representation and Reasoning technology, or KRR for short, offer a vastly superior search experience with contextual personalised recommendation and that’s what we’ll be showing you here with RDFox.
While industries such as retail, publishing, and tech, feel the impact of these challenges most of all, they’re felt in all businesses that encourage users to search for something.
The BBC good food website is a great example of common limits.
Let's search for a pescatarian recipe.
Not only are there just three results but we can see that the 1st result contains chicken so this recipe in fact is not pescatarian at all.
Instead let's look for an ingredient specifically, let’s say Tofu, what we find is that all of the results explicitly mention the word Tofu in their title, where the actual ingredients are irrelevant.
Now lets look at a semantic search solution with RDFox and try that pescatarian search again.
This time we can see the all the results really are pescatarian if we take a closer look one of them, we can see why.
On the left we can see details about our recipe including an aggregate of the recipe calories and various tags.
Even though our data only contains information about the recipes and the ingredients that they contain, we've also added rules to RDFox that infer these tags and additional information allowing us to search directly for more complex concepts.
For example, this recipe has been tagged as pescatarian because it does not contain any meat. This particular feature, the lack of a property or value, is called Negation and it’s an incredibly powerful tool.
By taking a look behind the scenes at the rule being used by RDFox to infer the Pescatarian tags, we can see that it is as simple as stating a recipe must not contain any meat or meat products.
Although we’re here we’re talking about recipes here, you can easily imagine how this could improve the experience of a user searching for a news article or a piece of furniture, as is the case for some of our clients including a global publisher and a furniture retailer.
Another key RDFox feature is aggregation. This time if we take a closer look at the rule that calculates the total recipe calories, we can see that they are simply derived from the sum of the calories of the individual ingredients.
Once again, this has industry parallels as it could just as easily be the total value of a collection of trades or contracts. It can also be used for other aggregate functions such as counts, that can be used to count the number of items in a basket or products on offer.
Now let's try that search for tofu again.
At this point we can also refine our search via dynamically generated facets that use high level food concepts rather than direct ingredients.
Once again, it’s reasoning that makes filtering recipes by abstracted concepts possible, as the recipes aren’t explicitly tagged with these terms, but are instead inferred based on an ontology.
These facets are directly and exclusively related to the search results, doing away with the rigid and unhelpful structure of traditional faceted search that can be frustrating to use.
As we’ve only searched for tofu, quite a few of these recipes still contain meat but we can exclude them by checking vegetarian.
Let's look closer at Sticky tofu with noodles.
It looks good but it’s not quite what I’m after so let's instead look at the recommendations.
As with the details pane, I can see some information about the recommended recipe on the left and I can see why it's been recommended in the graph to the right.
Alongside shared ingredients in the lower half, in the top half we can see the shared tags and a shared food group, each of which were inferred by RDFox
This shared food group is important to note because it isn’t explicitly known in our data that either recipe contains an ingredient from this group, let alone that both recipes do simultaneously, rather the relationships have been inferred by RDFox, enabling us to use them in our recommendations.
Let's move over to the RDFox graph explorer for a technical deep dive.
Here we can see that RDFox has inferred relationships between both of these recipes and the high level food group due to the fact that they contain different but similar ingredient, one being radishes and the other being cucumbers.
Once again, this was achieved with Rules which we can expose in the explain tab.
Here we see how the relationship between recipe and food group was inferred via a chain of increasingly broad concepts.
Each of these factors then contributes to an overall score which is used to rank the recommendations from most to least appropriate.
In this case we have used a form of term frequency analysis that adds to the score for every shared ingredient, weighted more for rarer ingredients such as tofu and less for common ingredients such as salt.
What’s crucial to understand is the recommendations are based on rules that are written by domain experts.
The experts can make the analysis as simple or as complex as the system requires, but critically the results will be driven by knowledge and experience in contrast to black box machine learning, leading to more meaningful and valuable recommendations.
Another huge benefit of this rules-based AI approach comes with Incremental Reasoning.
This means that when new data is added, or old is removed, the inferences are updated automatically, without the need for a restart.
If a new recipe is added, it’s scores and recommendations are calculated automatically, and it is added to the recommendation lists of other recipes where relevant.
This very feature is what enables many KRR based IoT and on-device applications. When on a phone, drone, or vehicle, it’s common for new sensor information to come in constantly and it’s vital that the data store remains consistent, accurate, and up to date.
All these features contribute to a much improved user experience, enabling users to find exactly what they’re looking for faster and with fewer distractions, while simultaneously recommending genuinely relevant alternatives and additions, ensuring they come away with everything they need.
Request a live demo of RDFox today!
The team behind Oxford Semantic Technologies started working on RDFox in 2011 at the Computer Science Department of the University of Oxford with the conviction that flexible and high-performance reasoning was a possibility for data-intensive applications without jeopardising the correctness of the results. RDFox is the first market-ready knowledge graph designed from the ground up with reasoning in mind. Oxford Semantic Technologies is a spin-out of the University of Oxford and is backed by leading investors including Samsung Venture Investment Corporation (SVIC), Oxford Sciences Enterprises (OSE) and Oxford University Innovation (OUI).