Original Title: Text Classification: Naïve Bayes Classifier with Sentiment Lexicon
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការចាត់ថ្នាក់អត្ថបទ៖ ក្បួនដោះស្រាយ Naïve Bayes ជាមួយវចនានុក្រមមនោសញ្ចេតនា

ចំណងជើងដើម៖ Text Classification: Naïve Bayes Classifier with Sentiment Lexicon

អ្នកនិពន្ធ៖ Cong-Cuong Le (Charles Sturt University), P.W.C. Prasad (Charles Sturt University)

ឆ្នាំបោះពុម្ព៖ 2019 IAENG International Journal of Computer Science

វិស័យសិក្សា៖ Computer Science

១. សេចក្តីសង្ខេបប្រតិបត្តិ (Executive Summary)

បញ្ហា (The Problem)៖ ការស្រាវជ្រាវនេះដោះស្រាយបញ្ហាខ្វះខាតវចនានុក្រមមនោសញ្ចេតនាសម្រាប់ភាសាវៀតណាម និងការចំណាយខ្ពស់ក្នុងការបង្កើតទិន្នន័យបណ្តុះបណ្តាលសម្រាប់ការចាត់ថ្នាក់អត្ថបទ។

វិធីសាស្ត្រ (The Methodology)៖ អ្នកនិពន្ធបានស្នើវិធីសាស្ត្រមួយដែលរួមបញ្ចូលគ្នារវាងការបង្កើតវចនានុក្រមមនោសញ្ចេតនាដោយស្វ័យប្រវត្តិ និងការប្រើប្រាស់ក្បួនដោះស្រាយម៉ាស៊ីនរៀន ដើម្បីចាត់ថ្នាក់ឯកសារ។

លទ្ធផលសំខាន់ៗ (The Verdict)៖

២. ការវិភាគលើប្រសិទ្ធភាព និងដែនកំណត់ (Performance & Constraints)

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Proposed Method (Naïve Bayes + Sentiment Lexicon)
វិធីសាស្ត្រដែលបានស្នើឡើង (រួមបញ្ចូល Naïve Bayes ជាមួយវចនានុក្រមមនោសញ្ចេតនា)
មានប្រសិទ្ធភាពខ្ពស់បំផុត និងកាត់បន្ថយពេលវេលាបណ្តុះបណ្តាលយ៉ាងខ្លាំង ដោយគ្រាន់តែប្រើប្រាស់ឯកសារគំរូតិចតួច (Training data)។ នៅតែមានបញ្ចូលពាក្យដែលមិនចាំបាច់ (Redundant words) មួយចំនួននៅក្នុងវចនានុក្រម ដែលទាមទារការត្រួតពិនិត្យបន្ថែមពីអ្នកជំនាញ។ ទទួលបានភាពត្រឹមត្រូវ (Accuracy) ៩៨.២% ដែលជាលទ្ធផលខ្ពស់បំផុតក្នុងការពិសោធន៍។
Traditional Naïve Bayes
វិធីសាស្ត្រ Naïve Bayes តាមបែបប្រពៃណី
ជាក្បួនដោះស្រាយដែលមានល្បឿនលឿន និងពេញនិយមសម្រាប់ការចាត់ថ្នាក់អត្ថបទ។ ទាមទារទិន្នន័យបណ្តុះបណ្តាលឯករាជ្យច្រើន ហើយមិនមានការសម្អាតទិន្នន័យល្អដូចវិធីសាស្ត្រដែលបានស្នើឡើង។ ទទួលបានភាពត្រឹមត្រូវ ៩៦.១%។
Lexical Method
វិធីសាស្ត្រផ្អែកលើវចនានុក្រមសុទ្ធសាធ
ងាយស្រួលក្នុងការអនុវត្តដោយផ្អែកលើច្បាប់នៃការរាប់ពាក្យវិជ្ជមាន ឬអវិជ្ជមាន។ មានកម្រិតភាពត្រឹមត្រូវទាបជាងគេ ដោយសារមិនអាចវិភាគបរិបទនៃប្រយោគបានល្អ និងពឹងផ្អែកខ្លាំងលើការវិនិច្ឆ័យរបស់មនុស្ស។ ទទួលបានភាពត្រឹមត្រូវត្រឹមតែ ៨៧.៣%។

ការចំណាយលើធនធាន (Resource Cost)៖ ការសិក្សានេះបង្ហាញថា ការចំណាយលើធនធានមានកម្រិតទាប ជាពិសេសគឺការកាត់បន្ថយតម្រូវការទិន្នន័យបណ្តុះបណ្តាលដ៏ច្រើនសន្ធឹកសន្ធាប់ ដែលជាធម្មតាមានតម្លៃថ្លៃ និងកម្រ។

៣. ការពិនិត្យសម្រាប់បរិបទកម្ពុជា/អាស៊ីអាគ្នេយ៍

ភាពលំអៀងនៃទិន្នន័យ (Data Bias)៖

ការសិក្សានេះត្រូវបានធ្វើឡើងដោយប្រើប្រាស់ទិន្នន័យភាសាវៀតណាមពីគេហទំព័រព័ត៌មាននយោបាយ និងសង្គមចំនួន ៥ (ដូចជា nguyenphutrong.org និង viettan.org)។ សម្រាប់កម្ពុជា នេះគឺជាចំណុចសំខាន់ព្រោះភាសាខ្មែរ និងវៀតណាមមានលក្ខណៈស្រដៀងគ្នាត្រង់ថាជាភាសាដែលមានធនធានតិច (Low-resource language) និងខ្វះខាតវចនានុក្រមមនោសញ្ចេតនា (Sentiment Lexicon) ស្តង់ដារ។

លទ្ធភាពនៃការអនុវត្ត (Applicability)៖

វិធីសាស្ត្រនេះមានប្រយោជន៍យ៉ាងខ្លាំងសម្រាប់កម្ពុជា ជាពិសេសក្នុងការអភិវឌ្ឍប្រព័ន្ធវិភាគអត្ថបទភាសាខ្មែរដោយមិនចាំបាច់ចំណាយពេលបង្កើតទិន្នន័យបណ្តុះបណ្តាលរាប់ម៉ឺនឯកសារ។

សរុបមក នេះគឺជាគំរូដ៏ល្អសម្រាប់ដោះស្រាយបញ្ហាកង្វះទិន្នន័យក្នុងវិស័យ NLP នៅកម្ពុជា ដោយផ្លាស់ប្តូរពីការប្រើប្រាស់ទិន្នន័យច្រើន មកប្រើការបង្កើតវចនានុក្រមស្វ័យប្រវត្តិដែលមានប្រសិទ្ធភាពជាង។

៤. ផែនការសកម្មភាពសម្រាប់និស្សិត (Actionable Roadmap)

ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖

  1. សិក្សាពីមូលដ្ឋានគ្រឹះនៃក្បួនដោះស្រាយ: និស្សិតគួរចាប់ផ្តើមដោយការយល់ដឹងស៊ីជម្រៅអំពីទ្រឹស្តីប្រូបាប៊ីលីតេ (Probability Theory) និងរបៀបដែលក្បួនដោះស្រាយ (Naïve Bayes) ដំណើរការក្នុងការចាត់ថ្នាក់អត្ថបទ។
  2. ការប្រមូល និងរៀបចំទិន្នន័យភាសាខ្មែរ: ប្រមូលអត្ថបទព័ត៌មាន ឬមតិយោបល់ជាភាសាខ្មែរ ហើយអនុវត្តការបំបែកពាក្យ (Tokenization) ដោយប្រើឧបករណ៍ដូចជា (KhmerCut) ឬបណ្ណាល័យដែលមានស្រាប់ ដើម្បីសម្អាត Stop-words ។
  3. ការបង្កើតវចនានុក្រមមនោសញ្ចេតនា (Lexicon Construction): អនុវត្តវិធីសាស្ត្រ TF-IDF ដូចក្នុងឯកសារយោង ដើម្បីគណនាទម្ងន់ពាក្យ (Word Weight) និងបង្កើតវចនានុក្រមមនោសញ្ចេតនាពីឯកសារគំរូ។
  4. ការពិសោធន៍ និងវាយតម្លៃ: ប្រើប្រាស់ភាសា (Python) ជាមួយបណ្ណាល័យ (Scikit-learn) ដើម្បីសរសេរកូដ Naïve Bayes ដោយបញ្ចូលវចនានុក្រមដែលបានបង្កើត និងធ្វើការប្រៀបធៀបលទ្ធផលភាពត្រឹមត្រូវ (Accuracy/Precision/Recall)។

៥. វាក្យសព្ទបច្ចេកទេស (Technical Glossary)

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Sentiment Lexicon គឺជាវចនានុក្រមពិសេសដែលមិនត្រឹមតែផ្ទុកពាក្យប៉ុណ្ណោះទេ ប៉ុន្តែថែមទាំងភ្ជាប់ពាក្យនីមួយៗទៅនឹងពិន្ទុមនោសញ្ចេតនា (វិជ្ជមាន ឬអវិជ្ជមាន)។ វាត្រូវបានប្រើដើម្បីបង្រៀនកុំព្យូទ័រឱ្យចេះវាយតម្លៃអារម្មណ៍នៃអត្ថបទដោយផ្អែកលើពាក្យដែលមាននៅក្នុងនោះ។ ដូចជាបញ្ជីតម្លៃទំនិញ តែជំនួសឱ្យតម្លៃលុយ គឺគេដាក់ពិន្ទុថាពាក្យហ្នឹង 'ល្អ' ឬ 'អាក្រក់'។
Naïve Bayes Classifier ជាក្បួនដោះស្រាយម៉ាស៊ីនរៀន (Machine Learning) ផ្អែកលើទ្រឹស្តីប្រូបាប៊ីលីតេ ដែលប្រើសម្រាប់ចាត់ថ្នាក់ទិន្នន័យ។ វាត្រូវបានហៅថា 'Naïve' (ឆោតល្ងង់) ព្រោះវាសន្មតថាពាក្យនីមួយៗក្នុងប្រយោគមិនមានទំនាក់ទំនងគ្នា ដែលជួយឱ្យការគណនាលឿនខ្លាំង។ ដូចជាការទាយថាផ្លែឈើមួយជាផ្លែអ្វី ដោយគ្រាន់តែមើលពណ៌ និងរូបរាងដាច់ដោយឡែកពីគ្នា ដោយមិនខ្វល់ថាវាដុះនៅណា។
TF-IDF (Term Frequency-Inverse Document Frequency) ជាវិធីសាស្ត្រគណិតវិទ្យាសម្រាប់វាស់វែងថាតើពាក្យមួយមានសារៈសំខាន់ប៉ុណ្ណាក្នុងឯកសារមួយ។ វាផ្តល់ពិន្ទុខ្ពស់ដល់ពាក្យដែលប្លែក (Unique) និងផ្តល់ពិន្ទុទាបដល់ពាក្យដែលប្រើញឹកញាប់ពេកក្នុងគ្រប់ឯកសារ (ដូចជាពាក្យ 'គឺ', 'នៃ')។ ដូចជាការស្វែងរកគ្រឿងផ្សំពិសេសក្នុងម្ហូប ដោយមិនរាប់បញ្ចូល អំបិល ឬស្ករ ដែលមានក្នុងគ្រប់ម្ហូប។
Bag-of-Words ជាបច្ចេកទេសបម្លែងអត្ថបទទៅជាទិន្នន័យលេខ ដោយគ្រាន់តែរាប់ចំនួនពាក្យដែលលេចឡើងក្នុងអត្ថបទនោះ ដោយមិនគិតពីលំដាប់លំដោយ ឬវេយ្យាករណ៍នៃពាក្យឡើយ។ ដូចជាការយកផ្ទះមួយមកវាយកម្ទេច ដើម្បីរាប់ចំនួនឥដ្ឋ ដោយមិនខ្វល់ថារូបរាងផ្ទះដើមយ៉ាងណា។
Tokenization គឺជាដំណើរការនៃការកាត់ ឬបំបែកអត្ថបទវែងៗឱ្យទៅជាពាក្យតូចៗ ឬឃ្លាដែលមានអត្ថន័យ (Tokens)។ សម្រាប់ភាសាដែលមិនមានដកឃ្លាដូចជា ខ្មែរ ឬវៀតណាម ដំណើរការនេះសំខាន់ណាស់ដើម្បីឱ្យកុំព្យូទ័រស្គាល់ពាក្យ។ ដូចជាការកាត់នំខេកមួយដុំធំ ឱ្យទៅជាចំណិតតូចៗដើម្បីងាយស្រួលញ៉ាំ (ឬវិភាគ)។
Stop-word សំដៅលើពាក្យដែលត្រូវបានប្រើប្រាស់ញឹកញាប់បំផុតនៅក្នុងភាសា (ដូចជា 'is', 'the' ក្នុងភាសាអង់គ្លេស ឬ 'គឺ', 'ដែល' ក្នុងភាសាខ្មែរ) ប៉ុន្តែមិនសូវផ្តល់អត្ថន័យសំខាន់ក្នុងការវិភាគ ទើបគេតែងតែលុបវាចោល។ ដូចជាការបកសំបកចេកចោល ដើម្បីយកតែសាច់ចេកមកប្រើប្រាស់។
Precision and Recall ជាខ្នាតរង្វាស់ពីរដែលប្រើដើម្បីវាយតម្លៃគុណភាពនៃម៉ាស៊ីនរៀន។ Precision វាស់ថាតើការព្យាករណ៍ត្រឹមត្រូវប៉ុន្មានភាគរយ ចំណែក Recall វាស់ថាតើម៉ាស៊ីនរកឃើញទិន្នន័យត្រឹមត្រូវចំនួនប៉ុន្មាននៃទិន្នន័យសរុប។ Precision គឺដូចជាការបាញ់ព្រួញឱ្យចំគោលដៅ ចំណែក Recall គឺដូចជាការរកឱ្យឃើញគោលដៅទាំងអស់ដែលមាន។

៦. ប្រធានបទពាក់ព័ន្ធ (Further Reading)

អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖

ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖