Reels is a library to analyze sequences of events extracted from transactional data. These events can be automatically discovered or manually defined. Reels identifies events by assigning them event codes and creates clips, which are sequences of (code, time of occurrence) tuples for each client. Using these clips, a model can be generated to predict the time at which target events may occur in the future.
Reels was born to analyze web navigation transactional data. It has natural applications in cybersecurity and everywhere where predicting events or scoring risk of events based on past events makes sense. The definition of relevant event may be discovered from transactional data or is established as business domain knowledge. It can also be semi-automated using Reels event optimizer to iterate and learn how events predict a target.
Reels is a C++ implementation with a Python interface. It is single threaded and can seamlessly operate over millions of clients and billions of records with hundreds of thousands of events. To further parallelize, it can partition the data by dividing the set of clients into smaller subsets and operate on each subset independently.
Reels is implemented in four classes.
pip install mercury-reels
To work with Reels command line or develop Reels, you can set up an environment with git, gcc, make and the following tools:
git clone https://github.com/BBVA/mercury-reels.git cd mercury-reels/src make
Make without arguments gives help. Try all the options. Everything should work assuming the tools are installed.
Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ Copyright 2022-23, Banco de Bilbao Vizcaya Argentaria, S.A. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0