ஆடுகளம் – 2020

Tamil projects for 2019-2020

Over the course of this year, since translating Ruby Kin, and preparing a summary of 3 years work on spell-checker for Tamil Internet Conference – 2019, I’ve been thinking of next level of interesting projects.

The following have come to mind, expressed in Twitter @ezhillang in various forms. Here they are in simply chronological order,

  1. Translating “Data Structures and Algorithms” book in Tamil
  2. Translating/Writing a “Debugging Techniques” book in Tamil: ‘கணினி செயல்முறை நிரகளில் வழுநீக்கம்‘ – பயிற்சி, நூல்
    • Debugging techniques are important learning milestone for any professional software/hardware developer which are usually learnt on the job and essentially skipped in academia (perhaps for practical purposes).
  3. (Research/Proof-of-concept) Viterbi algorithm based spelling correction algorithm for Tamil
  4. (Research/Proof-of-concept) Concordance based context ambiguity resolution for Tamil spelling correction.

Contingent on our levels and degrees of success we can share our work in forums like Tamil Internet Conference, ACL or ACM, etc.

நிவாடா மாகனத்தில் மலையேரும் சமயம் மொட்டை வெயிலில் எடுத்த தம்படம் 🙂

As always collaborators are welcome: email: ezhillang -AT- gmail -DOT- com

Summer 2019 Tamil Computing Essay Competition

Students (from 1st year in accredited college to final year and 1yr post graduation, bachelors degree only) are requested to participate in Summer 2019 Tamil Essay Competition.

Please submit a 4-8page essay on any of following topics of your choosing; essays are requested to be in the form of a project proposal and intent to benefit Tamil language development. Essay publication is granted to Ezhil Language Foundation. Essays can be in Tamil or English. Decision of judges is final and binding.

List of topics follows:

  1. Viterbi algorithm to decode spelling errors from big ram statistics
  2. Tamil Text to Speech synthesis using unit selection synthesis and AI approaches

Please email your entries in Word Doc or Open Office ODT format in UTF-8 Unicode encoding before September 4th, to email “ezhillang@gmail.com” with subject “essay competition 2019”

Please attach a note of your resume/ C.V. to the application.

Up to two winners maybe picked and announced by end of September 2019 and offered a opportunity to build a software.

Prize money of $100 and $75 are offered to any winners contingent on agreement of judges. If no suitable entries are present no prizes maybe declared.

Sincerely,

Ezhil Language Foundation

முகம் சுளிக்கும் நிரலாளரின் மூளைக்கு வேலை

படம்: முத்து கிட்டார் வாசிக்காமல் கருத்து சொல்கின்றான்.

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

விஸ்வணாதன் ஆனந்த் சதுரங்க ஆட்டத்தில் எப்படி மூளையை கசக்க்கி சிக்கலான ஆட்டத்தில் எதிராளியின் தாக்குதலில்இருந்து விடுவிக்க முயலும் சமயம் அவர்மூளையின் வேலை அளவில் உள்ள வேகம் சராசரி கணினி நிரலாளர்களின் வேகமாக அமையும். இப்படி சும்மா பேச்சுக்கு சொல்லவில்லை – கணினி நிரலாக்கத்தில் எதிராளி என்பது என்ன ?

Entropy என்று சொல்லக்க்கூடிய சரியான விடையின் பாதையில் உள்ள தவரான விடைகள் – இவற்றை சலிப்பில்லாமல் கடந்து வந்தால் சரியான விடை கிடைக்காது – அது, அந்த ஒவ்வொரு கட்டத்திலும் நாம் எடுக்கும் தீர்வுகள்/முடிவுகள் கணிமையின் திசையை சரியான (எளிதில் – path of least resistance – வழி கிடைக்காத வகையிலான) திசையில் எடுத்துச்சென்று விடையடையச் செய்கின்றது.

இதுதான் கணினி நிரலாளரின் குருகிய முகம் சுளிக்கும் பாவத்தில் உள்ள மன நிலை. அவர்/அவளு-க்கு ஒரு ஊக்குவிக்கும் சொல் கொடுங்கள் – இல்லை இல்லை சும்மா கூட விட்டுவிடுங்கள் – ஆனால் “ஐ.டியில் என்ன கிழிக்குர…” என்ற ஏழனப்பேச்சு வேண்டாம்.

ரூபி நண்பன் – RubyKin தமிழாக்கம் – வெளியீடு

ரூபி நண்பன் தமிழாக்கம் முழுமை அடைந்தது. இந்த புத்தகத்தை கொண்டு நீங்கள் ரூபி மொழியை பயிலலாம்.

நன்றி.

மொழிபெயர்ப்பு குழு.

வெளியுறவுத்துரை அமைச்சர் – Linguistic Diversity

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

Spiderman : சிலந்திகளின் பலம் கொண்டபோதிலும், அவன் அதிக பொருப்பின் சுமையால் பாதிக்கப்படுகிரான். படம் உரிமம்: விக்கிப்பீடியா.

சென்ற வாரம் எனது அலுவலகத்தில் எனது Microsoft Office செயலி Word வழி எதைப்பற்றியோ WebEx வழி தொலைபேசி-நேரலைபகிர்தல் வழியில் மற்றோரு மாகானத்தில் உள்ள ஊழியரிடத்தில் வேலை தொழில்னுட்பம் பற்றி பேசிக்கொண்டிருந்தேன். [ஏற்கண்வே, நான் ஒரு ஆண்டுக்கு முன்பு (இதை பார்க்கவும்) இதனைப்போல் 40-மணிக்கும் மேலாக செயல்படும் வேலைமடிக்கணினியில் தமிழ் இடைமுகங்களை (localization) செயல்படுமாரு செய்தேன்.]

எனது திரையில் தமிழ் வட்டெழுத்துக்களைக்க கண்ட இவர் உடனே: இது என்ன முத்து, “Is it sanskrit?” அப்படின்னு கேட்டார். இல்லை இப்படி ‘தமிழ்’ என்றும், இந்தமாதிரி என்றும் சொன்னேன்.

‘அப்படியா! இதை சிலோனில் அல்லவா பேசுவார்கள்?’ என்றும் வினவினார். இல்லை சாமி, சிங்கை, சிலோன் மற்றும் முதன்மையாக தென்னிந்தியாவிலும் 3500 இந்திய மொழிகளில் முதன்மையான் 20-25 மொழிகளில் தமிழும் ஒன்று என்று சொன்னேன். அடுத்து நேபாள் நாட்டை சேர்ந்த நண்பர் ஒருவரின் பணித்திட்டம் பற்றியும் பேசிக்கொண்டிருக்கும் நேரத்தில், இவர் “So is Nepalese same as Tamil?,” அப்படின்னு கேட்டார். நமக்குத்தான் லெக்சரடிக்க பிடிக்குமே – இன்னார் இன்னபடி என்றும் திராவிட மொழி, ஆரிய/வட மொழி என்றும், தேவனாகிரி மொழிகள் என்றும் உள்ளதைப்பற்றி சொன்னேன் – அவருக்கு ஒரே வியப்பு.

என்னவோ – இங்கு நான் வாழும்ஊரில் இந்தியர்களிடத்தில் ஆங்கில மொழிப்பற்று மட்டுமே உள்ளது. சிலிக்கன் சமவெளியில் [Silicon Valley] இந்தியர்கள் பத்தில் ஒருவரிம் கூட மற்றொரு மொழி – தமிழ்/இந்தி/தெலுங்கு/மலையாளம் விசைப்பலகைகளை பயன்படுத்துவதில்லை. செருமன், பிரெஞ்சு இருக்கலாமோ என்னவே கேட்டுப்பார்க்கிரேன்.

இந்திய மொழிகளை வேற்றுமைகளும்-வளமைகளும் [Linguistic Diveristy] ஒரு விளிம்பு நிலையில் தள்ளப்படுமா என்றும் ஒரு சிரிய அச்சம் என்னிடம் இருக்கிறது. இந்தியாவில் பிறந்து வளர்ந்ததினால் மட்டுமே பல மொழிகளின் தாக்கத்தில் வளந்ததில் பெருமை கொள்ளும் சமயம் [சட்டென்று யொசித்தால் – திராவிடம் என்பது கூட ஒரு வடமொழி சொல் என்றும் படும்] கணினியின் யுகத்தில் நமது மொழிகளின் அனுகுதல், வாசிப்பு, ஆக்கம், மற்றும் வளர்ச்சி என்பதை நாம் மறுபரிசீலனை செய்யவேண்டும் என்றும் கருதுகிறேன்.

400-ஆண்டு பிரிட்டீஷ் காலனித்துவத்தினால் கூட அழிவடையும் அளவு மாற்றம் அடையாத மொழி வேற்றுமைகளும்-வளமைகளும் கணினிக்குள் மொழியை உள்ளீடும் செய்யமுடியாமல் தவிக்கும் பலராலும், கணினியில் ஆங்கிலத்தின் சுலபமான செயல்பாட்டாலும் மொழி வளமை காலனித்துவத்தை விட அதிகமாக சிதைவடைகிறது என்பதை நான் காண்கிறேன்.

மொழியில் சிந்தனைகள், கேள்வி-பதில்கள், கூச்சல் குழப்பங்கள் இல்லாவிட்டால் அது இறக்கும் – பிரபல அறிஞரும் சம்ஸ்கிருத மேதையான ஸ்டிபேன் போல்லோக் எழுதிய சர்ச்சைக்குள்ளாகிய ‘Death of Sanskrit’ என்பதில் இருந்து கற்றுக்கொள்ள வேண்டியது என்ன என்றால் இதுதான் – மொழியில் புழக்கம் வேண்டும். அதுஇல்லாவிட்டால், நமது இந்தியமொழிகளும் அருங்காட்சியகத்தில் தான் சென்று காண்போமா என்ன ? இல்லை, நமது காலத்தில் இப்படியெல்லாம் நடக்காது. இல்லையா ? இல்லைதானே…

ஓப்பன் தமிழ் வரிசைஎண்0.9 வெளியீடு

open-tamil v0.9 release.
ஓப்பன் தமிழ் வரிசை எண்: 0.9

வணக்கம் நண்பர்களே!

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

$ pip install –upgrade open-tamil

 என்று கட்டளைஇடல் தேவை; இது உங்கள் கணினியில் நன்கு பரிசோதித்து வெளியிடப்பட்ட நிரல்தொகுப்பை நிறுவிவிடும்.

இந்த அத்யாயத்தில் உள்ள புதியது: தமிழ் வேர்சொல் பகுப்பாய்வு செய்ய உதவும் தொகுப்பு ‘tamilstemmer‘.

ஓப்பன் தமிழ் குழுவிற்கும், நிரல் தொகுப்பினை பயன்படுத்தி பரிந்துரை செய்தவர்களுக்கும் நன்றி!

-முத்து

கலிபோர்னியா

Deep Learning – ஆழக்கற்றல்

ஆழக்கற்றல் பற்றிய சிறப்பான புத்தகம் ஒன்று இயன் குட்பெல்லோ, யொசுவா பென்ஜியோ மற்றும் ஆரன் கூவில் அவர்களால் 2016 நவம்பர்மாதத்தில் எழுதப்பட்டு MIT பல்கலைக்கழகத்தின் பதிப்பகத்தால் பரிசுரம் ஆனது. (இதனை இன்று என் கைகளில் நான் பெற்றதால் அதனை பற்றிய சிறிய பின் அட்டை விவரத்தை தமிழாக்கம் செய்வதில் ஒரு ஆர்வம், முயற்சி.) இந்த புத்தகம் அமேசானில் இங்கு அமெரிக்காவில் முப்பத்தாறு வெள்ளி மதிப்பில் வாங்கலாம்.

படம் 1: ஆழக்கற்றல் பற்றிய சிறப்பான புத்தகம் ஒன்று இயன் குட்பெல்லோ, யொசுவா பென்ஜியோ மற்றும் ஆரன் கூவில் அவர்களால் 2016 நவம்பர்மாதத்தில் எழுதப்பட்டு MIT பல்கலைக்கழகத்தின் பதிப்பகத்தால் பரிசுரம் ஆனது.

ஆழக்கற்றல் என்பது ஒருவகையான இயந்திர கற்றல் தொழில் நுட்பம். இதன் வழி கணினி அனுபம் மூலம், தினசரி பழக்கங்கள், பயன்பாட்டின் வாயிலான உதாரணங்களின் வழி, உலக வழக்குகளையும், அதன் படிநிலைகளையும், அதன் தொடர்புகளையும் தன்னைத்தானே உணரும் குனம் /தன்மை கொண்ட ஒரு தொழில்நுடபமாக அமைவதன் சிறப்பைக் கொண்டது ஆழக்கற்றல். கணினி தன்னாலேயே விதிகளை உதாரணத்தின் வாயிலாக உணர்வதால், ஒரு தனி கணினி இயக்குனர் / அல்லது நிரலாளர் தேவையில்லை; இதன் வழி அடிப்படை விதிகளை பட்டியலிட்டும் நிரல்படுத்தும் நிபந்தனைகளின் கட்டுப்பாட்டில் இருந்து நிரலாளர் விடுவிக்கப்படுகின்றார். கற்கும் செயலின் படிநிலை மனஉருக்களை கணினி ஒவ்வொரு கட்டமாக எளிதான நிலையில் இருந்து படிப்படியாக முனை-ஓர (கிராப்) எண்ணிம வடிவங்களின் படி இவற்றை ஆழமான நிலைவரை அடுக்கடுக்காக நிலைப்படுத்தி ஒரு செயலை கற்றுகுகொள்கிறது. (எனவே இதனை ‘ஆழக்கற்றல்’ என்று கூறுகிரோம்.) இந்தப் புத்தகத்தில் பலவிதமான ஆழக்கற்றல் தலைப்புகளை முன்வைக்கிறோம்.

இந்த பாடப்புத்தகம் ஆழக்கற்றல் கூறுகளை கற்றுக்கொள்ளத் தேவையான கணிமை, தகவல் தொழில்நுட்ப கணிமை, யுகிப்புக் கணிமை, எண்சார் கணிமை, மற்றும் இயந்திர கற்றல் அடிப்படை விஷயங்களையும் வழங்குகிறது. இதில பன்னாட்டு உலக்ப்புகழ்பெற்ற நிறுவனங்களில் இன்றைக்கும் பயன்படுத்தும் தொழில்நுடபங்கள் பற்றியும், ஆழக்கற்றல் பினைப்புகள், கற்றல் செயல்முறைகள், தேர்வுமுறை/சிறப்பிக்கும் செயல்முறைகள், கான்வலூஷன் பினைப்புகள், டோக்கன் தொடர் மாதிரி உருவாக்குதல்கள் அனைத்தையும் ஒரு நடைமுறை கோனத்தில் இந்த பாடப்புத்தகம் வழங்குகிறது; மேலும் இந்த புத்தகத்தில் இயல்மொழி பகுப்பாய்வு, பேச்சு உணர்தல், கணினி பார்வை, இணையம் வழி பரிந்துரைக்கும் செயலிகள், உயிரியல் கணிமை / மரபணு கணிமை, மற்றும் விடியோ விளையட்டுக்கள் பற்றியும் ஆழக்கற்றலின் பாய்ச்சல்/உபயோகங்களையும் பற்றி அலசுகிறது. கடைசியாக ஆராய்ச்சி நோக்கில், கோட்பாடுகளின் அளவில் linear factor மாதிரிகள், தான்குறிப்பிகள் [autoencoders], முன்மாதிரி கற்றல் [representative learning], structured probabilistic மாதிரிகள், மன்டே கார்லோ மாதிரிகள், partition சார்புகள், தோராயமான யுகித்தல், ஆழ உருவாக்கும் பினைப்புகள் [deep generative models] போன்ற தலைப்புகளிலும் தற்சமயம் உள்ள அறிவியல் முன்னேற்றங்களை பற்றி அறிமுகப்படுத்துகிறது.

இந்தப் புத்தகம், இளங்கலை மாணவர்களினாலும், முதுகலை மாணவர்களலாலும், அல்லது கணினிதுறையில் முழுநேர ஊழியர்கழினாலும் ஆழக்கற்றலை பற்றி கற்கவும், செயல்படுத்தவும், உதவிகரமாக பயன்படுத்தும்படி இருக்கும். இதனுடன் இணைத்த வலைதளத்தில் மாணவர்களும், ஆசிரியர்களும் பாடம் கற்க கூடுதல் அம்சங்களை பெறலாம்.

எனது மொழி பெயர்ப்பு மூல உரை ஆங்கிலத்தில் கீழே: MIT பதிப்பகத்தில் இருந்து எடுத்த உரை

Deep learning is a form of machine learning that enables computers to learn from experience and understand the world in terms of a hierarchy of concepts. Because the computer gathers knowledge from experience, there is no need for a human computer operator to formally specify all the knowledge that the computer needs. The hierarchy of concepts allows the computer to learn complicated concepts by building them out of simpler ones; a graph of these hierarchies would be many layers deep. This book introduces a broad range of topics in deep learning. 

The text offers mathematical and conceptual background, covering relevant concepts in linear algebra, probability theory and information theory, numerical computation, and machine learning. It describes deep learning techniques used by practitioners in industry, including deep feedforward networks, regularization, optimization algorithms, convolutional networks, sequence modeling, and practical methodology; and it surveys such applications as natural language processing, speech recognition, computer vision, online recommendation systems, bioinformatics, and videogames. Finally, the book offers research perspectives, covering such theoretical topics as linear factor models, autoencoders, representation learning, structured probabilistic models, Monte Carlo methods, the partition function, approximate inference, and deep generative models. 

Deep Learning can be used by undergraduate or graduate students planning careers in either industry or research, and by software engineers who want to begin using deep learning in their products or platforms. A website offers supplementary material for both readers and instructors.