Original Title: Sentiment analysis on students’ real-time feedback
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការវិភាគមនោសញ្ចេតនាលើមតិត្រឡប់របស់សិស្សក្នុងពេលជាក់ស្តែង

ចំណងជើងដើម៖ Sentiment analysis on students’ real-time feedback

អ្នកនិពន្ធ៖ Nabeela Altrabsheh (University of Portsmouth)

ឆ្នាំបោះពុម្ព៖ 2016

វិស័យសិក្សា៖ Educational Data Mining / Natural Language Processing

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

បញ្ហា (The Problem)៖ ការស្រាវជ្រាវនេះដោះស្រាយបញ្ហានៃការលំបាក និងការចំណាយពេលវេលាច្រើនក្នុងការវិភាគមតិត្រឡប់របស់សិស្ស (Student Feedback) ដោយផ្ទាល់ដៃនៅក្នុងថ្នាក់រៀន ដែលធ្វើឱ្យគ្រូបង្រៀនពិបាកក្នុងការឆ្លើយតបភ្លាមៗ។

វិធីសាស្ត្រ (The Methodology)៖ អ្នកនិពន្ធបានស្នើឡើងនូវប្រព័ន្ធមួយដែលប្រើប្រាស់ ការវិភាគមនោសញ្ចេតនា (Sentiment Analysis) និងបច្ចេកទេសរៀនរបស់ម៉ាស៊ីន (Machine Learning) ដើម្បីវិភាគ និងបង្ហាញលទ្ធផលមតិយោបល់របស់សិស្សជាលក្ខណៈទិន្នន័យរូបភាព។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Complement Naive Bayes (CNB)
ក្បួនដោះស្រាយ Complement Naive Bayes
មានសមត្ថភាពខ្ពស់ក្នុងការដោះស្រាយជាមួយសំណុំទិន្នន័យមិនមានតុល្យភាព (Unbalanced Datasets) ជាពិសេសនៅពេលមានថ្នាក់ 'អព្យាក្រឹត' (Neutral class) ច្រើន ឬតិចពេក។ អាចមានភាពស្មុគស្មាញបន្តិចជាង Naive Bayes ធម្មតា ហើយមិនសូវមានការប្រើប្រាស់ទូលំទូលាយនៅក្នុងការស្រាវជ្រាវកន្លងមក។ ជាម៉ូដែលដែលល្អបំផុតសម្រាប់ការរកឃើញអារម្មណ៍ (Emotion) និងការចំអក (Sarcasm) ដោយមានអត្រា Recall ខ្ពស់បំផុត ៦៣% សម្រាប់ការចំអក។
Support Vector Machine (SVM - Linear Kernel)
ក្បួនដោះស្រាយ Support Vector Machine (ប្រភេទ Linear)
ផ្តល់នូវភាពត្រឹមត្រូវខ្ពស់បំផុត (Highest Accuracy) សម្រាប់ការបែងចែកប៉ូលអារម្មណ៍ (Polarity) ទូទៅ (វិជ្ជមាន/អវិជ្ជមាន)។ មានដំណើរការមិនល្អក្នុងការរកឃើញការចំអក (Sarcasm) និងមានប្រសិទ្ធភាពទាបនៅពេលបញ្ចូលថ្នាក់ 'អព្យាក្រឹត' ទៅក្នុងម៉ូដែល។ ទទួលបានភាពត្រឹមត្រូវ (Accuracy) រហូតដល់ ៩៤% សម្រាប់ការរកឃើញប៉ូលអារម្មណ៍ ដោយមិនរាប់បញ្ចូលថ្នាក់អព្យាក្រឹត។
Maximum Entropy (ME)
ក្បួនដោះស្រាយ Maximum Entropy
មិនសន្មតថាមានទំនាក់ទំនងរវាងលក្ខណៈពិសេស (Independence assumption) ដូច Naive Bayes ទេ ដែលធ្វើឱ្យវាដំណើរការល្អលើការបញ្ចូលគ្នានៃពាក្យ។ ត្រូវការពេលវេលា និងធនធានច្រើនក្នុងការបង្វឹក (Training) ជាងពពួក Naive Bayes ។ ទទួលបានលទ្ធផលល្អបំផុតសម្រាប់ dataset ដែលមាន ៣ ថ្នាក់ (3-Class dataset) ក្នុងការរកឃើញអារម្មណ៍។
Preprocessing Levels (Low vs High)
កម្រិតនៃការកែច្នៃទិន្នន័យ (ទាប ធៀបនឹង ខ្ពស់)
ការកែច្នៃកម្រិតទាប (Low preprocessing) រក្សាទុកព័ត៌មានសំខាន់ៗដូចជា សញ្ញាឧទាន ឬ Hashtags ដែលមានប្រយោជន៍សម្រាប់អារម្មណ៍។ ការកែច្នៃកម្រិតខ្ពស់ (High preprocessing) អាចបាត់បង់អត្ថន័យមួយចំនួនដែលលាក់នៅក្នុងការប្រើប្រាស់សញ្ញា ឬពាក្យកាត់។ ការកែច្នៃកម្រិតទាប (Low Level) ផ្តល់លទ្ធផលល្អប្រសើរជាងសម្រាប់ការរកឃើញអារម្មណ៍ និងការចំអក។

ការចំណាយលើធនធាន (Resource Cost)៖ ការសិក្សានេះប្រើប្រាស់ធនធានកុំព្យូទ័រទូទៅ ដោយមិនតម្រូវឱ្យមានឧបករណ៍ពិសេសថ្លៃៗនោះទេ ប៉ុន្តែទាមទារការរៀបចំទិន្នន័យដោយដៃ។

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

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

ការសិក្សានេះត្រូវបានធ្វើឡើងនៅចក្រភពអង់គ្លេស (University of Portsmouth) និងប្រទេសហ្ស៊កដានី ដោយប្រើប្រាស់ភាសាអង់គ្លេសជាគោល។ ទិន្នន័យភាគច្រើនបានមកពីនិស្សិតផ្នែកវិទ្យាសាស្ត្រកុំព្យូទ័រ ដែលអាចមានភាពស្ទាត់ជំនាញបច្ចេកវិទ្យាជាងនិស្សិតដទៃ។ សម្រាប់កម្ពុជា នេះជាបញ្ហាប្រឈមព្រោះការបញ្ចេញមតិភាគច្រើនអាចជាភាសាខ្មែរ ឬខ្មែរលាយអង់គ្លេស (Code-switching) ដែលត្រូវការការកែច្នៃខុសគ្នា។

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

វិធីសាស្ត្រនេះមានប្រយោជន៍ខ្លាំងសម្រាប់កម្ពុជា ក្នុងការធ្វើទំនើបកម្មប្រព័ន្ធអប់រំ ប៉ុន្តែត្រូវការការសម្របសម្រួលលើផ្នែកភាសា។

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

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះ NLP និង Python/R: ចាប់ផ្តើមសិក្សាពីបណ្ណាល័យសំខាន់ៗដូចជា (Scikit-learn) ក្នុង Python ឬកញ្ចប់ Text Mining ក្នុង R ដើម្បីយល់ពីការបម្លែងអត្ថបទទៅជាទិន្នន័យ។
  2. ការប្រមូលទិន្នន័យក្នុងបរិបទកម្ពុជា: ដោយសារ Twitter មិនសូវពេញនិយមសម្រាប់សិស្សខ្មែរ គួរព្យាយាមប្រមូលទិន្នន័យពីក្រុម Telegram ឬ Facebook Messenger របស់ថ្នាក់រៀន ដោយសុំការអនុញ្ញាតត្រឹមត្រូវ។
  3. ការកែច្នៃទិន្នន័យភាសាខ្មែរ (Khmer Text Preprocessing): សិក្សាពីការកាត់ពាក្យខ្មែរ (Word Segmentation) ដោយប្រើឧបករណ៍ដូចជា (KhmerCut) ឬ (KyTea) ព្រោះភាសាខ្មែរមិនមានដកឃ្លារវាងពាក្យដូចភាសាអង់គ្លេស។
  4. ការពិសោធន៍ជាមួយ Complement Naive Bayes: អនុវត្តក្បួនដោះស្រាយ (CNB) លើទិន្នន័យដែលប្រមូលបាន ព្រោះវាមានប្រសិទ្ធភាពលើទិន្នន័យមិនមានតុល្យភាព (Imbalanced Data) ដែលតែងតែជួបប្រទះក្នុងការស្រាវជ្រាវជាក់ស្តែង។
  5. ការបង្កើតប្រព័ន្ធបង្ហាញទិន្នន័យ (Visualization): បង្កើត Dashboard សាមញ្ញដោយប្រើ (Matplotlib) ឬ (Tableau) ដើម្បីបង្ហាញលទ្ធផលវិភាគទៅកាន់គ្រូបង្រៀន និងសាកល្បងសួរមតិយោបល់ពួកគេ។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Complement Naive Bayes (CNB) CNB គឺជាប្រភេទមួយនៃក្បួនដោះស្រាយ Naive Bayes ដែលត្រូវបានកែសម្រួលដើម្បីដោះស្រាយបញ្ហាទិន្នន័យមិនស្មើគ្នា (Unbalanced Data)។ ជំនួសឱ្យការគណនាប្រូបាប៊ីលីតេនៃថ្នាក់មួយ (Class) ដោយផ្ទាល់ វាគណនាដោយផ្អែកលើទិន្នន័យនៃថ្នាក់ផ្សេងៗទៀតទាំងអស់ដែលមិនមែនជាថ្នាក់នោះ។ ដូចជាការទាយថាផ្លែឈើនេះជាអ្វី ដោយផ្អែកលើការដឹងថាវាមិនមែនជាចេក មិនមែនជាក្រូច និងមិនមែនជាទំពាំងបាយជូរ ជាជាងការស្គាល់វាដោយផ្ទាល់។
Sentiment Analysis គឺជាដំណើរការប្រើប្រាស់កុំព្យូទ័រដើម្បីកំណត់ និងចាត់ថ្នាក់មតិយោបល់ដែលមាននៅក្នុងអត្ថបទ ថាជាវិជ្ជមាន អវិជ្ជមាន ឬអព្យាក្រឹត។ វាជួយឱ្យយើងយល់ពីអារម្មណ៍របស់អ្នកសរសេរតាមរយៈអត្ថបទដែលពួកគេបានសរសេរ។ ដូចជាម៉ាស៊ីនមួយដែលអាចអានសាររាប់ពាន់ ហើយប្រាប់យើងភ្លាមៗថា តើគេកំពុងសរសើរ ឬរិះគន់។
N-grams គឺជាបច្ចេកទេសក្នុងការពុះបំបែកអត្ថបទទៅជាបំណែកតូចៗដែលមានចំនួន N ពាក្យជាប់គ្នា។ ឧទាហរណ៍ Unigrams គឺមួយពាក្យ (N=1), Bigrams គឺពីរពាក្យជាប់គ្នា (N=2)។ វាជួយឱ្យកុំព្យូទ័រចាប់យកអត្ថន័យនៃឃ្លាបានល្អជាងការពឹងផ្អែកលើពាក្យតែមួយ។ ដូចជាការផ្គុំរូបភាព (Jigsaw) ដោយចាប់ផ្តើមមើលពីរបីដុំដែលនៅជាប់គ្នា ដើម្បីយល់ន័យរូបភាពធំ ជាជាងមើលមួយដុំៗដាច់ដោយឡែក។
Preprocessing គឺជាជំហាននៃការរៀបចំ និងសម្អាតទិន្នន័យឆៅ (Raw Data) មុនពេលយកទៅវិភាគ។ ក្នុងអត្ថបទ វារួមបញ្ចូលការលុបសញ្ញា លុបពាក្យដែលមិនសំខាន់ (Stop words) ឬការបម្លែងអក្សរទៅជាអក្សរតូចទាំងអស់ ដើម្បីឱ្យកុំព្យូទ័រងាយស្រួលធ្វើការ។ ដូចជាការលាងបន្លែ និងចិតសំបកចេញឱ្យស្អាត មុនពេលយកទៅចម្អិនម្ហូប។
Feature Selection គឺជាដំណើរការជ្រើសរើសយកតែព័ត៌មាន ឬលក្ខណៈពិសេសដែលសំខាន់បំផុតពីទិន្នន័យ ដើម្បីយកទៅបង្វឹកម៉ូដែលកុំព្យូទ័រ។ ការធ្វើបែបនេះជួយកាត់បន្ថយភាពស្មុគស្មាញ និងធ្វើឱ្យម៉ូដែលដំណើរការលឿនជាងមុន និងមានប្រសិទ្ធភាពជាងមុន។ ដូចជាពេលយើងសង្ខេបមេរៀន ដោយជ្រើសរើសយកតែចំណុចសំខាន់ៗមកចាំ ដើម្បីត្រៀមប្រឡង មិនមែនទន្ទេញទាំងសៀវភៅទេ។
Support Vector Machine (SVM) គឺជាក្បួនដោះស្រាយសម្រាប់ចាត់ថ្នាក់ទិន្នន័យ ដោយព្យាយាមរកខ្សែបន្ទាត់ ឬប្លង់ (Hyperplane) ដែលបែងចែកក្រុមទិន្នន័យពីរដាច់ពីគ្នាបានច្បាស់បំផុត។ វាមានប្រសិទ្ធភាពខ្ពស់ចំពោះទិន្នន័យដែលមានលក្ខណៈស្មុគស្មាញ។ ដូចជាការគូសបន្ទាត់មួយនៅលើដី ដើម្បីបែងចែកក្រុមសិស្សប្រុស និងសិស្សស្រីឱ្យដាច់ពីគ្នា។
Cross-validation គឺជាវិធីសាស្ត្រស្ថិតិសម្រាប់វាយតម្លៃប្រសិទ្ធភាពនៃម៉ូដែល ដោយបែងចែកទិន្នន័យជាច្រើនចំណែក ហើយធ្វើការសាកល្បងម្ដងហើយម្ដងទៀត ដើម្បីធានាថាម៉ូដែលនោះមិនដំណើរការល្អតែលើទិន្នន័យមួយដុំតូចនោះទេ។ ដូចជាការឱ្យសិស្សធ្វើលំហាត់សាកល្បងច្រើនប្រភេទផ្សេងៗគ្នា ដើម្បីប្រាកដថាគាត់ពិតជាចេះមេរៀននោះមែន មិនមែនគ្រាន់តែចាំលំហាត់តែមួយ។

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

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

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