[paths] train = "corpus/parser/perseus/train" dev = "corpus/parser/perseus/dev" vectors = null init_tok2vec = null [system] gpu_allocator = null seed = 0 [nlp] lang = "grc" pipeline = ["tok2vec","morphologizer","tagger","parser","lemmatizer","ner","attribute_ruler"] batch_size = 128 disabled = [] before_creation = null after_creation = null after_pipeline_creation = null tokenizer = {"@tokenizers":"spacy.Tokenizer.v1"} vectors = {"@vectors":"spacy.Vectors.v1"} [components] [components.attribute_ruler] factory = "attribute_ruler" scorer = {"@scorers":"spacy.attribute_ruler_scorer.v1"} validate = false [components.lemmatizer] factory = "trainable_lemmatizer" backoff = "orth" min_tree_freq = 1 overwrite = false scorer = {"@scorers":"spacy.lemmatizer_scorer.v1"} top_k = 5 [components.lemmatizer.model] @architectures = "spacy.Tagger.v2" nO = null normalize = false [components.lemmatizer.model.tok2vec] @architectures = "spacy.HashEmbedCNN.v2" pretrained_vectors = false width = 96 depth = 4 embed_size = 2000 window_size = 1 maxout_pieces = 3 subword_features = true [components.morphologizer] factory = "morphologizer" extend = false label_smoothing = 0.0 overwrite = true scorer = {"@scorers":"spacy.morphologizer_scorer.v1"} [components.morphologizer.model] @architectures = "spacy.Tagger.v2" nO = null normalize = false [components.morphologizer.model.tok2vec] @architectures = "spacy.Tok2VecListener.v1" width = ${components.tok2vec.model.encode.width} upstream = "tok2vec" [components.ner] factory = "ner" incorrect_spans_key = null moves = null scorer = {"@scorers":"spacy.ner_scorer.v1"} update_with_oracle_cut_size = 100 [components.ner.model] @architectures = "spacy.TransitionBasedParser.v2" state_type = "ner" extra_state_tokens = false hidden_width = 64 maxout_pieces = 2 use_upper = true nO = null [components.ner.model.tok2vec] @architectures = "spacy.Tok2VecListener.v1" width = ${components.tok2vec.model.encode.width} upstream = "tok2vec" [components.parser] factory = "parser" learn_tokens = false min_action_freq = 30 moves = null scorer = {"@scorers":"spacy.parser_scorer.v1"} update_with_oracle_cut_size = 100 [components.parser.model] @architectures = "spacy.TransitionBasedParser.v2" state_type = "parser" extra_state_tokens = false hidden_width = 128 maxout_pieces = 3 use_upper = true nO = null [components.parser.model.tok2vec] @architectures = "spacy.Tok2VecListener.v1" width = ${components.tok2vec.model.encode.width} upstream = "tok2vec" [components.tagger] factory = "tagger" label_smoothing = 0.0 neg_prefix = "!" overwrite = false scorer = {"@scorers":"spacy.tagger_scorer.v1"} [components.tagger.model] @architectures = "spacy.Tagger.v2" nO = null normalize = false [components.tagger.model.tok2vec] @architectures = "spacy.Tok2VecListener.v1" width = ${components.tok2vec.model.encode.width} upstream = "tok2vec" [components.tok2vec] factory = "tok2vec" [components.tok2vec.model] @architectures = "spacy.Tok2Vec.v2" [components.tok2vec.model.embed] @architectures = "spacy.MultiHashEmbed.v2" width = ${components.tok2vec.model.encode.width} attrs = ["NORM","PREFIX","SUFFIX","SHAPE"] rows = [5000,2500,2500,2500] include_static_vectors = false [components.tok2vec.model.encode] @architectures = "spacy.MaxoutWindowEncoder.v2" width = 256 depth = 8 window_size = 1 maxout_pieces = 3 [corpora] [corpora.dev] @readers = "spacy.Corpus.v1" path = ${paths.dev} max_length = 0 gold_preproc = false limit = 0 augmenter = null [corpora.train] @readers = "spacy.Corpus.v1" path = ${paths.train} max_length = 0 gold_preproc = false limit = 0 augmenter = null [training] dev_corpus = "corpora.dev" train_corpus = "corpora.train" seed = ${system.seed} gpu_allocator = ${system.gpu_allocator} dropout = 0.1 accumulate_gradient = 1 patience = 5000 max_epochs = 0 max_steps = 20000 eval_frequency = 1000 frozen_components = ["lemmatizer"] annotating_components = [] before_to_disk = null before_update = null [training.batcher] @batchers = "spacy.batch_by_words.v1" discard_oversize = false tolerance = 0.2 get_length = null [training.batcher.size] @schedules = "compounding.v1" start = 100 stop = 1000 compound = 1.001 t = 0.0 [training.logger] @loggers = "spacy.WandbLogger.v3" project_name = "greCy" remove_config_values = ["paths.train","paths.dev","corpora.train.path","corpora.dev.path"] log_dataset_dir = "./corpus" model_log_interval = 1000 entity = null run_name = null [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 = 0.00000001 learn_rate = 0.001 [training.score_weights] pos_acc = 0.04 morph_acc = 0.04 morph_per_feat = null tag_acc = 0.08 dep_uas = 0.04 dep_las = 0.04 dep_las_per_type = null sents_p = null sents_r = null sents_f = null lemma_acc = 0.38 ents_f = 0.38 ents_p = 0.0 ents_r = 0.0 ents_per_type = null [pretraining] [initialize] vectors = ${paths.vectors} init_tok2vec = ${paths.init_tok2vec} vocab_data = null lookups = null before_init = null after_init = null [initialize.components] [initialize.components.attribute_ruler] [initialize.components.attribute_ruler.patterns] @readers = "srsly.read_json.v1" path = "data/augments/attribute_ruler_patterns.json" [initialize.components.parser] [initialize.components.parser.labels] @readers = "spacy.read_labels.v1" path = "corpus/labels/parser.json" require = false [initialize.components.tagger] [initialize.components.tagger.labels] @readers = "spacy.read_labels.v1" path = "corpus/labels/tagger.json" require = false [initialize.tokenizer]