[paths] train = "" dev = "" raw = null init_tok2vec = null [system] seed = 0 use_pytorch_for_gpu_memory = false [nlp] lang = null pipeline = [] load_vocab_data = true before_creation = null after_creation = null after_pipeline_creation = null [nlp.tokenizer] @tokenizers = "spacy.Tokenizer.v1" [components] # Training hyper-parameters and additional features. [training] seed = ${system.seed} dropout = 0.1 accumulate_gradient = 1 # Extra resources for transfer-learning or pseudo-rehearsal init_tok2vec = ${paths.init_tok2vec} raw_text = ${paths.raw} vectors = null # Controls early-stopping. 0 or -1 mean unlimited. patience = 1600 max_epochs = 0 max_steps = 20000 eval_frequency = 200 # Control how scores are printed and checkpoints are evaluated. score_weights = {} # Names of pipeline components that shouldn't be updated during training frozen_components = [] [training.logger] @loggers = "spacy.ConsoleLogger.v1" [training.train_corpus] @readers = "spacy.Corpus.v1" path = ${paths.train} # Whether to train on sequences with 'gold standard' sentence boundaries # and tokens. If you set this to true, take care to ensure your run-time # data is passed in sentence-by-sentence via some prior preprocessing. gold_preproc = false # Limitations on training document length max_length = 2000 # Limitation on number of training examples limit = 0 [training.dev_corpus] @readers = "spacy.Corpus.v1" path = ${paths.dev} # Whether to train on sequences with 'gold standard' sentence boundaries # and tokens. If you set this to true, take care to ensure your run-time # data is passed in sentence-by-sentence via some prior preprocessing. gold_preproc = false # Limitations on training document length max_length = 2000 # Limitation on number of training examples limit = 0 [training.batcher] @batchers = "batch_by_words.v1" discard_oversize = false tolerance = 0.2 [training.batcher.size] @schedules = "compounding.v1" start = 100 stop = 1000 compound = 1.001 [training.optimizer] @optimizers = "Adam.v1" beta1 = 0.9 beta2 = 0.999 L2_is_weight_decay = true L2 = 0.01 grad_clip = 1.0 use_averages = false eps = 1e-8 [training.optimizer.learn_rate] @schedules = "warmup_linear.v1" warmup_steps = 250 total_steps = 20000 initial_rate = 0.001