Skip to content

sfu-cl-lab/etl-outlier-detection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 

Repository files navigation

outlier-detection

Model-based propositionalization for outlier detection

Transforms features learned with a relational BN model into a single table to be used in a standard single-table outlier detection method.

Input:

  1. A relational database
  2. A target entity set (e.g. Movies in IMDB)
  3. A learned Bayesian network (using FactorBase).

Output: A single data table where each row represents a target instance and each column represents a conjunctive relational feature.

How to Use - Overview

  1. Run Bayesian Network to get Contingency Tables

    We provide FactorBase to make a Bayesian network that shows probabilistic dependencies between the relationships and attributes represented in the database.

    Note that the default setting of the original contingency tables in source code is "unielwin_CT" database. So before compile you should modify the scripts/setup.sql to replace "unielwin_CT" with correct original table path.

  2. Point to the required database in your MySQL server

    Download the source code to your local computer. Modify src/config.cfg with your own configuration according to the sample format explained in the image.

    Sample Configuration.

    The "dbname" represents the name of schema which stores the converted tables.

    The "column" represents the name of the column where the primary key is located.

    The "tablename" represents the name of the contingency table in original schema.

  3. Compile & Run

    • Go into src folder
    • javac -cp ".:./lib/*" Convert_table.java
    • java -cp ".:./lib/*" Convert_table > result.txt

    Then you can check the converted table in your "dbname".

About

Model-based propositionalization for outlier detection

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •