MAQUI is a web application that supports expressive querying and flexible pattern mining for exploring event sequence data. It is a collaborative effort between researchers at Georgia Tech and Adobe Research. For more information about the project, please refer to our paper at IEEE VIS 2018:
MAQUI: Interweaving Queries and Pattern Mining for Recursive Event Sequence Exploration
Po-Ming Law, Zhicheng Liu, Sana Malik, and Rahul C. Basole
IEEE Transactions on Visualization and Computer Graphics (IEEE VIS 2018)
This video walks you through the basic funcationality of MAQUI. This video demonstrates how MAQUI can be used for exploring the Foursquare dataset.
You need to install Python 3 (rather than Python 2), and Flask to run the system. Java is also needed as MAQUI uses SPMF for pattern mining. Chrome is recommended as the system was only tested with Chrome.
The following are the instructions and commands for running the system using a Mac:
1. Clone the repository using Terminal.
git clone https://github.com/terrancelaw/MAQUI.git
2. Go to the folder named "MAQUI".
cd MAQUI
3. Go to the server folder.
cd server
4. Start the Python server (you need Python 3 for the system to work properly).
python server.py
5. Visit http://localhost:5000/ using Chrome.
The data folder contains a smaller set of the Foursquare dataset. The following are the things you need to know while importing your own data into MAQUI.
MAQUI assumes that each event has multiple attributes. Attributes associated with an event are called event attributes. MAQUI further assumes each event sequence to have multiple attributes. These attributes associated with an event sequence are called record attributes.
For example, a patient (male, 38 years old) may went through this sequence of events in his visit to an emergency department: Arrival -> Triage Start -> Triage End -> Exit. The event attribute for the first event is Event=Arrival. The record attributes are Gender=Male, and Age=38.
While each event only has one attribute in above example, MAQUI can handle event sequence data in which an event has multiple attributes. It also works for datasets that do not contain record attributes.
Events and record attributes are stored respectively in event.csv and recordAttributes.csv in the data folder. For event.csv, the header should be in the format "ID,time,[a list of event attributes]". Time should be in the format "2015-05-01 00:43:28". For recordAttributes.csv, the header should be "ID,[a list of record attributes]" (if there are no record attributes, simply keep ID to be a unique list of IDs and omit the list of record attributes). The character "=" should not appear in any attribute values.
The current prototype should work fine for data sets that contain 100,000 to 200,000 events and a few hundreds event types for an attribute. We are working on making MAQUI more scalable:)
Please contact Terrance Law if you have any comments or encounter any issues running the system.