Skip to content

Latest commit

 

History

History
135 lines (106 loc) · 2.67 KB

File metadata and controls

135 lines (106 loc) · 2.67 KB

tgraph

简介

时序图关联规则(TGR)

tgraph_discover

  • 单机
  • 多线程

tgraph_apply

  • 分布式
  • 单线程

tgraph_discover

  • 单机
  • 多线程

简介

时序图关联规则(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}

Yaml 示例

discover yaml 示例

time_window yaml 示例

Yaml 文件格式

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配置文件,默认采用一个时序图分区

tgraph_apply

  • 分布式
  • 单线程

简介

基于时序图关联规则的事件预测算法(TGREP)

编译

mkdir ./build/ && cd ./build/
cmake ../
make tgraph_apply
cd ../

分布式运行

# 参数详见MPI文档
mpirun -N xxx -n yyy -c zzz ./tgraph_apply ${apply_yaml_file_name}

Yaml 示例

apply yaml 示例

Yaml 文件格式

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.....