Improved data processing and storage operations.
ChallengeEnhance the existing fitness app with artificial intelligence
SolutionMachine learning for building predictive analytics module and enable exploratory data analysis
Technologies and toolsPostgreSQL, Spark, Python, Apache Superset
The Client is a provider of user-friendly and personalized applications in the health and well-being area. Over 75 mln users globally have installed these apps to improve the quality of physical activity, nutrition, sleep, and mindfulness.
The Client needed the help of a reliable predictive analytics services provider to find ways of how predictive analytics can be used to improve health and fitness apps.
Challenge: enhance existing fitness apps with artificial intelligence (AI)
The Client wanted to level up the existing system to provide users with additional guidance on health and lifestyle. Our team was challenged to tailor a business intelligence (BI) solution to work with user data gathered via an app.
A revamped AI-based fitness coaching app was expected to support working with large amounts of data on user health and fitness activities stored in the Client’s database. Also, this app was anticipated to function as a fitness and health AI recommender system generating related personalized recommendations.
Solution: machine learning for building predictive analytics module and enable exploratory data analysis
1. Thе quality of data аnd the database design was inefficient for analytics. The ESSID Solutions’ team conducted the basic data migration from the Client’s storage to the InData Lab’s data storage. We also specified how the data repository should look like to storing more useful data.
Our next step was to map out the tables needed to visualize the data.
There was a Couchbase cluster as raw data storage. We added Kafka for a reliable data transfer to BI data warehouse (DWH), i.e., PostgreSQL, using Spark procedures. On top of BI DWH, we used Apache Superset to provide interactive dashboards.
Our solutions provided marketing managers and data analysts with the option to select filter parameters, including but not limited to:
- Weight gain
- Weight loss
- Body mass index (BMI)
- Type of platform to run the app
- Payment method
- Interactive filters (e.g., for real-time monitoring of the number of installs during a marketing campaign)
Overall, the solution encompassed 10 dashboards to enable a higher personalization level.
2. Another challenge was to use machine learning (ML) to create a recommender system that would allow the existing app to deliver personalized recommendations.
We trained the ML-based model to work based on the data that users share via their profiles. A user downloads and installs the app and enters basic personal data, and the algorithm chooses a best-suited plan from the existing ones.
Also, we have built a tree-based recommender system and associative rules mining using Apriori algorithm, all written in Python.
Automatically generated recommendations differ depending on a user’s fitness level. If personal data suggests that a user easily copes with the current set activities, the system can recommend getting to the next level. Otherwise, the app can recommend repeating workouts at the current level.
All the data for training datasets were provided by the Client. The major source of data gathering was from GPS if allowed by a user.
Result: advanced AI-based fitness app with personalized recommendation function
The ESSID Solutions’ team has enhanced the existing mobile fitness apps of the Client with predictive analytics capabilities.
The Client benefited from cooperating with ESSID Solutions in the following aspects:
- More personalized customer experience compared to the initial capacity of the app
- Better data processing and storage
- Predictive analytics capabilities
We offered the Client to use state-of-the-art approaches and technologies to provide sought after services and scale up the number of customers.