Skip to content
Snippets Groups Projects
main.py 1.59 KiB
Newer Older
Franck Dary's avatar
Franck Dary committed
#! /usr/bin/env python3

import sys
Franck Dary's avatar
Franck Dary committed
################################################################################
if __name__ == "__main__" :
  parser = argparse.ArgumentParser()
  parser.add_argument("mode", type=str,
    help="What to do : train | decode")
  parser.add_argument("type", type=str,
    help="Type of train or decode. random | oracle")
  parser.add_argument("corpus", type=str,
    help="Name of the CoNLL-U file. Train file for train mode and input file for decode mode.")
  parser.add_argument("model", type=str,
    help="Path to the model directory.")
  parser.add_argument("--iter", "-n", default=5,
    help="Number of training epoch.")
  parser.add_argument("--batchSize", default=64,
    help="Size of each batch.")
  parser.add_argument("--dev", default=None,
    help="Name of the CoNLL-U file of the dev corpus.")
  parser.add_argument("--debug", "-d", default=False, action="store_true",
    help="Print debug infos on stderr.")
  parser.add_argument("--silent", "-s", default=False, action="store_true",
    help="Don't print advancement infos.")
Franck Dary's avatar
Franck Dary committed

  os.makedirs(args.model, exist_ok=True)
Franck Dary's avatar
Franck Dary committed

  if args.mode == "train" :
    Train.trainMode(args.debug, args.corpus, args.type, args.model, int(args.iter), int(args.batchSize), args.dev, args.silent)
  elif args.mode == "decode" :
    Decode.decodeMode(args.debug, args.corpus, args.type, args.model)
  else :
    print("ERROR : unknown mode '%s'"%args.mode, file=sys.stderr)
    exit(1)
Franck Dary's avatar
Franck Dary committed
################################################################################