{
"metadata": {
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3-final"
},
"orig_nbformat": 2,
"kernelspec": {
"name": "python38364bit31a300f32e4a4979894c2ccf59316df7",
"display_name": "Python 3.8.3 64-bit"
}
},
"nbformat": 4,
"nbformat_minor": 2,
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Model Analysis of Middle Low German and Nowegian Nynorsk\n",
"\n",
"In this analysis we will walk through the results of the baseline neural transducer models for two target low-resource languages, Middle Low German and Norwegian Nynorsk, as well as their source languages, English, German, and Icelandic.\n",
"\n",
"Ontop of a basic Analysis we will be taking an in-depth look at how a lemma is effected in the predictions and training, and by training models with custom training data, hope to gain an insight into what source languages pair with the target languages best, as well as how the models react to adding more data to train on."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": " family language model prediction truth lemma \\\n0 germanic gml hall-mono-hmm achtede achtede achten \n1 germanic gml hall-mono-hmm vrîen vrîen vrie \n2 germanic gml hall-mono-hmm spö̂dede spö̂dede spoden \n3 germanic gml hall-mono-hmm jachtereden jachtereden jachteren \n4 germanic gml hall-mono-hmm jachterest jachterest jachteren \n\n tag loss distance is_correct is_lemma \n0 V;IND;SG;3;PST\\n 0.006583 0 1 0 \n1 ADJ;GEN;LGSPEC1\\n 0.036813 0 1 0 \n2 V;SBJV;SG;1;PST\\n 0.001421 0 1 0 \n3 V;IND;PL;PST\\n 0.001089 0 1 0 \n4 V;SBJV;SG;2;PRS\\n 0.000505 0 1 0 ",
"text/html": "
\n\n
\n \n
\n
\n
family
\n
language
\n
model
\n
prediction
\n
truth
\n
lemma
\n
tag
\n
loss
\n
distance
\n
is_correct
\n
is_lemma
\n
\n \n \n
\n
0
\n
germanic
\n
gml
\n
hall-mono-hmm
\n
achtede
\n
achtede
\n
achten
\n
V;IND;SG;3;PST\\n
\n
0.006583
\n
0
\n
1
\n
0
\n
\n
\n
1
\n
germanic
\n
gml
\n
hall-mono-hmm
\n
vrîen
\n
vrîen
\n
vrie
\n
ADJ;GEN;LGSPEC1\\n
\n
0.036813
\n
0
\n
1
\n
0
\n
\n
\n
2
\n
germanic
\n
gml
\n
hall-mono-hmm
\n
spö̂dede
\n
spö̂dede
\n
spoden
\n
V;SBJV;SG;1;PST\\n
\n
0.001421
\n
0
\n
1
\n
0
\n
\n
\n
3
\n
germanic
\n
gml
\n
hall-mono-hmm
\n
jachtereden
\n
jachtereden
\n
jachteren
\n
V;IND;PL;PST\\n
\n
0.001089
\n
0
\n
1
\n
0
\n
\n
\n
4
\n
germanic
\n
gml
\n
hall-mono-hmm
\n
jachterest
\n
jachterest
\n
jachteren
\n
V;SBJV;SG;2;PRS\\n
\n
0.000505
\n
0
\n
1
\n
0
\n
\n \n
\n
"
},
"metadata": {},
"execution_count": 3
}
],
"source": [
"# packages\n",
"import pandas as pd\n",
"import seaborn as sns\n",
"import matplotlib.pyplot as plt\n",
"\n",
"# lists\n",
"languages = 'gml nno deu eng isl'.split(' ')\n",
"baseraw = pd.read_csv('scraped_data/2020-07-10-tsv.predictions.csv')\n",
"\n",
"# column for if full lemma is in truth word\n",
"baseraw['is_lemma'] = [1 if str(row[6]) in str(row[5]) else 0 for row in baseraw.itertuples()]\n",
"\n",
"baseraw.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As shown, this is what the raw data from our base predictions looks like. This data consists of every prediction, ground truth, lemma, and tag for the development data for all the languages we want to take a look at. There are also additional columns that are derived from those 4 mentioned columns.\n",
"\n",
"# Simple analysis\n",
"\n",
"Lets take a look at some basic statistics of all our languages, trying to see if we can find any patterns in the test data, that can be utilized for different training methods.\n",
"\n",
"## How well did languages perform?\n",
"\n",
"Lets start with looking at the mean accuracy for each language."
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": " language nwords tested mean accuracy mean distance mean loss\n0 deu 14201 97.829378 0.051387 0.387351\n1 eng 11553 96.516056 0.088181 0.398252\n2 gml 127 60.826772 1.137795 0.524684\n3 isl 7690 96.605982 0.073700 0.391719\n4 nno 1443 84.736660 0.241511 0.440174",
"text/html": "
\n\n
\n \n
\n
\n
language
\n
nwords tested
\n
mean accuracy
\n
mean distance
\n
mean loss
\n
\n \n \n
\n
0
\n
deu
\n
14201
\n
97.829378
\n
0.051387
\n
0.387351
\n
\n
\n
1
\n
eng
\n
11553
\n
96.516056
\n
0.088181
\n
0.398252
\n
\n
\n
2
\n
gml
\n
127
\n
60.826772
\n
1.137795
\n
0.524684
\n
\n
\n
3
\n
isl
\n
7690
\n
96.605982
\n
0.073700
\n
0.391719
\n
\n
\n
4
\n
nno
\n
1443
\n
84.736660
\n
0.241511
\n
0.440174
\n
\n \n
\n
"
},
"metadata": {},
"execution_count": 40
}
],
"source": [
"# get mean accuracy, loss, distance\n",
"avg_langs = baseraw.groupby(['language']).agg({'prediction':'count', 'is_correct':'mean', 'distance':'mean', 'loss':'mean'}).reset_index()\n",
"avg_langs.columns = ['language', 'nwords tested', 'mean accuracy', 'mean distance', 'mean loss']\n",
"# get actual nwords, as the first part was not grouped by model\n",
"avg_langs['nwords tested'] = baseraw.groupby(['language', 'model']).agg({'prediction':'count'})['prediction'].reset_index().groupby('language').agg({'prediction':'max'}).reset_index()['prediction']\n",
"avg_langs['mean accuracy'] = avg_langs['mean accuracy'] * 100\n",
"\n",
"avg_langs.sort_values(by=['language'])\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we can see how many words each development data test set had. Which shows that Middle Low German (gml) was only tested on 127 words. We can also see the mean accuracy for each language.\n",
"\n",
"We notice that the mean accuracy for the source languages are > 96%, while the target languages tend to be lower. We can also see that Middle Lowe German had the highest mean leveshtein distance with 1.1, it also has the highest mean loss at 0.52.\n",
"\n",
"## How well did individual model types perform?\n",
"\n",
"Lets dive one level deeper and take a look at how these langauges did in comparison to the model types."
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": " language model nwords trained nwords tested lemma_in_word \\\n0 deu hall-mono-hmm 10000 14201 61.523836 \n1 deu hall-transformer 10000 14201 61.523836 \n2 deu mono-hmm 99405 14201 61.523836 \n3 deu transformer 99405 14201 61.523836 \n4 eng hall-mono-hmm 10000 11553 87.881935 \n5 eng hall-transformer 10000 11553 87.881935 \n6 eng mono-hmm 80864 11553 87.881935 \n7 eng transformer 80864 11553 87.881935 \n8 gml hall-mono-hmm 10000 127 11.811024 \n9 gml hall-transformer 10000 127 11.811024 \n10 gml mono-hmm 890 127 11.811024 \n11 gml transformer 890 127 11.811024 \n12 isl hall-mono-hmm 10000 7690 45.708713 \n13 isl hall-transformer 10000 7690 45.708713 \n14 isl mono-hmm 53841 7690 45.708713 \n15 isl transformer 53841 7690 45.708713 \n16 nno hall-mono-hmm 10000 1443 81.704782 \n17 nno hall-transformer 10000 1443 81.704782 \n18 nno mono-hmm 10101 1443 81.704782 \n19 nno transformer 10101 1443 81.704782 \n\n meanloss meandist accuracy \n0 0.005871 0.075276 98.331103 \n1 0.769088 0.038448 96.894585 \n2 0.005425 0.061686 98.591648 \n3 0.769019 0.030139 97.500176 \n4 0.020817 0.149225 95.654808 \n5 0.776552 0.062754 96.918549 \n6 0.017318 0.081364 96.485761 \n7 0.778323 0.059379 97.005107 \n8 0.227857 1.220472 54.330709 \n9 0.814902 0.944882 65.354331 \n10 0.134304 1.236220 62.204724 \n11 0.921674 1.149606 61.417323 \n12 0.019361 0.083745 96.657997 \n13 0.765096 0.078674 96.150845 \n14 0.017599 0.062549 97.022107 \n15 0.764821 0.069831 96.592978 \n16 0.093843 0.281358 82.605683 \n17 0.789725 0.214830 86.347886 \n18 0.090520 0.293139 81.288981 \n19 0.786608 0.176715 88.704089 ",
"text/html": "
\n\n
\n \n
\n
\n
language
\n
model
\n
nwords trained
\n
nwords tested
\n
lemma_in_word
\n
meanloss
\n
meandist
\n
accuracy
\n
\n \n \n
\n
0
\n
deu
\n
hall-mono-hmm
\n
10000
\n
14201
\n
61.523836
\n
0.005871
\n
0.075276
\n
98.331103
\n
\n
\n
1
\n
deu
\n
hall-transformer
\n
10000
\n
14201
\n
61.523836
\n
0.769088
\n
0.038448
\n
96.894585
\n
\n
\n
2
\n
deu
\n
mono-hmm
\n
99405
\n
14201
\n
61.523836
\n
0.005425
\n
0.061686
\n
98.591648
\n
\n
\n
3
\n
deu
\n
transformer
\n
99405
\n
14201
\n
61.523836
\n
0.769019
\n
0.030139
\n
97.500176
\n
\n
\n
4
\n
eng
\n
hall-mono-hmm
\n
10000
\n
11553
\n
87.881935
\n
0.020817
\n
0.149225
\n
95.654808
\n
\n
\n
5
\n
eng
\n
hall-transformer
\n
10000
\n
11553
\n
87.881935
\n
0.776552
\n
0.062754
\n
96.918549
\n
\n
\n
6
\n
eng
\n
mono-hmm
\n
80864
\n
11553
\n
87.881935
\n
0.017318
\n
0.081364
\n
96.485761
\n
\n
\n
7
\n
eng
\n
transformer
\n
80864
\n
11553
\n
87.881935
\n
0.778323
\n
0.059379
\n
97.005107
\n
\n
\n
8
\n
gml
\n
hall-mono-hmm
\n
10000
\n
127
\n
11.811024
\n
0.227857
\n
1.220472
\n
54.330709
\n
\n
\n
9
\n
gml
\n
hall-transformer
\n
10000
\n
127
\n
11.811024
\n
0.814902
\n
0.944882
\n
65.354331
\n
\n
\n
10
\n
gml
\n
mono-hmm
\n
890
\n
127
\n
11.811024
\n
0.134304
\n
1.236220
\n
62.204724
\n
\n
\n
11
\n
gml
\n
transformer
\n
890
\n
127
\n
11.811024
\n
0.921674
\n
1.149606
\n
61.417323
\n
\n
\n
12
\n
isl
\n
hall-mono-hmm
\n
10000
\n
7690
\n
45.708713
\n
0.019361
\n
0.083745
\n
96.657997
\n
\n
\n
13
\n
isl
\n
hall-transformer
\n
10000
\n
7690
\n
45.708713
\n
0.765096
\n
0.078674
\n
96.150845
\n
\n
\n
14
\n
isl
\n
mono-hmm
\n
53841
\n
7690
\n
45.708713
\n
0.017599
\n
0.062549
\n
97.022107
\n
\n
\n
15
\n
isl
\n
transformer
\n
53841
\n
7690
\n
45.708713
\n
0.764821
\n
0.069831
\n
96.592978
\n
\n
\n
16
\n
nno
\n
hall-mono-hmm
\n
10000
\n
1443
\n
81.704782
\n
0.093843
\n
0.281358
\n
82.605683
\n
\n
\n
17
\n
nno
\n
hall-transformer
\n
10000
\n
1443
\n
81.704782
\n
0.789725
\n
0.214830
\n
86.347886
\n
\n
\n
18
\n
nno
\n
mono-hmm
\n
10101
\n
1443
\n
81.704782
\n
0.090520
\n
0.293139
\n
81.288981
\n
\n
\n
19
\n
nno
\n
transformer
\n
10101
\n
1443
\n
81.704782
\n
0.786608
\n
0.176715
\n
88.704089
\n
\n \n
\n
"
},
"metadata": {},
"execution_count": 49
}
],
"source": [
"# aggregating dataframe for number of words, mean loss, and mean distance\n",
"aggdf = baseraw.groupby(['language','model']).agg({'prediction':'count', 'is_lemma':'mean', 'loss':'mean', 'distance':'mean', 'is_correct':'mean'}).reset_index()\n",
"# rename\n",
"aggdf.columns = ['language', 'model', 'nwords tested', 'lemma_in_word', 'meanloss', 'meandist', 'accuracy']\n",
"aggdf['accuracy'] = aggdf['accuracy'] * 100\n",
"aggdf['lemma_in_word'] = aggdf['lemma_in_word'] * 100\n",
"aggdf['nwords trained'] = [10000, 10000, 99405, 99405, 10000, 10000, 80864, 80864, 10000, 10000, 890, 890, 10000, 10000, 53841, 53841, 10000, 10000, 10101, 10101]\n",
"\n",
"aggdf[['language', 'model', 'nwords trained', 'nwords tested', 'lemma_in_word', 'meanloss', 'meandist', 'accuracy']]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Initial thoughts\n",
"\n",
"Middle Low German\n",
"\n",
"* Has a very low amount of development data\n",
"* Has the lowest accuracy out of all languages\n",
" + hall-transformer seemed to perform the best out of the models at 65.354%\n",
"\n",
"Norwegian Nynorsk\n",
"\n",
"* A low amount of development data, although not the lowest\n",
"* Good accuray results, with the transformer taking the lead at 88.704%\n",
"\n",
"English, German, Icelandic\n",
"\n",
"* Each having a good amount of development data\n",
"* All accuracies are >= 95%\n",
" + For icelandic, mono-hmm did the best at 97%\n",
" + For german, mono-hmm did the bests at 98.592%\n",
" + For english, transformer did the best at 97%\n",
"\n",
"# Correlations and Pearsons r\n",
"\n",
"Next lets start by taking a look the matchups between the distance, loss, number of testing words, and accuracy"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "
"
},
"metadata": {},
"execution_count": 48
}
],
"source": [
"## pearsons r squared\n",
"aggdf[['nwords tested', 'nwords trained', 'meanloss', 'meandist', 'accuracy']].corr()**2"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Correlation thoughs\n",
"\n",
"Pearsons r squared is being used here.\n",
"\n",
"* Mean levenshtein distance and accuracy have the highest R^2 value of ~0.95, this is an indicator that focusing on improving the metric might be the best way forward. A lower distance tends to show a higher accuracy.\n",
"\n",
"* The number of words is also heavily correlated to the accuracy and the mean distance, an attempt to boost the number of words might prove beneficial\n",
"\n",
"* The mean loss seems to have little to do with the models accuracy, although it is most likely a statistically significant r squared value.\n",
"\n",
"# Does the full lemma appear in the inflected word?\n",
"\n",
"Now that we have a general idea of how the baseline model performed, lets dive deeper into distinguishing a pattern in the two target languages: Middle Low German (gml) and Norwegian Nynorsk (nno).\n",
"\n",
"One factor to the language performance could be distinguishing whether the full lemma exists in the true word or not. It might make it easier for the Neural Network to correctly predict a word, if the lemma is unchanged and fully in the inflected word.\n",
"\n",
"Lets start digging into this idea."
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": " language model nlemmas %lemma %false&lemma %acc_diff\n8 gml hall-mono-hmm 15 11.811024 12.068966 -0.997375\n9 gml hall-transformer 15 11.811024 13.636364 -5.354331\n10 gml mono-hmm 15 11.811024 12.500000 -2.204724\n11 gml transformer 15 11.811024 14.285714 -8.083990\n16 nno hall-mono-hmm 1179 81.704782 72.908367 1.872689\n17 nno hall-transformer 1179 81.704782 77.157360 0.759832\n18 nno mono-hmm 1179 81.704782 71.851852 2.256396\n19 nno transformer 1179 81.704782 73.006135 1.202612",
"text/html": "
\n\n
\n \n
\n
\n
language
\n
model
\n
nlemmas
\n
%lemma
\n
%false&lemma
\n
%acc_diff
\n
\n \n \n
\n
8
\n
gml
\n
hall-mono-hmm
\n
15
\n
11.811024
\n
12.068966
\n
-0.997375
\n
\n
\n
9
\n
gml
\n
hall-transformer
\n
15
\n
11.811024
\n
13.636364
\n
-5.354331
\n
\n
\n
10
\n
gml
\n
mono-hmm
\n
15
\n
11.811024
\n
12.500000
\n
-2.204724
\n
\n
\n
11
\n
gml
\n
transformer
\n
15
\n
11.811024
\n
14.285714
\n
-8.083990
\n
\n
\n
16
\n
nno
\n
hall-mono-hmm
\n
1179
\n
81.704782
\n
72.908367
\n
1.872689
\n
\n
\n
17
\n
nno
\n
hall-transformer
\n
1179
\n
81.704782
\n
77.157360
\n
0.759832
\n
\n
\n
18
\n
nno
\n
mono-hmm
\n
1179
\n
81.704782
\n
71.851852
\n
2.256396
\n
\n
\n
19
\n
nno
\n
transformer
\n
1179
\n
81.704782
\n
73.006135
\n
1.202612
\n
\n \n
\n
"
},
"metadata": {},
"execution_count": 34
}
],
"source": [
"# aggregate dataframe into each language -> model\n",
"agglemma = baseraw[baseraw['is_lemma'] == 1].groupby(['language', 'model']).agg({'prediction':'count', 'loss':'mean', 'distance':'mean', 'is_correct':'mean'}).reset_index()\n",
"agglemma.columns = ['language', 'model', 'nlemmas', 'meanloss', 'meandist', 'accuracy']\n",
"\n",
"# math to compare results\n",
"agglemma['%acc_diff'] = (agglemma['accuracy']*100 - aggdf['accuracy'])\n",
"# agglemma['dist_diff'] = agglemma['meandist'] - aggdf['meandist']\n",
"# agglemma['loss_diff'] = agglemma['meanloss'] - aggdf['meanloss']\n",
"agglemma['%lemma'] = agglemma['nlemmas'] / aggdf['numwords']*100\n",
"\n",
"# the proportion of words that are incorrect and have the full lemma, to the total incorrect words\n",
"false = baseraw[baseraw.is_correct == 0]\n",
"falseagg = false[false.is_lemma == 1].groupby(['language', 'model']).agg({'prediction':'count'}).reset_index()\n",
"falseagg.columns = ['language', 'model', 'nwords']\n",
"\n",
"# finding proportion of false words that contain the full lemma\n",
"false_lemma = [n for n in falseagg['nwords']]\n",
"false = [ n for n in false.groupby(['language', 'model']).agg({'prediction':'count'}).reset_index()['prediction']]\n",
"agglemma['%false&lemma'] = [false_lemma[i] / false[i] * 100 for i in range(len(false))]\n",
"\n",
"\n",
"agglemma = agglemma[['language', 'model', 'nlemmas', '%lemma', '%false&lemma', '%acc_diff']]\n",
"\n",
"agglemma[[True if lang in ('gml', 'nno') else False for lang in agglemma.language]]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"From this chart we can see the difference in the testing data after subsetting for words where the lemma appears unchanged in the inflected word. One thing that we notice is that only 11% of the Middle Low German development data is in this subset, while 81% is in Norwegian Nynorsk.\n",
"\n",
"We can also see that the accuracy dropped for all model types in Middle Low German, suggesting that this is a weak spot in the training. However, for Norwegian Nynorsk, the accuracy increased, suggesting that this might not be the best approach to helping this language train.\n",
"\n",
"Nonetheless, lets run some more models and see what results we get!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Training Augmentation\n",
"\n",
"One base method for training augmentation was done here. We had taken the target languages, Middle Low German and Norwegian Nynorsk and have added an additional buffer of data to train from the source languages, English, German, Icelandic. The amount of data added is a direct percentage of the existing target language, for example we added an additional 25%, 50%, .., 200% training data, when allowable. This data was randomly chosen from a subset of the source languages. The subset is the words where the lemma is in the inflected word, unchanged.\n",
"\n",
"This was done to test the hypothesis that if we augment the training data with a subset of source data, we can achieve a higher accuracy in training. Ultimately supporting the idea that targeted language feature modifications can help improve low-resource languages.\n",
"\n",
"## Basic Overview\n",
"\n",
"Lets start by taking a look at how each language performed."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": " target language mean augmented accuracy mean baseline accuracy\n0 gml 65.485564 60.826772\n1 nno 86.050211 84.736660",
"text/html": "
\n\n
\n \n
\n
\n
target language
\n
mean augmented accuracy
\n
mean baseline accuracy
\n
\n \n \n
\n
0
\n
gml
\n
65.485564
\n
60.826772
\n
\n
\n
1
\n
nno
\n
86.050211
\n
84.736660
\n
\n \n
\n
"
},
"metadata": {},
"execution_count": 4
}
],
"source": [
"# reading in and adding columns for the lemma prediction raw data\n",
"augraw = pd.read_csv('scraped_data/8-13-20.lemma.dev.predictions.csv')\n",
"trglang = [lang.split('+')[0] for lang in augraw.language]\n",
"srclang = [lang.split('+')[-1] for lang in augraw.language]\n",
"percent_added = [int(lang.split('+')[1].split('p')[0]) for lang in augraw.language] \n",
"\n",
"augraw['target'], augraw['add_lang'], augraw['%added'] = trglang, srclang, percent_added\n",
"# column for if full lemma is in truth word\n",
"augraw['is_lemma'] = [1 if str(row[6]) in str(row[5]) else 0\n",
" for row in augraw.itertuples()]\n",
"\n",
"\n",
"# reading in basic language model data\n",
"basic_models = pd.read_csv('scraped_data/2020-07-10-tsv.predictions.csv')\n",
"aggog = basic_models.groupby(['language','model']).agg({'loss':'mean', 'distance':'mean', 'is_correct':'mean'}).reset_index()\n",
"aggog.columns = ['language', 'model', 'meanloss', 'meandist', 'accuracy']\n",
"\n",
"# get gml and nno baseline accuracies\n",
"gml_acc = float(aggog[aggog.language == 'gml'].groupby(['language']).agg({'accuracy':'mean'}).reset_index()['accuracy'])*100\n",
"nno_acc = float(aggog[aggog.language == 'nno'].groupby(['language']).agg({'accuracy':'mean'}).reset_index()['accuracy'])*100\n",
"base_acc = [gml_acc, nno_acc]\n",
"\n",
"# aggregating dataframe for number of words, mean loss, and mean distance\n",
"agglemma = augraw.groupby(['language','model']).agg({'target':'max', 'add_lang':'max', '%added':'max', 'loss':'mean', 'distance':'mean', 'is_correct':'mean'}).reset_index()\n",
"# rename\n",
"agglemma.columns = ['language', 'model', 'target', 'add_lang', '%added', 'meanloss', 'meandist', 'accuracy']\n",
"\n",
"agglemma['accuracy'] = agglemma['accuracy'] * 100\n",
"\n",
"comparison = agglemma.groupby(['target']).agg({'accuracy':'mean'}).reset_index()\n",
"comparison.columns = ['target language', 'mean augmented accuracy']\n",
"comparison['mean baseline accuracy'] = base_acc\n",
"comparison"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As we can see, with the addition of another language for training the models perform, on average, better than the baseline.\n",
"\n",
"## Best language to add for training\n",
"\n",
"Lets take a look into which additional language performed the best for each target language."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": " target language addition language mean augmented accuracy\n0 gml deu 65.157480\n1 gml eng 66.437008\n2 gml isl 64.714567\n3 gml nno 65.682415\n4 nno deu 85.635086\n5 nno eng 86.204336\n6 nno isl 86.235274\n7 nno nno 86.321899",
"text/html": "
\n\n
\n \n
\n
\n
target language
\n
addition language
\n
mean augmented accuracy
\n
\n \n \n
\n
0
\n
gml
\n
deu
\n
65.157480
\n
\n
\n
1
\n
gml
\n
eng
\n
66.437008
\n
\n
\n
2
\n
gml
\n
isl
\n
64.714567
\n
\n
\n
3
\n
gml
\n
nno
\n
65.682415
\n
\n
\n
4
\n
nno
\n
deu
\n
85.635086
\n
\n
\n
5
\n
nno
\n
eng
\n
86.204336
\n
\n
\n
6
\n
nno
\n
isl
\n
86.235274
\n
\n
\n
7
\n
nno
\n
nno
\n
86.321899
\n
\n \n
\n
"
},
"metadata": {},
"execution_count": 6
}
],
"source": [
"lang_comparison = agglemma.groupby(['target','add_lang']).agg({'accuracy':'mean'}).reset_index()\n",
"lang_comparison.columns = ['target language', 'addition language', 'mean augmented accuracy']\n",
"lang_comparison['mean baseline accuracy'] = [acc for item in [[accuracy for i in range(4)] for accuracy in base_acc] for acc in item]\n",
"\n",
"lang_comparison[['target language', 'addition language', 'mean augmented accuracy']]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we can see that for both target languages, the custom training models out performed the baseline.\n",
"\n",
"For Middle Low German the best performing additional language was Norwegian Nynorsk coming, with an average accuracy of 65.06% compared to the baseline of 60.83%.\n",
"\n",
"For Norwegian Nynorsk the best performing addition language was FIXING NNO+NNO"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## What percentage of the target language does best?\n",
"\n",
"Lets take a look at the how each target language dealt with additional training data, on average. We can hope to gain insights on how much data to buffer with these low-resource languages."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": " target language percent of target mean augmented accuracy \\\n0 gml 25 64.468504 \n1 gml 50 64.173228 \n2 gml 75 64.566929 \n3 gml 100 65.452756 \n4 gml 125 67.322835 \n5 gml 150 65.452756 \n6 gml 175 66.404199 \n7 gml 200 66.535433 \n8 nno 25 85.732848 \n9 nno 50 86.053361 \n10 nno 75 86.763687 \n11 nno 100 86.200624 \n12 nno 125 85.793486 \n13 nno 150 85.221760 \n14 nno 175 86.036036 \n\n mean baseline accuracy \n0 60.826772 \n1 60.826772 \n2 60.826772 \n3 60.826772 \n4 60.826772 \n5 60.826772 \n6 60.826772 \n7 60.826772 \n8 84.736660 \n9 84.736660 \n10 84.736660 \n11 84.736660 \n12 84.736660 \n13 84.736660 \n14 84.736660 ",
"text/html": "
\n\n
\n \n
\n
\n
target language
\n
percent of target
\n
mean augmented accuracy
\n
mean baseline accuracy
\n
\n \n \n
\n
0
\n
gml
\n
25
\n
64.468504
\n
60.826772
\n
\n
\n
1
\n
gml
\n
50
\n
64.173228
\n
60.826772
\n
\n
\n
2
\n
gml
\n
75
\n
64.566929
\n
60.826772
\n
\n
\n
3
\n
gml
\n
100
\n
65.452756
\n
60.826772
\n
\n
\n
4
\n
gml
\n
125
\n
67.322835
\n
60.826772
\n
\n
\n
5
\n
gml
\n
150
\n
65.452756
\n
60.826772
\n
\n
\n
6
\n
gml
\n
175
\n
66.404199
\n
60.826772
\n
\n
\n
7
\n
gml
\n
200
\n
66.535433
\n
60.826772
\n
\n
\n
8
\n
nno
\n
25
\n
85.732848
\n
84.736660
\n
\n
\n
9
\n
nno
\n
50
\n
86.053361
\n
84.736660
\n
\n
\n
10
\n
nno
\n
75
\n
86.763687
\n
84.736660
\n
\n
\n
11
\n
nno
\n
100
\n
86.200624
\n
84.736660
\n
\n
\n
12
\n
nno
\n
125
\n
85.793486
\n
84.736660
\n
\n
\n
13
\n
nno
\n
150
\n
85.221760
\n
84.736660
\n
\n
\n
14
\n
nno
\n
175
\n
86.036036
\n
84.736660
\n
\n \n
\n
"
},
"metadata": {},
"execution_count": 19
}
],
"source": [
"# change agglemma to bins of 25%\n",
"agglemma['%added'] = [p if p%25==0 else (p+(25-(p%25))) for p in agglemma['%added']]\n",
"\n",
"percent_comparison = agglemma.groupby(['target', '%added']).agg({'accuracy':'mean'}).reset_index()\n",
"percent_comparison.columns = ['target language', 'percent of target', 'mean augmented accuracy']\n",
"# percent_comparison['mean baseline accuracy'] = [acc for item in [[accuracy for i in range(9)] for accuracy in base_acc] for acc in item]\n",
"\n",
"\n",
"percent_comparison['mean baseline accuracy'] = [acc for item in [[accuracy for i in range(8)] for accuracy in base_acc] for acc in item][:-1]\n",
"percent_comparison"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here if we ignore which language was added, we can see that adding more language for training Middle Low German produces a more accurate model. While, for Norwegian Nynorsk it seems that around an additional 75% training data improves performance.\n",
"\n",
"## Does this change depending on the language?\n",
"\n",
"Lets break this down even further into seeing if these changes in accuracy depends on the language being added."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "",
"image/svg+xml": "\r\n\r\n\r\n\r\n",
"image/png": "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\n"
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"avg_lang = agglemma.groupby(['target', '%added', 'add_lang']).agg({'accuracy':'mean', 'meanloss':'mean', 'meandist':'mean'}).reset_index()\n",
"\n",
"avg_lang.columns = ['target', '%added', 'add_lang', 'avg_acc', 'avg_loss', 'avg_dist']\n",
"\n",
"avg_lang\n",
"\n",
"fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(15, 5), sharex= False, sharey=True)\n",
"\n",
"for i,tlang in enumerate(['gml', 'nno']):\n",
" targetdf = avg_lang[tlang == avg_lang.target]\n",
" # group into bins of 25, graph is unreadble otherwise..\n",
" targetdf['%added'] = [p if p%25==0 else (p+(25-(p%25))) for p in targetdf['%added']]\n",
" p1 = sns.barplot(data=targetdf.sort_values(by=['%added', 'add_lang']), x='%added', y='avg_acc', hue='add_lang', ax= ax[i]).set_title(f\"target: {tlang}\")\n",
" ax[i].set_xlabel(\"Percent of language added\")\n",
" ax[i].set_ylabel(\"accuracy (%)\")\n",
" ax[i].axhline(base_acc[i], ls='--', color='black') # sets line in graph for baseline comparison\n",
"\n",
"# ax[1].get_legend().set_visible(False) \n",
"# plt.xlim([0, 100])\n",
"plt.ylim([50, 90])\n",
"plt.suptitle('Average accuracy accross all models for a given target language\\nthe black line is the average baseline accuracy')\n",
"\n",
"# to save\n",
"plt.savefig('target.accuracy.percent.png')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we can see that most of the additional languages performed, on average, better than the baseline. Howevewr, some languages are improving with more training data."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Comparing by model type and target languages\n",
"\n",
"Taking this even further, lets break it down by model type and language added. Can we see any trends for the accuracy depending on the model, additional language, or the percent of the target language added?"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "",
"image/svg+xml": "\r\n\r\n\r\n\r\n",
"image/png": "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vWeccUbZrbfeOrCkpCTgxRdfzJ48eXJSYmJixeuvv74XrALhxIkTy55++uncP/7xj9FPPvlk7Lfffrs1Ojq6dujQoWPT09M379u3L+iOO+4Y9Mknn2SGhISYSy+9dMjUqVPLb7rppiIRmfjcc8/tuvbaaw+52f+RqampQ9tyn3c03a/OUymllFJKKeW1cePGldcX/gAeffTRmI8++qgPQF5eXtDmzZtDY2Njy4OCgsxFF110GGDixInlX3zxRW+ASZMmlV1yySVDzz///EOXXHLJcQWvoqKigNLS0oAzzjijDOC6664rmj9//vD66RdffPFB1/nPPffcYoDU1NSKhISEivj4+BqAwYMHV+3atSt42bJlvTZt2hSWmpo6GqCystIRHR1dCxAQEMCVV17ZaOGvu9ACoFJKKaWUUh2Qp5q69hIWFuasf7948eLw5cuXh69fv35beHi4c/LkyUkVFRUOgMDAQONwWD3MAgMDqa2tFYA333xz71dffdXzww8/jDjhhBNSvvvuu83NST88PNzp+jk0NNQAOBwOQkJCjjZndDgc1NbWijFG5s+fX/TPf/4zt+G6goODnd2x358r7QOolFJKKaWUOioiIqKuvLy80XJCcXFxQERERF14eLhz48aNoenp6T09rW/z5s0hp556avnjjz++r2/fvrW7du0Kdp3ev3//ut69e9d9+umnvQBeeOGF/tOmTStrafynnXZayeLFi/vm5uYGgtVkdceOHcGelusuunfxVymllFJKKXWM2NjYuokTJ5aNHDkyJSQkxBkVFVVTP+38888//Oyzz0YlJiYmjxgxojI1NbXc0/p+/etfD8rKygoxxsiMGTNKpk6dWrFz585jCmQvvfTS7htvvDH+lltucQwZMqTqrbfeympp/BMnTqy85557cmfPnp3odDoJCgoyTzzxxN7ExMRqz0t3fToIjFJKKaWUUh2E6yAwqv11h0FgtAmoUkoppZRSSnUTWgBUSimllFJKqW5CC4BKKaWUUkop1U1oAVAppZRSSqmOw+l0OsXfQXRH9n53epyxk9MCoFJKKaWUUh3HpoKCgggtBLYvp9MpBQUFEcAmf8fia/oYCKWUUkoppTqI2traa/Py8p7Py8sbg1bWtCcnsKm2tvZafwfia/oYCKWUUkoppZTqJvSuglJKKaWUUkp1E1oAVEoppZRSSqlu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iIiIiESfX76xgnkZuwA4f1jHMEcjIuFS0yAwg82swHcrBAYduG9mBaEKUERERETq7t6z+xEfZ4zt1pK05g3CHY6IhEm1LYDOOQ0LJSIiIlJP9OvQhGevGUmn5pr4XSSW1dQFVERERETqkeN7tQ53CCISZv7MAygiIiIiIiL1QFgSQDP7k5mtNbMVZvaWmTULRxwiIiIiIiKxJFwtgJ8BA5xzg4AfgF+HKQ4REREREZGYEZYE0Dn3qXOuwrf4HZAWjjhERERERERiSSRcAzgd+Ki6lWZ2vZktMrNFubm5IQxLJHaonomEhuqaSPCpnonULGgJoJl9bmarjnA7t8o2vwEqgBerO45zboZzboRzbkTr1hq5SiQYVM9EQkN1TST4VM9Eaha0aSCcc5NqWm9mVwNnAyc751yw4hARERERERGvsMwDaGanA78EjnfOFYcjBhERERERkVgTrmsA/w40Bj4zs2Vm9kSY4hAREREREYkZYWkBdM71CEe5IiIiIiIisSwSRgEVERERERGREFACKCIiIiIiEiOUAIqIiIiIiMQIJYAiIiIiIiIxQgmgiIiIiIhIjFACKCIiIiIiEiPMORfuGPxmZoXAunDHcZRaAXnhDuIYRGPc0RgzQG/nXONwB3FAlNYziM73PxpjhuiMO6LqGURtXYvG9x6iM+5ojBkirK6pnoVUNMYdjTFDHetZWOYBrIN1zrkR4Q7iaJjZomiLGaIz7miMGbxxhzuGw0RdPYPofP+jMWaIzrgjsJ5BFNa1aHzvITrjjsaYISLrmupZiERj3NEYM9S9nqkLqIiIiIiISIxQAigiIiIiIhIjoi0BnBHuAI5BNMYM0Rl3NMYMkRd3pMXjr2iMOxpjhuiMOxJjjsSYahONMUN0xh2NMUPkxR1p8fgjGmOG6Iw7GmOGOsYdVYPAiIiIiIiIyLGLthZAEREREREROUZKAEVERERERGKEEkAREREREZEYoQRQREREREQkRigBFBERERERiRFKAEVERERERGKEEkAREREREZEYoQRQREREREQkRigBFBERERERiRFKAEVERERERGKEEkAREREREZEYoQRQREREREQkRigBFBERERERiRFKAEVERERERGKEEkAREREREZEYoQRQREREREQkRigBFBERERERiRFKAKVOzOwaM/umhvWzzOxa3/3LzezTGrY9zszW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Obe2huMdZGYfmdndR1rnnFsN3AS8hPfM0x68/c0PeAR4F/jUzArxvgajffvm471W6Wm8r1HRYfvGOtUz1bMDx87Ee0b4brxngDOBO/Hje8dXR2/B++W4A+/F8jn4PgdyRKp7qntHEof3ddqOd/CL4/F+h4l/VK9Ur+qsrnEFgx3aLVmOhpnNB55wzj1X68YRxMyW4R3kRNfUSMRTPRMza4T3x1NP59ymcMcTK1T3RAJP9UoiQSy1ANaZmR1vZu18TeNXA4OAj8Md19Fyzg1RBZZIpXomAGY22dddqCHeaSBW8p+BBSQIVPdEAk/1SiJRQrgDiDK98c5j0gjv/FVTnXM7whuSSL2jeibg7T76T7zX/i3CO9S2uqwEl+qeSOCpXknECXoXUDN7Fm+f4hzn3ADfYy2AV/GOErQZuMg5tyeogYiIiIiIiMS4UHQBnQmcfthjvwK+cM71BL7wLYuIiIiIiEgQhWQQGDNLB96v0gK4DjjBObfDzNoDs5xzvYMeiIiIiIiISAwL1zWAbQ/0f/YlgW382alVq1YuPT09qIGJhNrixYvznHMRM5m86pnUR5FWz0B1TeqnSKtrqmdSH9W1nkX8IDBmdj1wPUDnzp1ZtGhRmCMSCSwz2xIBMaieSb0WCfUMVNek/ouEuqZ6JvVdXetZuKaB2Onr+onvb051GzrnZjjnRjjnRrRuHTEnlETqFdUzkdBQXRMJPtUzkZqFKwF8F7jad/9q4J0wxSEiIiIiIhIzgp4AmtnLwDygt5llmdl/AQ8Cp5jZeuAU37KIiIiIiIgEUdCvAXTOXVrNqpODXbaIiIiIiIj8R7i6gIqIiIiIiEiIKQEUERERERGJEUoARUREREREYoQSQBERERERkRihBFBERERERCRGKAEUERERERGJEUoARUREREREYoQSQBERERERkRihBFBERERERCRGKAEUERERERGJEUoARUREREREYoQSQBERERERkRihBFBERERERCRG+J0AmlnDYAYiIiIiIiIiwVVrAmhm48xsDfC9b3mwmf0j6JGJiIiIiIhIQPnTAvgX4DRgF4BzbjkwMZhBiYiIiIiISOD51QXUOZd52EOVQYhFREREREREgijBj20yzWwc4MwsCbgVX3dQERERERERiR7+tADeANwEdASygCG+ZREREREREYkitbYAOufygMtDEIuIiIiIiIgEUa0JoJm1Bq4D0qtu75ybHrywREREREREJND8uQbwHWAO8Dka/EVERERERCRq+ZMANnDO/TIYhZvZ7cC1gANWAtOccyXBKEtERERERCTW+TMIzPtmdmagCzazjnhHFB3hnBsAxAOXBLocERERERER8fInAbwNbxK438wKzKzQzAoCVH4CkGpmCUADYHuAjisiIiIiIiKH8WcU0MbBKNg5t83M/gxsBfYDnzrnPg1GWSIiIiIiIlJDC6CZ9fH9HXakW10LNrPmwLlAV6AD0NDMrjjCdteb2SIzW5Sbm1vXYkXkCFTPREJDdU0k+FTPRGpWUxfQO3x//+8Itz8HoOxJwCbnXK5zrhx4Exh3+EbOuRnOuRHOuRGtW7cOQLEicjjVM5HQUF0TCT7VM5GaVdsF1Dl3ne/viUEqeyswxswa4O0CejKwKEhliYiIiIiIxLxqE0Azu6CmHZ1zb9alYOfcfDN7HVgCVABLgRl1OaaIiIiIiIhUr6ZBYCbXsM7h7bJZJ865+4D76nocERERERERqV1NXUCnhTIQERERERERCa5a5wE0s7Zm9oyZfeRb7mdm/xX80ERERERERCSQ/JkIfibwCd6pGgB+AH4WrIBEREREREQkOPxJAFs55/4NeACccxVAZVCjEhERERERkYDzJwEsMrOWeAd+wczGAPlBjUpEREREREQCrqZRQA/4OfAu0N3MvgVaA1ODGpWIiIiIiIgEXK0JoHNuiZkdD/QGDFjnnCsPemQiIiIiIiISUP6MAnohkOqcWw2cB7xqZsOCHpmIiIiIiIgElD/XAN7rnCs0swnAacDzwOPBDUtEREREREQCzZ8E8MCIn2cBjzvn3gGSgheSiIiIiIiIBIM/CeA2M3sSuAj40MyS/dxPREREREREIog/idxFeCeCP905txdoAdwZ1KhEREREREQk4GpNAJ1zxc65N4F8M+sMJAJrgx6ZiIiIiIiIBJQ/o4CeY2brgU3A176/HwU7MBEREREREQksf7qA/g4YA/zgnOsKTAK+DWpUIiIiIiIiEnD+JIDlzrldQJyZxTnnvgKGBDkuERERERERCbAEP7bZa2aNgDnAi2aWA1QENywREREREREJNH9aAM8F9gM/Az4GNgKTgxmUiIiIiIiIBF6tLYDOuSIzaweMAnYDn/i6hIqIiIiIiEgU8WcU0GuBBcAFwFTgOzObHuzAREREREREJLD8uQbwTmDogVY/M2sJzAWeDWZgIiIiIiIiElj+XAOYBRRWWS4EMoMTjoiIiIiIiARLtS2AZvZz391twHwzewdweAeFWRCIws2sGfA0MMB37OnOuXmBOLaIiIiIiIgcqqYuoI19fzf6bge8E8DyHwE+ds5NNbMkoEEAjy0iIiIiIiJVVJsAOud+G8yCzawJMBG4xldeGVAWzDJFRERERERimT/XAAZLNyAXeM7MlprZ02bWMIzxiIiIiIiI1GvhTAATgGHA4865oUAR8KvDNzKz681skZktys3NDXWMIjFB9UwkNFTXRIJP9UykZuFMALOALOfcfN/y63gTwkM452Y450Y450a0bt06pAGKxArVM5HQUF0TCT7VM5Ga1ToPoJl1BW4B0qtu75w7py4FO+eyzSzTzHo759YBJwNr6nJMERERERERqZ4/E8G/DTwDvAd4Alz+LcCLvhFAM4BpAT6+iIiIiIiI+PiTAJY45/4WjMKdc8uAEcE4toiIiIiIiBzKnwTwETO7D/gUKD3woHNuSdCiEhERERERkYDzJwEcCFwJnMR/uoA637KIiIiIiIhECX8SwPOBbr6J2kVERERERCRK+TMNxHKgWbADERERERERkeDypwWwLbDWzBZy6DWAdZoGQkRERERERELLnwTwvqBHISIiIiIiIkFXawLonPvazNoCI30PLXDO5QQ3LBEREREREQm0Wq8BNLOLgAXAhcBFwHwzmxrswERERERERCSw/OkC+htg5IFWPzNrDXwOvB7MwERERERERCSw/BkFNO6wLp+7/NxPREREREREIog/LYAfm9knwMu+5YuBD4MXkoiIiIiIBNKO/P2s2V7AyX3bhjsUCbMaE0AzM+BveAeAmQAYMMM591YIYhMRERERkQA4/7G5ZBeUsOq3p9Eo2Z82IKmvanz3nXPOzN52zg0H3gxRTCIiIiIiEiArs/LJLijh9km9lPyJX9fyfWdmI2vfTEREREREIs1jX22gcUoC0yak4/E4nHPhDknCyJ8E8ERgnpltNLMVZrbSzFYEOzARkUhQUFIe7hBERESO2Q87C/l4dTbTxqWzdVcxE//0FUsz94Y7LAmjahNAM+vqu3sG0B04CZgMnO37KxJ18vaV8l3GLkrKK8MdSsxZv7OQBz9aG1VnHb/L2MW1MxdRXFYR7lBE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\n"
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"def calculate(row, baseline):\n",
" '''takes new row and subracts baseline results'''\n",
" baseline = baseline[baseline.language == row['target']]\n",
" baseline = baseline[baseline.model == row['model']]\n",
" acc_diff = float(row['accuracy'] - baseline['accuracy']*100)\n",
" loss_diff = float(row['meanloss'] - baseline['meanloss'])\n",
" dist_diff = float(row['meandist'] - baseline['meandist'])\n",
"\n",
" return {\n",
" \"target\":row['target'],\n",
" \"add_lang\":row['add_lang'],\n",
" \"%added\":row['%added'],\n",
" \"model\":row['model'],\n",
" \"loss_difference\":loss_diff,\n",
" \"dist_difference\":dist_diff,\n",
" \"acc_difference\":acc_diff\n",
" }\n",
"\n",
"\n",
"differences = pd.DataFrame([calculate(row, aggog) for index, row in agglemma.iterrows()])\n",
"\n",
"fig, ax = plt.subplots(nrows=2, ncols=4, figsize=(15, 8), sharex= True, sharey=True)\n",
"\n",
"for i,tlang in enumerate(['gml', 'nno']):\n",
" targetdf = differences[tlang == differences.target]\n",
" for n, srclang in enumerate(['deu', 'eng', 'isl', 'nno']):\n",
" subset = targetdf[targetdf.add_lang == srclang]\n",
"\n",
" # print(t_s_df.head(20))\n",
" for k, model in enumerate(['mono-hmm', 'transformer']):\n",
" data = subset[subset.model == model]\n",
" \n",
" p1 = sns.lineplot(data=data, x='%added', y='acc_difference', hue='model', dashes=True, ax= ax[i, n%4]).set_title(f\"target: {tlang}, addition: {srclang}\")\n",
" # if tlang != 'nno' or srclang != 'nno':\n",
" # p1 = sns.lineplot(data=data, x='%added', y='acc_difference', hue='model', dashes=True, ax= ax[i, n%4]).set_title(f\"target: {tlang}, addition: {srclang}\")\n",
" if k == 0:\n",
" ax[i,n%4].lines[0].set_linestyle(\"--\")\n",
" ax[i, n%4].set_xlabel(\"Percent of language added\")\n",
" ax[i, n%4].get_legend().set_visible(False)\n",
" ax[i, 0].set_ylabel(\"Percent difference from baseline\")\n",
"\n",
"from matplotlib.lines import Line2D\n",
"\n",
"line1, line2 = Line2D([0], [0], color='b', ls='-', lw=4), Line2D([0], [0], ls='--', lw=4)\n",
" \n",
"plt.xlim([0, 200])\n",
"plt.legend([line2, line1], labels=['mono-hmm', '', 'transformer'], loc=1, bbox_to_anchor=[0.8, 2.6])\n",
"plt.suptitle(\"Each target and additional languages difference in accuracy from the baseline\")\n",
"\n",
"# to save\n",
"plt.savefig('difference.modeltype.png')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can see a distinct pattern from this chart. The mono-hmm type models seem to be a better choice for lower resource languages. Which is especially true for Norwegian Nynorsk, where the mono-hmm outperformed the transformer model every time.\n",
"\n",
"We can also really see the differences, and the changes that an additional language produces. However, the best improvement was a 5.5% increase in accuracy from adding an additional 75% training data of Norwegian Nynorsk to the Middle Low German training set.\n",
"\n",
"ADDING MORE DATA TO THESE"
]
}
]
}