1
Translation Mining and semantic maps: a new approach to cross-linguistic research?
Bert Le Bruyn Prague, 2025-4-2
Setting the stage
Setting the stage
Corpus research is about recognizing and interpreting patterns in data.
But what do relevant patterns in parallel corpora look like?
Rather than showing you, I invite you to try and come up with it by yourself!
Parallel corpus research is no exception.
Setting the stage
Here’s a fun fact about plural nouns in English and Romance:
In English, bare plurals can be used as indefinites (1) and in generic statements (2).
In Romance, bare plurals can be used as indefinites (3) but not in generic statements (4) (examples from Spanish). In generic statements, Romance languages rely on definite plurals.
What kind of pattern do you think these facts give rise to in a parallel corpus with English and Spanish in it?
Setting the stage
Tip:
Think of translation corpora as collections of contexts and of contexts as coming in one of four possible flavors:
<English Bare Plural; Spanish Bare Plural>
<English Definite Plural; Spanish Definite Plural>
<English Bare Plural; Spanish Definite Plural>
<English Definite Plural; Spanish Bare Plural>
Setting the stage
Spanish Definite Plurals
Spanish Bare Plurals
English Bare Plurals
English Definite Plurals
Setting the stage
Spanish Definite Plurals
Spanish Bare Plurals
English Bare Plurals
English Definite Plurals
Setting the stage
Is this the pattern we find?
Corpus: all contexts that have a bare or a definite plural in English and Spanish in subject or object position in chapters 1, 16 and 17 of the first Harry Potter volume (N=65).
23
12
29
1
Isn’t this pattern accidental?
The chessmen seemed to have been listening , because at these words a knight , a bishop and a castle turned their backs on the white pieces and walked off the board leaving three empty squares which Harry , Ron and Hermione took .
Las piezas parecieron haber escuchado porque , ante esas palabras , un caballo , un alfil y una torre dieron la espalda a las piezas blancas y salieron del tablero , dejando libres tres cuadrados que Harry , Ron y Hermione ocuparon .
(English, definite)
(Spanish, definite)
Setting the stage
Voldemort had powers I will never have.
Voldemort tenía poderes que yo nunca tuve.
(Spanish, indefinite)
(English, indefinite)
Setting the stage
Scars can come in useful.
Las cicatrices pueden ser útiles.
(Spanish, definite)
(English, indefinite)
Setting the stage
(Spanish, definite)
(English, indefinite)
But on the edge of town, drills were driven out of his mind by something else.
Pero en las afueras ocurrió algo que apartó los taladros de su mente.
Setting the stage
Training
Construction 1
Construction 2
Construction 3
Construction 4
1, 2, 4, 6, 7, 10, 11, 15, 16, 17, 20
3, 5, 8, 9, 12, 13, 14, 18, 19
1, 3, 4, 6, 8, 11, 12, 13, 15, 19, 20
2, 5, 7, 9, 10, 14, 16, 17, 18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
Construction 1
Construction 2
Construction 3
Construction 4
Construction 1
Construction 2
Construction 3
Construction 4
1, 2, 3, 6, 7, 14, 17, 19
8, 13, 15, 16, 20
4, 5, 9, 10, 11, 12, 18
2, 6, 8, 13, 14, 15, 16, 19, 20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
Construction 1
Construction 2
Construction 3
Construction 4
Construction 5
1, 3, 4, 7, 9, 17, 18
Construction 6
5, 10, 11, 12
Construction 5
Construction 6
Data analysis
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
Construction 1
Construction 2
Construction 3
Construction 4
Construction 5
Construction 6
Translation Mining consists in breaking up this complex relation into sets in which all contexts select the same constructions.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
Construction 1
Construction 2
Construction 3
Construction 4
Construction 5
Construction 6
Translation Mining consists in breaking up this complex relation into sets in which all contexts select the same constructions.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
Construction 1
Construction 2
Construction 3
Construction 4
Construction 5
Construction 6
Translation Mining consists in breaking up this complex relation into sets in which all contexts select the same constructions.
The researcher then proceeds to analyzing what it is that makes each of these sets of contexts different from the other sets.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
Construction 1
Construction 2
Construction 3
Construction 4
Construction 5
Construction 6
Translation Mining consists in breaking up this complex relation into sets in which all contexts select the same constructions.
The researcher then proceeds to analyzing what it is that makes each of these sets of contexts different from the other sets.
The insights that follow from this analysis are subsequently used to propose analyses of the different constructions that account for why each of them appears in a number of sets but not in others.
Preparing the MDS move
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
Construction 1
Construction 2
Construction 3
Construction 4
Construction 5
Construction 6
Figuring out how to even draw the relations between the different constructions probably took you a little while longer than for the other datasets.
And yet, it’s just two languages with three constructions each and a mere 20 datapoints.
What would happen if we were to have – say – 5 languages, up to 8 constructions per language and about 400 datapoints?
Even though multiple representations are possible, we know, among other things, that:
>
should be positioned further away from
than from
>
the contexts belonging to the same colored set should be positioned closer to one another than to contexts belonging to different colored sets;
;
>
should be positioned further away from
than from
.
All of this amounts to positioning contexts on the basis of the constructions they appear in: contexts that appear in construction 1 in language A and in construction 5 in language B should be positioned closer to each other than contexts appearing in construction 5 in language B but in construction 3 in language A.
At the same time, contexts that appear in construction 3 in language A and in construction 6 in language B should be positioned even further away.
In order to be able to position contexts automatically on the basis of the constructions they appear in, it suffices to record for each context which constructions it appears in and let the computer handle the positioning.
The computer – and more specifically a Multi-Dimensional Scaling algorithm – uses similarities and differences between the above tuples to position the different contexts with respect to each other and the result will be exactly the way we want it to be.
For a more complex dataset than ours (including 5 languages, up to 8 constructions per language and 433 contexts), this looks as follows:
Each dot in this representation corresponds to a context in the dataset and sets of contexts appearing in the exact same constructions appear as bigger dots with the number. This number indicates the number of contexts in the set.
Drawing the different Venn diagrams representing the constructions of the different languages would make the figure uninterpretable but we can add color markup for one language at a time and compare the different constructions in the different languages.
No matter how complex the dataset, the Translation Mining strategy will always be the same: we analyze the contexts in the different sets to understand how the sets differ from one another and we take these insights as the basis for our analyses of the different constructions across the different languages.
Some technicalities
Context 1
Context 4
Context 2
Context 3
Context 65
https://sites.google.com/site/blebruyn/writings-and-presentations
> data
> dissimilarity_matrix
> cmdscale_input
> ggplot_input
R commands
> install.packages(“ggplot2”)
> library(ggplot2)
Definite and bare plural data
import file ‘definite_bare_plural_data’ > tab ‘cmdscale_input’
cmdscale(as.dist(definite_bare_plural_data),k=2)
import file ‘definite_bare_plural_data’ > tab ‘ggplot_input’
> m<-ggplot(definite_bare_plural_data,aes(Dimension_1,Dimension_2))
> m+geom_jitter(aes(colour=Language1))
> m+geom_jitter(aes(colour=Language2))
The Perfect
Passé Composé
Passé Composé
Perfekt
Passé Composé
Perfekt
VTT
Passé Composé
Perfekt
VTT
Pretérito
Perfecto
Compuesto
Passé Composé
Perfekt
VTT
Pretérito
Perfecto
Compuesto
Present Perfect
‘Classical’ Perfect contexts
‘Classical’ Perfect contexts
Narrative contexts
Nilsson (2016)
‘Classical’ Perfect contexts
Narrative contexts
Narrative contexts with stative verbs
‘Classical’ Perfect contexts
Narrative contexts
Narrative contexts with stative verbs
Non-narrative
past referring
contexts
Michaelis (1994)
‘Classical’ Perfect contexts
Narrative contexts
Narrative contexts with stative verbs
Non-narrative
past referring
contexts
Presuppositionality/
Interaction with
adverbs
Methodological reflections
Basic assumptions of parallel corpus research
Caveats
The constancy of meaning hypothesis
Caveats
The constancy of meaning hypothesis
Caveats
The target language representativeness hypothesis
Caveats
The target language representativeness hypothesis
Caveats
The target language representativeness hypothesis
Olohan & Baker (2000) ENGLISH: that realization with say and tell
Teich (2003) ENGLISH | GERMAN: e.g., passive vs. active, full relative clauses vs. dense modification
Delaere et al. (2012) DUTCH: e.g., akkoord gaan met vs. akkoord zijn met, te veel vs. teveel
Evert & Neumann (2017) ENGLISH | GERMAN: e.g., frequency of imperatives, modal adverbs, subordination
Kruger & De Sutter (2018) and Kruger (2019) ENGLISH |SOUTH AFRICAN: that omission
De Baets et al. (2020) DUTCH: inchoative verbs
Caveats
The target language representativeness hypothesis
Caveats
The target language representativeness hypothesis
Caveats
The target language representativeness hypothesis
| Le | guo |
LCMC (1m words) untranslated | 9054 | 1168 |
ZCTC (1m words) translated | 8748 | 1175 |
Xiao & Hu (2015)
Caveats
The target language representativeness hypothesis
Kruger (2019)
Related paradigms
‘Balanced corpus’: multiple authors, multiple translators, multiple genres.
The design is also meant to allow for an easy evaluation of target language representativeness through the inclusion of translated and untranslated texts for both languages.
Typical corpus: the ENPC
The design is conceived of in such a way that replication ought to be unnecessary.
Related paradigms
Exemplary study: Wälchli & Cysouw (2012)
Related paradigms
Exemplary study: Wälchli & Cysouw (2012)
Corpora and experiments
Two roles for experiments:
Participants���Materials
PILOT EXPERIMENT
OVT/VTT Alternations in Dutch Sample Stimulus
PILOT EXPERIMENT
Procedure
NARRATIVE: Vertel het verhaal van Maria’s trip van gisteren naar het winkelcentrum. Begin met: “Er was eens…”
NON-NARRATIVE: Som de activiteiten van Maria’s trip van gisteren naar het winkelcentrum op.
PILOT EXPERIMENT
PILOT EXPERIMENT
Peter and Theresa are planning to go to a concert next weekend. Peter offers to go get the tickets later today, but Theresa tells him:
+T, +D: “I purchased / have purchased mine this morning
+T, -D: “I purchased / have purchased mine at midnight
-T, + D: “I purchased / have purchased mine last month
-T, -D: “I purchased / have purchased mine in November
It was cheaper that way”.
Replicating TM studies
https://sites.google.com/site/blebruyn/writings-and-presentations
Tense data
import file ‘cmdscale_input’
cmdscale(as.dist(cmdscale_input),k=2)
import file ‘ggplot_input’
> library(ggplot2)
> m<-ggplot(ggplot_input,aes(Dimension_1,Dimension_2))
> m+geom_jitter(aes(colour=English))+
+ scale_colour_manual(values=c("forestgreen","chartreuse","orange2","yellow","dodgerblue","deepskyblue"))
> m+geom_jitter(aes(colour=Dutch))+
+ scale_colour_manual(values=c("orange2","forestgreen","dodgerblue"))
> m+geom_jitter(aes(colour=French))+
+ scale_colour_manual(values=c("darkorchid","chartreuse","dodgerblue","cyan","firebrick","orange2"))
> m+geom_jitter(aes(colour=German))+
+ scale_colour_manual(values=c("dodgerblue","orange2","forestgreen"))
> m+geom_jitter(aes(colour=Italian))+
+ scale_colour_manual(values=c("chartreuse","dodgerblue","orange2","firebrick"))
> m+geom_jitter(aes(colour=Spanish))+
+ scale_colour_manual(values=c("chartreuse","darkorchid","deeppink","orange2","forestgreen","dodgerblue","firebrick"))