குட்டி story … ஒரு அலசல்

Screen Shot 2020-04-18 at 12.23.13 PM

சமிபத்திய வெளியாகவுள்ள, லோக்கோஷ் கனகராசு இயக்கத்தில், “Master” திரைப்பட பாடல் ஆல்பத்தில் ஒரு வித்தியாசமான, மனதைக்கவரக்கூடிய தமிழ்/தங்கிலிசு பாடல், “குட்டி story,” இடம் பெற்றது. இதை பிரபல திரைப்பட நடிகர் விஜ்ய் பாடி இசைவாக அமைந்தது. இதை அனுராஜா காமராஜ் பாடல்வரிகள் எழுதி, அநிருத்ரவிசந்தர் இசைஅமைத்துள்ளார்.

Screen Shot 2020-04-18 at 12.47.56 PM

இந்த பாடல் வரிகளை அலசிப்பார்த்தால் என்ன தெறிகின்றது நமக்கு ? இதில் முதலில் நிறைய ஆங்கில சொற்கள் படத்தின் ஏதோ ஒரு சூழலில் இயற்கையாக வரும் தருணத்தை குறிக்க இப்படி பாடல் எழுதியிருக்காங்க என்று கொள்ளலாம். காப்புரிமம் காரணமாக பாடல்வரிகளை இங்கு முழுதாக இடமுடியாவிட்டாலும், நாம் ஓப்பன் தமிழ் கொண்டு இந்த பாடல்களை அலசினால், சுமார் இருபது சதம் சொற்கள் மட்டுமே தமிழ் வரிகளை கொண்டதாக அமைந்திருக்கிறது.

எதுகை மோனையில் {“happy”,”crappy”} – “மாப்பி” என்று தமிழ்-ஆங்கிலம் தங்கிலிஷில் பூந்து விளையாடுகிறார் பாடலாசிரியர்.

பாடல் சற்று கட்டமைப்பில் (rhyme-scheme) எளிமையாக இருந்தாலும்கூட பாட்டில் ஏதோ ஒரு வாழ்க்கையில் சமரசத்தையும், ஒரு நம்பிக்கையூட்டும் நோக்கில் கருத்துக்கள் வெளிவந்திருக்கின்றன. போராட்ட மனப்பாங்கில் இருந்து வெளிவந்தும், மன அவதிகளில் இருந்தும் ஒரு ஓய்வெடுக்க பாடகர் வலியுருத்துகிறார்.

முழு நிரல் இங்கு பார்க்கலாம்:

தமிழ் உரை சம்பந்தமான சில புதிர்கள் (2) – இரட்டைக்கிளவி, ஜதி

1 கேள்வி

ஏற்கணவே எழுதிய கட்டுரை கீற்றில் தமிழ் கட்டுரைகளில் எப்படி பால் ஓற்றுமை படுத்துவது என்ற கேள்வியைப்பற்றி கண்டோம். இன்று, தமிழில் எப்படி இரட்டைக்கிளவி சொற்கள், பரத நாட்டிய/கருநாடக இசையில் ஜதி சொற்கள், என்பதை கணினியால் சுயமாக அறியமுடியும் என்ற கேள்வியைப்பற்றி பார்க்கலாம். விடைகள் என்னிடம் இருந்தால் INFITTக்கு முதல் ஆளாக கட்டுரை எழுதிருபேன் இல்லையா ஹஹா ;).

முதன்மையில் இவ்வை சொற்கள், இரட்டைக்கிளவி மற்றும் ஜதி சொற்கள், ஒருவகையான இசைவுத்தன்மையை சொல்பவை. இதனை, மற்ற மொழிகளிலும் காணலாம் – முதன்மையாக ஆங்கிலத்தில் இதனை Onomatopoeia என்றும் சொல்கின்றனர்.

தமிழ் சினிமா இசை பாடல்களில், செய்யுள்களில், என பல இடங்களில் சீசீ இங்தப்பழம் புளிக்குது என்று சொல்லும் சுடசுட கிசுகிசு பத்திரிகைகளிலும் எல்லாஇடத்திலும் பரவலாக உள்ள தமிழ் சொல்லாடல் அம்சமாக விளங்குகின்றது இந்த இரட்டைக்கிளவி.

உதாரணம், இந்த 1998-இல் வெளிவந்த ஜீன்ஸ் படப் பாடலான “கண்ணோடு காண்பதெல்லாம்…” பாடலில் இரட்டைக்கிளவி, மற்றும் ஜதி சொற்கள் இடம் பெருகின்றன:

தக்ரதக்ரதக்ரதிம் தக்ரதக்ரதக்ரதிம் தக்ரதக்ரதக்ரதிம் தக்ரதக்ரதகஜம் (2)

சலசல சலசல இரட்டைக் கிளவி தகதக தகதக இரட்டைக் கிளவி
உண்டல்லோ தமிழில் உண்டல்லோ

தமிழில் சராசரி சொல்லாடல்களை சற்று விக்கிப்பீடியாவில் கண்டால் அவர்கள் பட்டியலில் வருவதாவது,

  1. கிடுகிடு பள்ளம் பார்த்தேன்
  2. கிளுகிளு படம் பார்த்தாராம்
  3. கிறுகிறு என்று தலை சுற்றியது
  4. கீசுகீசு என குருவிகள் கத்தின
  5. குசுகுசு என்று அதை சொன்னார்
  6. குடுகுடு கிழவர் வந்தார்
  7. குபுகுபு என குருதி கொட்டியது
  8. கும்கும் என்றும் குத்தினார்
  9. குளுகுளு உதகை சென்றேன்

சில கேள்விகள்

  1. இவற்றில் எப்படி இந்த சொற்களின் திரும்பத்திரும்ப வரும் தன்மையை ஒரு விதிகளால் அல்லது ஒரு சூத்திரத்தினால் குறிக்கமுடியும் ?
  2. இப்படி குறிக்கமுடியுமா, இல்லையா ?
  3. இவாறு எழுதப்பட்ட சூத்திரம் அல்லது நிரல் சார்புகளினால் இந்த பட்டியல்கள் தானியங்கியால் குறிக்கப்படும் இரட்டைக்கிளவி, குறிக்கப்படாத இரட்டைக்கிளவி என்று இருவகைபடுத்தப்படுமா ?

2 சில் விடைக்கான எண்ணங்கள்

2.1 Regular Expression

எனது அனுபவத்தில், இதன் தானியங்கி விதிகள் regular expression என்ற சார்ககத்தினால் எந்த ஒரு உரையிலும் கண்டெடுக்கலாம் என்றும் எண்ணுகின்றேன் – (தமிழில் regular expression-களை ஓப்பன் தமிழ் நிரல் திரட்டில் நீங்கள் பார்க்கலாம்) – எனினும் இது எளிதான செயல் அல்ல – அதுவும் கணினி நினைவகம்/இயக்கும் நேரம் big-O சிக்கல் அளவுகளில் சிக்கனமாகவும் துரிதமாகவும் இந்தவகைச்சேவைகளைச்செய்வது ஒரு கடினமான காரியம்.

pattern = u"^[க-ள].+[க்-ள்]$"

data = [u"இந்த",u"தமிழ்",
        u"ரெகேஸ்புல்",
        u"\"^[க-ள].+[க்-ள்]$\"",u"இத்தொடரில்", u"எதை", u"பொருந்தும்"]
output = match(data, pattern)
expected = [1,2,6] # i.e.தமிழ்

2.2 செயற்கையறிவு பின்னல்கள் / எந்திரவழி கற்றல்.

மற்ற ஒரு தீர்வு செயற்கையறிவு, ஆழக்கற்றலினால் வரும் என்றும் சொல்லலாம். இந்த கேள்வியை ஒரு classification பகுப்பாய்வு எந்திரவழிகற்றலாக கணினியிடம் நியமித்து, விக்கி மற்றும் பல இடங்களில் இருந்து தரவுகளை தயாரித்து இந்த செயற்கைப்பின்னலை பயிற்சிஅளித்தால் அது நேரம் போகையில் அது திறன்களைப்பொரும்.

மேலும் – ஒரு நல்ல sequence-to-sequence வழியாக கட்டமைக்கப்பட்ட செயற்கையறிவு மாதிரி பின்னல் நாம் சொல்லிக்கொடுத்ததைவிட அதிகமாகவே கற்றிருக்கும் தன்மையையும் நாம் பார்க்கக்கூடும் என்று யுகிக்கக் தோன்றுகிறது.

இது இன்றைக்கு உள்ள சிக்கல்.

 

தமிழ் உரை சம்பந்தமான சில புதிர்கள்

தமிழ் செயற்கையறிவு மற்றும் எந்திர வழி உரை பகுப்பாய்வு போன்ற செயல்பாடுகளின் திறன் தினமும் வளர்ந்து கொண்டே போகின்ற சமயத்தில் (செயற்கையறிவு என்ற பேரலையின் முதுகில் பயணிக்கின்றது என்றபடியாக) இவற்றினால் கடக்கவேண்டிய சில புதிர்கள் என்ன (என்பார்வையில்) என்று இந்த பதிவில் அலசலாம்.

  1. இருபால் சமநிலைப்பாடுத்தல் (gender balanced text)
    • அரசாங்கம், வணிக கார்ப்ரேட் நிறுவனங்கள் தினசரி புழக்கத்தில் பல செய்திகள் விளம்பரப்படுத்தலுக்கும், உள்நிறுவன செயல்பாட்டிற்கும் பகிர்ந்துகொள்ள வேண்டியிருக்கும். இத்தகைய செய்திகளில் சில் கேள்விகள் எழுகின்றன:
      • இந்த செய்திகள் முழுவதும் இருபாலினருக்கும் சரிசமமாக பாரபட்சமின்றி எழுதப்பட்டுள்ளதா?
      • இப்படி இல்லாவிட்டால் செயற்கையாக உரைதிருத்தம் செய்து இருபால் சம நிலைப்படுத்தல் செய்யலாம ?
    • உதாரணம்: “பணியாளர் வேலைக்கு வந்தால் அவர் மனைவியிடம் ஒப்புதல் பெற வேண்டும்..” என்ற படி ஒரு உரை இருந்தால் அது சமனிலைப்படுத்தப்பட்டபின்  “பணியாளர் வேலைக்கு வந்தால் அவர் மனைவியிடம் (அல்லது அவள் கணவனிடம், [துனைவன்/வியிடம்]) ஒப்புதல் பெறவேண்டும்” என்று வரவேண்டும்.
    • இத்தகைய ஒரு செயற்கையறிவு அல்லது தானியங்கியிடம் திருக்குறள் மற்றும் சம்காலத்தில் உருவாகாத பழங்கால உரைகளைக்கொடுத்தால் என்ன ஆகும் ?

மேலும் சில திறன்களை தமிழ் இயல்மொழிபகுப்பாய்வு பெரும் என்றும் நம்பலாம்; அடுத்தகட்ட கேள்விகள் / புதிர்கள் அடுத்த பதிவில்.

நன்றி

-முத்து

 

$upporting Tamil Chair in Toronto UTSC

Toronto, Canada is one of the largest cities in North America. Specifically, the Tamil population of Canada has a distinctive presence and shapes the culture and society of this diverse, vibrant city. After the successful completion of Harvard Tamil Chair, the Tamil Chair, Inc. organization has initiated a effort to incorporate a Tamil Chair at University of Toronto, Scarborough (UTSC).

UTSC Tamil Chair

Learn more on project and contribution modalities at following links,

  1. Full blog post at Solvanam blog,
  2. UTSC Toronto Tamil Chair

Blog readers are requested to contribute to support this cause to further understanding of Tamil language, Tamil literacy and archival/research into people, culture and milieu.

-MA

 

 

Open-Tamil v0.95

Today, we are releasing Open-Tamil v0.95 via Python package index here.

எழில்-open-tamil contributors meetup
எழில்-open-tamil contributors meetup (2018). படம் – உபயம் : திரு. சீனிவாசன்.

In this release there are few new items and routine improvements.

  1. Indian Rupee sign parsing
  2. Package tamil-sandhi-checker with open-tamil

  3. Tamil Morse code module added to package

  4. Remove Python 2.x support with sunsetting from PSF
  5. Valai – package of web ReST API for some spellcheckers

Get the latest:

$ pip install --upgrade open-tamil

Thanks to all our contributors present and past.
Happy Holidays!

P.S: மின் அஞ்சல் அறிவிப்பு கீழ் இணைக்கப்பட்டது.

வணக்கம் தமிழ் கணிமை ஆர்வலர்களே,

இன்று Open-Tamil வரிசை எண் 0.95 வெளியீடு ஆனது.  இந்த நிரல் தொகுப்பு முற்றிலும் திறமூல MIT உரிமத்தில் வெளியிடப்பட்டது. இதனை கொண்டு நீங்கள் பைத்தான் கணினி மொழியில் தமிழ் மொழி ஆய்வுகளை செயல்படுத்தலாம்.
உதாரணமாக இரண்டு திறமூல சேவைகள்/செயல்பாடுகள் (அதாவது எழில், தமிழ்சந்தி மற்றும் தமிழ்பேசு-வலை என்பவற்றை தவிற்த்து [எங்கள் குழுவினர் அல்லாதவர்]) பயன்பாட்டில் பொதுவெளியில் உள்ளது தெரியவந்தது-
 1) பைதமிழ் என்ற (அவலோகிதம் போல) வேண்பா திரிப்பு நிரல் தொகுப்பு (library), மற்றும் 
2) வென்முரசு தோடர்நாவலை உரை-பகுப்பாய்வு செய்யவும் ஒரு செயலி என்றபடி உள்ளது.

இந்நிலையில் இந்த வெளியீட்டில் உள்ளவை,

1. தமிழ்சந்தி என்ற விருது பெற்ற திருமதி. நித்தியா-திரு. சீனிவாசன் அவர்களது படைப்பான  தமிழ் சந்திப்பிப்பிழைத்திருத்தி  இந்த தொகுப்பில் இடம் பெற்றது. இதில் நாற்பது விதிகளுக்கும் மேல் சந்திப்பிழைகளை கண்டரிய வசதிகள் உள்ளது.

2. தமிழ் மோர்சு என்ற தந்தி குறிகளை தமிழில் கையாள இது உதவுகிறது.

3. வலை என்ற நிரல் தொகுப்பில் திரு. நீச்சல்கீரன் அவரது வாணி  மற்றும் தமிழ்பேசு சொற்பிழை திருத்தியை இணையம்வழி கையாள வசதிகள் உள்ளன. 

முழு விவரங்களுடன் வெளியீடு: https://ezhillang.blog/2019/11/20/open-tamil-v0-95/

ஒப்பன் தமிழ் குழுவிற்காக,
அன்புடன்
-முத்து
கலிபோனியா

Google CoLab – இணையம் வழி நிரல்களை பழகுதல்

என்ன :

கூகிள் நிறுவனம் CoLab – Code-Laboratory என்ற ஒரு சோவையை பெரும்பாலும் பைத்தான் வழி செயற்கையறிவு நிரல்களை (TensorFlow கொண்டு)  உருவாக்க பொதுமக்களுக்கு வழ்ங்கியுள்ளது. ஆனால் இதனை தமிழ் கணிமைக்கு பயன்படுத்தலாமா ? ஆம்.

தமிழ்-கூகிள்-கோலாப்-நிர்ல்-பயிற்சி

எப்படி:

ஒரு உதாரணமாக இந்த ‘பயில் தமிழ்’ interactive python (ipynb) நோட் புத்தகத்தில் (சுட்டி இங்கு) தொடங்கினால் எப்படி ஓப்பன் தமிழ் நிரல் தொகுப்பை பரிசோதிக்கலாம் என்று காணமுடியும்.

முதலில் ஒப்பன் தமிழ் நிரல் தொகுப்பை நிறுவ வேண்டும் – இதற்கு ‘!pip3 install open-tamil’ என்ற கட்டளையை கொடுக்கவும். அடுத்து ‘play’ பட்டன் அழுத்தியோ அல்லது ‘Ctrl + Enter’ விசைகளை அழுத்திபயோ இவற்றை இயக்கலாம்.

மேல் உள்ள உதாரண நிரல் துண்டின் வரிகள் 1 முதல் வரி 6 வரை இருக்கின்றன. இதன் பயன்பாட்டினைக் கொண்டு இலவசமாக எந்த வித சிரிய நிரல்களையும்  நீங்கள் இயக்கிட முடியும். ஓப்பன் தமிழ் போன்ற நிரல் தொகுப்புக்களை நீங்கள் எங்களது ஆவணக்கூருகள், மற்றும் உதாரணங்கள் மூலம் இந்த மேகக்கணிமை சேவையால் பரிசோதிக்கலாம்.

நன்றி

 

 

 

தமிழ்கருவி

2007-இல் எனது முதல் தமிழ் மென்பொருளை உருவாக்கினேன். இன்று தொலைந்த மென்பொருள்கலில் ஒன்று. எப்படி தொலயவிட்டேன் ? காலம்.

மிதம் https://egovindia.wordpress.com/2007/01/09/tamil-transliteration-tool-using-gtk-toolkit-for-gnome-environment/

Screen Shot 2018-08-11 at 1.47.00 AM

 

Language Transformations

Question  of Translation

How can you convert a text like “Me Amor!” to “என் உயிரே!” [from Spanish to தமிழ்] ? Lets  assume we have Spanish to English and Tamil to English translators [bidirectional with English] then we can convert Spanish to English then to Tamil. Likewise one can translate between any two languages from a clique of languages [so far as the clique is defined such that each language can be translated to at least one other language in clique].

Development – Theory

Language can exist as text (print/message/document) or speech (audio, conversations) etc. Ideas are represented in any language. Ideas originate from one language and move to another, or sometimes originate iñ many lañguages simultaneously. Ideas cañ cross from oñe language to añother via text or speech.

In mathematical terms if we write L as set of lañguages = { L1, L2, .. Ln} and then if we define each language as a tuple Li = (Ti,Si) then we may further define mathematical function operating on text and converting it to speech as :

TTSi : Ti -> Si

we may define a function speech recognition as,

ASRi : Si -> Ti

we may also define a translation function as,

TXij : Li -> Lj

Essentially what we can do is by representing the language as a node in a graph with two text and speech parts to it, we may connect these nodes to each other via the edges – functions – like ASR and TTS, and to nodes of other languages via translators function edge.

In a graph with only two languages [English, Tamil] with all edges representing functions like TTS, ASR within same language and functions like Translator between two languages (one for each direction) we see a graph like the following:

Screen Shot 2018-08-03 at 11.51.08 PM
Fig. 1: Language transformation graph. Nodes represent languages and their components. Edges represent functions like TTS, ASR [for same language] and Translators [directional between languages]. Clearly we may see this is a directed graph with ability to go from a specific language to another language in text or speech or both forms, provided a path exists from source to target language. Using such a graph with no orphan nodes, we may have universal translation powers from language A to language B [so far as bidirectional connectivity is present with at least one neighbor].

Problems to Ponder

So the curious reader now having a background of representing the translation problem as a graph problem of reaching node B from node A, can use rich set of path finding algorithms and shortest distance algorithms may attempt to answer some of these questions:

  1. What is the graph criteria for a language to have no translations ?
  2. What is the graph criteria for a language to not be able to have virtual assistant ? [Siri, Cortana, Alexa etc.]
  3. Conversely, to 2, what is minimum criteria [necessary but not sufficient] to have a virtual assistant [that can speak and listen] ?
  4. Given two paths to translating from language A -> F, which are of two different lengths which one would you choose and why? Assume all jumps have a uniform information loss. What if information loss at each edge is non-uniform, how can you optimized such a problem ?
  5. How would you introduce a new language into this graph so that it maybe translated to all other languages [unidirectionally] ?
  6. How would you introduce a new language into this graph so that it can be bi-directionally translated ?
  7. How can you represent the transliteration function in this graph ?

Answers will be posted soon! Feel free to leave your comments in section below.

-Muthu

Dispatches from Kovai, India

Kovai – Coimbatore, India – also known as Manchester of India, and various monickers for its beautiful weather, Tamil dialect, and cool weather at foothills of the Nilgiris-Ooty mountain range and clear waters from Sravani river, it is a microcosm of all that is nice and beautiful in முல்லை Tamilnadu.

Our team of fearless open-source enthusiasts añd contributing developers of open-tamil project, Shrinivasan and our newest contributor this year Syed Abuthahir made an impressive presentation at the conference, and gained new clients for the open-tamil library demonstrating the prowess of various tools, particularly from the web-interface http://tamilpesu.us

Screen Shot 2018-07-19 at 12.49.53 AM
Growth and evolution of Open-Tamil – presented at TNAU, Coimbatore. Full slides here

Syed has gladly shared the presentation with me, and I put it up on slideshare for all of us to read/comment. Thanks to all earnest contributions of time, effort, code and thought towards this project over the years!

Best Regards,

-Muthu

India A.I. report – highlights

ஏற்கணவே எழுதிணபடி  இந்திய செயற்கை நுண்ணறிவு அறிக்கை வெளியிட்ட குழுவின் தலைவர்,  IIT-சென்னையைச் சேர்ந்த பேரா. காமகோடி. இந்த அறிக்கையில், முக்கியமான விஷயங்ககள் கீழே படம் வடிவங்களில் பாற்க;

India-AI-report-1
படம் 1: இந்திய செயற்கை நுண்ணறிவு அறிக்கை – மாற்றுத்திறணாளிகள் பற்றி
India-AI-report-2
படம் 2: இந்திய செயற்கை நுண்ணறிவு அறிக்கை – இந்தியமொழிகள் பற்றி