forked from thtrieu/thtrieu.github.io
-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.html
1225 lines (1054 loc) · 54.5 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<html>
<meta charset="utf-8">
<script src="distill.template.v1.js"></script>
<script type="text/front-matter">
title: "Better translation for Vietnamese"
description: "Collect high quality data and train a state-of-the-art Neural Machine Translation model for Vietnamese."
authors:
- Chinh Ngo: http://github.com/ntkchinh/
- Trieu Trinh: http://github.com/thtrieu/
affiliations:
- VietAI: https://vietai.org/
- VietAI: https://vietai.org/
</script>
<script src="syncscroll.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<style type="text/css">
.tab-content>.tab-pane {
height: 1px;
overflow: hidden;
display: block;
visibility: hidden;
}
.tab-content>.active {
height: auto;
overflow: auto;
visibility: visible;
}
code {
font-family: Consolas,"courier new";
color: rgb(37, 35, 35);
background-color: #f1f1f1;
padding: 2px;
font-size: 100%;
}
#left {
float: left;
width: 50%;
height: 100%;
overflow: auto;
box-sizing: border-box;
padding: 0.5em;
}
#right {
float: left;
width: 50%;
height: 100%;
overflow: auto;
box-sizing: border-box;
padding: 0.5em;
}
pre {
white-space: pre-wrap; /* Since CSS 2.1 */
word-break: keep-all
}
a.button {
display: inline-block;
background: rgba(255, 255, 255, 0.75);
padding: 4px 8px;
border-radius: 4px;
font-size: 11px!important;
text-decoration: none;
color: #aaa;
border: none;
font-weight: 300;
border: solid 1px rgba(0, 0, 0, 0.08);
border-bottom-color: rgba(0, 0, 0, 0.15);
text-transform: uppercase;
line-height: 16px;
}
colablogo {
background-image: url(colab.svg);
background-repeat: no-repeat;
background-size: 20px;
background-position-y: 2px;
display: inline-block;
padding-left: 24px;
border-radius: 4px;
text-decoration: none;
}
gcpstoragelogo {
background-image: url(gcpstorage.svg);
background-repeat: no-repeat;
background-size: 20px;
background-position-y: 0px;
display: inline-block;
padding-left: 24px;
border-radius: 4px;
text-decoration: none;
}
githublogo {
background-image: url(github.svg);
background-repeat: no-repeat;
background-size: 18px;
background-position-y: -1px;
background-position-x: 2px;
display: inline-block;
padding-left: 24px;
border-radius: 4px;
text-decoration: none;
}
aiplatformlogo {
background-image: url(aiplatform.png);
background-repeat: no-repeat;
background-size: 18px;
background-position-y: -1px;
background-position-x: 2px;
display: inline-block;
padding-left: 24px;
border-radius: 4px;
text-decoration: none;
}
a:hover{
color: #666;
background: white;
border-color: rgba(0, 0, 0, 0.2);
}
.legend_div {
text-align: center;
width: 320px;}
.legend-marker {
display: inline-block;
padding: 16px 4px 8px 4px;
}
.legend-marker-color {
display: inline-block;
height: 12px;
width: 12px;
}
img {
display: inline-block;
align-items: center;
/*border: 1px solid #ddd; /* Gray border */
/*border-radius: 4px; /* Rounded border */
padding: 5px; /* Some padding */
width: 720px; /* Set a small width */
height: 350px;
-webkit-filter: grayscale(60%); /* Safari 6.0 - 9.0 */
filter: grayscale(40%);
}
/* Add a hover effect (blue shadow) */
img:hover {
box-shadow: 0 0 2px 1px rgba(0, 140, 186, 0.5);
/* -webkit-transform: scaleX(-1);
transform: scaleX(-1); */
}
.inset-border {
outline: 5px solid rgba(25, 163, 36, 0.5);
outline-offset: -5px;
}
</style>
<dt-article>
<div target="_blank" >
<img class='insert-border' src="Translation-image-01.png" alt="">
</div>
<h1>Better translation for Vietnamese</h1>
<h2>Collect high quality data and train a state-of-the-art Neural Machine Translation model for Vietnamese.</h2>
<dt-byline></dt-byline>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<!-- chart quality -->
<script type="text/javascript">
google.charts.load("current", {packages:['corechart', 'bar']}); //"corechart",
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data1 = google.visualization.arrayToDataTable([
['Train on', 'MultiCCAligned', 'MultiCCAligned + Ours', 'Ours'],
['English to Vietnamese', 32.98, 40.70, 40.97],
['Vietnamese to English', 27.37, 37.21, 37.91],
]);
var options1 = {
bar: {groupWidth: "70%"},
legend: { position: "top" },
colors: ['#75a3a3',
'#c1c1c1',
'#ff9900'
],
plotOptions: {
series: {fillOpacity: 0.1}
},
vAxis: {
bar: {groupWidth: "80%"},
ticks: [25, 29, 33, 37, 41],
viewWindow: {
min: 25
}
},
animation: {
"startup": true,
"duration": 1000,
easing: 'out',
}
};
var chart1 = new google.visualization.ColumnChart(document.getElementById('chart_quality'));
chart1.draw(data1, options1);
}
</script>
<!-- chart envi-vien -->
<script type="text/javascript">
google.charts.load("current", {
packages:["corechart", 'bar'],
// this says that google charts will run (i.e. "callback")
callback: function() {
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
switch ($(e.target).html()) {
case 'English to Vietnamese':
// this function when the tab is "English to Vietnamese"
drawChartEnvi();
break;
case 'Vietnamese to English':
// this function when the tab is "Vietnamese to English"
drawChartVien();
break;
}});
drawChartEnvi()
}
});
function drawChartEnvi() {
var data = google.visualization.arrayToDataTable([
['Test set', 'Google Translate', 'Our model'],
['Movie subtitles', 22.19, 25.37],
['Fictional book', 27.04, 26.7],
['Medical publication', 42.68, 41.43],
['TED Talk (IWSLT2015)', 37.02, 37.84],
['Legal documents', 61.5, 61.71]
]);
var options = {
chartArea: {width: '70%'},
legend: { position: "top" },
colors: ['#75a3a3',
'#ff9900'
],
hAxis: {
bar: {groupWidth: "70%"},
ticks: [20, 25, 30, 35, 40, 45, 50, 55, 60, 65],
minValue: 20,
viewWindow: {min: 20}
},
animation: {
"startup": true,
"duration": 1000,
easing: 'out',
}
};
var chart_envi = new google.visualization.BarChart(document.getElementById('chart_envi'));
chart_envi.draw(data, options);
}
function drawChartVien() {
var data = google.visualization.arrayToDataTable([
['Test set', 'Google Translate', 'Model của chúng tôi'],
['Phụ đề phim', 24.62, 34.39],
['Sách truyện', 32.13, 41.94],
['Ấn phẩm y học', 33.3, 35.72],
['Thuyết trình TED talk', 36.57, 40.64],
['Văn bản luật', 36.75, 39.9]
]);
var options = {
chartArea: {width: '70%'},
legend: { position: "top" },
colors: [
'#75a3a3',
'#ff9900'
],
hAxis: {
bar: {groupWidth: "70%"},
ticks: [20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42],
// ticks: [10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60],
minValue: 20,
viewWindow: {
min: 20
}
},
animation: {
"startup": true,
"duration": 1000,
easing: 'out',
}
};
var chart_vien = new google.visualization.BarChart(
document.getElementById('chart_vien'));
chart_vien.draw(data, options);
}
</script>
<!-- Chart style training/translation + Chart totaltest compare 2 gg -->
<script type="text/javascript">
google.charts.load("current", {packages:['corechart', 'bar']}); //"corechart",
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data1 = google.visualization.arrayToDataTable([
['Translate from', 'Styled Training',
'Not Styled Training'],
['English to Vietnamese', 42.37, 42.28],
['Vietnamese to English', 39.97, 38.88],
]);
var options1 = {
// bar: {groupWidth: "70%"},
ticks: [38.5, 39, 39.5, 40, 40.5, 41, 41.5, 42, 42.5],
legend: { position: "top" },
colors: [
// '#75a3a3',
// '#e085c2',
'#c1c1c1',
'#ff9900'
],
plotOptions: {
series: {fillOpacity: 0.1}
},
vAxis: {
bar: {groupWidth: "80%"},
viewWindow: {
min: [35, 41],
max: [43]
}
},
seriesType: 'bars',
series: {5: {type: 'line'}},
animation: {
"startup": true,
"duration": 1000,
easing: 'out',
}
};
var data2 = google.visualization.arrayToDataTable([
['Translate from', 'Without style tag', 'With style tag'],
['English to Vietnamese', 42.54, 42.63],
['Vietnamese to English', 39.81, 40.27],
]);
var options2 = {
// ticks: [39, 39.5, 40, 40.5, 41, 41.5, 42],
ticks: [40, 40.5, 41, 41.5, 42],
legend: { position: "top" },
colors: ['#75a3a3',
'#c1c1c1',
],
plotOptions: {
series: {fillOpacity: 0.1}
},
vAxis: {
bar: {groupWidth: "80%"},
viewWindow: {
min: 39
}
},
seriesType: 'bars',
series: {5: {type: 'line'}},
animation: {
"startup": true,
"duration": 1000,
easing: 'out',
}
};
var data3 = google.visualization.arrayToDataTable([
['Translate from', 'Google Translate', 'Our Model'],
['English to Vietnamese', 41.78, 43.07],
['Vietnamese to English', 34.33, 39.33],
]);
var options3 = {
bar: {groupWidth: "70%"},
ticks: [30, 32, 34, 36, 38, 40, 42, 44],
legend: { position: "top" },
colors: [
'#c1c1c1',
'#ff9900'
],
plotOptions: {
series: {fillOpacity: 0.1}
},
vAxis: {
bar: {groupWidth: "80%"},
viewWindow: {
min: 30}
},
seriesType: 'bars',
series: {5: {type: 'line'}},
animation: {
"startup": true,
"duration": 1000,
easing: 'out'}
};
// var chart1 = new google.visualization.ColumnChart(document.getElementById('chart_training_taguntag'));
// chart1.draw(data1, options1);
var chart2 = new google.visualization.ColumnChart(document.getElementById('chart_translation_taguntag'));
chart2.draw(data2, options2);
var chart3 = new google.visualization.ColumnChart(document.getElementById('chart_compare2GG_total'));
chart3.draw(data3, options3);
}
</script>
<p></p>
<p style="text-align:justify">Our model outperforms Google Translate on a diverse set of text sources,
including the standard benchmark used in Machine Translation research.
The following chart shows the two systems' overall
performance in BLEU score - a standard auto-metric in Machine Translation.
</p>
<!-- <div> -->
<div id="chart_compare2GG_total" style="height: 300px;"></div>
<!-- <div><center>
<a href="https://vietai-research.an.r.appspot.com/" class="button" target="_blank" rel="noopener noreferrer">Try our <aiplatformlogo>web app</aiplatformlogo></a></div> -->
<!-- </div> -->
<div style="height: 20px;"> </div>
<p> Below, we highlighted a few translations produced by our model ,
contrasting them against the outputs from Google Translate <dt-fn>
Google Translate outputs are subjected to change on a daily basis.
The outputs reported here are recorded on April 9th, 2021.
</dt-fn>.</p>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#envi">English to Vietnamese</a></li>
<li><a data-toggle="tab" href="#vien">Vietnamese to English</a></li>
</ul>
<div class="tab-content" style="height: 420px;">
<div id="envi" class="tab-pane fade in active"><pre id='ted-output' style="height: 420px;" class=syncscroll name=sampleted>
<b>Input:</b>
Edward chose his words carefully. "It is a great honor, honey, and I'm sure it's not one they would offer lightly. They must have had good reason for choosing you." He hesitated. "We have to think about this very carefully. About what it would do to our lives."
<b>Google Translate:</b>
Edward lựa chọn lời nói của mình một cách cẩn thận. "Đó là một vinh dự lớn, <b>em yêu</b>, và <b>anh</b> chắc chắn đó không phải là một vinh dự mà họ sẽ đưa ra một cách nhẹ nhàng. Họ phải có lý do chính đáng để chọn <b>bạn</b>." Anh ngập ngừng. "<b>Chúng tôi</b> phải suy nghĩ về điều này rất cẩn thận. Về những gì nó sẽ làm cho cuộc sống của <b>chúng tôi</b>."
<b>Our model:</b>
Edward cẩn thận lựa chọn từ ngữ của mình. "Đó là một vinh dự lớn lao, <b>con yêu</b>, và <b>bố</b> chắc chắn rằng đó không phải là thứ mà họ sẽ đề nghị một cách nhẹ nhàng. Họ hẳn phải có lý do chính đáng để chọn <b>con</b>." Anh ngập ngừng. "<b>Chúng ta</b> phải suy nghĩ thật cẩn thận về điều này. Về những gì nó sẽ làm với cuộc sống của <b>chúng ta</b>."
------------
<b>Input:</b>
2. To consider and approve business co - operation, joint venture and build - operate - transfer contracts, to permit foreign organizations and individuals to establish enterprises with one hundred (100) per cent foreign owned capital and to approve the charters of enterprises with foreign owned capital.
<b>Google Translate:</b>
2. Xem xét, chấp thuận các hợp đồng hợp tác kinh doanh, liên doanh, xây dựng - kinh doanh - chuyển giao, cho phép tổ chức, cá nhân nước ngoài thành lập doanh nghiệp 100% vốn nước ngoài và chấp thuận Điều lệ doanh nghiệp có vốn đầu tư nước ngoài<b>. vốn sở hữu.</b>
<b>Our model:</b>
2. Xem xét, phê duyệt hợp đồng hợp tác kinh doanh, liên doanh, liên kết, hợp đồng xây dựng - kinh doanh - chuyển giao, cho phép tổ chức, cá nhân nước ngoài thành lập doanh nghiệp 100% vốn nước ngoài và phê duyệt điều lệ của doanh nghiệp có vốn đầu tư nước ngoài.
------------
<b>Input:</b>
You can't go on conducting your own investigations, Frank.
<b>Google Translate:</b>
Anh không thể tiến hành cuộc điều tra của riêng mình, Frank.
<b>Our model:</b>
Anh không thể tự mình điều tra được đâu, Frank.
------------
<b>Input:</b>
So that's what's behind Beth's crazy diet !
<b>Google Translate:</b>
Vì vậy, đó là những gì đằng sau chế độ ăn kiêng điên cuồng của Beth !
<b>Our model:</b>
Vậy đó là cái đằng sau chế độ ăn uống điên rồ của Beth !
</pre></div>
<div id="vien" class="tab-pane fade"><pre id='ted-output' style="height: 420px;" class=syncscroll name=sampleted>
<b>Input:</b>
Điều duy nhất thật sự làm em phiền là em có cảm giác rằng <b>em và con</b> có lẽ sẽ chẳng còn bao giờ trở về đây nữa. Em có cảm giác hình như em bỏ trốn anh. Nhưng <b>anh sẽ cùng em</b> trên mọi bước đường em đi. Bây giờ em cần đến anh hơn bao giờ hết.
<b>Google Translate:</b>
The only thing that really bothers me is that I have the feeling that <b>I and I</b> probably will never be back here again. I feel like I'm running away from you. But <b>I will be with you</b> every step of the way. Now I need you more than ever.
<b>Our model:</b>
The only thing that really bothers me is that I have a feeling that <b>I and my child</b> might never come back here again. I feel like I'm running away from you. But <b>you'll be with me</b> on every step I take. I need you now more than ever.
------------
<b>Input:</b>
Nhưng thật nản lòng là với bệnh Parkinson và các chứng rối loạn vận động khác, chúng không có dấu ấn sinh học, vì vậy không có phương pháp xét nghiệm máu đơn giản nào mà bạn có thể làm, <b>và cái tốt nhất mà chúng ta có là bài kiểm tra thần kinh này.</b>
<b>Google Translate:</b>
But frustratingly is that with Parkinson's disease and other motor disorders, they don't have biomarkers, so there's no simple blood test you can do, <b>and the best of us. There is this nerve test.</b>
<b>Our model:</b>
But what's discouraged is that with Parkinson's disease and other motor disorders, they have no biomarkers, so there's no simple blood test that you can do, <b>and the best thing we have is this neurological test.</b>
------------
<b>Input:</b>
Trung bình mỗi nhánh xuống cho 8,9 + - 0,2 nhánh cơ và trung bình có 3,1 + - 0,3 nhánh xuyên trên 01 tiêu bản đùi. Số nhánh nuôi cơ rộng ngoài là nhiều nhất 7,9 + - 0,4 nhánh.
<b>Google Translate:</b>
On average, each branch down for <b>8,9 + - 0,2</b> muscle arms and on average has <b>3,1 + - 0,3</b> arms across 01 thigh template. The number of branches for external muscle is at most <b>7,9 + - 0,4</b> branches.
<b>Our model:</b>
On average, each branch downwards to <b>8.9 + - 0.2</b> muscle branches and on average there are <b>3.1 + - 0.3</b> penetrating branches per thigh specimen. The number of extended muscle rearing branches is at most <b>7.9 + - 0.4</b>.
------------
<b>Input:</b>
2.2.1. Tác giả không đồng thời là chủ sở hữu tác phẩm kiến trúc có các <b>quyền nhân thân</b> không được chuyển giao cho người khác, bao gồm:
<b>Google Translate:</b>
2.2.1. An author who is not concurrently the owner of an architectural work has <b>moral rights not transferred</b> to others, including:
<b>Our model:</b>
2.2.1. Authors who are not concurrently owners of architectural works and have <b>personal rights not to be transferred</b> to other persons, including:
</pre></div>
</div>
<div style="height: 20px;"> </div>
<!-- </center> -->
<div>
<h2>Introduction</h2>
<p style="text-align:justify">
In this work, we aim to solve two problems at the heart of
Vietnamese Translation: first <b>limited training data</b>,
and second - generic translation output due to a <b>lack in user interface with the model</b>.
We solved them by simply collecting more data, and training our model
while conditioning its output on specific language styles.
We released the resulting models, code, and training data here:
</p>
<center>
<a href="https://github.com/vietai/SAT" class="button" target="_blank" rel="noopener noreferrer">Get the code at <githublogo>repository</githublogo></a>
<a href="https://console.cloud.google.com/storage/browser/vietai_public/best_vi_translation" class="button" target="_blank" rel="noopener noreferrer">Download data from <gcpstoragelogo>Storage</gcpstoragelogo></a></center>
</div>
<div style="height: 10px;"> </div>
<h2> Collecting more data</h2>
<p style="text-align:justify">We collect data from open sources on the Internet,
and classify them into different categories, each labeled with a
specific language style
<dt-fn>
See all categories and their respective data sizes at <a target="_blank" rel="noopener noreferrer">https://github.com/vietai/SAT</a>
</dt-fn>. In total, there are 3.3 million
pairs of English and Vietnamese texts, ranging from single sentences to paragraphs.
Inspect a sample of our test data here:
</p>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" id="what" href="#ted">TED talks</a></li>
<li><a data-toggle="tab" href="#movie">Movie</a></li>
<li class="tab"><a data-toggle="tab" href="#law">Legal docs</a></li>
<li class="tab"><a data-toggle="tab" href="#medical">Medical publication</a></li>
<li class="tab"><a data-toggle="tab" href="#book">Fiction</a></li>
</ul></div>
<div class="tab-content" style="height: 315px;">
<div id="ted" class="tab-pane fade in active">
<div id="left"><pre id='ted-output' style="height: 300px;" class=syncscroll name=sampleted>
In South Asia, in countries like India and Pakistan, four species of vultures are listed as critically endangered, which means they have less than 10 or 15 years to go extinct, and the reason is because they are falling prey by consuming livestock that has been treated with a painkilling drug like Diclofenac .
This drug has now been banned for veterinary use in India, and they have taken a stand .
Because there are no vultures, there's been a spread in the numbers of feral dogs at carcass dump sites, and when you have feral dogs, you have a huge time bomb of rabies. The number of cases of rabies has increased tremendously in India .
Kenya is going to have one of the largest wind farms in Africa: 353 wind turbines are going to be up at Lake Turkana .
I am not against wind energy, but we need to work with the governments, because wind turbines do this to birds. They slice them in half .
</pre></div>
<div id="right"><pre id='ted-output' style="height: 300px;" class=syncscroll name=sampleted>
Tại Nam Á, những nước như Ấn Độ và Pakistan, 4 loài kền kền được ghi danh trong danh sách những loài có nguy cơ cực cao điều này có nghĩa là chúng chỉ còn ít hơn 10 hoặc 15 năm để chạm đến mức tuyệt chủng và lí do đó là bởi vì chúng bị biến thành con mồi vì ăn phải gia súc đã được chữa trị bằng thuốc giảm đau như Diclofenac .
Thuốc này đã bị cấm sử dụng trong ngành thú y tại Ấn Độ. Chúng đã minh chứng rằng
Vì không có kền kền nên mới có sự tràn lan về số lượng chó hoang tại những khu vực chứa rác thải, xác động vật. Khi bạn có chó hoang, bạn có một quả bom hẹn giờ khổng lồ về bệnh dại. Số ca mắc bệnh dại đã tăng rất nhiều tại Ấn Độ .
Kenya sẽ có một cánh đồng quạt gió lớn nhất tại Châu Phi với 353 động cơ sẽ được lắp tại Lake Turkana
Tôi không phản đối năng lượng gió, nhưng chúng ta cần hợp tác với chính phủ, vì động cơ gió khiến những con chim thành thế này. Chúng bị cắt làm đôi .
</pre></div>
</div>
<div id="movie" class="tab-pane fade">
<div id="left" ><pre id='movie-output' style="height: 300px;" class=syncscroll name=samplemovie>
Doyle's about halfway through our initial background check.
No. We don't insinuate connections we can't back up.
You should be nearby if President Qian wants to get on the phone.
Now this is different than the standoff over the Senkaku Islands.
Well, I'm asking for a small portion of the Seventh Fleet.
Are you supposed to take the Lord's name in vain like that ?
The President can issue an executive order in times of emergency.
There is a heat wave. That always pushes the grid to its limits.
And good luck with that first pitch tonight, Mr. Vice President.
This is about the Secretary of State nomination, isn't it ?
</pre></div>
<div id="right"><pre id='movie-output' style="height: 300px;" class=syncscroll name=samplemovie>
Doyle đang tiến hành kiểm tra lý lịch rồi.
Chúng ta sẽ không ám chỉ các mối liên hệ mà ta không thể chứng minh được.
Anh nên ở đây nếu chủ tịch Qian muốn trao đổi qua điện thoại.
Việc này khác với thế tranh chấp ở quần đảo Senkaku.
Chúng tôi chỉ yêu cầu một bộ phận nhỏ của Hạm đội 7.
Cô định xăm tên chúa lên tay thế này à ?
Tổng thống có thể ban hành sắc lệnh trong trường hợp khẩn cấp.
Nhiệt độ quá cao, hệ thống chịu đựng quá giới hạn rồi.
Và chúc may mắn với cú ném tối nay, ngài phó tổng thống.
Liên quan đến việc đề cử chức bộ trưởng Bộ ngoại giao, phải không ?
</pre></div>
</div>
<div id="law" class="tab-pane fade">
<div id="left" ><pre id='law-output' style="height: 300px;" class=syncscroll name=samplelaw>
On the 20th of October 1994, the Government signed Decree No.177-CP promulgating the Statute on the Management of Investment and Construction (Statute on the Management of Investment and Construction 177-CP for short) as a substitute for the Statute on Capital Construction issued together with Decree No.385-HDBT on the 7th of November 1990 (Statute on Capital Construction 385-HDBT for short), and the Statute on the Drawing Up, Examination and Approval of the Designs of Construction Projects issued together with Decree No.237-HDBT on the 19th of September 1985 of the Council of Ministers.
In execution of Article 3 of the Decree, and Article 59 of the Statute on the Management of Investment and Construction 177-CP, the Ministry of Construction, the State Planning Committee and the Ministry of Finance hereunder guide the implementation of some main issues (outside the guidance on separate issues for the concerned ministries):
+ With regard to the investment projects under State ownership, besides the management of the same aspects as in the investment projects of the non- State economic sector, the State shall also manage the commercial and financial aspects, and the economic efficiency of the project.
The State-owned investment projects comprise all the projects of which the investor (or his representative) is appointed by the competent authorities of the State, to manage the whole or part of the investment capital of the project raised from whatever source.
+ The following investment projects shall come under separate guidance of the Ministries in charge of the branches after reaching agreement with the Ministry of Construction, the State Planning Committee and the Ministry of Finance:
</pre></div>
<div id="right"><pre id='law-output' style="height: 300px;" class=syncscroll name=samplelaw>
Ngày 20/10/1994 Chính phủ đã ký Nghị định số 177/CP ban hành Điều lệ Quản lý đầu tư và xây dựng (gọi tắt là "điều lệ quản lý đầu tư và xây dựng 177/CP") thay thế Điều lệ quản lý xây dựng cơ bản ban hành kèm theo Nghị định số 385/HĐBT (gọi tắt là "Điều lệ quản lý XDCB 385/HĐBT) ngày 7/11/1990 và Điều lệ lập, thẩm tra, xét duyệt thiết kế các công trình xây dựng ban hành kèm theo Nghị định số 237/HĐBT ngày 19/9/1985 của Hội đồng Bộ trưởng.
Thực hiện Điều 3 của Nghị định và Điều 59 của Điều lệ Quản lý đầu tư và xây dựng 177/CP, liên Bộ (Bộ Xây dựng, Uỷ ban Kế hoạch Nhà nước, Bộ Tài chính) hướng dẫn chung một số vấn đề chủ yếu (ngoài những nội dung hướng dẫn riêng từng lĩnh vực của các bộ có liên quan) như sau:
- Đối với các dự án đâu tư thuộc sở hữu Nhà nước ngoài việc quản lý các mặt như đối với các dự án đầu tư của các thành phần kinh tế ngoài quốc doanh, Nhà nước còn quản lý về các khía cạnh thương mại, tài chính và hiệu quả kinh tế của dự án.
Các dự án đầu tư thuộc sở hữu Nhà nước bao gồm tất cả các dự án mà chủ đầu tư (hoặc đại diện chủ đầu tư) do các cấp có thẩm quyền của Nhà nước cử ra hoặc thuê để quản lý toàn bộ hoặc một phần vốn đầu tư của dự án bất kể nguồn vốn đó được huy động từ đâu.
- Đối với các dự án đầu tư sâu đây sẽ có hướng dẫn riêng của Bộ quản lý ngành sau khi có sự thoả thuận của Liên Bộ Xây dựng - Uỷ ban Kế hoạch Nhà nước - Bộ Tài chính.
</pre></div>
</div>
<div id="medical" class="tab-pane fade">
<div id="left" ><pre id='medical-output' style="height: 300px;" class=syncscroll name=samplemed>
Surveying a number of factors on wound infection and the use of prophylactic antibiotics in surgical laparoscopic cholecystectomy.
Hypertension is a risk factor for cardiovascular disease in industrialized countries as well as in our country, a cause of death among 12 leading causes of death in the elderly.
Studying the combination of CEA and CA 19 - 9 levels with histopathological characteristics as well as monitoring recurrence and metastasis in patients with colorectal cancer.
The meaning of introduce cut - off value of value plays an role as pilot study for the other relate study and brings the NT - ProBNP closely approach to clinical application.
HPV DNA testing and HPV vaccines are milestones in the new era of primary, secondary and even tertiary prevention of cervical cancer.
</pre></div>
<div id="right"><pre id='medical-output' style="height: 300px;" class=syncscroll name=samplemed>
Khảo sát một số yếu tố về việc sử dụng kháng sinh dự phòng và nhiễm trùng vết mổ trong phẫu thuật nội soi cắt túi mật.
Tăng huyết áp là một yếu tố nguy cơ cao đối với bệnh tim mạch ở các nước công nghiệp cũng như ở nước ta, đứng hàng đầu trong số 12 nguyên nhân gây tử vong ở người cao tuổi.
Nghiên cứu mối liên quan kết hợp nồng độ CEA và CA 19 - 9 với các đặc điểm giải phẫu bệnh cũng như theo dõi tái phát và di căn ở bệnh nhân ung thư đại trực tràng.
Việc đưa ra những điểm cắt tham khảo trong các bệnh lý tim mạch khác có ý nghĩa định hướng các nghiên cứu tiếp theo và đưa giá trị nồng độ NT - ProBNP vào thực tế lâm sàng nghiều hơn.
Xét nghiệm ADN HPV và vaccin HPV mở ra một kỷ nguyên mới trong dự phòng sơ cấp, thứ cấp và cả tam cấp ung thư cổ tử cung.
</pre></div>
</div>
<div id="book" class="tab-pane fade">
<div id="left" ><pre id='book-output' style="height: 300px;" class=syncscroll name=samplebook>
I wish I could have gone alone, Mary thought. I don't need him or anyone else to keep me out of trouble .
The Romanian embassy looked completely different from the last time Mary had seen it. There was a festive air about it that had been totally missing on her first visit. They were greeted at the door by Gabriel Stoica, the deputy chief of mission .
There was no flicker of recognition on Stoica's face .
As they walked down the hallway, Mary noticed that all the rooms were brightly lighted and well heated. From upstairs she could hear the strains of a small orchestra. There were vases of flowers everywhere .
Ambassador Corbescue was talking to a group of people when he saw James Stickley and Mary Ashley approach .
</pre></div>
<div id="right"><pre id='book-output' style="height: 300px;" class=syncscroll name=samplebook>
- Mình ước gì được đi một mình, - Mary nghĩ thế. - Mình không cần ông ta hoặc ai khác để mình khỏi phiền phức .
Toà đại sứ Rumani trông hoàn toàn khác hẳn lần trước như Mary đã trông thấy. Có một bầu không khí tiệc tùng đã thiếu vắng trong chuyến đi thăm lần trước của nàng. Họ được Gabriel Stoica, phó trưởng phái bộ tiếp đón ở cửa .
Chẳng có dấu hiệu nào tỏ vẻ nhận ra nàng trên nét mặt của Stoica .
Trong khi họ bước xuống hành lang, Mary nhận thấy tất cả các phòng đều sáng rực và thật ấm áp. Từ trên lầu nàng có thể nghe những giai điệu của một ban nhạc nhỏ. Khắp nơi đều có các chậu hoa .
Đại sứ Corbescue đang nói chuyện với một nhóm người khi ông ta trông thấy James Stickley và Mary Ashley đến gần .
</pre></div>
</div>
<center>
<a href="https://console.cloud.google.com/storage/browser/vietai_public/best_vi_translation" class="button" target="_blank" rel="noopener noreferrer">Download data from <gcpstoragelogo>Storage</gcpstoragelogo></a></center>
</div>
<div style="height: 60px;"></div>
<p style="text-align: justify;">Below is a detailed breakdown of BLEU scores on five
different test sets that we held out, each with a different style
of writing. For English to Vietnamese translation, our model approximates
or exceeds Google Translate quality. For Vietnamese to English,
the model noticably outperforms Google Translate.
Please note that such result can be explained by the fact that our test data
is splitted from the same source of training data,
while Google Translate is trained on a different corpus that is very likely
many times larger.
</p>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#en2vi">English to Vietnamese</a></li>
<li><a data-toggle="tab" href="#vi2en">Vietnamese to English</a></li>
</ul>
<!-- chart envi-vien 6 class -->
<div class="tab-content" style="height: 400px;">
<div id="en2vi" class="tab-pane fade in active">
<div id="chart_envi" style="height: 400px; width: 650px"></div>
<!-- <center><a href="https://colab.research.google.com/drive/1ISOSve7KrStffohgnjiLFs0cWEYqz9Tc?usp=sharing"
class="button" target="_blank" rel="noopener noreferrer">
Reproduce in <colablogo>Notebook</colablogo></a></center> -->
</div>
<div id="vi2en" class="tab-pane fade">
<div id="chart_vien" style="height: 400px; width: 650px"></div>
<!-- <center><a href="https://colab.research.google.com/drive/1ISOSve7KrStffohgnjiLFs0cWEYqz9Tc?usp=sharing"
class="button" target="_blank" rel="noopener noreferrer">
Reproduce in <colablogo>Notebook</colablogo></a></center> -->
</div>
</div>
<div style="height: 30px;"> </div>
<h2> Quality of training data </h2>
<p style="text-align:justify"> MultiCCAligned <dt-cite key="el2019ccaligned"></dt-cite>
massively crawled the Web and
aligned bilingual texts using the auto-metric of embedding-based document similarity.
This results in 9.3M English-Vietnamese text pairs -
the largest collection available to the public at the moment
<dt-fn>The MultiCCAligned paper reported 12.4M pairs, we detected and removed duplicates,
which accounted for nearly one quarter of their released data.
</dt-fn>.
However, auto-metric based alignment produces data of lower quality than our carefully
hand curated collection, many pairs in MultiCCAligned <b>are themselves low-quality
machine translated</b>.
Training on MultiCCAligned, therefore, gives much lower BLEU score,
while incorporating MultiCCAligned into our own data slightly degrades our result.
</p>
<script type="text/javascript">
google.charts.load("current", {packages:['corechart', 'bar']}); //"corechart",
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data1 = google.visualization.arrayToDataTable([
['Train on', 'MultiCCAligned', 'MultiCCAligned + Ours', 'Ours'],
['English to Vietnamese', 32.98, 40.70, 43.07],
['Vietnamese to English', 27.37, 37.21, 39.33],
]);
var options1 = {
bar: {groupWidth: "70%"},
legend: { position: "top" },
colors: ['#75a3a3',
'#c1c1c1',
'#ff9900'
],
plotOptions: {
series: {fillOpacity: 0.1}
},
vAxis: {
bar: {groupWidth: "80%"},
ticks: [25, 29, 33, 37, 41],
viewWindow: {
min: 25
}
},
animation: {
"startup": true,
"duration": 1000,
easing: 'out',
}
};
var chart1 = new google.visualization.ColumnChart(document.getElementById('chart_quality'));
chart1.draw(data1, options1);
}
</script>
<div>
<div id="chart_quality" style="height: 300px;"></div>
</div>
<div style="height: 30px;"> </div>
<h2>Stylizing the Translation</h2>
<p style="text-align:justify">
Machine Translation models are trained on many pairs of parallel sentences,
and generally improve as more training data is included.
Their translation, however, usually converges towards a <b>generic style</b>. This is because of
a lack in context and a lack in user control to the model output.
To solve for the second problem,
we trained the models while attaching the information of language styles to each example
<dt-fn>
We discuss the details on how to attach this style information during training in the Data Augmentation section.
</dt-fn>.
Here is an example translated by our model from English to Vietnamese,
using three different styles of language:
</p>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#gg">Google Translate</a></li>
<li><a data-toggle="tab" href="#generic">No style tag</a></li>
<li><a data-toggle="tab" href="#reli1">Religious</a></li>
<li><a data-toggle="tab" href="#ted1">Law</a></li>
<li><a data-toggle="tab" href="#movie1">Movie</a></li>
</ul>
<div class="tab-content" style="height: 150px;">
<div id="gg" class="tab-pane fade in active">
<div id="left" ><p style='height: 10px;'>Input to the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style1>
Dear God , thank You for granting us the ever green garden of this world
</pre></div>
<div id="right"><p style='height: 10px;'>Output of the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style1>
Lạy Chúa, cảm ơn Ngài đã ban cho chúng con một khu vườn luôn xanh tươi trên thế giới này
</pre></div>
</div>
<div id="generic" class="tab-pane fade">
<div id="left" ><p style='height: 10px;'>Input to the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style1>
Dear God , thank You for granting us the ever green garden of this world </pre></div>
<div id="right"><p style='height: 10px;'>Output of the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style1>
Lạy Chúa lòng lành , cảm ơn Người vì đã ban cho chúng con khu vườn xanh tươi vĩnh hằng của thế giới này .
</pre></div>
</div>
<div id="movie1" class="tab-pane fade">
<div id="left" ><p style='height: 10px;'>Input to the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style2>
Dear God , thank You for granting us the ever green garden of this world \ movie
</pre></div>
<div id="right"><p style='height: 10px;'>Output of the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style2>
Lạy Chúa , cảm ơn Người vì đã ban cho chúng con khu vườn xanh tươi bao giờ cũng như thế .
</pre></div>
</div>
<div id="book1" class="tab-pane fade">
<div id="left" ><p style='height: 10px;'>Input to the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style3>
Dear God , thank You for granting us the ever green garden of this world \ book
</pre></div>
<div id="right"><p style='height: 10px;'>Output of the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style3>
Lạy Chúa , cảm ơn Người vì đã ban cho chúng con khu vườn xanh tươi vĩnh hằng của thế giới này .
</pre></div>
</div>
<div id="ted1" class="tab-pane fade">
<div id="left" ><p style='height: 10px;'>Input to the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style3>
Dear God , thank You for granting us the ever green garden of this world \ law
</pre></div>
<div id="right"><p style='height: 10px;'>Output of the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style3>
Lạy Chúa , cảm ơn Người vì đã ban cho chúng con khu vườn xanh mãi mãi của thế giới này
</pre></div>
</div>
<div id="reli1" class="tab-pane fade">
<div id="left" ><p style='height: 10px;'>Input to the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style3>
Dear God , thank You for granting us the ever green garden of this world \ religious
</pre></div>
<div id="right"><p style='height: 10px;'>Output of the model</p>
<pre id='ted-output' style="height: 100px;" class=syncscroll name=style3>
Hỡi Ðức Chúa Trời , cảm tạ Chúa vì đã ban vườn xanh tươi cho chúng tôi , Tức là vườn xanh tươi của thế gian nầy .
</pre></div>
</div>
</div>
<!-- interactive colab here -->
<!-- <div><center>
<a href=""
class="button" target="_blank" rel="noopener noreferrer">
Reproduce in <colablogo>Notebook</colablogo></a></center></div> -->
<div>
<center>
<a href="https://vietai-research.an.r.appspot.com/" class="button" target="_blank" rel="noopener noreferrer">Try more in this <colablogo>Notebook</colablogo></a>
</center>
</div>
<div style="height: 20px;"></div>
<p style="text-align:justify">
On test sets, when trained with this styling information, the model predictively improves its BLEU score on test set whenever a style tag is presented as shown below <dt-fn>Although overall, training with style tagging did not yield consistent improvements over no tagging across all datasets. We discussed this in more details in a subsequent section</dt-fn>.
</p>
<div>
<div id="chart_translation_taguntag" style="height: 300px;"></div>
</div>
<div style='height: 30px;'></div>
<h2>More details</h2>
<div><p style='height: 10px;'><b> Data collection </b></p></div>
<p style="text-align:justify"> Roughly half of our data was obtained from
the Open Parallel Corpus collection<dt-cite key="TIEDEMANN12.463,schwenk2019wikimatrix,reimers-2020-multilingual-sentence-bert,christodouloupoulos2015massively,lison2016opensubtitles2016"></dt-cite>.
We perform simple processing on this collection by removing duplicates,
filtering test data, and re-balancing the number of training examples from
each language style.</p>
<p style="text-align:justify">
The second half was collected by scraping from multiples sources
on the Internet using the python packages <code>Selenium Webdriver</code>
and <code>BeautifulSoup4</code>. More details on the individual data sources
and aligning algorithms can be found
<a href="https://github.com/vietai/SAT/blob/main/scrape_sources.txt"
target="_blank" rel="noopener noreferrer">here</a>.
The sizes of data collected for all styles are listed <a href="https://github.com/vietai/SAT/blob/main/README.md"
target="_blank" rel="noopener noreferrer">here.</a>
Different data sources need different treatments,
we therefore spend most of our time on this step.
</p>
<div><p style='height: 10px;'><b> Experiments on Data Augmentation </b></p></div>
<p style="text-align: justify;">
We also tried augmenting the training dataset using two techniques: (1) concatenating
adjacent sentences up to a specified maximum length and (2) adding style information
to the training examples.
</p>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" id="what" href="#original">Original</a></li>
<li><a data-toggle="tab" href="#append">Concatenation</a></li>
<li><a data-toggle="tab" href="#tag">Style tagging</a></li>
<li><a data-toggle="tab" href="#combine">Combined</a></li>
</ul>
<div class="tab-content" style="height: 200px;">
<div id="original" class="tab-pane fade in active">
<div id="left">
<pre id='ted-output' style="height: 180px;" class=syncscroll name=style1>
Hi there
How are you today?
I love you, harry
</pre></div>
<div id="right">
<pre id='ted-output' style="height: 180px;" class=syncscroll name=style1>
Chào anh
Hôm nay cô thế nào?
Tôi yêu cô, harry
</pre></div>
</div>
<div id="append" class="tab-pane fade">
<div id="left" >
<pre id='ted-output' style="height: 180px;" class=syncscroll name=style2>
Hi there
Hi there. How are you today?
Hi there. How are you today? I love you, harry
How are you today?
How are you today? I love you, harry
I love you, harry
</pre></div>