தமிழ் இணைய மாநாடு 2017 – டொரோண்டோ, கனடா

16-ஆவது தமிழ் இணைய மாநாடு, டொராண்டோ, கனடாவில் சென்ற வாரம் சிறப்பாக நடைபெற்றது.  

எனக்கும் ஒரு நல்ல அறிமுகவாகவும், அனுபவமாகவும் இருந்தது.  மாநாடு நிறைவு பெரும் நாள் — at University of Toronto Scarborough (UTSC). இந்த படங்கள் எடுக்கப்பட்டன:

group-pic

நன்றி, நினைவுகள்

எனக்கு நிரைய விஷயங்கள் புதிதும், பலதும், பழையதும் புரிந்தது. எனக்கும் வயசாக நான் தொடர்ந்து வேலை செய்த அறிஞர்களிடத்து நான் ஞாயமாக கண்ட ஒரு ஆதங்கம் “இளைஞர்கள் முன்னோடிகளின் வேலைகளையும், பங்களிப்புகளையும் சரிவர மதிப்பதில்லை” என்ற ஒரு கருத்து. இது பெரும்பாலும் உண்மை. ஒரு கருவி, செயல்பாடு உருவாக்கிய பின் அதனை அடடா இது தானா – நம்மளே பன்னிருக்கலாமே என்று ஒரு  “post-hoc”, “after the fact”  நினைப்பில் முன்வந்த உருவாக்கங்களை நாம் லேசுபடுத்தியுள்ளோம்.

தமிழ் இணைய மாநாடு (2017)-இல் வரலாறு படைத்த தமிழறிஞர்களுடன் கலந்துரையாடியது மகிழ்ச்சி. நியூட்டன் சொன்னது, “standing on shoulders of giants”, போன்ற நமது இன்றைய நிலைக்கு காரணம் இவர்களை போன்ற சான்றோரின் பணி. நம்ம Jimmy Wales, Steve Jobs, Richard Stallman போன்றவர்களை மட்டும் ஒரு கடவுள் அளவுக்கு பார்க்கிறோம் – நம்மது தமிழர்களை நாம் மிகைப்படுத்துவதும், பெருமிதம் கொண்டும், கொண்டாடுவதும் அரிது.

கடன்

எனது பயனத்தை நிஜமாக்கிய மாநாடு குழு தலைவர் பேரா. திரு. செல்வா அவர்களுக்கும், எனது குடும்பத்தினருக்கும், எழில் மொழி குழு, திறமூல தமிழ் மென்பொருள் நண்பர்களுக்கும் நன்றி.

 

குறிப்பாக எழில் திட்டம் நிறைய கடன்பட்டது – முக்கியமாக எனது பங்களிப்பாளர்களுக்கும், எங்கள் குடும்பகளுக்கும் முன்னிலையில். எங்கோ செல்கிறோம், விரைவில் முன்னேற்றமோ, முடிவோ வரும்.

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

பொருளடக்கம்

அகத்து 25

முதல் நாள் என்னால் போக முடியவில்லை; இதனை பற்றி இங்கு படிக்கலாம்.

அகத்து 26

இரண்டாம் நாள் திரு. முத்து நெடுமாறன் அவர்கள் “கருவாக்கல் – உருவாக்கல் – விரிவாக்கல்” என்ற தலைப்பில் பேசினார். நல்ல உரை, இது product development பற்றியும், அவரது ஏறத்தாழ 30-ஆண்டு அனுபவத்தை தொட்டு அற்புதமான ஒரு பேச்சாக அமைந்தது. அவர் சொன்னதில் சில முக்கியமானது, மற்ற இடங்களிலும் நான் கேட்டிருக்கிறேன் ஆனால் முதலில் தமிழ் வெளியில் இவரிடமே.

  1. தமிழினால் மட்டும் உங்கள் உத்தி வியாபாரம்/பயன்பாடு ஆகாது. அதற்க்கு முதல் நிலை பயனர் தேவைகளை பூர்த்தி செய்யவேண்டும்.
  2. எளிமை, பயனர் அனுபவம் எளிதாக இருத்தல் வேண்டும்.
  3. உரிமம் – இலவசமாக கொத்தாலும் ஒரு உத்தி/செயலி அபாரமாக வெற்றி அடையும் என்று சொல்ல முடியாது.
  4. மேலும், பயனர்கள் எப்படி தமிழ் இடைமுகங்களை புறக்கணிக்கின்றனர் என்றும் உதாரணங்கள் கூறினார்.

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

எனது படைப்பான, “Tamil open-source challenges and opporunities” என்கிற தலைப்பில் வேகமாக பேசினேன்; எதிர்பாராத விதமாக சில மூத்த பேராசிரியர் நடுவில், அமெரிக்க பல்கலை வரம்பில் இல்லாதபடி, கேள்விகள் எழுப்பியும் அபிப்ராயங்களை எழுப்பியும் சற்று திசை திருப்ப முயன்றார்; நான் “உங்கள் விமரிசனங்களை ஒப்பு கொள்கிறேன்,” என்றபடி பேசி சென்றேன்.   எனது பேச்சில் நல்ல ஈடுபாடு இருந்ததாக தெரிந்தது. எனது திரை-படிமங்கள் இங்கு slideshare-இல்.

Image may contain: 1 person, screen
தமிழ் திற மூல மென்பொருள் வெளியில் உள்ள சவால்களும், வாய்ப்புக்களும் என்ற கட்டுரையை வழங்கிய பொழுது. (INFITT 2017, University of Toronto, Scarborough).

எனக்கடுத்தது நினைவில் உள்ளபடியான கட்டுரை “நூலகம் அறக்கட்டளை”-யின் நற்கீரன் அவர் படைத்தார். தமிழில் object-entity தொடர்பாடல் உருவாக்குதல் பற்றியும் ஒரு ontology பயன்செய்து semantic web உருவாக்குதலை பற்றியும் மிக துல்லியமாக பேசினார்.

அகத்து 27

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

இளங்கோ சேரன் அவர் “clj-thamil” பற்றியும் prefix tries தரவமைப்பு (data structure) பற்றியும் பேசினார். இதில் அவர் நேர்வழி பயன்பாடு (demo) காட்டி எல்லாரையும் அசத்திட்டார். அவரது திரை-படிமங்கள் மற்றும் கட்டுரை இங்கு.

எழில் பதிவெண் 0.99 வெளியீடு படைப்பு

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

விழா மலர்

விழா மலரில் நானும், நண்பர் கணபதியுடன் ஒரு கட்டுரை “GPUs powering the AI revolution,” என்று எழுதினோம். மற்ற நல்ல கேள்விகள் கட்டுரைகள்.

  1.  “தமிழில் ஒரு திற மூல சொல் திருத்தி” அதன் முக்கியத்துவம் பற்றி வள்ளிபுரம் சுகுந்தன் நல்ல கட்டுரை எழுதியுள்ளார்.
  2. பேரா. பொன்னவைக்கோ, TACE16 பற்றி எவரேனும் இதனை மென்பொருளாக்கி, பரிசோதித்தல் வேண்டும் என்று ஒரு தேவையை முன்வைத்தார்; இதற்க்கு Unicode extended plane-இல் இடம் உள்ளதாக ஒப்புதல் வந்துள்ளது என்றும் சொன்னார், ஆனால் எதுவும் மென்பொருட்கள் பொதுவாக/பரவலாக இதுவரை இல்லை.
  3. விழா மலரில் பேராசிரியர் திருமதி. ராஜம் கிருஷ்ணன், மாநாடு தலைவர் திரு. செ. இரா. செல்வகுமார் பற்றி சிலாகித்து அருமையாக ஒரு வாழ்த்து எழுதியிருந்தார்.

முடிவுரை

இன்னும் கூடுதலாக நேரம் செலவிடமுடியவில்லை என்பதும் மனதில் இருந்தாலும், So long Toronto, Canada. மீண்டும் சந்திப்போம் – நயாகரா, Space needle, போன்ற சுற்றுலாக்களை அப்போது காண்போம்; மனைவியும் வருவாளோ என்னமோ. அதுவரை வேலைகள் நிறைய உள்ளன.

 

Ezhil code-freeze | rc1 v0.99

cropped-failure_gpforeducation_8644430776.jpg

At Team Ezhil we proposed to declare code-freeze for Ezhil for reaching v1.0 stable builds on major platforms. In this regard today the release candidate 1 for v0.99 is ready. During this process we addressed some long standing interpreter (core) bugs and updated examples for aesthetic comments.

  1. Windows 64b package at  ezhillang.org, source forge.
  2. Linux (Ubuntu 64b amd/x86) package at ezhillang, source forge.
  3. People interested to build for other platforms (Mac OSX, Fedora and Win32) are requested to get in touch with ezhil team.

At this time I welcome:

  • contributors and reviewers to use and provide early feedback before final version is released.
  • Errors by omissions and additions or typos are requested to be brought to our attention.

For questions and comments: ezhillang@gmail.com.

San José, California.

சொல்வளம் – புதிர்

குறிப்பு : எப்படி விளையாடுவது ?

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

சொற்கள்

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

புதிர்சதுரம்


க் மி நி ல் டு த் து ல்
து நி லா க் ம் க் தி வா
ழ் ம் யீ ம் க்
பொ தே டு ணி ட் மி மூ க் கி
து ம் வெ ம் க் மை டி
க் ல் வெ கு ம் ம்
ல் ளி ப் ரி மை ல் மை ம்
பு சை யி ப் ல் ப்
ம் ழி ம் வா ப் மை பு க்
பு ல் ல் ழு து ம் ம்
வெ வெ ளி யீ டு ம் தே டு யி
வெ ழி ணி மி ழ் த் ற்
ணி க் ம் பு து ல் ணி து சி

வலது சொடுக்கு “இயக்கு” – எழில் திருத்தியில்

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

வருகை வேகமாக இயக்க,   வலது சொடுக்கு right-click மெனுவில் இயக்கு என்று பட்டனை இன்று சேர்த்தேன். இது கொஞ்சம் விறுவிறுப்பான வேலை. இது எப்படி செயல்படுகிறது என்று பாருங்களேன்,

 

  1. முதலில் எழில் திருத்தியான “எழுதி” திறக்கவும்.
    aug13_s0
  2. இரண்டாவதாக “இயக்கு” என்ற கருவி பட்டையில்  (toolbar) உள்ள பட்டனை சொடுக்குங்கள். இது பச்சை எழுத்துக்களில் உள்ள நிரல் வெளியீடை தரும். (வலது புரம் பார்க்கவும்.)aug13_s1
  3. மூன்றாவதாக, உதாரணத்துக்கு உங்களுக்கு “30-ன் அடுக்கு பெருக்கு  எவ்வளவு?” என்ற கேள்வியை விடைகாண இங்கு எழுதலாம். இடது பக்கம் எழுதியபின் இதனை “வலது சொடுக்கி இயக்கு” என்று சொல்லவும் – கீழ் கண்டது போல.aug13_s2
  4. அடுத்து “விரைவாக இயக்கு” என்பது விடையை உங்களுக்கு அளிக்கும்.aug13_s3

இது இன்றைய அக்கம்.

Tamil language model

TL;DR

Last week I collected letters (323 letter forms)  from open-tamil and estimated the unigram, bigrams and trigram frequencies in a given Tamil lexicon with about 65,0000 odd words. The interesting results are found in this Open-Office Calc spreadsheet.

This was somewhat of a enjoyable exercise to me, to revisit some of the hardwork I have done in Open-Tamil, particularly in the utf8 module, among other contributions to Open-Tamil library from a wider team.

However, whats in it for you, dear reader ? To cut to the chase, here is all the meat and potatoes of the results:

  1. Tamil word frequencies sorted by word-length for the 65k words show a mean wordlength (using weighted average) of 5.404; 5 is a beautiful Prime number and Indian mythology will also have some suitable references.
    • This word frequency distribution comes out like the following (y-axis log scale)

      tamil word frequency as function of word length
      Fig. 1. Tamil word frequency as function of word length
    • Word Length Frequency
      1 102
      2 1799
      3 6434
      4 13200
      5 14489
      6 11636
      7 8119
      8 4626
      9 2224
      10 817
      11 286
      12 104
      13 26
      14 24
      15 8
      18 1
      19 1
  2. Unigram data show Zipf’s law like distribution (e.g. from NLP course material); also we see only 100 of 323 possible letter forms in Tamil make up the text of the lexicon. One wonders of a Samuel Morse that sent his telegram’s for Tamil, if he would have chosen ‘.’ to represent the ‘ம்’ ? However Tamil reading or recitation of Morse code would be like jathi-reciting Barathanatyam dance teacher. Dit daa daa. The first 100 most frequent letters in lexicon are presented here.
    Letter Frequency
    ம் 18164
    17207
    14670
    ல் 14165
    த் 9540
    க் 8257
    ன் 8133
    7639
    7639
    7005
    தி 6625
    6402
    கு 6154
    5925
    ப் 5809
    ட் 5690
    டு 5566
    ர் 5503
    5049
    4683
    4563
    ரு 4536
    பு 4292
    கா 4262
    து 4162
    4046
    வி 3838
    டி 3798
    ண் 3773
    சி 3720
    3563
    ரி 3379
    ங் 3284
    ந் 3254
    ற் 3099
    2939
    று 2811
    ச் 2811
    சு 2751
    பா 2705
    கி 2625
    பி 2614
    வா 2569
    மு 2458
    ள் 2432
    லை 2212
    2185
    டை 2156
    தா 2154
    2134
    கை 2121
    2020
    மா 2015
    ய் 1916
    1902
    சா 1837
    1821
    லி 1744
    வு 1522
    கொ 1497
    1491
    நி 1465
    ஞ் 1461
    ரா 1452
    ணி 1450
    ளி 1432
    யா 1421
    நா 1303
    றி 1263
    கோ 1260
    செ 1236
    ழி 1234
    னி 1219
    ழு 1122
    மி 1117
    யி 1095
    பொ 1082
    ரை 1057
    வெ 1036
    1025
    மை 990
    றை 976
    பூ 949
    னை 937
    937
    லா 911
    சை 837
    வை 822
    போ 815
    கூ 802
    வே 797
    டா 793
    தை 786
    பெ 765
    ளை 764
    தே 674
    655
    ழ் 618
    லு 613
    நீ 581
    • Fitting the Zipf’s law to the Unigram data looks quite interesting too:
  3. Bigram data also has promising structure as Shannon would have imagined it would be from a human language; these things are known to have redundancy, structure and predictability.
    • First 2000 bigrams occupy more than 50% of all observed bigrams.
    • Lexicon contained only ~ 13.25% of all possible bigrams in the wild!
    • This sparseness of bigram data indicates mainly a limited data set or highly structured vocabulary in Tamil, but I’ll wager the former.
    • Zipf’s law fit is not as nice as for unigrams but here it goes: 
    • The top 100 bigrams, by frequency, are the following:
    • தல் 8670
      த்த 4645
      க்க 2844
      கம் 2824
      த்தி 2160
      ரம் 2023
      க்கு 2019
      தம் 1893
      ட்டு 1805
      ப்பு 1757
      டுத 1641
      ப்ப 1582
      யம் 1532
      த்து 1517
      ம்ப 1484
      னம் 1402
      ம்அ 1397
      ந்த 1305
      ங்க 1286
      டம் 1233
      லம் 1230
      ட்ட 1108
      க்கா 1082
      சம் 985
      ட்டி 976
      ம்பு 958
      கன் 904
      ம்க 904
      ல்க 882
      க்கி 869
      திர 852
      ந்தி 823
      ணம் 819
      ம்ச 799
      ங்கு 797
      ச்சி 789
      ண்ட 767
      ர்த் 757
      கட் 755
      குத 743
      ம்இ 729
      ப்பி 720
      கண் 716
      ரன் 712
      ல்அ 707
      கார 692
      ற்று 689
      ப்பா 688
      ம்ம 681
      வன் 672
      ம்பி 641
      ச்ச 632
      ம்ஆ 624
      தன் 617
      வம் 599
      கர 592
      பம் 587
      கல் 581
      ம்உ 534
      கரு 534
      ல்ப 530
      யன் 519
      றுத 517
      ல்வ 515
      ந்து 511
      த்தா 510
      ச்சு 502
      ம்பா 500
      ஞ்ச 495
      டுத் 492
      பிர 490
      ரிய 488
      டித் 480
      படு 477
      ல்த 475
      ல்கு 467
      ல்உ 467
      னல் 462
      ளம் 459
      ன்அ 456
      ற்ற 450
      ட்டை 443
      திரு 442
      ருத் 435
      ல்இ 431
      ங்கா 415
      ன்ன 414
      தலை 411
      வர் 406
      ம்த 403
      ன்ம 398
      ன்க 394
      க்கொ 392
      ண்டு 391
      ம்வி 388
      ல்வி 384
      மம் 384
      ர்க் 384
      டுக் 381
      ல்ம 379
  4. Moving on to trigrams we find, even more sparseness since the data is so limited – 65k words with total letter size of 345,315 letters only. Of the possible 323^3 = 33,698,267 ~ 34 million trigrams we have only 107,715 trigrams present in the Lexicon, about 2%, making this is the weakest dataset yet.

    • About 10,000 trigrams form more than 50% of the available trigrams from the data-set with rest of trigrams occurring sparsely.
    • The most frequently occurring 100 trigrams and their frequency in this lexicon are shown below:
      த்தல் 2992
      டுதல் 1573
      குதல் 674
      தல்க 575
      ட்டுத 557
      க்கம் 513
      த்திர 479
      தல்அ 476
      றுதல் 472
      ர்த்த 446
      ட்டம் 431
      டித்த 431
      த்தம் 382
      கட்டு 380
      தல்ப 374
      தல்த 353
      தல்உ 351
      துதல் 332
      டுத்த 331
      காரன் 325
      திரம் 322
      க்கட் 310
      தல்கு 309
      க்கார 298
      ந்தம் 295
      க்குத 293
      தல்வ 288
      ங்கம் 280
      தல்இ 271
      படுத 271
      ங்குத 256
      த்துத 250
      த்திய 250
      ந்திர 250
      தல்மு 246
      ளுதல் 245
      தல்ம 242
      தனம் 242
      சனம் 234
      ய்தல் 228
      ர்க்க 228
      ப்படு 227
      தல்வி 226
      கம்அ 222
      க்கல் 218
      காரம் 218
      ரித்த 208
      தல்ச 206
      ர்தல் 206
      பத்தி 202
      தம்அ 201
      ருத்த 196
      ள்ளுத 195
      தல்பு 193
      கம்ப 192
      ண்டம் 185
      ரம்அ 183
      த்துவ 180
      ம்பிர 174
      ட்டுக் 174
      வுதல் 171
      தல்கா 170
      ரணம் 170
      ற்றுத 168
      தல்ந 167
      யம்அ 165
      ரியம் 164
      கொள்ளு 164
      தல்சி 164
      லுதல் 162
      கரம் 162
      புதல் 160
      கம்க 159
      தல்ஒ 158
      சுதல் 157
      தல்நி 156
      ர்த்தி 156
      ப்பிர 155
      ணுதல் 154
      காட்டு 153
      தல்கை 150
      தல்பி 149
      போடுத 148
      தல்ஆ 147
      கண்ட 147
      க்கிர 146
      தியம் 146
      தல்எ 145
      சித்த 145
      தல்சு 144
      வைத்த 143
      க்கர 141
      ரம்க 140
      த்தன் 138
      தல்து 138
      காலம் 138
      மரம் 137
      ரம்ப 137
      விடுத 136
      சங்க 135

Conclusion

It is quite easily possible to build a random word/text generation in Tamil with these statistical data and smoothing information for the missing 80% bigram, 98% trigram data using Monte Carlo techniques. Further word-level frequency, word-level bigram and trigram data will make a more relevant text generation at the sentential level.

More later. Adios amigo.