make_sequences.py 1.0 KB

12345678910111213141516171819202122232425262728
  1. import os
  2. from typing import Any
  3. from src.diff2vec.graph import UndirectedGraph
  4. from src.diff2vec.euler import SubGraphSequences
  5. def main(args: Any):
  6. graph: UndirectedGraph = UndirectedGraph()
  7. graph.from_pickle(args.edges_file)
  8. sequencer: SubGraphSequences = \
  9. SubGraphSequences(graph, args.cover_size, seed=args.seed)
  10. sequencer.get_sequences(args.components_file, args.sequences_file)
  11. if __name__ == "__main__":
  12. from argparse import ArgumentParser
  13. parser: ArgumentParser = ArgumentParser()
  14. parser.add_argument('edges_file', type=str, help='path to edges pickle file')
  15. parser.add_argument('components_file', type=str, help='path to components file')
  16. parser.add_argument('sequences_file', type=str, help='path to sequences file')
  17. parser.add_argument('--cover-size', type=int, default=80,
  18. help='size of subgraph (default: 80)')
  19. parser.add_argument('--seed', type=int, default=42, help='random seed (default: 42)')
  20. args: Any = parser.parse_args()
  21. main(args)