时序图关联规则(TGR)
- 单机
- 多线程
- 分布式
- 单线程
- 单机
- 多线程
时序图关联规则(TGR)的发现算法(TGRD)
mkdir ./build/ && cd ./build/
cmake ../
make tgraph_discover
cd ../不指定 time_window.yaml:
./build/tgraph_discover ${discover_yaml_file}指定 time_window.yaml:
./build/tgraph_discover ${discover_yaml_file} ${time_window_yaml_file}discover.yaml配置文件格式如下:
Graph:
Name: 时序图名字
Dir: 时序图所在文件夹
VertexFile: 点文件csv
EdgeFile: 边文件csv
OutputGraph:
Name: 发现的TGR名字
Dir: 发现的Top-K个TGR所在文件夹
Settings:
NodeXLabel: q(x,y)的x
NodeYLabel: q(x,y)的y
EdgeQLabel: q(x,y)的q
EdgeQHasOrder: 预测边是否有次序
SuppRLimit: 若supp_r<SuppRLimit,则不进入TopK计算以及拓展
TopK: TopK TGR的数目
Radius: TGR的最大边数
EdgeFrequency: 边扩展时,增加的边标签需要满足的最小频率
ThreadNum: 使用的线程数量time_window.yaml配置文件格式如下:
TimeWindowNumber: 按照给定时间窗口数目划分(优先考虑)
TimeWindowSize: 按照给定时间窗口大小划分
UsePartition: 是否使用时间窗口对时序图进行划分若不写time_window.yaml配置文件,默认采用一个时序图分区
- 分布式
- 单线程
基于时序图关联规则的事件预测算法(TGREP)
mkdir ./build/ && cd ./build/
cmake ../
make tgraph_apply
cd ../# 参数详见MPI文档
mpirun -N xxx -n yyy -c zzz ./tgraph_apply ${apply_yaml_file_name}apply.yaml配置文件格式如下:
Graph:
Name: 时序图名字
Dir: 时序图所在文件夹
VertexFile: 点文件csv
EdgeFile: 边文件csv
TGR:
- Name: TGR名字
Dir: TGR所在目录
VertexFile: 点文件csv
EdgeFile: 边文件csv
LiteralX: LiteralX文件csv,此处为空
LiteralY: LiteralY文件csv,包含预测边
OutputGraph: 匹配结果存储目录
Name: 匹配结果文件名字
Dir: 匹配结果所在目录所有匹配结果写在一个csv,名字为Name_match.csv,格式如下:
match_id,query id1,query id2,....
1,target id1,target id2.....
2,target id1,target id2.....