Adaptive Skeleton Construction for Accurate DAG Learning
"ADL.m" is main function.
Note that the current code has only been debugged on Matlab (2018a) with a 64-bit Windows system.
function [DAG, time] = ADL(Data, Alpha, data_type)
- INPUT:
Data is the data matrix, and rows represent the number of samples and columns represent the number of nodes. If Data is a discrete dataset, the value in Data should start from 1.
Alpha is the significance level, e.g., 0.01 or 0.05.
data_type='dis' represents discrete data, and data_type='con' denotes continues data.
- OUTPUT:
DAG is a directed acyclic graph learned on a given dataset。
time is the runtime of the algorithm.
clear;
clc;
addpath(genpath('common_func/'));
alpha=0.01;
data=load('./dataset/discrete_data/Alarm_1000s.txt');
data=data+1;
[DAG, time] = ADL(data, alpha, 'dis');
clear;
clc;
addpath(genpath('common_func/'));
alpha=0.01;
data=load('./dataset/continuous_data/50n_1000s_data.txt');
[DAG, time] = ADL(data, alpha, 'con');
- Guo, Xianjie, et al. "Adaptive Skeleton Construction for Accurate DAG Learning." IEEE Transactions on Knowledge and Data Engineering (TKDE) (2023).