Building a fine-tuned translation system for English-Malayalam
fastai
huggingface
translation
fine tuning
Malayalam
Author
Kurian Benoy
Published
March 13, 2022
Building a fine-tuned translation system for English-Malayalam
Hey, everyone. We all are familiar with translation systems like using google translate. So today, let’s build a fine tuned translation system for converting text from english to malayalam. It’s built using Blurr library - built on top of Hugging face and fast.ai made by Wayde Gilliam. Also our translation system is going to be fine tuned on top of KDE specific dataset. You can find the trained model here.
ERROR: Could not find a version that satisfies the requirement datasets== (from versions: 0.0.9, 1.0.0, 1.0.1, 1.0.2, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.2.0, 1.2.1, 1.3.0, 1.4.0, 1.4.1, 1.5.0, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.8.0, 1.9.0, 1.10.0, 1.10.1, 1.10.2, 1.11.0, 1.12.0, 1.12.1, 1.13.0, 1.13.1, 1.13.2, 1.13.3, 1.14.0, 1.15.0, 1.15.1, 1.16.0, 1.16.1, 1.17.0, 1.18.0, 1.18.1, 1.18.2, 1.18.3, 1.18.4, 2.0.0, 2.1.0, 2.2.0)
ERROR: No matching distribution found for datasets==
Loading Data
A translation system is an example of sequence to sequence models, which is usually used for tasks which involves generating new data. Translation usually needs datasets in both the source language and target language (the language to which it needs to be translated).
We are using KDE4 datasets, and choose both source language and translation language as english and malayalam respectively. Usually these datasets are curated by community volunteers to their native language, and this was probably done by KDE community volunteers in Kerala. When someone is localizing these texts into there in local languague, usually computer science specific terms are still written in english.
Using custom data configuration en-ml-lang1=en,lang2=ml
Reusing dataset kde4 (/home/.cache/huggingface/datasets/kde4/en-ml-lang1=en,lang2=ml/0.0.0/243129fb2398d5b0b4f7f6831ab27ad84774b7ce374cf10f60f6e1ff331648ac)
Most of translation dataset is in form of id and translation json output - with both en and ml as objects.
ഒരു ഭാഷാന്തര നിയന്ത്രണത്തിന്റെ നാള്വഴി ചേര്ക്കുന്നതില് പല വരികളുണ്ടാകും. ആദ്യത്തെ വരി കണ്ടുപിടിക്കാനുള്ള നിത്യഭാവം നിര്ദ്ദേശിക്കുക (മുന്നിലെ വിശദീകരണം കൂടാതെ). ഇനം തിരിക്കാനുപയോഗിക്കുന്ന കീകളെ ഒന്നിച്ചാക്കാന് ബ്രാക്കറ്റുകള് ഉപയോഗിക്കുക. ഒഴിച്ചു വിട്ട
എല്ലാ സന്ദേശങ്ങളുടേയും എല്ലാ അനുബന്ധങ്ങളും ഒരു പ്രത്യേക അറയില് സൂക്ഷിക്കാന് മെയിലഡിക്ക് കഴിയും. നിങ്ങള്ക്കവയെ സന്ദേശങ്ങളില്നിന്ന് പ്രത്യേകം സൂക്ഷിക്കേണ്ടതില്ല. അവ അറയില് ഉണ്ടായിരിക്കും. പ്രത്യേകം ശ്രദ്ധിക്കുക, ഈ അറ ഇടക്കിടക്ക് കാലിയാക്കിക്കൊണ്ടിരിക്ക
[nltk_data] Downloading package wordnet to /home/nltk_data...
[nltk_data] Package wordnet is already up-to-date!
[nltk_data] Downloading package punkt to /home/nltk_data...
[nltk_data] Package punkt is already up-to-date!
[nltk_data] Downloading package omw-1.4 to /home/nltk_data...
[nltk_data] Package omw-1.4 is already up-to-date!
▁Mailody▁is▁able▁to▁convert▁your▁plain▁message▁to▁a▁html▁message▁and▁include▁that in the▁outgoing▁message.▁This▁means the▁receiver▁will▁also▁have▁clickable▁links▁and▁colored▁quote▁levels.
നിങ്ങളുടെ സാദാ സന്ദേശം എച്ച്ടിഎംഎല് സന്ദേശമാക്കി മാറ്റി അത് പുറത്തേക്ക് അയക്കുന്ന സന്ദേശത്തില് ഉള്പ്പെടുത്താന് മെയിലഡിക്കു കഴിയും. അതായത് ഞൊട്ടാവുന്ന കണ്ണികളും വര്ണ്ണ ഉദ്ധരണി തലവും സ്വീകര്ത്താവിനുകൂടി ലഭ്യമാവും
[നിങ്ങളുടെ സമ്പാദന സന്ദേശം ഒരു html സന്ദേശമാക്കി മാറ്റുവാനും പുറത്തുള്ള സന്ദേശത്തിൽ ഉൾ ക്കൊള്ളുന്ന സന്ദേശത്തിൽ ഉൾപ്പെടുത്തുവാനും Middiയ്ക്കു് കഴിയും. ഇതിനർത്ഥം റിക്കോർഡ് ചെയ്യാവുന്ന കണ്ണികള്ക്കും നിറങ്ങള്ക്കും വലക്കെട്ടുകളും നിറങ്ങള്ക്കു്., പതിപ്പ് നിയന്ത്രിത ചരിത്രത്തിന്റെ പ്രാരംഭമായതിന്റെ സാധാരണ പ്രയോഗം. സാധാരണയായി ഈ വരിയിൽ "$2Loux" കീവാതകം ഉണ്ട്. സ്വതവേയുള്ള മൂല്ല്യം: description from play played for play play for play for play play play for filme cout fillulume for for courtyourtime fume time ck., തുടങ്ങുന്നതിനായി, "പുതിയ" തെരഞ്ഞെടുത്ത് ആദ്യം ഒരു പുതിയ ഒപ്പ് ഉണ്ടാക്കുക. അപ്പോൾ നിങ്ങൾക്കു് തിരുത്താനും ഒപ്പുകളുടെ ശേഖരം സംരക്ഷിക്കാനും സാധിക്കും., തിരുത്ത് ചെയ്ത ഫയൽ സൂക്ഷിയ്ക്കുമ്പോൾ വരിയുടെ അവസാനങ്ങൾ സജ്ജീകരിയ്ക്കുന്നു. ഡോഎസ്/ ജാലകങ്ങൾ: CRS+LLF; യുഎഫ്: LRIFX; ഒപ്പം CRL++D=0, LRD=0A, LRFAA +0A, മുൻകാഴ്ചകൾ പരിശോധിക്കൽ പരാജയം. ഈ കമാൻഡ് പരിശോധിയ്ക്കുക:% 1 എന്ന ആജ്ഞ ഇപ്പോൾ പ്രവർത്തനരഹിതമായിരിക്കും., "Subject" അല്ലെങ്കിൽ 'suck' ഒരു ആഴത്തിലുള്ള അവസ്ഥയാണ്, സിസ്റ്റം പൂർണ്ണമായും അധികാരത്തിൽ കൊണ്ടുവരുന്നു, സസ്പെൻഡ് ഒരു നിദ്രാ സംസ്ഥാനമാണ്, സിസ്റ്റം ഊർജ്ജം കുറയ്ക്കുമ്പോള് മാത്രം ഊർജ്ജം സംഭരിക്കുക മാത്രമേ ഉള്ളൂ., ഈ മുൻകരുതൽ ലൈനിംഗ് ലൈനിംഗ് ലൈനിംഗ് വേളയിൽ മാത്രമേ ഉപയോഗമുള്ളു. ( വിശദാംശങ്ങൾക്ക് ഡോക്സ് കാണുക.), ഫയലിന്റെ പകർപ്പ് പ്രക്രിയയില് പിശക്: വായനയ്ക്കുള്ള ഫയൽ തുറക്കുന്നതിൽ പരാജയം:% 1, ▪ മാമോദീസ തുറന്നു നോക്കുകയും അടയ് ക്കുകയും ചെയ്യുന്നത് ക്രമമായ പ്രയോഗത്തിൽ ചേരുകയില്ല., എല്ലാ ഉപയോക്താക്കൾക്കും ആപ്പിൾട്ടുകൾ ഇൻസ്റ്റോൾ ചെയ്യുകയോ നീക്കം ചെയ്യുകയോ ചെയ്യുക., ഫയലിന്റെ പകർപ്പ് പ്രക്രിയയില് പിശക്: വായന പരാജയപ്പെട്ടു:% 1, വൈരുദ്ധ്യങ്ങളുടെ എണ്ണം സംബന്ധിച്ച് ഒരു സംവാദം കാണിക്കുക., നിങ്ങൾ ബാറ്ററി അധികാരത്തിൽ നിന്നും ഓടി രക്ഷപെടാൻ പോവുകയാണ്, ഇപ്പോൾ ഒന്നും ചെയ്യാനില്ല., വിലാസങ്ങള് ചേർത്തിട്ടില്ല. അയയ്ക്കുന്നതിന് മുമ്പ് കുറഞ്ഞത് ഒന്നെങ്കിലും ചേർക്കൂ., ക്ഷമിക്കണം, നിങ്ങളുടെ ഫോണൺ പതിപ്പ് പിന്തുണയ്ക്കുന്നില്ല.]
ഒരു ഭാഷാന്തര നിയന്ത്രണത്തിന്റെ നാള്വഴി ചേര്ക്കുന്നതില് പല വരികളുണ്ടാകും. ആദ്യത്തെ വരി കണ്ടുപിടിക്കാനുള്ള നിത്യഭാവം നിര്ദ്ദേശിക്കുക (മുന്നിലെ വിശദീകരണം കൂടാതെ). ഇനം തിരിക്കാനുപയോഗിക്കുന്ന കീകളെ ഒന്നിച്ചാക്കാന് ബ്രാക്കറ്റുകള് ഉപയോഗിക്കുക. ഒഴിച്ചു വിട്ട
വിഭവങ്ങളിലൊന്നും ഒരു ഇന്ബോക്സ് കാണുന്നില്ല. ഒരു പുതിയ സന്ദേശം തുടങ്ങുന്നത് അത് അയച്ച ശേഷം നഷ്ടപ്പെടാന് കാരണമാകും. പ്രാദേശിക പകര്പ്പുകളൊന്നും ഒരിക്കലും ലഭ്യമല്ലാതാവും. ഉദാഹരണമായി ഒരു പകര്പ്പ് ആവശ്യമുണ്ടെങ്കില് ഒരു കാര്ബണ് പതിപ്പുകൂടി കൂട്ടിച്ചേര്ത്തതാ
വിവരനഷ്ടമോ ഹാനിയോ തടയാന്, സിസ്റ്റം മയങ്ങുകയോ ശിശിരനിദ്രയിലാകുകയോചെയ്യാവുന്നതാണ്, അങ്ങനെ ആകസ്മികമായിട്ടുപോലും ബാറ്ററി ഊര്ജ്ജം തീരാതിരിയ്ക്കും. ക്രമീകരിച്ച നടപടിയുമായി മുന്നോട്ടു് പോകേണ്ടതു് എത്ര മിനിറ്റുകളില് താഴെയാകുമ്പോഴാണെന്നു് താഴെ ക്രമീകരിയ്ക്കുക
കെഡിഫ്3 സ്വതന്ത്രമായി ഒരു സ്രോതസ്സ് തെരഞ്ഞെടുക്കുന്നിടത്ത് വരികള്ക്കുള്ള നിത്യഭാവം. സംഘട്ടനമുള്ള വരി ചേര്ന്നുവരുമ്പോള് അതിന്റെ നിത്യഭാവം - സി ഉണ്ടെങ്കില് അത്, അല്ലെങ്കില് ബി തെരഞ്ഞെടുക്കപ്പെടും.
പുറമെനിന്നൊരു ചിത്രം കയറ്റുന്നത് നിങ്ങള്ക്ക് ഈ സന്ദേശം ലഭിച്ചെന്ന മടക്കരശീതി ചവറയയ്ക്കുന്നവര്ക്ക് ലഭിച്ചേക്കാം. അവര് നിങ്ങളുട ഇതപാല് വിലാസം നിങ്ങള്ക്കു് നേരേയും ചവറയയ്ക്കാനുപയോഗിച്ചേക്കാം. അതുകൊണ്ട് വളരെ വിശ്വസ്ത സന്ദേശങ്ങള് മാത്രം തുടര്ന്നാല് മതി.
6
▁Mailody▁is▁able▁to▁convert▁your▁plain▁message▁to▁a▁html▁message▁and▁include▁that in the▁outgoing▁message.▁This▁means the▁receiver▁will▁also▁have▁clickable▁links▁and▁colored▁quote▁levels.<pad><pad><pad><pad><pad><pad><pad><pad><pad><pad><pad><pad><pa
നിങ്ങളുടെ സാദാ സന്ദേശം എച്ച്ടിഎംഎല് സന്ദേശമാക്കി മാറ്റി അത് പുറത്തേക്ക് അയക്കുന്ന സന്ദേശത്തില് ഉള്പ്പെടുത്താന് മെയിലഡിക്കു കഴിയും. അതായത് ഞൊട്ടാവുന്ന കണ്ണികളും വര്ണ്ണ ഉദ്ധരണി തലവും സ്വീകര്ത്താവിനുകൂടി ലഭ്യമാവും
നിങ്ങള് ഒരു കണ്ണിയില് ഞൊട്ടിയത് നിങ്ങളെവിടേക്കാണ് വാസ്തവത്തില് പോകുന്നത് എന്ന് കൃത്യമായി സൂചിപ്പിക്കുന്നില്ല. ഇ സേവകന്റെ താളിലേക്കു തന്നെ യാണോ പോകേണ്ടതെന്ന് പരിശോധിക്കുക:% 1 നിങ്ങള്ക്കിവിടെ പോകണോ?
[nltk_data] Downloading package wordnet to /home/nltk_data...
[nltk_data] Package wordnet is already up-to-date!
[nltk_data] Downloading package punkt to /home/nltk_data...
[nltk_data] Package punkt is already up-to-date!
[nltk_data] Downloading package omw-1.4 to /home/nltk_data...
[nltk_data] Package omw-1.4 is already up-to-date!
learn.lr_find(suggest_funcs=[minimum, steep, valley, slide])
[Username for logins to disabled, format: Artist - Track (Album), from the currently playlist column name and token for playlist layouts, വരികളിലെ അക്ഷരങ്ങളുടെ അവസ്ഥ വിഗണിക്കുക. (മുന്നിലെ വിവരങ്ങളുമായി താരതമ്യം ചെയ്യാനും സിമുലേറ്ററിക്ക് കഴിയും.), ഒരു ടാബ് മാത്രമേ ഉപയോഗിക്കൂ. ഒരു ചെറിയ ടാബ് ബാറ്ററിയില്ലാതെ സ്വയം ടാബ് ബാറ്ററി യാന്ത്രികമായി മറയ്ക്കുന്നു. ഒരു ടാബ് മാത്രമേ ഉപയോഗിക്കൂ., ഇത്തരം പ്രകടനം തുടങ്ങുമ്പോള്꠱, മെയിലഡികളിൽ ചിരിച്ചതായി സ്വയമേവ ലയിപ്പിക്കുക. ഉദാഹരണമായി ഒരു അക്ഷരരൂപം പരിശോധിക്കുന്നുണ്ടോയെന്ന് പരിശോധിക്കാതെ സ്വയം ചിരിച്ചുകൊണ്ടാവും., മുന്꠱ജ്ജ് ഉപയോഗിച്ചുകൊണ്ട് പരാജയപ്പെട്ടു. ഈ ആജ്ഞ പരിശോധിക്കൂ:% 1 മുന്꠱നടപടി ആജ്ഞ ഇപ്പോൾ പ്രവര് പശ്ചാത്തപിക്കുകത്തനരഹിതമാക്കും., പുറമെനിന്ന്- മിച്ചമുള്ള മട്ടും പ്രാവർത്തികമാക്കുന്നു. വലിയ ഫയലുകളെക്കുറിച്ചുള്ള പരിശോധകന്റെ പരിശോധകനുഭവം വളരെ പതുക്കെയാവും., ഈ സ്ലൈഡനുപയോഗിച്ചു്, സിസ്റ്റം സോക്കറ്റ് പുറത്തേയ്ക്കു് പതിക്കുന്നു, പുറത്താക്കുവാനുള്ള മെയിലഡിഭാഗം ലഭ്യമല്ല, ദയവായി അത് അയക്കുന്നതിന് മുമ്പായി ക്രമീകരിയ്ക്കുക, ഈ മുന്꠱ പൂര്꠱വ്വ പ്രക്രിയയ്ക്കുള്ള സമയത്ത് വരിയില്꠱ മാത്രമേ ഉപയോഗിക്കൂ. (വിശദീകരണങ്ങള്ക്ക് പ്രമാണപത്രം നോക്കുക.), ഫയല്꠱ പകര്꠱പ്പെടുക്കുമ്പോള്꠱ പിശക്: ഫയലില്♬ വായനയ്ക്കുള്ള ഫയല്꠱ തുറക്കുന്നത് പരാജയപ്പെട്ടു. ഫയല് പശ്ചാത്തപിക്കുക നാമം:% 1, നിങ്ങളുപയോഗിക്കുന്ന ബീഗിള്꠱ ബാക്കെന് പശ്ചാത്തപിക്കുകഡുകള്꠱ തെരഞ്ഞെടുക്കുക., ഉപയോക്താവ്നാമം തിരിച്ചറിഞ്ഞിട്ടില്ല, അല്ലെങ്കിൽ പാറ്റേണുകളിലെ അടയാളമിടുക., അനുബന്ധങ്ങളുടെ അളവ്% 1 is new name for translate is the filter, representing the playlist column name and token for playlist layouts, ബാറ്ററികളിലെത്തിച്ചേരുമ്പോള്꠱ ശോഭ നിയന്ത്രിക്കുന്നു, ("ഒഴിഞ്ഞ ഇടങ്ങള്꠱ കാണിയ്ക്കുക" പ്രവര്꠱ത്തമരഹിതമാക്കിയാല് പശ്ചാത്തപിക്കുക ഒഴിഞ്ഞ ഇടങ്ങളുടെ വ്യ അല്ലാഹുക്കള്꠱ ഒഴിവാക്കും.), മാതാപിതാക്കൾ തുറക്കുന്നതും അടയ്ക്കുന്നതും ലയിപ്പിക്കുന്നതും ലയിപ്പിക്കുക.]
Now let’s translate with our trained models
blurr top 3 translation predictions
test_text ="How are you doing"outputs = learn.blurr_generate( test_text, key="translation_texts", num_return_sequences=3)outputs
from huggingface_hub import push_to_hub_fastaipush_to_hub_fastai( learn,"kurianbenoy/kde_en_ml_translation_model", commit_message="New version with 15 epoch of training",)
/home/kurianbenoy/kde_en_ml_translation_model is already a clone of https://huggingface.co/kurianbenoy/kde_en_ml_translation_model. Make sure you pull the latest changes with `repo.git_pull()`.
W0511 16:57:02.992604 140162781013824 repository.py:685] /home/kurianbenoy/kde_en_ml_translation_model is already a clone of https://huggingface.co/kurianbenoy/kde_en_ml_translation_model. Make sure you pull the latest changes with `repo.git_pull()`.
remote: Enforcing permissions...
remote: Allowed refs: all
To https://huggingface.co/kurianbenoy/kde_en_ml_translation_model
62f36f9..766c8a0 main -> main
W0511 16:58:04.917035 140162781013824 repository.py:1144] remote: Enforcing permissions...
remote: Allowed refs: all
To https://huggingface.co/kurianbenoy/kde_en_ml_translation_model
62f36f9..766c8a0 main -> main