Hybrid AI Recommendation Engine to increase learning engagement

Omina Technologies > Cases > Hybrid AI Recommendation Engine to increase learning engagement

Business Problem

Employers want their employees to be knowledgeable and skilled and keep up to date through continuous learning. The client is building a mobile learning platform whereby company employees can learn a specific set of skills through learning tracks. To engage these employees to continuously expand and refresh their knowledge and skills, the right learning content has to be recommended on the client’s mobile training platform.

Omina was contacted to build an AI recommendation engine within the client’s platform. The recommendation engine had to be GDPR compliant.  Therefore, particular attention was paid to the principles of anonymization and pseudonymisation. Also, the client requested a way to customize the recommendations of the recommendation engine to cope with different access to content libraries across companies.


The Solution

Omina Technologies collaborated with the client to build a hybrid AI recommendation engine. This type of design is considered the industry standard. The word ´hybrid´ refers to the fact that we match the client’s user base with a tailored set of recommendations by clustering both customers as well as media content. Our machine learning algorithms provide for each customer cluster and content cluster a preference score, which in turn is used to make content recommendations.

To ensure that the AI recommendation engine is GDPR compliant by design, both anonymization and pseudoanonymization are embedded within the platform’s core design.

  • Anonymization: Internally, Omina uses a custom-made database (in PostGreSql) making sure that any external data referring to end-users provided by the client is encrypted and anonymous. 
  • Pseudoanonymization: GDPR-compliant by design, the recommendations are  computed not on the individual user level, but on the level of groups of users (based on their location, the company they work for and a psychological profile test). This ensures that the principle of pseudoanomization is respected.

By default, the recommendation engine will serve similar content to users within the same cluster. To enable customization of the content recommendation for users within a cluster, Omina Technologies collaborates with the client to implement some business rules on top of the machine learning content recommendations. For example, users having exclusive access to particular media content can be served this content in that way. 

The product is designed using a microservices architecture.

In the first stage, the product is built in a local environment, where each microservice corresponds to a Docker container. To store the necessary data for the recommendation pipeline, a Postgresql database was constructed. The client can communicate with this database through an API that was built using Flask. The recommendation engine itself uses a neural network design through Keras.

In the second stage, the product will run natively in the cloud through Google Cloud Platform using their storage and compute services. That way Omina effectively and efficiently accounts for the total cost of ownership and security of the services.

Particular attention is also given to quality assurance, making sure that the Python code follows PEP8 standards, passes the necessary unit tests, respects the necessary static type checking and security concerns.


Key Challenges

One of the key challenges was in striking the right balance between building a product that is both robust and scalable while doing this in an agile way. For this reason, the product implemented a microservice architecture where each service has its specific purpose.

Lessons Learned

While building the product, it became more and more clear that Omina Technologies needed a very close collaboration with the client in order to ensure that their data is utilized in an optimal way.