vpermilp commited on
Commit
a66fbd3
·
verified ·
1 Parent(s): ab4826b

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +24 -24
README.md CHANGED
@@ -104,32 +104,32 @@ printf 'Қазақша\nHello\n' | spellman detect --lines # kaz /
104
 
105
  | eval | accuracy |
106
  |---|---|
107
- | held-out mix (225,559 rows, pristine test) | 98.62% |
108
- | Tatoeba (37,051, out-of-domain) | 98.57% |
109
- | Tatoeba granularity ladder (word / pair / triple) | 66.0 / 86.4 / 93.5 |
110
- | wild Russian tweets (2,606, label-audited; 61% @mentions, 20% URLs) | 91.17% |
111
- | COSMUS gold-labeled wild Russian (2,808, unseen) | 94.66% |
 
112
  | throughput | ~3.6 µs/sample (fp16 JIT plan, CPU) |
113
 
114
- On identical eval rows it beats fastText lid.176 (Tatoeba 94.90% →
115
- 98.57%) and lingua 1.8 high-accuracy on every shared language after the
116
- wild-data lane, at ~30× its speed; whichlang and lingua cover only 10
117
- and 17 of these 30 classes respectively. Against open-LID SOTA GlotLID
118
- v3 it wins the wild held-out workload (98.62 vs 94.76) and the
119
- single-word rung (66.0 vs 43.9) while running ~100× faster; GlotLID's
120
- much larger training set still wins clean out-of-domain sentences
121
- (99.25 vs 98.57).
122
 
123
  ## Training data
124
 
125
- FineWeb-2 per-language configs sampled as line-windows (ODC-BY) +
126
- FineWeb (English), ~104k Tatoeba sentences (CC BY 2.0 FR), per-language
127
- community/parallel corpora for the weak classes, and a wild-register
128
- lane of real social media: 1.85M Ukrainian tweets (ukr-twi-corpus),
129
- Telegram Uzbek (tahrirchi/uz-crawl), Chuvash web corpora (CC0), Kazakh
130
- reviews (KazSAnDRA), Leipzig community crawls (ky/tg/uz), cardiffnlp
131
- multilingual tweets, sentiment140, German-politics 2025 tweets, and
132
- Portuguese/Brazilian tweets — every source LID-hygiene-filtered with
133
- twin-language protection. The full recipe is recorded in the repository
134
- (data_mix2/manifest.json). Training methodology and the full recipe are
135
- documented in the spellman repository (design doc + training guide).
 
104
 
105
  | eval | accuracy |
106
  |---|---|
107
+ | held-out mix (239,042 rows, pristine test) | 98.30% |
108
+ | Tatoeba (37,051, out-of-domain) | 98.42% |
109
+ | Tatoeba granularity ladder (word / pair / triple) | 66.7 / 86.2 / 93.3 |
110
+ | wild Russian tweets (2,606, label-audited; 61% @mentions, 20% URLs) | 92.56% |
111
+ | COSMUS gold-labeled wild Russian (2,808, unseen) | 96.79% |
112
+ | short-utterance referee (orthography-certified, ≤19 chars) | 89.90% |
113
  | throughput | ~3.6 µs/sample (fp16 JIT plan, CPU) |
114
 
115
+ On identical eval rows it beats fastText lid.176 (Tatoeba 94.90% vs
116
+ 98.42%) and lingua 1.8 high-accuracy on the shared languages at ~30x
117
+ its speed; whichlang and lingua cover only 10 and 17 of these 30
118
+ classes. Against open-LID SOTA GlotLID v3 it wins the wild held-out
119
+ workload (98.30 vs 93.58), the single-word rung (66.7 vs 43.9), the
120
+ wild-Russian referee (92.56 vs 82.73) and the short-utterance referee
121
+ (89.90 vs 71.25) while running ~100x faster; GlotLID's larger training
122
+ set still leads clean out-of-domain sentences (99.25 vs 98.42).
123
 
124
  ## Training data
125
 
126
+ FineWeb-2 per-language configs, ~104k Tatoeba sentences (CC BY 2.0 FR),
127
+ per-language community/parallel corpora, a wild social-media lane (1.85M
128
+ Ukrainian tweets, Telegram Uzbek, Chuvash CC0 web, Kazakh reviews,
129
+ Leipzig community crawls, cardiffnlp multilingual tweets, sentiment140,
130
+ 2025 German-politics tweets), a verified short-utterance lane (3-19 char
131
+ wild rows under 2-of-3 judge consensus and orthographic twin rules), and
132
+ lexically-diverse rus/ukr sets selected by greedy lemma coverage
133
+ (pymorphy3; 93% of the top-15k lemmas in 14k rows). Every source
134
+ LID-hygiene-filtered with twin-language protection; the exact recipe is
135
+ recorded in the repository (data_mix4/manifest.json).