คำไทย ยอดนิยม

sr
ติดตาม ผู้ติดตาม 
ติดต่อ

คำไทย ยอดนิยม

I have questions on Thai language like 'how many words are there?; 'how often are they used?'; 'do we write text books or children books using right words for readers by age? by location?' and so on...

I looked around on the Net for a while and decided to collect some data and to think of some experiments on Thai language. I have played around with dictionaries for a while. So I should start collecting words from one to ensure 'correct spelling and description'.

In its basic form, a dictionary is a list of pairs (mathematically, 'tuples') of {keyword, description}. For example: (From พจนานุกรมไทย ราชบัณฑิตยสถาน ๒๕๔๒)

Keyword:

กบฏ

Description:

กบฏ: [กะบด] ก. ประทุษร้ายต่อทางอาณาจักร, ทรยศ. น. การประทุษร้ายต่อทางอาณาจักร, ความทรยศ; ผู้ประทุษร้ายต่อทางอาณาจักร, ผู้ทรยศ, ขบถ ก็ว่า; (กฎ) ชื่อความผิดอาญาฐานกระทําความผิดต่อความมั่นคงของรัฐภายในราชอาณาจักร โดยใช้กําลังประทุษร้ายหรือขู่เข็ญว่าจะใช้กําลังประทุษร้ายเพื่อล้มล้างหรือเปลี่ยนแปลงรัฐธรรมนูญ หรือล้มล้างอํานาจนิติบัญญัติ อํานาจบริหาร หรืออํานาจตุลาการ หรือแบ่งแยกราชอาณาจักร หรือยึดอํานาจปกครองในส่วนใดส่วนหนึ่งแห่งราชอาณาจักร เรียกว่า ความผิดฐานเป็นกบฏ. (ส. กปฏ ว่า ความคด, ความโกง).

So a list of keywords are all words in (mathematically, the 'domain' of) a language. We should use only use words from the list of keywords to make description of each keyword. Here, we have a situation where we can describe any (key)word using some other (key)words (mathematically, a candidate for [Gödel's] "completeness theorem"). If we count the number of times we use in description (ie. frequencies of words we use), what can we learn?

Thinking about this was getting nowhere. So, I got down to a digital copy of the Royal Institue Thai Dictionary BE2542 (RITD), and used 'sed' (stream editor) to pull out 2 lists: a list of all keywords and a list of all descriptions. I then used SWATH to break the description into another list of words (used in description). I then 'sort'ed this list (and it is interesting to learn more about unicode and Thai collating sequence by the number given to each character in the Thai alphabet). After that I ran a 'uniq -c' to count words' occurences and sorted the word count in descending order of their count.

Now I have a list of Thai words and how often they are used (to describe other words in a dictionary). The list says: 25,700+ distinct Thai (key)words are used 786,000+ times in RITD. Some 7,800 words are used once. 17,000 words are used twice or more, 13,800 words thrice or more, 11,400 words 4-times or more, 9,700 words 5-times or more, 6,100 words 10-times or more, 3,700 words 20-times or more, less than 1,100 words are used 100 time or more. And 200 words are used 500 times are more. 100 words are used more than a 1,000 times.

What is the top hit word that is most used? It should not come as a surprise, the word ที่ comes first at 17,699 times. And in second place the word เช่น at 15,362 times. In third place, เป็น at 13,041, forth place, มี at 11,9010 and fifth is หรือ at 10657. It may be said that about 100 words are used 1,000 times or more. And about 1,100 words are used 100 times or more.

Would these words be enough to learn to be able to communicate in Thai? Should Grade 1 (first year primary school) children master these 1,100 words? Should children books are written using just these 1,100 words? ...

Perhaps, You can help me answer these questions. Share your tought/comment, please ;-)

บันทึกนี้เขียนที่ GotoKnow โดย  ใน ทำไทยทำ



ความเห็น (5)

ว้าว... คุณ Sr ใช้เครื่องมือ "old school" จริงๆ ครับ ส่วนผม "born yesterday" เคยเอา data จาก GotoKnow มาวิเคราะห์ (โดยเขียน Java เพื่อตัดคำด้วย ICU แล้ววิเคราะห์ด้วย Hadoop) ได้ผลลัพธ์มาคล้ายๆ กันผมก็จำไม่ได้แล้ว (เพราะทำเล่นๆ) ที่จำได้แน่ๆ คือคำที่ frequency มาอันดับหนึ่งคือ "ที่" ครับ

เขียนเมื่อ 

I am not really a crack programmer and I work with Linux a lot. Using some 'coreutils' in linux is the way I usually work things out. The whole process is done with little programming -- only 5 lines of 'sed' script to split words into one word per line and 5 lines of shell script to run processes. That's hard enough work for me. (I played hide-and-seek with dinosaurs when I was a kid ;-)

Glad to hear you have the same interest at one stage. I am looking to take this work further. Like pushing lists into Thai language lessons in primary schools; evaluating children books; testing 'completeness of dictionaries' (all words defined by words in dictionary; are there words used but not defined? are there words defined but not used?...) More interesting push would be to move learning Thai language into a sort of "analytical and/or computational Thai" and have children learn not just to remember, spell and speak words but also to compute "shortest phrase/sentence" that clear express certain semantics; how to reduce ambiguity; how to write poems... You know that kind of learning that we must use not only memorization but also analysis and computation.

Whoa! The ball is rolled out, would someone pick it up and toss it along -- so we can play a word game!

ผมเรียนจบมาก็ตั้งใจจะทำอาชีพ "researcher" โดยเฉพาะเรื่อง Natural Language Processing สำหรับภาษาไทยนี่ผมเคยสนใจมาก แต่อาชีพผมตอนนี้ไม่ใช่แล้วครับ ตอนนี้สนุกกับการเขียนโปรแกรมไปเรื่อยๆ มากกว่าครับ เดี๋ยวนึกสนุกเมื่อไหร่อาจจะปัดฝุ่นเล่น NLP สักทีครับ

เขียนเมื่อ 

Dear : Let me encourage you to look at C3PO (of Star Wars). A vision of language robots (not necessary with human-like or 'popular' bodies, fills my thought a lot of time. I have a picture of public telephone booths without any phone, people can go in and say they want to call home or a friend and the booths say "I will try to connect ... for you. Would you like some music or refreshment? .... I've got your ... on the line now. The charge will be calculated and reducted from your credit... at the end of call. Go ahead. Beep..... ;-)

ตอนนี้ผมก็ "OK, Google. Call Jan." เวลาผมใช้ Nexus 4 (upgraded to 4.4 KitKat) โทรหา อ.จัน ได้แล้วครับ

เมื่อไหร่เราได้ "อับดุลเอ้ย...." (เอ้ย) "โทรหาจันที" (จ้า) คงจะสนุกมาก