[paths] train = null dev = null vectors = null init_tok2vec = null [system] gpu_allocator = "pytorch" seed = 1 [nlp] lang = "zh" pipeline = ["transformer","tagger","parser","attribute_ruler","ner"] disabled = [] before_creation = null after_creation = null after_pipeline_creation = null batch_size = 64 vectors = {"@vectors":"spacy.Vectors.v1"} [nlp.tokenizer] @tokenizers = "spacy.zh.ChineseTokenizer" segmenter = "pkuseg" [components] [components.attribute_ruler] factory = "attribute_ruler" scorer = {"@scorers":"spacy.attribute_ruler_scorer.v1"} validate = false [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 = false nO = null [components.ner.model.tok2vec] @architectures = "spacy-curated-transformers.LastTransformerLayerListener.v1" width = ${components.transformer.model.hidden_width} upstream = "transformer" pooling = {"@layers":"reduce_mean.v1"} grad_factor = 1.0 [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 = 64 maxout_pieces = 2 use_upper = false nO = null [components.parser.model.tok2vec] @architectures = "spacy-curated-transformers.LastTransformerLayerListener.v1" width = ${components.transformer.model.hidden_width} upstream = "transformer" pooling = {"@layers":"reduce_mean.v1"} grad_factor = 1.0 [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-curated-transformers.LastTransformerLayerListener.v1" width = ${components.transformer.model.hidden_width} upstream = "transformer" pooling = {"@layers":"reduce_mean.v1"} grad_factor = 1.0 [components.transformer] factory = "curated_transformer" all_layer_outputs = false frozen = false [components.transformer.model] @architectures = "spacy-curated-transformers.BertTransformer.v1" vocab_size = 21128 hidden_width = 768 piece_encoder = {"@architectures":"spacy-curated-transformers.BertWordpieceEncoder.v1"} attention_probs_dropout_prob = 0.1 hidden_act = "gelu" hidden_dropout_prob = 0.1 intermediate_width = 3072 layer_norm_eps = 0.0 max_position_embeddings = 512 model_max_length = 512 num_attention_heads = 12 num_hidden_layers = 12 padding_idx = 0 type_vocab_size = 2 torchscript = false mixed_precision = false wrapped_listener = null [components.transformer.model.grad_scaler_config] [components.transformer.model.with_spans] @architectures = "spacy-curated-transformers.WithStridedSpans.v1" stride = 152 window = 208 batch_size = 384 [corpora] [corpora.dev] @readers = "spacy.Corpus.v1" path = ${paths.dev} gold_preproc = false max_length = 0 limit = 0 augmenter = null [corpora.train] @readers = "spacy.Corpus.v1" path = ${paths.train} gold_preproc = false max_length = 0 limit = 0 augmenter = null [training] train_corpus = "corpora.train" dev_corpus = "corpora.dev" seed = ${system:seed} gpu_allocator = ${system:gpu_allocator} dropout = 0.1 accumulate_gradient = 3 patience = 5000 max_epochs = 0 max_steps = 20000 eval_frequency = 1000 frozen_components = [] before_to_disk = null annotating_components = [] before_update = null [training.batcher] @batchers = "spacy.batch_by_words.v1" discard_oversize = false size = 2000 tolerance = 0.2 get_length = null [training.logger] @loggers = "spacy.ConsoleLogger.v1" progress_bar = false [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 = true eps = 0.00000001 [training.optimizer.learn_rate] @schedules = "warmup_linear.v1" warmup_steps = 250 total_steps = 20000 initial_rate = 0.00005 [training.score_weights] tag_acc = 0.32 dep_uas = 0.0 dep_las = 0.32 dep_las_per_type = null sents_p = null sents_r = null sents_f = 0.04 ents_f = 0.32 ents_p = 0.0 ents_r = 0.0 ents_per_type = null speed = 0.0 [pretraining] [initialize] vocab_data = null vectors = ${paths.vectors} init_tok2vec = ${paths.init_tok2vec} before_init = null after_init = null [initialize.components] [initialize.components.ner] [initialize.components.ner.labels] @readers = "spacy.read_labels.v1" path = "corpus/labels/ner.json" require = false [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.components.transformer] [initialize.components.transformer.encoder_loader] @model_loaders = "spacy-curated-transformers.HFTransformerEncoderLoader.v1" name = "bert-base-chinese" revision = "main" [initialize.components.transformer.piecer_loader] @model_loaders = "spacy-curated-transformers.HFPieceEncoderLoader.v1" name = "bert-base-chinese" revision = "main" [initialize.lookups] @misc = "spacy.LookupsDataLoader.v1" lang = ${nlp.lang} tables = [] [initialize.tokenizer] pkuseg_model = "assets/pkuseg_model" pkuseg_user_dict = "default"