jramompichel commited on
Commit
96c6be3
·
verified ·
1 Parent(s): 0c59668

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +136 -3
README.md CHANGED
@@ -1,3 +1,136 @@
1
- ---
2
- license: mit
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: mit
3
+ language:
4
+ - en
5
+ - gl
6
+
7
+ metrics:
8
+ - bleu (Flores_dev): 21.2
9
+ - bleu (Flores_devtest): 26.3
10
+ - bleu (Ntrex): 27.6
11
+ ---
12
+ **Descrición do Modelo / Descrição do Modelo**
13
+
14
+ Modelo feito con OpenNMT-py 3.2 para o par inglés-galego utilizando unha arquitectura transformer. Este modelo foi creado no ámbito dunha colaboración entre o Proxecto Nós (Universidade de Santiago de Compostela) e o CODA (Centre for Digital Culture and Innovation) da Faculdade de Letras na Universidade do Porto
15
+
16
+ Modelo desenvolvido com o OpenNMT-py 3.2 para o par inglês-galego, utilizando uma arquitetura transformer. Este modelo foi criado no âmbito de uma colaboração entre o Projeto Nós (Universidade de Santiago de Compostela) e o CODA (Centre for Digital Culture and Innovation) da Faculdade de Letras na Universidade do Porto.
17
+
18
+ **Como traducir con este Modelo / Como traduzir com este modelo**
19
+
20
+ ### 🔧 Requisitos e Instalación / Requisitos e Instalação
21
+
22
+ 1. Instale o [Python 3.9](https://www.python.org/downloads/release/python-390/).
23
+ 2. Instale o OpenNMT-py 3.2 seguindo as instrucións da [documentação oficial](https://opennmt.net/OpenNMT-py/).
24
+ 2. Instale o OpenNMT-py 3.2 seguindo as instruções da [documentação oficial](https://opennmt.net/OpenNMT-py/).
25
+
26
+ ---
27
+
28
+ ### 📄 Como traduzir un ficheiro con este modelo / Como traduzir um ficheiro com este modelo
29
+
30
+ Estas instrucións asumen que o ficheiro de entrada se chama `eng_Latn.dev` (extraído do dataset FLoRes)
31
+
32
+ Estas instruções assumem que o ficheiro de entrada se chama `eng_Latn.dev` (extraído do dataset FLoRes).
33
+
34
+ 1. **Aplicar BPE (Byte Pair Encoding)**:
35
+
36
+ ```bash
37
+ subword-nmt apply-bpe -c en_35k.code < eng_Latn.dev > eng_Latn.dev.35k.bpe
38
+ ```
39
+
40
+ 2. **Executar a tradución co modelo / Executar a tradução com o modelo**:
41
+
42
+ ```bash
43
+ onmt_translate -model nos-coda_iacobus-en-gl.pt -src eng_Latn.dev.35k.bpe -output translation.txt -gpu 0 -verbose -replace_unk
44
+ ```
45
+
46
+ 3. **Limpar os marcadores BPE (@)**:
47
+
48
+ ```bash
49
+ sed 's/@\s*//g' translation.txt > translation.tok
50
+ ```
51
+
52
+ 4. **Detokenizar o texto traducido/traduzido**:
53
+
54
+ ```bash
55
+ perl detokenizer.perl < translation.tok > translation.translation
56
+ ```
57
+
58
+ **Adestramento / Treino**
59
+
60
+ No adestramento, utilizamos córpora auténticos e sintéticos obtidos a partir do [OPUS](https://opus.nlpl.eu) e do [ProxectoNós](https://github.com/proxectonos/corpora) para os pares lingüísticos relacionados co galego e o portugués.
61
+
62
+ No treino, utilizámos corpora autênticos e sintéticos obtidos a partir do [OPUS](https://opus.nlpl.eu) e do [ProjetoNós](https://github.com/proxectonos/corpora), para os pares linguísticos relacionados com o galego e o português.
63
+
64
+ **Procedemento de adestramento / Procedimento de treino**
65
+
66
+ ### ⚙️ Preparación dos datos / Preparação dos dados
67
+
68
+ * A tokenización dos *datasets* foi realizada co tokenizador (`tokenizer.pl`) do [Linguakit](https://github.com/citiususc/Linguakit), modificado para evitar a inserción de quebras de liña após cada *token* no ficheiro orixinal.
69
+
70
+ * A tokenização dos *datasets* foi realizada com o tokenizador (`tokenizer.pl`) do [Linguakit](https://github.com/citiususc/Linguakit), modificado para evitar a inserção de quebras de linha após cada *token* no ficheiro original.
71
+
72
+ * O vocabulario BPE utilizado nos modelos foi xerado co script [`learn_bpe.py`](https://github.com/OpenNMT/OpenNMT-py/blob/master/tools/learn_bpe.py) da OpenNMT.
73
+
74
+ * O vocabulário BPE utilizado nos modelos foi gerado com o script [`learn_bpe.py`](https://github.com/OpenNMT/OpenNMT-py/blob/master/tools/learn_bpe.py) da OpenNMT.
75
+
76
+ ### 🧪 Reproducir o adestramento / Reproduzir o treino
77
+
78
+ Para obter os mesmos resultados, deben ser executadas as seguintes instrucións:
79
+
80
+ Para obter os mesmos resultados, devem ser executadas as seguintes instruções:
81
+
82
+
83
+ 1. **Construír o vocabulario / Construir o vocabulário**:
84
+
85
+ ```bash
86
+ onmt_build_vocab -config en-gl.yaml -n_sample 35000
87
+ ```
88
+
89
+ 2. **Adestrar o modelo NMT / Treinar o modelo NMT**:
90
+
91
+ ```bash
92
+ onmt_train -config en-gl.yaml
93
+ ```
94
+
95
+ **Avaliação / Avaliación**
96
+
97
+ A avaliación BLEU dos modelos é realizada nos seguintes datasets: Flores, Floresdevtest, Ntrex.
98
+
99
+ A avaliação BLEU dos modelos é realizada nos seguintes datasets: Flores, Floresdevtest e Ntrex.
100
+
101
+
102
+ | Flores_dev | Flores_devtes | Ntrex |
103
+ | ------------- |:-------------:| -------:|
104
+ | 21.2 | 26.3 | 27.6 |
105
+
106
+
107
+ **Licenzas do Modelo**
108
+
109
+ MIT License
110
+
111
+ Copyright (c) 2023 Proxecto Nós
112
+
113
+ Permission is hereby granted, free of charge, to any person obtaining a copy
114
+ of this software and associated documentation files (the "Software"), to deal
115
+ in the Software without restriction, including without limitation the rights
116
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
117
+ copies of the Software, and to permit persons to whom the Software is
118
+ furnished to do so, subject to the following conditions:
119
+
120
+ The above copyright notice and this permission notice shall be included in all
121
+ copies or substantial portions of the Software.
122
+
123
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
124
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
125
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
126
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
127
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
128
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
129
+ SOFTWARE.
130
+
131
+ **Financiamento**
132
+
133
+ This model was developed during a research stay at FLUP (Faculdade de Letras da Universidade do Porto) in May and June 2024, as part of the Nós Project, funded by the Ministerio para la Transformación Digital y de la Función Pública and co-financed by the European Union – NextGenerationEU, within the framework of the ILENIA Project (reference: 2022/TL22/00215336).
134
+
135
+ The stay at the University of Porto (CODA-FLUP) was supported by the IACOBUS Programme (2024), a Galician–Portuguese initiative that facilitates, among other activities, research exchanges between Galician scholars and universities or technological centers in Northern Portugal, and vice versa. The programme is managed by the AECT Galicia–North of Portugal.
136
+