omarkamali commited on
Commit
4695733
·
verified ·
1 Parent(s): 9a7b63f

Upload all models and assets for bug (latest)

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +1 -0
  2. README.md +200 -166
  3. models/embeddings/aligned/bug_128d.bin +3 -0
  4. models/embeddings/aligned/bug_128d.meta.json +1 -0
  5. models/embeddings/aligned/bug_128d.projection.npy +3 -0
  6. models/embeddings/aligned/bug_128d_metadata.json +8 -0
  7. models/embeddings/aligned/bug_32d.bin +3 -0
  8. models/embeddings/aligned/bug_32d.meta.json +1 -0
  9. models/embeddings/aligned/bug_32d.projection.npy +3 -0
  10. models/embeddings/aligned/bug_32d_metadata.json +8 -0
  11. models/embeddings/aligned/bug_64d.bin +3 -0
  12. models/embeddings/aligned/bug_64d.meta.json +1 -0
  13. models/embeddings/aligned/bug_64d.projection.npy +3 -0
  14. models/embeddings/aligned/bug_64d_metadata.json +8 -0
  15. models/embeddings/monolingual/bug_128d.bin +2 -2
  16. models/embeddings/monolingual/bug_128d_metadata.json +1 -1
  17. models/embeddings/monolingual/bug_32d.bin +2 -2
  18. models/embeddings/monolingual/bug_32d_metadata.json +1 -1
  19. models/embeddings/monolingual/bug_64d.bin +2 -2
  20. models/embeddings/monolingual/bug_64d_metadata.json +1 -1
  21. models/subword_markov/bug_markov_ctx1_subword.parquet +2 -2
  22. models/subword_markov/bug_markov_ctx1_subword_metadata.json +2 -2
  23. models/subword_markov/bug_markov_ctx2_subword.parquet +2 -2
  24. models/subword_markov/bug_markov_ctx2_subword_metadata.json +2 -2
  25. models/subword_markov/bug_markov_ctx3_subword.parquet +2 -2
  26. models/subword_markov/bug_markov_ctx3_subword_metadata.json +2 -2
  27. models/subword_markov/bug_markov_ctx4_subword.parquet +2 -2
  28. models/subword_markov/bug_markov_ctx4_subword_metadata.json +2 -2
  29. models/subword_ngram/bug_2gram_subword.parquet +2 -2
  30. models/subword_ngram/bug_2gram_subword_metadata.json +2 -2
  31. models/subword_ngram/bug_3gram_subword.parquet +2 -2
  32. models/subword_ngram/bug_3gram_subword_metadata.json +2 -2
  33. models/subword_ngram/bug_4gram_subword.parquet +2 -2
  34. models/subword_ngram/bug_4gram_subword_metadata.json +2 -2
  35. models/subword_ngram/bug_5gram_subword.parquet +3 -0
  36. models/subword_ngram/bug_5gram_subword_metadata.json +7 -0
  37. models/tokenizer/bug_tokenizer_16k.model +2 -2
  38. models/tokenizer/bug_tokenizer_16k.vocab +0 -0
  39. models/tokenizer/bug_tokenizer_32k.model +2 -2
  40. models/tokenizer/bug_tokenizer_32k.vocab +0 -0
  41. models/tokenizer/bug_tokenizer_8k.model +1 -1
  42. models/tokenizer/bug_tokenizer_8k.vocab +0 -0
  43. models/vocabulary/bug_vocabulary.parquet +2 -2
  44. models/vocabulary/bug_vocabulary_metadata.json +9 -9
  45. models/word_markov/bug_markov_ctx1_word.parquet +2 -2
  46. models/word_markov/bug_markov_ctx1_word_metadata.json +2 -2
  47. models/word_markov/bug_markov_ctx2_word.parquet +2 -2
  48. models/word_markov/bug_markov_ctx2_word_metadata.json +2 -2
  49. models/word_markov/bug_markov_ctx3_word.parquet +2 -2
  50. models/word_markov/bug_markov_ctx3_word_metadata.json +2 -2
.gitattributes CHANGED
@@ -39,3 +39,4 @@ visualizations/position_encoding_comparison.png filter=lfs diff=lfs merge=lfs -t
39
  visualizations/tsne_sentences.png filter=lfs diff=lfs merge=lfs -text
40
  visualizations/tsne_words.png filter=lfs diff=lfs merge=lfs -text
41
  visualizations/zipf_law.png filter=lfs diff=lfs merge=lfs -text
 
 
39
  visualizations/tsne_sentences.png filter=lfs diff=lfs merge=lfs -text
40
  visualizations/tsne_words.png filter=lfs diff=lfs merge=lfs -text
41
  visualizations/zipf_law.png filter=lfs diff=lfs merge=lfs -text
42
+ visualizations/embedding_tsne_multilingual.png filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -1,6 +1,6 @@
1
  ---
2
  language: bug
3
- language_name: BUG
4
  language_family: austronesian_sulawesi
5
  tags:
6
  - wikilangs
@@ -10,11 +10,21 @@ tags:
10
  - n-gram
11
  - markov
12
  - wikipedia
 
 
 
 
 
 
 
 
 
 
13
  - monolingual
14
  - family-austronesian_sulawesi
15
  license: mit
16
  library_name: wikilangs
17
- pipeline_tag: feature-extraction
18
  datasets:
19
  - omarkamali/wikipedia-monthly
20
  dataset_info:
@@ -23,20 +33,20 @@ dataset_info:
23
  metrics:
24
  - name: best_compression_ratio
25
  type: compression
26
- value: 4.924
27
  - name: best_isotropy
28
  type: isotropy
29
- value: 0.0631
30
  - name: vocabulary_size
31
  type: vocab
32
  value: 0
33
  generated: 2026-01-03
34
  ---
35
 
36
- # BUG - Wikilangs Models
37
  ## Comprehensive Research Report & Full Ablation Study
38
 
39
- This repository contains NLP models trained and evaluated by Wikilangs, specifically on **BUG** Wikipedia data.
40
  We analyze tokenizers, n-gram models, Markov chains, vocabulary statistics, and word embeddings.
41
 
42
  ## 📋 Repository Contents
@@ -60,7 +70,7 @@ We analyze tokenizers, n-gram models, Markov chains, vocabulary statistics, and
60
  - [3. Markov Chain Evaluation](#3-markov-chain-evaluation)
61
  - [4. Vocabulary Analysis](#4-vocabulary-analysis)
62
  - [5. Word Embeddings Evaluation](#5-word-embeddings-evaluation)
63
- - [6. Morphological Analysis (Experimental)](#6-morphological-analysis)
64
  - [7. Summary & Recommendations](#7-summary--recommendations)
65
  - [Metrics Glossary](#appendix-metrics-glossary--interpretation-guide)
66
  - [Visualizations Index](#visualizations-index)
@@ -80,43 +90,43 @@ We analyze tokenizers, n-gram models, Markov chains, vocabulary statistics, and
80
 
81
  | Vocab Size | Compression | Avg Token Len | UNK Rate | Total Tokens |
82
  |------------|-------------|---------------|----------|--------------|
83
- | **8k** | 4.284x | 4.31 | 0.4916% | 36,818 |
84
- | **16k** | 4.514x | 4.54 | 0.5180% | 34,940 |
85
- | **32k** | 4.924x 🏆 | 4.96 | 0.5650% | 32,035 |
86
 
87
  ### Tokenization Examples
88
 
89
  Below are sample sentences tokenized with each vocabulary size:
90
 
91
- **Sample 1:** `Ita to Komun ri déparetema Allier Kategori:Komun ri Allier`
92
 
93
  | Vocab | Tokens | Count |
94
  |-------|--------|-------|
95
- | 8k | `▁ita ▁to ▁komun ▁ridéparetemaallierkategori : komun ▁ri ... (+1 more)` | 11 |
96
- | 16k | `▁ita ▁to ▁komun ▁ridéparetemaallierkategori : komun ▁ri ... (+1 more)` | 11 |
97
- | 32k | `▁ita ▁to ▁komun ▁ridéparetemaallierkategori : komun ▁ri ... (+1 more)` | 11 |
98
 
99
- **Sample 2:** `iyanaritu séuwa komun ri déparetema Manche ri Perancis. Ita to Komun ri déparete...`
100
 
101
  | Vocab | Tokens | Count |
102
  |-------|--------|-------|
103
- | 8k | `▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁manche ▁ri ▁perancis . ▁ita ... (+10 more)` | 20 |
104
- | 16k | `▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁manche ▁ri ▁perancis . ▁ita ... (+10 more)` | 20 |
105
- | 32k | `▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁manche ▁ri ▁perancis . ▁ita ... (+10 more)` | 20 |
106
 
107
- **Sample 3:** `iyanaritu séuwa komun ri déparetema Gard ri Perancis. Ita to Komun ri déparetema...`
108
 
109
  | Vocab | Tokens | Count |
110
  |-------|--------|-------|
111
- | 8k | `▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁gard ▁ri ▁perancis . ▁ita ... (+10 more)` | 20 |
112
- | 16k | `▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁gard ▁ri ▁perancis . ▁ita ... (+10 more)` | 20 |
113
- | 32k | `▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁gard ▁ri ▁perancis . ▁ita ... (+10 more)` | 20 |
114
 
115
 
116
  ### Key Findings
117
 
118
- - **Best Compression:** 32k achieves 4.924x compression
119
- - **Lowest UNK Rate:** 8k with 0.4916% unknown tokens
120
  - **Trade-off:** Larger vocabularies improve compression but increase model size
121
  - **Recommendation:** 32k vocabulary provides optimal balance for production use
122
 
@@ -134,11 +144,13 @@ Below are sample sentences tokenized with each vocabulary size:
134
  | N-gram | Variant | Perplexity | Entropy | Unique N-grams | Top-100 Coverage | Top-1000 Coverage |
135
  |--------|---------|------------|---------|----------------|------------------|-------------------|
136
  | **2-gram** | Word | 75 🏆 | 6.23 | 1,721 | 84.8% | 98.5% |
137
- | **2-gram** | Subword | 168 | 7.39 | 2,166 | 81.3% | 99.5% |
138
  | **3-gram** | Word | 118 | 6.89 | 2,060 | 74.9% | 98.6% |
139
- | **3-gram** | Subword | 512 | 9.00 | 10,883 | 62.7% | 89.5% |
140
- | **4-gram** | Word | 228 | 7.84 | 4,992 | 61.5% | 96.5% |
141
- | **4-gram** | Subword | 938 | 9.87 | 41,978 | 58.6% | 80.3% |
 
 
142
 
143
  ### Top 5 N-grams by Size
144
 
@@ -146,9 +158,9 @@ Below are sample sentences tokenized with each vocabulary size:
146
 
147
  | Rank | N-gram | Count |
148
  |------|--------|-------|
149
- | 1 | `komun ri` | 40,954 |
150
  | 2 | `ri déparetema` | 25,713 |
151
- | 3 | `kategori komun` | 15,119 |
152
  | 4 | `ita to` | 13,903 |
153
  | 5 | `to komun` | 13,889 |
154
 
@@ -157,7 +169,7 @@ Below are sample sentences tokenized with each vocabulary size:
157
  | Rank | N-gram | Count |
158
  |------|--------|-------|
159
  | 1 | `komun ri déparetema` | 25,709 |
160
- | 2 | `kategori komun ri` | 15,118 |
161
  | 3 | `to komun ri` | 13,889 |
162
  | 4 | `ita to komun` | 13,889 |
163
  | 5 | `iyanaritu séuwa komun` | 13,324 |
@@ -166,48 +178,68 @@ Below are sample sentences tokenized with each vocabulary size:
166
 
167
  | Rank | N-gram | Count |
168
  |------|--------|-------|
169
- | 1 | `ita to komun ri` | 13,889 |
170
- | 2 | `to komun ri déparetema` | 13,889 |
171
- | 3 | `perancis ita to komun` | 12,095 |
172
  | 4 | `iyanaritu séuwa komun ri` | 11,780 |
173
  | 5 | `séuwa komun ri déparetema` | 11,779 |
174
 
 
 
 
 
 
 
 
 
 
 
175
  **2-grams (Subword):**
176
 
177
  | Rank | N-gram | Count |
178
  |------|--------|-------|
179
- | 1 | `r i` | 90,073 |
180
- | 2 | `a _` | 63,521 |
181
- | 3 | `i _` | 58,103 |
182
  | 4 | `_ r` | 57,562 |
183
- | 5 | `t e` | 57,384 |
184
 
185
  **3-grams (Subword):**
186
 
187
  | Rank | N-gram | Count |
188
  |------|--------|-------|
189
  | 1 | `_ r i` | 56,241 |
190
- | 2 | `r i _` | 55,682 |
191
- | 3 | `m u n` | 43,032 |
192
- | 4 | `u n _` | 42,982 |
193
- | 5 | `k o m` | 42,818 |
194
 
195
  **4-grams (Subword):**
196
 
197
  | Rank | N-gram | Count |
198
  |------|--------|-------|
199
- | 1 | `_ r i _` | 55,380 |
200
- | 2 | `o m u n` | 42,739 |
201
- | 3 | `k o m u` | 42,738 |
202
- | 4 | `m u n _` | 42,683 |
203
- | 5 | `n _ r i` | 41,407 |
 
 
 
 
 
 
 
 
 
 
204
 
205
 
206
  ### Key Findings
207
 
208
  - **Best Perplexity:** 2-gram (word) with 75
209
  - **Entropy Trend:** Decreases with larger n-grams (more predictable)
210
- - **Coverage:** Top-1000 patterns cover ~80% of corpus
211
  - **Recommendation:** 4-gram or 5-gram for best predictive performance
212
 
213
  ---
@@ -223,14 +255,14 @@ Below are sample sentences tokenized with each vocabulary size:
223
 
224
  | Context | Variant | Avg Entropy | Perplexity | Branching Factor | Unique Contexts | Predictability |
225
  |---------|---------|-------------|------------|------------------|-----------------|----------------|
226
- | **1** | Word | 0.5094 | 1.423 | 2.20 | 33,148 | 49.1% |
227
- | **1** | Subword | 0.6420 | 1.560 | 6.04 | 1,115 | 35.8% |
228
- | **2** | Word | 0.1229 | 1.089 | 1.21 | 72,816 | 87.7% |
229
- | **2** | Subword | 0.6776 | 1.600 | 3.79 | 6,727 | 32.2% |
230
- | **3** | Word | 0.0488 | 1.034 | 1.07 | 87,927 | 95.1% |
231
- | **3** | Subword | 0.6911 | 1.614 | 3.05 | 25,458 | 30.9% |
232
- | **4** | Word | 0.0143 🏆 | 1.010 | 1.02 | 93,631 | 98.6% |
233
- | **4** | Subword | 0.5492 | 1.463 | 2.16 | 77,506 | 45.1% |
234
 
235
  ### Generated Text Samples (Word-based)
236
 
@@ -238,27 +270,27 @@ Below are text samples generated from each word-based Markov chain model:
238
 
239
  **Context Size 1:**
240
 
241
- 1. `ri déparetema gironde ri déparetema eure et loir kategori komun ri déparetema manche ri aisne katego...`
242
- 2. `komun ri perancis ita to komun ri dordogne ri déparetema somme kategori kota ri déparetema haute`
243
- 3. `déparetema gironde ri haute saône ri déparetema haute provence ri perancis ita to komun ri déparetem...`
244
 
245
  **Context Size 2:**
246
 
247
- 1. `komun ri provinsi messina komun ri déparetema haute loire ri perancis ita to komun ri déparetema dor...`
248
- 2. `ri déparetema manche ri perancis ita to komun ri déparetema dordogne ri perancis ita to komun ri`
249
- 3. `kategori komun ri déparetema manche kategori komun ri déparetema ain kategori komun ri alpes de haut...`
250
 
251
  **Context Size 3:**
252
 
253
- 1. `komun ri déparetema somme kategori komun ri eure et loir ri perancis ita to komun ri déparetema haut...`
254
- 2. `kategori komun ri aisne`
255
- 3. `to komun ri déparetema dordogne ri perancis ita to komun ri déparetema vosges ri perancis ita to kom...`
256
 
257
  **Context Size 4:**
258
 
259
- 1. `ita to komun ri déparetema gironde ri perancis ita to komun ri déparetema haute saône ri perancis it...`
260
- 2. `to komun ri déparetema vosges kategori komun ri vosges`
261
- 3. `perancis ita to komun ri déparetema côtes d armor kategori komun ri côtes d armor`
262
 
263
 
264
  ### Generated Text Samples (Subword-based)
@@ -267,26 +299,26 @@ Below are text samples generated from each subword-based Markov chain model:
267
 
268
  **Context Size 1:**
269
 
270
- 1. `_séunas._koiya_r`
271
- 2. `ares._retoépesat`
272
- 3. `riséunanetaŋn_pa`
273
 
274
  **Context Size 2:**
275
 
276
- 1. `ri_ube_katespia_f`
277
- 2. `a_to_komun_ri:kom`
278
- 3. `i_aretemay_(caven`
279
 
280
  **Context Size 3:**
281
 
282
- 1. `_ri_déparetema_vos`
283
- 2. `ri_déparetema_eure`
284
- 3. `mun_ri_perancis._i`
285
 
286
  **Context Size 4:**
287
 
288
- 1. `_ri_perancis._ita_t`
289
- 2. `omun_ri_aisne_ri_pe`
290
  3. `komun_ri_déparetema`
291
 
292
 
@@ -294,7 +326,7 @@ Below are text samples generated from each subword-based Markov chain model:
294
 
295
  - **Best Predictability:** Context-4 (word) with 98.6% predictability
296
  - **Branching Factor:** Decreases with context size (more deterministic)
297
- - **Memory Trade-off:** Larger contexts require more storage (77,506 contexts)
298
  - **Recommendation:** Context-3 or Context-4 for text generation
299
 
300
  ---
@@ -310,64 +342,64 @@ Below are text samples generated from each subword-based Markov chain model:
310
 
311
  | Metric | Value |
312
  |--------|-------|
313
- | Vocabulary Size | 13,441 |
314
- | Total Tokens | 358,235 |
315
- | Mean Frequency | 26.65 |
316
  | Median Frequency | 2 |
317
- | Frequency Std Dev | 719.11 |
318
 
319
  ### Most Common Words
320
 
321
  | Rank | Word | Frequency |
322
  |------|------|-----------|
323
- | 1 | ri | 55,390 |
324
- | 2 | komun | 42,680 |
325
  | 3 | déparetema | 27,244 |
326
- | 4 | kategori | 15,401 |
327
- | 5 | to | 14,028 |
328
  | 6 | ita | 13,904 |
329
- | 7 | iyanaritu | 13,503 |
330
  | 8 | séuwa | 13,393 |
331
  | 9 | perancis | 12,636 |
332
- | 10 | haute | 6,207 |
333
 
334
  ### Least Common Words (from vocabulary)
335
 
336
  | Rank | Word | Frequency |
337
  |------|------|-----------|
338
- | 1 | ᨆᨘᨄᨗ | 2 |
339
- | 2 | ᨕᨗᨊᨘᨂᨛᨊ | 2 |
340
- | 3 | ᨒᨘ | 2 |
341
- | 4 | ᨅᨀᨗ | 2 |
342
- | 5 | ᨀᨀᨀᨀ | 2 |
343
- | 6 | ᨉᨗᨛᨄᨗᨛ | 2 |
344
- | 7 | days | 2 |
345
- | 8 | after | 2 |
346
- | 9 | federal | 2 |
347
- | 10 | ᨔᨛᨀᨗᨈ | 2 |
348
 
349
  ### Zipf's Law Analysis
350
 
351
  | Metric | Value |
352
  |--------|-------|
353
- | Zipf Coefficient | 0.9107 |
354
- | R² (Goodness of Fit) | 0.956604 |
355
  | Adherence Quality | **excellent** |
356
 
357
  ### Coverage Analysis
358
 
359
  | Top N Words | Coverage |
360
  |-------------|----------|
361
- | Top 100 | 83.0% |
362
  | Top 1,000 | 89.7% |
363
  | Top 5,000 | 95.1% |
364
  | Top 10,000 | 98.1% |
365
 
366
  ### Key Findings
367
 
368
- - **Zipf Compliance:** R²=0.9566 indicates excellent adherence to Zipf's law
369
- - **High Frequency Dominance:** Top 100 words cover 83.0% of corpus
370
- - **Long Tail:** 3,441 words needed for remaining 1.9% coverage
371
 
372
  ---
373
  ## 5. Word Embeddings Evaluation
@@ -383,37 +415,40 @@ Below are text samples generated from each subword-based Markov chain model:
383
 
384
  ### 5.1 Cross-Lingual Alignment
385
 
386
- > *Note: Multilingual alignment visualization not available for this language.*
 
 
387
 
388
 
389
  ### 5.2 Model Comparison
390
 
391
  | Model | Dimension | Isotropy | Semantic Density | Alignment R@1 | Alignment R@10 |
392
  |-------|-----------|----------|------------------|---------------|----------------|
393
- | **mono_32d** | 32 | 0.0631 🏆 | 0.6817 | N/A | N/A |
394
- | **mono_64d** | 64 | 0.0264 | 0.6525 | N/A | N/A |
395
- | **mono_128d** | 128 | 0.0035 | 0.7173 | N/A | N/A |
 
 
 
396
 
397
  ### Key Findings
398
 
399
- - **Best Isotropy:** mono_32d with 0.0631 (more uniform distribution)
400
- - **Semantic Density:** Average pairwise similarity of 0.6838. Lower values indicate better semantic separation.
401
- - **Alignment Quality:** No aligned models evaluated in this run.
402
  - **Recommendation:** 128d aligned for best cross-lingual performance
403
 
404
  ---
405
  ## 6. Morphological Analysis (Experimental)
406
 
407
- > ⚠️ **Warning:** This language shows low morphological productivity. The statistical signals used for this analysis may be noisy or less reliable than for morphologically rich languages.
408
-
409
  This section presents an automated morphological analysis derived from the statistical divergence between word-level and subword-level models. By analyzing where subword predictability spikes and where word-level coverage fails, we can infer linguistic structures without supervised data.
410
 
411
  ### 6.1 Productivity & Complexity
412
 
413
  | Metric | Value | Interpretation | Recommendation |
414
  |--------|-------|----------------|----------------|
415
- | Productivity Index | **0.000** | Low morphological productivity | ⚠️ Likely unreliable |
416
- | Idiomaticity Gap | **-1.000** | Low formulaic content | - |
417
 
418
  ### 6.2 Affix Inventory (Productive Units)
419
 
@@ -422,23 +457,21 @@ These are the most productive prefixes and suffixes identified by sampling the v
422
  #### Productive Prefixes
423
  | Prefix | Examples |
424
  |--------|----------|
425
- | `-ma` | marainville, mailhac, mauges |
426
- | `-mo` | molliens, montmotier, morin |
427
- | `-ch` | châtel, chèze, chauffourt |
428
- | `-co` | confort, coulombiers, coux |
429
- | `-la` | lacalm, lasse, lacour |
430
 
431
  #### Productive Suffixes
432
  | Suffix | Examples |
433
  |--------|----------|
434
- | `-s` | pozières, serbonnes, molliens |
435
- | `-e` | givonne, marainville, roville |
436
- | `-es` | pozières, serbonnes, mauges |
437
- | `-rt` | confort, chauffourt, saucourt |
438
- | `-le` | marainville, roville, touille |
439
- | `-urt` | chauffourt, saucourt, pignicourt |
440
- | `-ourt` | chauffourt, saucourt, pignicourt |
441
- | `-lle` | marainville, roville, touille |
442
 
443
  ### 6.3 Bound Stems (Lexical Roots)
444
 
@@ -446,14 +479,15 @@ Bound stems are high-frequency subword units that are semantically cohesive but
446
 
447
  | Stem | Cohesion | Substitutability | Examples |
448
  |------|----------|------------------|----------|
449
- | `ngka` | 1.37x | 20 contexts | éngka, angka, engka |
450
- | `appa` | 1.39x | 15 contexts | lappa, nappa, tappa |
451
- | `engk` | 1.41x | 9 contexts | engka, engkai, engkaé |
452
- | `seng` | 1.34x | 10 contexts | aseng, naseng, siseng |
453
- | `asen` | 1.35x | 8 contexts | aseng, naseng, asenna |
454
- | `unna` | 1.32x | 6 contexts | punna, umunna, punnai |
455
- | `enna` | 1.37x | 5 contexts | asenna, lalenna, sisenna |
456
- | `yana` | 1.30x | 5 contexts | iyana, iyanae, iyanaé |
 
457
 
458
  ### 6.4 Affix Compatibility (Co-occurrence)
459
 
@@ -461,16 +495,16 @@ This table shows which prefixes and suffixes most frequently co-occur on the sam
461
 
462
  | Prefix | Suffix | Frequency | Examples |
463
  |--------|--------|-----------|----------|
464
- | `-la` | `-e` | 76 words | lagardelle, lange |
465
- | `-ch` | `-s` | 63 words | charnois, chassagnes |
466
- | `-ma` | `-e` | 54 words | marville, maddare |
467
- | `-co` | `-s` | 53 words | collonges, corps |
468
- | `-mo` | `-s` | 46 words | moffans, moulédous |
469
- | `-ch` | `-es` | 44 words | chassagnes, chaumes |
470
- | `-ma` | `-s` | 43 words | mazères, martigues |
471
- | `-ch` | `-e` | 41 words | challerange, champclause |
472
- | `-co` | `-e` | 35 words | corbière, conie |
473
- | `-co` | `-es` | 28 words | collonges, coyolles |
474
 
475
  ### 6.5 Recursive Morpheme Segmentation
476
 
@@ -478,26 +512,26 @@ Using **Recursive Hierarchical Substitutability**, we decompose complex words in
478
 
479
  | Word | Suggested Split | Confidence | Stem |
480
  |------|-----------------|------------|------|
481
- | lagardelle | **`la-garde-lle`** | 6.0 | `garde` |
482
- | lavilledieu | **`la-villedieu`** | 4.5 | `villedieu` |
483
- | laboissière | **`la-boissière`** | 4.5 | `boissière` |
484
- | malaincourt | **`ma-la-inco-urt`** | 4.5 | `inco` |
485
- | colleville | **`co-llev-ille`** | 3.0 | `llev` |
486
- | maizières | **`ma-izièr-es`** | 3.0 | `izièr` |
487
- | champenoises | **`ch-ampenois-es`** | 3.0 | `ampenois` |
488
- | chavignon | **`ch-avign-on`** | 3.0 | `avign` |
489
- | montescourt | **`mo-ntesc-ourt`** | 3.0 | `ntesc` |
490
- | châteauredon | **`ch-âteaured-on`** | 3.0 | `âteaured` |
491
- | chevannes | **`ch-evann-es`** | 3.0 | `evann` |
492
- | lamasquère | **`la-ma-squère`** | 3.0 | `squère` |
493
- | landaville | **`la-ndav-ille`** | 3.0 | `ndav` |
494
- | mourvilles | **`mo-urvill-es`** | 3.0 | `urvill` |
495
- | malvières | **`ma-lvièr-es`** | 3.0 | `lvièr` |
496
 
497
  ### 6.6 Linguistic Interpretation
498
 
499
  > **Automated Insight:**
500
- The language BUG appears to be more isolating or has a highly fixed vocabulary. Word-level models perform nearly as well as subword models, indicating fewer productive morphological processes.
501
 
502
  ---
503
  ## 7. Summary & Recommendations
@@ -508,7 +542,7 @@ The language BUG appears to be more isolating or has a highly fixed vocabulary.
508
 
509
  | Component | Recommended | Rationale |
510
  |-----------|-------------|-----------|
511
- | Tokenizer | **32k BPE** | Best compression (4.92x) |
512
  | N-gram | **2-gram** | Lowest perplexity (75) |
513
  | Markov | **Context-4** | Highest predictability (98.6%) |
514
  | Embeddings | **100d** | Balanced semantic capture and isotropy |
@@ -724,4 +758,4 @@ MIT License - Free for academic and commercial use.
724
  ---
725
  *Generated by Wikilangs Models Pipeline*
726
 
727
- *Report Date: 2026-01-03 08:55:12*
 
1
  ---
2
  language: bug
3
+ language_name: Buginese
4
  language_family: austronesian_sulawesi
5
  tags:
6
  - wikilangs
 
10
  - n-gram
11
  - markov
12
  - wikipedia
13
+ - feature-extraction
14
+ - sentence-similarity
15
+ - tokenization
16
+ - n-grams
17
+ - markov-chain
18
+ - text-mining
19
+ - fasttext
20
+ - babelvec
21
+ - vocabulous
22
+ - vocabulary
23
  - monolingual
24
  - family-austronesian_sulawesi
25
  license: mit
26
  library_name: wikilangs
27
+ pipeline_tag: text-generation
28
  datasets:
29
  - omarkamali/wikipedia-monthly
30
  dataset_info:
 
33
  metrics:
34
  - name: best_compression_ratio
35
  type: compression
36
+ value: 4.927
37
  - name: best_isotropy
38
  type: isotropy
39
+ value: 0.0849
40
  - name: vocabulary_size
41
  type: vocab
42
  value: 0
43
  generated: 2026-01-03
44
  ---
45
 
46
+ # Buginese - Wikilangs Models
47
  ## Comprehensive Research Report & Full Ablation Study
48
 
49
+ This repository contains NLP models trained and evaluated by Wikilangs, specifically on **Buginese** Wikipedia data.
50
  We analyze tokenizers, n-gram models, Markov chains, vocabulary statistics, and word embeddings.
51
 
52
  ## 📋 Repository Contents
 
70
  - [3. Markov Chain Evaluation](#3-markov-chain-evaluation)
71
  - [4. Vocabulary Analysis](#4-vocabulary-analysis)
72
  - [5. Word Embeddings Evaluation](#5-word-embeddings-evaluation)
73
+ - [6. Morphological Analysis (Experimental)](#6--morphological-analysis-experimental)
74
  - [7. Summary & Recommendations](#7-summary--recommendations)
75
  - [Metrics Glossary](#appendix-metrics-glossary--interpretation-guide)
76
  - [Visualizations Index](#visualizations-index)
 
90
 
91
  | Vocab Size | Compression | Avg Token Len | UNK Rate | Total Tokens |
92
  |------------|-------------|---------------|----------|--------------|
93
+ | **8k** | 4.286x | 4.31 | 0.4928% | 36,732 |
94
+ | **16k** | 4.517x | 4.55 | 0.5194% | 34,850 |
95
+ | **32k** | 4.927x 🏆 | 4.96 | 0.5665% | 31,952 |
96
 
97
  ### Tokenization Examples
98
 
99
  Below are sample sentences tokenized with each vocabulary size:
100
 
101
+ **Sample 1:** `Dammartin-sur-Meuse iyanaritu séuwa komun ri déparetema Haute-Marne ri Perancis....`
102
 
103
  | Vocab | Tokens | Count |
104
  |-------|--------|-------|
105
+ | 8k | `▁dam martin - sur - meuse iyanarituséuwa ▁komun ▁ri ... (+22 more)` | 32 |
106
+ | 16k | `▁dammartin - sur - meuse iyanarituséuwa ▁komun ▁ri ▁déparetema ... (+21 more)` | 31 |
107
+ | 32k | `▁dammartin - sur - meuse iyanarituséuwa ▁komun ▁ri ▁déparetema ... (+21 more)` | 31 |
108
 
109
+ **Sample 2:** `Bussières iyanaritu séuwa komun ri déparetema Yonne ri Perancis. Ita to Komun ri...`
110
 
111
  | Vocab | Tokens | Count |
112
  |-------|--------|-------|
113
+ | 8k | `▁bussières ▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁yonne ▁ri ▁perancis . ... (+11 more)` | 21 |
114
+ | 16k | `▁bussières ▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁yonne ▁ri ▁perancis . ... (+11 more)` | 21 |
115
+ | 32k | `▁bussières ▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁yonne ▁ri ▁perancis . ... (+11 more)` | 21 |
116
 
117
+ **Sample 3:** `Pujols iyanaritu séuwa komun ri déparetema Gironde ri Perancis. Ita to Komun ri ...`
118
 
119
  | Vocab | Tokens | Count |
120
  |-------|--------|-------|
121
+ | 8k | `▁pujols ▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁gironde ▁ri ▁perancis . ... (+11 more)` | 21 |
122
+ | 16k | `▁pujols ▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁gironde ▁ri ▁perancis . ... (+11 more)` | 21 |
123
+ | 32k | `▁pujols ▁iyanaritu ▁séuwa ▁komun ▁ri ▁déparetema ▁gironde ▁ri ▁perancis . ... (+11 more)` | 21 |
124
 
125
 
126
  ### Key Findings
127
 
128
+ - **Best Compression:** 32k achieves 4.927x compression
129
+ - **Lowest UNK Rate:** 8k with 0.4928% unknown tokens
130
  - **Trade-off:** Larger vocabularies improve compression but increase model size
131
  - **Recommendation:** 32k vocabulary provides optimal balance for production use
132
 
 
144
  | N-gram | Variant | Perplexity | Entropy | Unique N-grams | Top-100 Coverage | Top-1000 Coverage |
145
  |--------|---------|------------|---------|----------------|------------------|-------------------|
146
  | **2-gram** | Word | 75 🏆 | 6.23 | 1,721 | 84.8% | 98.5% |
147
+ | **2-gram** | Subword | 167 | 7.39 | 2,161 | 81.3% | 99.5% |
148
  | **3-gram** | Word | 118 | 6.89 | 2,060 | 74.9% | 98.6% |
149
+ | **3-gram** | Subword | 511 | 9.00 | 10,879 | 62.7% | 89.5% |
150
+ | **4-gram** | Word | 229 | 7.84 | 4,999 | 61.5% | 96.5% |
151
+ | **4-gram** | Subword | 938 | 9.87 | 41,989 | 58.6% | 80.3% |
152
+ | **5-gram** | Word | 304 | 8.25 | 4,200 | 51.5% | 97.0% |
153
+ | **5-gram** | Subword | 1,221 | 10.25 | 76,709 | 57.6% | 78.3% |
154
 
155
  ### Top 5 N-grams by Size
156
 
 
158
 
159
  | Rank | N-gram | Count |
160
  |------|--------|-------|
161
+ | 1 | `komun ri` | 40,953 |
162
  | 2 | `ri déparetema` | 25,713 |
163
+ | 3 | `kategori komun` | 15,118 |
164
  | 4 | `ita to` | 13,903 |
165
  | 5 | `to komun` | 13,889 |
166
 
 
169
  | Rank | N-gram | Count |
170
  |------|--------|-------|
171
  | 1 | `komun ri déparetema` | 25,709 |
172
+ | 2 | `kategori komun ri` | 15,117 |
173
  | 3 | `to komun ri` | 13,889 |
174
  | 4 | `ita to komun` | 13,889 |
175
  | 5 | `iyanaritu séuwa komun` | 13,324 |
 
178
 
179
  | Rank | N-gram | Count |
180
  |------|--------|-------|
181
+ | 1 | `to komun ri déparetema` | 13,889 |
182
+ | 2 | `ita to komun ri` | 13,889 |
183
+ | 3 | `perancis ita to komun` | 12,104 |
184
  | 4 | `iyanaritu séuwa komun ri` | 11,780 |
185
  | 5 | `séuwa komun ri déparetema` | 11,779 |
186
 
187
+ **5-grams (Word):**
188
+
189
+ | Rank | N-gram | Count |
190
+ |------|--------|-------|
191
+ | 1 | `ita to komun ri déparetema` | 13,889 |
192
+ | 2 | `perancis ita to komun ri` | 12,104 |
193
+ | 3 | `iyanaritu séuwa komun ri déparetema` | 11,779 |
194
+ | 4 | `ri perancis ita to komun` | 10,125 |
195
+ | 5 | `to komun ri déparetema haute` | 1,825 |
196
+
197
  **2-grams (Subword):**
198
 
199
  | Rank | N-gram | Count |
200
  |------|--------|-------|
201
+ | 1 | `r i` | 90,059 |
202
+ | 2 | `a _` | 63,515 |
203
+ | 3 | `i _` | 58,114 |
204
  | 4 | `_ r` | 57,562 |
205
+ | 5 | `t e` | 57,375 |
206
 
207
  **3-grams (Subword):**
208
 
209
  | Rank | N-gram | Count |
210
  |------|--------|-------|
211
  | 1 | `_ r i` | 56,241 |
212
+ | 2 | `r i _` | 55,684 |
213
+ | 3 | `m u n` | 43,031 |
214
+ | 4 | `u n _` | 42,981 |
215
+ | 5 | `k o m` | 42,817 |
216
 
217
  **4-grams (Subword):**
218
 
219
  | Rank | N-gram | Count |
220
  |------|--------|-------|
221
+ | 1 | `_ r i _` | 55,382 |
222
+ | 2 | `o m u n` | 42,738 |
223
+ | 3 | `k o m u` | 42,737 |
224
+ | 4 | `m u n _` | 42,682 |
225
+ | 5 | `n _ r i` | 41,406 |
226
+
227
+ **5-grams (Subword):**
228
+
229
+ | Rank | N-gram | Count |
230
+ |------|--------|-------|
231
+ | 1 | `k o m u n` | 42,737 |
232
+ | 2 | `o m u n _` | 42,672 |
233
+ | 3 | `n _ r i _` | 41,389 |
234
+ | 4 | `u n _ r i` | 40,955 |
235
+ | 5 | `m u n _ r` | 40,953 |
236
 
237
 
238
  ### Key Findings
239
 
240
  - **Best Perplexity:** 2-gram (word) with 75
241
  - **Entropy Trend:** Decreases with larger n-grams (more predictable)
242
+ - **Coverage:** Top-1000 patterns cover ~78% of corpus
243
  - **Recommendation:** 4-gram or 5-gram for best predictive performance
244
 
245
  ---
 
255
 
256
  | Context | Variant | Avg Entropy | Perplexity | Branching Factor | Unique Contexts | Predictability |
257
  |---------|---------|-------------|------------|------------------|-----------------|----------------|
258
+ | **1** | Word | 0.5091 | 1.423 | 2.20 | 33,150 | 49.1% |
259
+ | **1** | Subword | 0.6409 | 1.559 | 6.02 | 1,114 | 35.9% |
260
+ | **2** | Word | 0.1228 | 1.089 | 1.21 | 72,762 | 87.7% |
261
+ | **2** | Subword | 0.6769 | 1.599 | 3.79 | 6,702 | 32.3% |
262
+ | **3** | Word | 0.0488 | 1.034 | 1.07 | 87,846 | 95.1% |
263
+ | **3** | Subword | 0.6926 | 1.616 | 3.05 | 25,381 | 30.7% |
264
+ | **4** | Word | 0.0142 🏆 | 1.010 | 1.02 | 93,544 | 98.6% |
265
+ | **4** | Subword | 0.5499 | 1.464 | 2.16 | 77,409 | 45.0% |
266
 
267
  ### Generated Text Samples (Word-based)
268
 
 
270
 
271
  **Context Size 1:**
272
 
273
+ 1. `ri haute loire rocé roches avrillé caa guillaucourt guillemont guizancourt guyencourt saulcourt iyan...`
274
+ 2. `komun ri déparetema dordogne ri déparetema somme ri lino kaminang maégai napunnai peddang malampe si...`
275
+ 3. `déparetema aube ri déparetema vosges kategori komun ri manoraŋna perancis ita to komun ri perancis i...`
276
 
277
  **Context Size 2:**
278
 
279
+ 1. `komun ri ardennes`
280
+ 2. `ri déparetema somme ri perancis ita to komun ri finistère`
281
+ 3. `kategori komun ri déparetema somme kategori komun ri déparetema haute saône kategori komun ri gard`
282
 
283
  **Context Size 3:**
284
 
285
+ 1. `komun ri déparetema somme ri perancis ita to komun ri déparetema somme ri perancis ita to komun ri`
286
+ 2. `kategori komun ri guadeloupe`
287
+ 3. `ita to komun ri déparetema eure et loir kategori komun ri hautes pyrénées`
288
 
289
  **Context Size 4:**
290
 
291
+ 1. `to komun ri déparetema ain kategori komun ri ain`
292
+ 2. `ita to komun ri déparetema vosges ri perancis ita to komun ri déparetema gard ri perancis ita to kom...`
293
+ 3. `perancis ita to komun ri déparetema haute saône ri perancis ita to komun ri déparetema yvelines kate...`
294
 
295
 
296
  ### Generated Text Samples (Subword-based)
 
299
 
300
  **Context Size 1:**
301
 
302
+ 1. `_te_raweri:korom`
303
+ 2. `apajesaniritori_`
304
+ 3. `resèséun_i:ko_ay`
305
 
306
  **Context Size 2:**
307
 
308
+ 1. `ritu_séuwa_katema`
309
+ 2. `a_agny-saônes_bin`
310
+ 3. `i_dépari_lancis_s`
311
 
312
  **Context Size 3:**
313
 
314
+ 1. `_ri_aisnes_kategor`
315
+ 2. `ri_déparetema_eurc`
316
+ 3. `mun_ri_allers_kate`
317
 
318
  **Context Size 4:**
319
 
320
+ 1. `_ri_déparetema_côte`
321
+ 2. `omun_ri_ain_vignoll`
322
  3. `komun_ri_déparetema`
323
 
324
 
 
326
 
327
  - **Best Predictability:** Context-4 (word) with 98.6% predictability
328
  - **Branching Factor:** Decreases with context size (more deterministic)
329
+ - **Memory Trade-off:** Larger contexts require more storage (77,409 contexts)
330
  - **Recommendation:** Context-3 or Context-4 for text generation
331
 
332
  ---
 
342
 
343
  | Metric | Value |
344
  |--------|-------|
345
+ | Vocabulary Size | 13,449 |
346
+ | Total Tokens | 358,170 |
347
+ | Mean Frequency | 26.63 |
348
  | Median Frequency | 2 |
349
+ | Frequency Std Dev | 718.89 |
350
 
351
  ### Most Common Words
352
 
353
  | Rank | Word | Frequency |
354
  |------|------|-----------|
355
+ | 1 | ri | 55,392 |
356
+ | 2 | komun | 42,679 |
357
  | 3 | déparetema | 27,244 |
358
+ | 4 | kategori | 15,395 |
359
+ | 5 | to | 14,029 |
360
  | 6 | ita | 13,904 |
361
+ | 7 | iyanaritu | 13,505 |
362
  | 8 | séuwa | 13,393 |
363
  | 9 | perancis | 12,636 |
364
+ | 10 | haute | 6,206 |
365
 
366
  ### Least Common Words (from vocabulary)
367
 
368
  | Rank | Word | Frequency |
369
  |------|------|-----------|
370
+ | 1 | museum | 2 |
371
+ | 2 | tychy | 2 |
372
+ | 3 | tangnga | 2 |
373
+ | 4 | miniaturowej | 2 |
374
+ | 5 | sztuki | 2 |
375
+ | 6 | profesjonalnej | 2 |
376
+ | 7 | wideo | 2 |
377
+ | 8 | nietypowe | 2 |
378
+ | 9 | sztalugi | 2 |
379
+ | 10 | zapałek | 2 |
380
 
381
  ### Zipf's Law Analysis
382
 
383
  | Metric | Value |
384
  |--------|-------|
385
+ | Zipf Coefficient | 0.9102 |
386
+ | R² (Goodness of Fit) | 0.956494 |
387
  | Adherence Quality | **excellent** |
388
 
389
  ### Coverage Analysis
390
 
391
  | Top N Words | Coverage |
392
  |-------------|----------|
393
+ | Top 100 | 83.1% |
394
  | Top 1,000 | 89.7% |
395
  | Top 5,000 | 95.1% |
396
  | Top 10,000 | 98.1% |
397
 
398
  ### Key Findings
399
 
400
+ - **Zipf Compliance:** R²=0.9565 indicates excellent adherence to Zipf's law
401
+ - **High Frequency Dominance:** Top 100 words cover 83.1% of corpus
402
+ - **Long Tail:** 3,449 words needed for remaining 1.9% coverage
403
 
404
  ---
405
  ## 5. Word Embeddings Evaluation
 
415
 
416
  ### 5.1 Cross-Lingual Alignment
417
 
418
+ ![Alignment Quality](visualizations/embedding_alignment_quality.png)
419
+
420
+ ![Multilingual t-SNE](visualizations/embedding_tsne_multilingual.png)
421
 
422
 
423
  ### 5.2 Model Comparison
424
 
425
  | Model | Dimension | Isotropy | Semantic Density | Alignment R@1 | Alignment R@10 |
426
  |-------|-----------|----------|------------------|---------------|----------------|
427
+ | **mono_32d** | 32 | 0.0849 🏆 | 0.7683 | N/A | N/A |
428
+ | **mono_64d** | 64 | 0.0269 | 0.6385 | N/A | N/A |
429
+ | **mono_128d** | 128 | 0.0039 | 0.6251 | N/A | N/A |
430
+ | **aligned_32d** | 32 | 0.0849 | 0.7636 | 0.0000 | 0.0300 |
431
+ | **aligned_64d** | 64 | 0.0269 | 0.6542 | 0.0120 | 0.1200 |
432
+ | **aligned_128d** | 128 | 0.0039 | 0.6125 | 0.0300 | 0.1620 |
433
 
434
  ### Key Findings
435
 
436
+ - **Best Isotropy:** mono_32d with 0.0849 (more uniform distribution)
437
+ - **Semantic Density:** Average pairwise similarity of 0.6770. Lower values indicate better semantic separation.
438
+ - **Alignment Quality:** Aligned models achieve up to 3.0% R@1 in cross-lingual retrieval.
439
  - **Recommendation:** 128d aligned for best cross-lingual performance
440
 
441
  ---
442
  ## 6. Morphological Analysis (Experimental)
443
 
 
 
444
  This section presents an automated morphological analysis derived from the statistical divergence between word-level and subword-level models. By analyzing where subword predictability spikes and where word-level coverage fails, we can infer linguistic structures without supervised data.
445
 
446
  ### 6.1 Productivity & Complexity
447
 
448
  | Metric | Value | Interpretation | Recommendation |
449
  |--------|-------|----------------|----------------|
450
+ | Productivity Index | **5.000** | High morphological productivity | Reliable analysis |
451
+ | Idiomaticity Gap | **0.239** | High formulaic/idiomatic content | - |
452
 
453
  ### 6.2 Affix Inventory (Productive Units)
454
 
 
457
  #### Productive Prefixes
458
  | Prefix | Examples |
459
  |--------|----------|
460
+ | `-ma` | marson, massoins, maël |
461
+ | `-mo` | montégut, moncale, morton |
462
+ | `-ch` | chépy, cheylard, chatel |
 
 
463
 
464
  #### Productive Suffixes
465
  | Suffix | Examples |
466
  |--------|----------|
467
+ | `-s` | siprus, massoins, hiis |
468
+ | `-e` | épagne, aizanville, vesle |
469
+ | `-es` | barges, vellèches, laspènes |
470
+ | `-le` | aizanville, vesle, gameville |
471
+ | `-lle` | aizanville, gameville, girondelle |
472
+ | `-rt` | begnécourt, hinacourt, bouzincourt |
473
+ | `-urt` | begnécourt, hinacourt, bouzincourt |
474
+ | `-ourt` | begnécourt, hinacourt, bouzincourt |
475
 
476
  ### 6.3 Bound Stems (Lexical Roots)
477
 
 
479
 
480
  | Stem | Cohesion | Substitutability | Examples |
481
  |------|----------|------------------|----------|
482
+ | `ngka` | 1.51x | 20 contexts | angka, engka, éngka |
483
+ | `appa` | 1.55x | 15 contexts | cappa, nappa, lappa |
484
+ | `engk` | 1.57x | 9 contexts | engka, engkaé, engkai |
485
+ | `seng` | 1.50x | 10 contexts | aseng, siseng, naseng |
486
+ | `asen` | 1.46x | 8 contexts | aseng, asenna, naseng |
487
+ | `unna` | 1.46x | 6 contexts | punna, punnai, umunna |
488
+ | `enna` | 1.46x | 5 contexts | asenna, sisenna, lalenna |
489
+ | `yana` | 1.38x | 5 contexts | iyana, iyanaé, iyanae |
490
+ | `iyan` | 1.37x | 5 contexts | iyana, iyanaé, iyanae |
491
 
492
  ### 6.4 Affix Compatibility (Co-occurrence)
493
 
 
495
 
496
  | Prefix | Suffix | Frequency | Examples |
497
  |--------|--------|-----------|----------|
498
+ | `-ch` | `-s` | 56 words | chaulnes, champdeniers |
499
+ | `-ch` | `-e` | 46 words | châtaigneraie, chabre |
500
+ | `-ma` | `-e` | 44 words | maritime, maire |
501
+ | `-ma` | `-s` | 43 words | mainvilliers, mandres |
502
+ | `-mo` | `-s` | 41 words | molins, moulines |
503
+ | `-ch` | `-es` | 40 words | chaulnes, chamvres |
504
+ | `-mo` | `-e` | 19 words | motteville, moulière |
505
+ | `-ma` | `-es` | 18 words | mandres, maulichères |
506
+ | `-mo` | `-on` | 18 words | monthodon, montfaucon |
507
+ | `-mo` | `-rt` | 13 words | montlibert, montescourt |
508
 
509
  ### 6.5 Recursive Morpheme Segmentation
510
 
 
512
 
513
  | Word | Suggested Split | Confidence | Stem |
514
  |------|-----------------|------------|------|
515
+ | lagardelle | **`lagarde-lle`** | 4.5 | `lagarde` |
516
+ | motteville | **`mo-ttev-ille`** | 3.0 | `ttev` |
517
+ | chalencon | **`ch-alenc-on`** | 3.0 | `alenc` |
518
+ | champignelles | **`ch-ampignell-es`** | 3.0 | `ampignell` |
519
+ | chamarandes | **`ch-amarand-es`** | 3.0 | `amarand` |
520
+ | martinsart | **`ma-rtinsa-rt`** | 3.0 | `rtinsa` |
521
+ | manancourt | **`ma-nanc-ourt`** | 3.0 | `nanc` |
522
+ | charleville | **`ch-arlev-ille`** | 3.0 | `arlev` |
523
+ | montheries | **`mo-ntheri-es`** | 3.0 | `ntheri` |
524
+ | marseille | **`ma-rsei-lle`** | 3.0 | `rsei` |
525
+ | champvallon | **`ch-ampvall-on`** | 3.0 | `ampvall` |
526
+ | monthodon | **`mo-nthod-on`** | 3.0 | `nthod` |
527
+ | mazerolles | **`ma-zeroll-es`** | 3.0 | `zeroll` |
528
+ | chevrières | **`ch-evrièr-es`** | 3.0 | `evrièr` |
529
+ | montagnes | **`mo-ntagn-es`** | 3.0 | `ntagn` |
530
 
531
  ### 6.6 Linguistic Interpretation
532
 
533
  > **Automated Insight:**
534
+ The language Buginese shows high morphological productivity. The subword models are significantly more efficient than word models, suggesting a rich system of affixation or compounding.
535
 
536
  ---
537
  ## 7. Summary & Recommendations
 
542
 
543
  | Component | Recommended | Rationale |
544
  |-----------|-------------|-----------|
545
+ | Tokenizer | **32k BPE** | Best compression (4.93x) |
546
  | N-gram | **2-gram** | Lowest perplexity (75) |
547
  | Markov | **Context-4** | Highest predictability (98.6%) |
548
  | Embeddings | **100d** | Balanced semantic capture and isotropy |
 
758
  ---
759
  *Generated by Wikilangs Models Pipeline*
760
 
761
+ *Report Date: 2026-01-03 19:48:58*
models/embeddings/aligned/bug_128d.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e6284ca3d9a3a42e01b0cf4545e24bb0c1d475694590698c54d9c4a80e7d75c2
3
+ size 1025501057
models/embeddings/aligned/bug_128d.meta.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"lang": "bug", "dim": 128, "max_seq_len": 512, "is_aligned": true}
models/embeddings/aligned/bug_128d.projection.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dd3eb6e77750f40e5d5f91e6f3ab65e312b47e691439b0f2060b297f687449ed
3
+ size 65664
models/embeddings/aligned/bug_128d_metadata.json ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "language": "bug",
3
+ "dimension": 128,
4
+ "version": "aligned",
5
+ "hub_language": "en",
6
+ "seed_vocab_size": 613,
7
+ "vocab_size": 1441
8
+ }
models/embeddings/aligned/bug_32d.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:40e2a1a18de65d5de1a8fc806805d83593b39dc96137b5abea4a5e1da6a60cb1
3
+ size 256394369
models/embeddings/aligned/bug_32d.meta.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"lang": "bug", "dim": 32, "max_seq_len": 512, "is_aligned": true}
models/embeddings/aligned/bug_32d.projection.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:945f384ccc372cc36717260f6373c3e1f47782edbffbea2a47dd061ff46e24fe
3
+ size 4224
models/embeddings/aligned/bug_32d_metadata.json ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "language": "bug",
3
+ "dimension": 32,
4
+ "version": "aligned",
5
+ "hub_language": "en",
6
+ "seed_vocab_size": 613,
7
+ "vocab_size": 1441
8
+ }
models/embeddings/aligned/bug_64d.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:53e95dd4467c2ace8757700001cab0f690cefdd92e9b6f10383f6a6bcd5d1273
3
+ size 512763265
models/embeddings/aligned/bug_64d.meta.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"lang": "bug", "dim": 64, "max_seq_len": 512, "is_aligned": true}
models/embeddings/aligned/bug_64d.projection.npy ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e681dd6f006c857e0909eac3925604dc1646a2a2b381678f32f7a1692d6d69a4
3
+ size 16512
models/embeddings/aligned/bug_64d_metadata.json ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "language": "bug",
3
+ "dimension": 64,
4
+ "version": "aligned",
5
+ "hub_language": "en",
6
+ "seed_vocab_size": 613,
7
+ "vocab_size": 1441
8
+ }
models/embeddings/monolingual/bug_128d.bin CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:60e643ec1ece75f273fcafba6e20d15dd273d9a060acc636c62b079cc3827632
3
- size 1025503150
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e6284ca3d9a3a42e01b0cf4545e24bb0c1d475694590698c54d9c4a80e7d75c2
3
+ size 1025501057
models/embeddings/monolingual/bug_128d_metadata.json CHANGED
@@ -11,5 +11,5 @@
11
  "encoding_method": "rope",
12
  "dim": 128
13
  },
14
- "vocab_size": 1443
15
  }
 
11
  "encoding_method": "rope",
12
  "dim": 128
13
  },
14
+ "vocab_size": 1441
15
  }
models/embeddings/monolingual/bug_32d.bin CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:becf192777316400ac67a33873637aadaeabcd3ab768294b2064c3c0615f144b
3
- size 256394926
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:40e2a1a18de65d5de1a8fc806805d83593b39dc96137b5abea4a5e1da6a60cb1
3
+ size 256394369
models/embeddings/monolingual/bug_32d_metadata.json CHANGED
@@ -11,5 +11,5 @@
11
  "encoding_method": "rope",
12
  "dim": 32
13
  },
14
- "vocab_size": 1443
15
  }
 
11
  "encoding_method": "rope",
12
  "dim": 32
13
  },
14
+ "vocab_size": 1441
15
  }
models/embeddings/monolingual/bug_64d.bin CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:d9823040ce7cd355f045c8caad10719684ec4e18bf1bef4ea891663c355cb360
3
- size 512764334
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:53e95dd4467c2ace8757700001cab0f690cefdd92e9b6f10383f6a6bcd5d1273
3
+ size 512763265
models/embeddings/monolingual/bug_64d_metadata.json CHANGED
@@ -11,5 +11,5 @@
11
  "encoding_method": "rope",
12
  "dim": 64
13
  },
14
- "vocab_size": 1443
15
  }
 
11
  "encoding_method": "rope",
12
  "dim": 64
13
  },
14
+ "vocab_size": 1441
15
  }
models/subword_markov/bug_markov_ctx1_subword.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:ea6b54847a784f51e2f16c837e7951d96c474085d40f16a957be9eecbdceb2d7
3
- size 56451
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b389c35c312b58052a2dc019fbad8167b79bf68a5405f5dff1de2d71a71a8d36
3
+ size 56660
models/subword_markov/bug_markov_ctx1_subword_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "context_size": 1,
3
  "variant": "subword",
4
  "language": "bug",
5
- "unique_contexts": 1115,
6
- "total_transitions": 2377233
7
  }
 
2
  "context_size": 1,
3
  "variant": "subword",
4
  "language": "bug",
5
+ "unique_contexts": 1114,
6
+ "total_transitions": 2376929
7
  }
models/subword_markov/bug_markov_ctx2_subword.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:fc9770904232ce07f4aa4fa00d4f31741086ce42dde9337c557a94fcd91601d3
3
- size 229577
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:182b9dbf6626ea9e4f0e4b177f5c95143dca05ad5add967e2b27000e96233bcd
3
+ size 227384
models/subword_markov/bug_markov_ctx2_subword_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "context_size": 2,
3
  "variant": "subword",
4
  "language": "bug",
5
- "unique_contexts": 6727,
6
- "total_transitions": 2361714
7
  }
 
2
  "context_size": 2,
3
  "variant": "subword",
4
  "language": "bug",
5
+ "unique_contexts": 6702,
6
+ "total_transitions": 2361412
7
  }
models/subword_markov/bug_markov_ctx3_subword.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:1851961810e4cd0121317f3bf6e74a5b2ad2d767fbf3ea615e494b1b33a0d9ff
3
- size 651956
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b5e40536d41489c4041689a30506095ba3fb77da5c8868e6886f33d7c7450a01
3
+ size 645144
models/subword_markov/bug_markov_ctx3_subword_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "context_size": 3,
3
  "variant": "subword",
4
  "language": "bug",
5
- "unique_contexts": 25458,
6
- "total_transitions": 2346195
7
  }
 
2
  "context_size": 3,
3
  "variant": "subword",
4
  "language": "bug",
5
+ "unique_contexts": 25381,
6
+ "total_transitions": 2345895
7
  }
models/subword_markov/bug_markov_ctx4_subword.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:1991e713220325ecadbfc81c2871898ab38be9aff994ef7d45517d9081e2d843
3
- size 1459206
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:aa35faf25a2d4148ed795ce56be93ae55d1cc642ad22468a17e480de6aef5662
3
+ size 1439503
models/subword_markov/bug_markov_ctx4_subword_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "context_size": 4,
3
  "variant": "subword",
4
  "language": "bug",
5
- "unique_contexts": 77506,
6
- "total_transitions": 2330676
7
  }
 
2
  "context_size": 4,
3
  "variant": "subword",
4
  "language": "bug",
5
+ "unique_contexts": 77409,
6
+ "total_transitions": 2330378
7
  }
models/subword_ngram/bug_2gram_subword.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:bc0ffd67460f75034bcef5b208e6dcebf5026c731829639ee1c9b37cd94f0255
3
- size 29845
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a8f6874249088a09af3813be47318476386d90591fb377899a82d434cfd66855
3
+ size 29748
models/subword_ngram/bug_2gram_subword_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "n": 2,
3
  "variant": "subword",
4
  "language": "bug",
5
- "unique_ngrams": 2166,
6
- "total_ngrams": 2377233
7
  }
 
2
  "n": 2,
3
  "variant": "subword",
4
  "language": "bug",
5
+ "unique_ngrams": 2161,
6
+ "total_ngrams": 2376929
7
  }
models/subword_ngram/bug_3gram_subword.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:27dae62a90b04631ca45a23226c4fb6e3e5676dd3b56fda2064206ccd05cc271
3
- size 133308
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0ff980159f39d0d0606f2c18b8ee48a9d727109530ac5cab0342b528b119f52d
3
+ size 132924
models/subword_ngram/bug_3gram_subword_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "n": 3,
3
  "variant": "subword",
4
  "language": "bug",
5
- "unique_ngrams": 10883,
6
- "total_ngrams": 2361714
7
  }
 
2
  "n": 3,
3
  "variant": "subword",
4
  "language": "bug",
5
+ "unique_ngrams": 10879,
6
+ "total_ngrams": 2361412
7
  }
models/subword_ngram/bug_4gram_subword.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:4d7a75327568e461ca60da5b19c31846f906735013d0944cb9687eb7e175681a
3
- size 522479
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fc1c9e4f98153ce090d2e73131732fab8fe46b10d66108a97bf20d45dac52d58
3
+ size 517391
models/subword_ngram/bug_4gram_subword_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "n": 4,
3
  "variant": "subword",
4
  "language": "bug",
5
- "unique_ngrams": 41978,
6
- "total_ngrams": 2346195
7
  }
 
2
  "n": 4,
3
  "variant": "subword",
4
  "language": "bug",
5
+ "unique_ngrams": 41989,
6
+ "total_ngrams": 2345895
7
  }
models/subword_ngram/bug_5gram_subword.parquet ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dc40434fb726a016b8e0b7bbbe1ebcde234880b7b1b285183236316a5506f456
3
+ size 895843
models/subword_ngram/bug_5gram_subword_metadata.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "n": 5,
3
+ "variant": "subword",
4
+ "language": "bug",
5
+ "unique_ngrams": 76709,
6
+ "total_ngrams": 2330378
7
+ }
models/tokenizer/bug_tokenizer_16k.model CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:f695d915517db069983efcf78f1827a707c9d7e5df1fe96fe7b390346018196e
3
- size 518421
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:26fa62a9b406e1e9bba2baf575cfc8f9a17114a97539834419efa0e46a2d504c
3
+ size 518399
models/tokenizer/bug_tokenizer_16k.vocab CHANGED
The diff for this file is too large to render. See raw diff
 
models/tokenizer/bug_tokenizer_32k.model CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:41e741a9c77783f82b6eef2bd92933e422989f91b37dafb131fcbf96a6c44a90
3
- size 821175
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0655348011befa58bdb22261e527b681b994f038c4ad3fe7c9c06fe3ae0cdce6
3
+ size 821102
models/tokenizer/bug_tokenizer_32k.vocab CHANGED
The diff for this file is too large to render. See raw diff
 
models/tokenizer/bug_tokenizer_8k.model CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:ae5e6410beed7f97e2ba0a2f82bd06f81b54b111021264a322f628b6ebd7930f
3
  size 372086
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:af26935d851b7fa79d11da73a096e34eea80260b1ae4cccc94755ff6a9a21e29
3
  size 372086
models/tokenizer/bug_tokenizer_8k.vocab CHANGED
The diff for this file is too large to render. See raw diff
 
models/vocabulary/bug_vocabulary.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:eaf37b2a8977cb6828c5e00937c105d6dd1b5753eb506d9a9c3d3715c43116ba
3
- size 212963
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d9040b7aa9e107c5948c3f57a85fb919bf9a3a99bc1156138a662f6b971b4187
3
+ size 212837
models/vocabulary/bug_vocabulary_metadata.json CHANGED
@@ -1,17 +1,17 @@
1
  {
2
  "language": "bug",
3
- "vocabulary_size": 13441,
4
  "variant": "full",
5
  "statistics": {
6
- "type_token_ratio": 0.08785621316176548,
7
  "coverage": {
8
- "top_100": 0.7870075448937048,
9
- "top_1000": 0.8499830689622332,
10
- "top_5000": 0.9016359615242167,
11
- "top_10000": 0.9294954550745494
12
  },
13
- "hapax_count": 19769,
14
- "hapax_ratio": 0.5952725082806384,
15
- "total_documents": 15519
16
  }
17
  }
 
1
  {
2
  "language": "bug",
3
+ "vocabulary_size": 13449,
4
  "variant": "full",
5
  "statistics": {
6
+ "type_token_ratio": 0.08787801012348749,
7
  "coverage": {
8
+ "top_100": 0.7871183516655068,
9
+ "top_1000": 0.8499601781268108,
10
+ "top_5000": 0.9015830848324967,
11
+ "top_10000": 0.9294557500932705
12
  },
13
+ "hapax_count": 19763,
14
+ "hapax_ratio": 0.5950560038540287,
15
+ "total_documents": 15517
16
  }
17
  }
models/word_markov/bug_markov_ctx1_word.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:11fe5e192c8147c9659e92fea9d4a1deda14c8f7dd8f48d353ccca9695ddc8e5
3
- size 879712
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:922e8750e9a5e1b6e55c94fd16434c4d350a0ac640cc39525d559081508ff8c4
3
+ size 879339
models/word_markov/bug_markov_ctx1_word_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "context_size": 1,
3
  "variant": "word",
4
  "language": "bug",
5
- "unique_contexts": 33148,
6
- "total_transitions": 362485
7
  }
 
2
  "context_size": 1,
3
  "variant": "word",
4
  "language": "bug",
5
+ "unique_contexts": 33150,
6
+ "total_transitions": 362416
7
  }
models/word_markov/bug_markov_ctx2_word.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:6e286442d9daf9a0a40fbc601c40874bbd94485367efec9e0aa5fa8ada829a45
3
- size 1390138
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2e10ff8d20655316f2b1ccb414fc37e3821b2969a9d32563d07bf03438321740
3
+ size 1390068
models/word_markov/bug_markov_ctx2_word_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "context_size": 2,
3
  "variant": "word",
4
  "language": "bug",
5
- "unique_contexts": 72816,
6
- "total_transitions": 346966
7
  }
 
2
  "context_size": 2,
3
  "variant": "word",
4
  "language": "bug",
5
+ "unique_contexts": 72762,
6
+ "total_transitions": 346899
7
  }
models/word_markov/bug_markov_ctx3_word.parquet CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:c638220df23f4ff0bdbe9ae2d3083f2ce355e1c83d1a468b2bea91d89552f40e
3
- size 1674825
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:79bd483a98b3279fa6076f7b52fc380c847e0ab70fe130326276f19e268140cb
3
+ size 1675726
models/word_markov/bug_markov_ctx3_word_metadata.json CHANGED
@@ -2,6 +2,6 @@
2
  "context_size": 3,
3
  "variant": "word",
4
  "language": "bug",
5
- "unique_contexts": 87927,
6
- "total_transitions": 331447
7
  }
 
2
  "context_size": 3,
3
  "variant": "word",
4
  "language": "bug",
5
+ "unique_contexts": 87846,
6
+ "total_transitions": 331382
7
  }