/DeepCEP_DAIS

Implementation of DeepCEP for DAIS paper

Primary LanguagePythonMIT LicenseMIT

DeepCEP: Deep Complex Event Processing Using Distributed Multimodal Information

This repo has an implemntation of our paper DeepCEP: Deep Complex Event Processing Using Distributed Multimodal Information

Framework Overview

DeepCEP is a framework for processing complex events with intergrated deep learning networks.

  • DeepCEP consists of 2 parts: Deep data abstractor and Uncertainty Robust CEP engine.
  • Deep data abstractor structure and abstract raw data into primitive events with semantic meanings.
    • Deep data abstractor use YOLOv3 objection detection model: Model from here, trained in Keras.
    • A primitive event is generated only when a "change of states" is observed.
  • Uncertainty Robust CEP engine is used for detect complex patterns while also calculate the probability of complex event happening:
    • CEP engine is inspired and modified from the SASE (Eugene Wu et. al, Berkeley 2006)CEP system, implemented in python and use ProbLog,
    • Ordered sub-list
    • Use a run-time stack to store the latest K events. (stack has fixed size. It can also be dynamic based on time window.)
  • Compilier stuff... ****to be added

Instruction

  1. Create Complex Event definition file, e.g. CE_example.txt
python 
  1. Use Compilier to read complex event definition. ****to be added
  2. Setup deep learning models on data abstractors.
  3. Initialize centralized CEP engine:
python server.py --argument
  1. Add distributed data abstractor:
python device.py --argument

Files:

  • Compiler: ***to be added
  • Data_abstractor:
    • Obj_Detector
    • Event_generator
  • CEP_engine:
    • sth
  • Images
  • server.py
  • device.py
  • requirements.txt
  • License

Maintainer