Skip to content
Model-based propositionalization for outlier detection
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


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.


  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/*"
    • java -cp ".:./lib/*" Convert_table > result.txt

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

You can’t perform that action at this time.