Project Madurai Corpus – உளி வீரன்

Project Madurai

Project Madurai corpus contains a treasure trove of Tamil data across many generations and inflections of Tamil language. Using this data I post-processed the files in project உளி வீரன்.

Data

We are able to look at data from Project Madurai e-Texts. Currently 4,036,616 total words – 40 lakh plus words –  in ‘plain_text’ folder which contains unigram data and bigram data at word level. One may use open-tamil library to: – discover the unigram word-frequency of this corpus – discover the bi-gram word-frequency of this corpus (since successive words occur in successive lines).

Morse Code for Madurai Corpus

Using the techniques laid out in earlier blog post on Morse Code we are able to regenerate the Morse Code for Tamil using additional data.

Average code word length = 6.65456 bits. Morse code for Tamil using Madurai corpus is displayed below [most frequently occurring symbols to least] – i.e. in descending order.

  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. ஙி -> ....--.-....-.-.-..--.-.

We are able to say this Morse code book is a better representation of Tamil since it finds 290 letters incident of the 323 letters in Grantha + Tamil letter set generated from the Madurai corpus of 4 million words.

 

Tamilisch – தமிழ் மொழியின் பெயர்

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

ஒரு தானியங்கி ஆட்டொமாடிக்கா பல மொழிகளில் தமிழ் மொழியின் பெயர் இதோ!

Language Word for ‘தமிழ்’ Code
Afrikaans tamil af
Albanian tamil sq
Amharic ታሚልኛ am
Arabic التاميل ar
Armenian թամիլերեն hy
Azerbaijani Tamil az
Basque tamil eu
Belarusian тамільская be
Bengali তামিল bn
Bosnian Tamil bs
Bulgarian тамилски bg
Catalan tamil ca
cebCebuano Tamil nga
Chichewa Tamil ny
Chinese (Simplified) 泰米尔人 zh
Chinese (Traditional) 泰米爾人 zh-TW
Corsican Tamil co
Croatian tamilski hr
Czech tamil cs
Danish Tamil da
Dutch Tamil nl
English Tamil en
Esperanto tamila eo
Estonian tamil et
Filipino Tamil tl
Finnish tamil fi
French tamoul fr
Frisian tamil fy
Galician tamil gl
Georgian Tamil ka
German Tamilisch de
Greek Ταμίλ el
Gujarati તમિલ gu
Haitian Creole Tamil ht
Hausa Tamil ha
Hawaiian Tamil haw
Hebrew טמילית iw
Hindi तामिल hi
Hmong Tamil hmn
Hungarian tamil hu
Icelandic tamil is
Igbo Tamil ig
Indonesian Tamil id
Irish tamil ga
Italian Tamil it
Japanese タミル語 ja
Javanese Tamil jw
Kannada ತಮಿಳು kn
Kazakh Тамил kk
Khmer ភាសាតាមីល km
Korean 타밀 ko
Kurdish (Kurmanji) Tamil ku
Kyrgyz Tamil ky
Lao ທະມິນ lo
Latin Tamil la
Latvian Tamilu lv
Lithuanian tamilų lt
Luxembourgish Tamil lb
Macedonian Тамилските mk
Malagasy Tamil mg
Malay Tamil ms
Malayalam തമിഴ് ml
Maltese tamil mt
Maori Tamil mi
Marathi तामिळ mr
Mongolian Тамил mn
Myanmar (Burmese) တမီး my
Nepali तामिल ne
Norwegian Tamil no
Pashto تامیل ps
Persian تامیل fa
Polish Tamil pl
Portuguese tâmil pt
Punjabi ਤਾਮਿਲ pa
Romanian tamilă ro
Russian тамильский ru
Samoan Tamil sm
Scots Gaelic Tamil gd
Serbian тамилски sr
Sesotho Tamil st
Shona Tamil sn
Sindhi تامل sd
Sinhala දෙමළ si
Slovak tamil sk
Slovenian tamil sl
Somali Tamil so
Spanish Tamil es
Sundanese Tamil su
Swahili Tamil sw
Swedish Tamil sv
Tajik тамилӣ tg
Tamil தமிழ் ta
Telugu తమిళ te
Thai มิลักขะ th
Turkish Tamilce tr
Ukrainian тамільська uk
Urdu تمل ur
Uzbek Tamil uz
Vietnamese Tamil vi
Welsh tamil cy
Xhosa Tamil xh
Yiddish טאַמיל yi
Yoruba Tamil yo
Zulu Tamil zu

இதன் நிரல் இங்க்கே:

காதல் -> தவம் ?

எப்படி “காதல்” என்ற சொல்லை, ஓர் எழுத்து மாற்றத்தினால் மட்டுமே, “தவம்” என்று மாற்றுவது ?

காதல்
கானல்
காறல்
கால்
காழ்
சீழ்
சீவ
சீவம்
சைவம்
தவம்

இதனை எப்படி கண்டடைந்தோம் ?. இதனை எப்படி கணினிமயமாக்கலாம் ?

விரைவில்.

திருத்த திருத்த … பிழைகள் ஒழிந்திட – spellchecker

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

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

திருத்தம்

 

“தமிழ் திருத்தி” என்ற பெயரில் இந்த (web-based) வலை வழி இடைமுகம் காணலாம் [படம் 1].

தமிழ் திருத்தியில் “பளம்” என்றும் மற்ற இரண்டு சொற்களை (“காதள்”, “எலிதில்”) உள்ளீடு செய்து, சறிபார்க்க சொல்லலாம்.

விடைகளும் மாற்றங்களும் இங்கே! தவறான சொற்கள் சிகப்பு நிர கோட்டில் சுட்டி காட்டப்படும். இதனை விரைவில் open-tamil-இல் காணலாம்.

spell-checker-mayangoli-cases

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

 

spell-checker-mayangoli-replace-1

படம் 2: முதல் சொல் மாற்றம் பழம், கனி

spell-checker-mayangoli-replace-2

படம் 3: இரண்டாம் சொல் “காதல்”

spell-checker-mayangoli-replace-3

படம் 4: மூன்றாம் சொல் “எளிதில்”

மாலை பொழுதின் மயக்கமென்ன

img_2450-e1509836851566.jpg

படம்: ஜூலை மலர், ஆண்டிற்கு ஒருமுறை மலரும். உபாயம், எனது தந்தை, வேளாண் வல்லுநர், திரு. அண்ணாமலை.

“தமிழ் தெரியுமா?” என்று நிறையபேர் ஒருவரை கேட்பது, இணையத்தின் தூரத்தில்,  பழக்கமான நாம் பார்க்கும் ஒரு விஷயம். காரணம் அடிக்கடி சிலரது சொற்களில் தலையெடுக்கும் சொற்பிழை. இவற்றை தவிர்க்க அவர்களுக்கு தேவை, பிழைகளை தடுக்கும்/திருத்தும் சொல்திருத்தி – spell checker – மூலம் ஒரு கட்டுரையை சோதித்தால். பல ஆண்டுகள் தமிழ் பயின்ற பொலிவு லேசுலே நமக்கும் கிடைக்கும். இந்த கட்டுரையும் அப்படி ஒரு (வளர்ச்சி நிலையில் உள்ள சொற்பிழை திருத்தியின் வாயில் சோதிக்கப்பட்டே பரிசுரம் செய்யப்பட்டது).

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

  • , , வரிசை.
  • , வரிசை.
  • , , வரிசை.
  • , , வரிசை.

சொல்திருத்தியில் கணினி நிரல் செய்யவேண்டியது இதுவே:

  1. உள்ளீடு கொடுக்கபட்ட சொல் சரியானதா, அல்லது தவறானதா ?
  2. தவறான சொல் என்ற பட்சத்தில் அதன் மாற்றங்கள் என்னென்ன ?

முதல் படியை எளிதாக ஒரு கையகராதியை கொண்டு செயல்படுத்தலாம். இதனை ஓபன்-தமிழ் (open-tamil) solthiruthi தொகுப்பில் Tamil VU மின் அகராதியை கொண்டு செயல்படுத்தியுள்ளோம். சரியான சொற்கள், அதாவது வேர் எடுத்த, புணர்ச்சி மற்றும் சாந்தி பிரிக்கப்பட்ட சொற்கள் அனைத்தும்  சராசரி மின்அகராதியில் காணலாம். இதுவே எளிதான படி.

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

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

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

இதனை கொண்டு அணைத்து மயங்கொலி பிழைகளை திருத்தும் ஒரு தன்மை கொண்ட சொல்திருத்தியை உருவாக்கலாம். உதாரணம்,

வளர்ச்சி நிலையில் உள்ள, தற்போது மென்பொருள் வடிவமைப்பில் உள்ள சொல்திருத்தி ஓபன்-தமிழ் தொகுப்பில் காணலாம்: [எச்சரிக்கை: இது இன்னும் பொது பயன்பாட்டிற்கு பொருத்தமானதல்ல]

muthu@brightone:~/devel/open-tamil$ ./spell.sh -i
>> பளம்
சொல் “பளம்” மாற்றங்கள்
(0) பம், (1) பளகு, (2) உளம், (3) பள், (4) அளம்
, (5) ஆளம், (6) பழம்
வணக்கம்!

-முத்து அண்ணாமலை

கலிஃபோர்னியா, அமெரிக்கா.

Aside

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.