Lazy-Val commited on
Commit
2bc8cef
·
verified ·
1 Parent(s): 3879f20

Update spaCy pipeline

Browse files
README.md CHANGED
@@ -9,7 +9,7 @@ language:
9
  | --- | --- |
10
  | **Name** | `de_trf_reflex_nrp` |
11
  | **Version** | `0.0.0` |
12
- | **spaCy** | `>=3.8.3,<3.9.0` |
13
  | **Default Pipeline** | `ner_transformer`, `ner`, `base_transformer`, `morphologizer`, `tagger`, `parser`, `trainable_lemmatizer` |
14
  | **Components** | `ner_transformer`, `ner`, `base_transformer`, `morphologizer`, `tagger`, `parser`, `trainable_lemmatizer` |
15
  | **Vectors** | 0 keys, 0 unique vectors (0 dimensions) |
 
9
  | --- | --- |
10
  | **Name** | `de_trf_reflex_nrp` |
11
  | **Version** | `0.0.0` |
12
+ | **spaCy** | `>=3.8.7,<3.9.0` |
13
  | **Default Pipeline** | `ner_transformer`, `ner`, `base_transformer`, `morphologizer`, `tagger`, `parser`, `trainable_lemmatizer` |
14
  | **Components** | `ner_transformer`, `ner`, `base_transformer`, `morphologizer`, `tagger`, `parser`, `trainable_lemmatizer` |
15
  | **Vectors** | 0 keys, 0 unique vectors (0 dimensions) |
base_transformer/model CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:01c4a6205b2ab5026ba2064eb50e10d668530bc92f42ed9b3d5b6adf718f1163
3
- size 440759205
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fe87b1b20d663c6b3a4639ac363c010d54c8dd148277205284de0dfefbac246c
3
+ size 440759602
config.cfg CHANGED
@@ -16,7 +16,7 @@ before_creation = null
16
  after_creation = null
17
  after_pipeline_creation = null
18
  batch_size = 1000
19
- tokenizer = {"@tokenizers":"spacy.Tokenizer.v1"}
20
  vectors = {"@vectors":"spacy.Vectors.v1"}
21
 
22
  [components]
@@ -228,21 +228,24 @@ eps = 0.00000001
228
  learn_rate = 0.001
229
 
230
  [training.score_weights]
231
- ents_f = 0.2
232
  ents_p = 0.0
233
  ents_r = 0.0
234
  ents_per_type = null
235
- pos_acc = 0.1
236
- morph_acc = 0.1
237
  morph_per_feat = null
238
- tag_acc = 0.2
239
- dep_uas = 0.1
240
- dep_las = 0.1
 
 
 
241
  dep_las_per_type = null
242
  sents_p = null
243
  sents_r = null
244
  sents_f = 0.0
245
- lemma_acc = 0.2
246
 
247
  [pretraining]
248
 
 
16
  after_creation = null
17
  after_pipeline_creation = null
18
  batch_size = 1000
19
+ tokenizer = {"@tokenizers":"customize_tokenizer"}
20
  vectors = {"@vectors":"spacy.Vectors.v1"}
21
 
22
  [components]
 
228
  learn_rate = 0.001
229
 
230
  [training.score_weights]
231
+ ents_f = 0.22
232
  ents_p = 0.0
233
  ents_r = 0.0
234
  ents_per_type = null
235
+ pos_acc = 0.0
236
+ morph_acc = 0.11
237
  morph_per_feat = null
238
+ tag_acc = 0.22
239
+ tag_micro_p = null
240
+ tag_micro_r = null
241
+ tag_micro_f = null
242
+ dep_uas = 0.11
243
+ dep_las = 0.11
244
  dep_las_per_type = null
245
  sents_p = null
246
  sents_r = null
247
  sents_f = 0.0
248
+ lemma_acc = 0.22
249
 
250
  [pretraining]
251
 
de_trf_reflex_nrp-0.0.0-py3-none-any.whl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:a4fd4fd6042c3d9fa691f5931d278afc60d6fd85c280b03dfb561d5c8d33c265
3
- size 865728325
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8847b573ed146775d3d3258db3ae3c39f23920d3c5e1117d0db18d774380eb0f
3
+ size 865731526
meta.json CHANGED
@@ -7,8 +7,8 @@
7
  "email":"",
8
  "url":"",
9
  "license":"",
10
- "spacy_version":">=3.8.3,<3.9.0",
11
- "spacy_git_version":"be0fa81",
12
  "vectors":{
13
  "width":0,
14
  "vectors":0,
@@ -1849,7 +1849,7 @@
1849
 
1850
  ],
1851
  "requirements":[
1852
- "spacy-transformers>=1.3.8,<1.4.0",
1853
- "spacy>=3.8.3,<3.9.0"
1854
  ]
1855
  }
 
7
  "email":"",
8
  "url":"",
9
  "license":"",
10
+ "spacy_version":">=3.8.7,<3.9.0",
11
+ "spacy_git_version":"4b65aa7",
12
  "vectors":{
13
  "width":0,
14
  "vectors":0,
 
1849
 
1850
  ],
1851
  "requirements":[
1852
+ "spacy-transformers>=1.3.9,<1.4.0",
1853
+ "spacy>=3.8.7,<3.9.0"
1854
  ]
1855
  }
ner/model CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:f0693e3662125cda25380a809a5937f1c78ce427c643bf0eb5973c78a99b8389
3
  size 219690
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:969c0055d7b1e700d7ad7b138e74aba275f3a5adb3db1c5692047e4d60ff58e9
3
  size 219690
ner/moves CHANGED
@@ -1 +1 @@
1
- ��movesٴ{"0":{},"1":{"ORG":5064,"LOC":4932,"PER":4078},"2":{"ORG":5064,"LOC":4932,"PER":4078},"3":{"ORG":5064,"LOC":4932,"PER":4078},"4":{"ORG":5064,"LOC":4932,"PER":4078,"":1},"5":{"":1}}�cfg��neg_key�
 
1
+ ��movesٴ{"0":{},"1":{"LOC":5568,"ORG":5550,"PER":4662},"2":{"LOC":5568,"ORG":5550,"PER":4662},"3":{"LOC":5568,"ORG":5550,"PER":4662},"4":{"LOC":5568,"ORG":5550,"PER":4662,"":1},"5":{"":1}}�cfg��neg_key�
ner_transformer/model CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:a29a195d4656bc285e8dba14c78e1020f8c2e22db156d0c8ea83e7cb1a914bef
3
- size 440759212
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7c94683b8cce69d51530a2a91de1a4dee720b1dc60e2abbdb702f9d0d08db7fd
3
+ size 440759609
tokenizer CHANGED
The diff for this file is too large to render. See raw diff
 
use_custom_tokenizer.py CHANGED
@@ -24,17 +24,26 @@ EXTENDED_LETTER_RANGE = "A-Za-zäöüÄÖÜàòèéìù"
24
  DATE = r"[0-3][1-9]\.[0-1][1-9]\.[1-2][0-9]{3}"
25
  TOP_LEVEL_DOMAINS = "ch|at|de|com|edu|org|gov|net|fr|uk|be|es|pl|it|eu|nl|ba|cz|dk|al|ad|bg|by|fi|gr|ie|li|lu|no|pt|ro|rs|ru|se|si|sk"
26
 
 
 
 
 
 
 
27
  DOT_AFTER_WORD = [
28
- rf"(?<!www\.)(?<=([a-zA-ZäöüÄÖÜ]){{{i}}})\.(?!({TOP_LEVEL_DOMAINS}))"
29
  for i in range(3, 30)
30
  ]
31
 
 
32
  DOT_AFTER_DATE = rf"(?<=({DATE}))\."
33
 
34
  infix_res = [
35
- r"[\(\[\]\)]",
36
  r"(?<=\.--)\.", # DOT after .--
37
- rf"\.(?=[{EXTENDED_LETTER_RANGE}]{{3,20}})", # DOT before word
 
 
38
  r"'\.\.", # e.g., 'Tscheicha'.. -> "Tscheicha" "'..", then split ".." as suffix
39
  *DOT_AFTER_WORD, # when there is no space after the dot
40
  r"[A-Z](?=\. )", # DOT after capital letter
@@ -45,6 +54,11 @@ LETTER_DOUBLE_ENDING_DOT_VAR_LENGTH = [ # DOT after letter, e.g., A.G., or u.s.
45
  rf"(?<=([{EXTENDED_LETTER_RANGE}]\.){{{i}}})\." for i in range(1, 30)
46
  ]
47
 
 
 
 
 
 
48
  suffix_res = [
49
  r"(?<=\d)[\.]", # DOT after number
50
  r"(?<=[\.])[\]\)]", # Closing brackets with DOT before
@@ -63,10 +77,12 @@ NUMBER_SIGN_NUMBER_FIXED = r"(?<=[0-9])[+\*^](?=[0-9])"
63
 
64
 
65
  # Given a nlp object, return a custom tokenizer that splits on special cases and with unwanted tokenization removed
66
- def custom_tokenizer(nlp):
67
  nlp.tokenizer = Tokenizer(nlp.vocab)
68
 
69
- prefix_regex = compile_prefix_regex(nlp.Defaults.prefixes)
 
 
70
  nlp.tokenizer.prefix_search = prefix_regex.search
71
 
72
  # We use the default infixes and remove some cases that lead to unwanted tokenization.
 
24
  DATE = r"[0-3][1-9]\.[0-1][1-9]\.[1-2][0-9]{3}"
25
  TOP_LEVEL_DOMAINS = "ch|at|de|com|edu|org|gov|net|fr|uk|be|es|pl|it|eu|nl|ba|cz|dk|al|ad|bg|by|fi|gr|ie|li|lu|no|pt|ro|rs|ru|se|si|sk"
26
 
27
+ DOT_BEFORE_WORD = [
28
+ rf"(?<!www)\.(?=[{EXTENDED_LETTER_RANGE}]{{{i}}})(?!(({TOP_LEVEL_DOMAINS})\b))"
29
+ for i in range(3, 30)
30
+ ]
31
+
32
+
33
  DOT_AFTER_WORD = [
34
+ rf"(?<!www\.)(?<=([{EXTENDED_LETTER_RANGE}]){{{i}}})\.(?!({TOP_LEVEL_DOMAINS}))"
35
  for i in range(3, 30)
36
  ]
37
 
38
+
39
  DOT_AFTER_DATE = rf"(?<=({DATE}))\."
40
 
41
  infix_res = [
42
+ r"[\(\[\]\)\,\»\>\«\<]", # brackets, commas and ' that are without space
43
  r"(?<=\.--)\.", # DOT after .--
44
+ r"(?<=\,)\'",
45
+ *DOT_BEFORE_WORD, # DOT before word
46
+ # rf"(?<!www)\.(?=[{EXTENDED_LETTER_RANGE}]{{3,20}})",
47
  r"'\.\.", # e.g., 'Tscheicha'.. -> "Tscheicha" "'..", then split ".." as suffix
48
  *DOT_AFTER_WORD, # when there is no space after the dot
49
  r"[A-Z](?=\. )", # DOT after capital letter
 
54
  rf"(?<=([{EXTENDED_LETTER_RANGE}]\.){{{i}}})\." for i in range(1, 30)
55
  ]
56
 
57
+ prefix_res = [
58
+ rf"\.(?=[{EXTENDED_LETTER_RANGE}]{{3,20}})", # DOT before word
59
+ *DOT_BEFORE_WORD, # DOT before word
60
+ ]
61
+
62
  suffix_res = [
63
  r"(?<=\d)[\.]", # DOT after number
64
  r"(?<=[\.])[\]\)]", # Closing brackets with DOT before
 
77
 
78
 
79
  # Given a nlp object, return a custom tokenizer that splits on special cases and with unwanted tokenization removed
80
+ def custom_tokenizer(nlp) -> Tokenizer:
81
  nlp.tokenizer = Tokenizer(nlp.vocab)
82
 
83
+ prefixes = nlp.Defaults.prefixes
84
+ prefixes += prefix_res
85
+ prefix_regex = compile_prefix_regex(prefixes)
86
  nlp.tokenizer.prefix_search = prefix_regex.search
87
 
88
  # We use the default infixes and remove some cases that lead to unwanted tokenization.
vocab/strings.json CHANGED
The diff for this file is too large to render. See raw diff