Traveloka, the Jakarta-headquartered maker of a “lifestyle super-app” for South East Asia, is scaling up its use of AI-based personalisation as it tries to keep customers more engaged with its services.
Vice president of platform products Adi Alimin told the AWS Summit Asean 2022 that Traveloka has started using Amazon Personalize for this purpose, after finding it could not scale inhouse-led efforts.
Alimin leads Traveloka’s platform product team, which is “responsible for the common internal services that can be used by the other product teams”.
At the same time, the team also has oversight for customer acquisition, retention and engagement, which leads it to use technology to put the right offers or products in front of customers at the right time.
“We do not want to overwhelm our users with so many options,” Alimin said.
“We want our users, despite their different preferences and needs, to see things or inventory that is relevant or of interest to them when opening our app, especially on our homepage.”
Pre-2019, Alimin said the company used “a combination of manual inventory curation by our operations team, and also rule-based solution” to determine what offers to show customers.
“Unfortunately, this soon proved to be not scalable, especially as we needed to regularly refresh the inventory to show to the users,” he said.
“These operational efforts and also the rules simply became too much and complex, hence it was error-prone, too.”
Alimin said that led Traveloka to start exploring AI and machine learning (ML)-based personalisation models.
Immense promises
“The promises and the potential of AI-based personalisation were really immense,” he said.
“We would be able to showcase the relevant inventories to the users based on their past interaction data automatically, and more importantly in a scalable and justifiable manner.”
Traveloka started down this path in early 2019, and secured internal data science resources to stand up an inhouse-developed model.
Alimin noted that this was not without challenges: “There were a lot of competing projects that required personalisation,” he said. “Then it was [about] the time [needed] to build a good AI-based personalisation model.”
“It took us five months to deliver this first personalisation model, which was for our Xperience product.
“Then we spent the next six months improving the model further, such as adding the location and category filters, and also built another model for our restaurant reviews product.”
However, the onset of the pandemic meant that the data scientists working on personalisation were reassigned to more urgent work, such as helping Traveloka’s customer care teams handle huge support volumes and travel rescheduling or refund requests.
Alimin’s team went looking for another way to power its personalisation program of work.
It was through this that Traveloka “came across” Amazon Personalize as a potential solution.
It ran a test of Personalize and another unnamed third-party tool, and then compared the results to what its existing inhouse-developed personalisation model could produce.
“After one month of A-B tests, the results show that Personalize delivered 13 percent and 66 percent better clickthrough rates compared to the other third-party [tool] and also our inhouse model respectively,” Alimin said.
“At the same time, all three incurred more or less the same cost [to run].
“Since then we have been using Personalize to deliver personalised inventory recommendations across more products and services in Traveloka, such as flights, hotels and food delivery.”
Alimin said Personalize was trained initially using historical data held in a general data store managed by Traveloka’s central data team.
Transforming data
“We used AWS Glue for the ETL [extract, transform and load] to move data from our historical data store to S3, and transformed the data to the required data schema for Personalize,” he said.
“We then trained an initial model with the historical data and deployed the model as a real-time API endpoint.
“Amazon Personalize fully manages the data ingestion, feature engineering, model creation and the deployment of the scalable, real-time endpoint.
“This endpoint is then consumed by the application to get real-time personalised recommendations for our users.
“We feed the model with batch imports of daily events with the same Glue ETL process and re-train the model on a regular cadence.”
In addition to expanding the use of Personalize to more Traveloka-run products and services, Alimin said some improvements to the architecture are also planned.
These would include “enriching the data sent to Amazon Personalize to improve the performance of the existing models” and enabling “near real-time data sending to Amazon Personalize to enable [a] faster feedback loop.
He added that a lesson to be learned from Traveloka’s experiences is that personalisation “is a long journey” and that patience and continuous iteration of the models is required.