បញ្ហា (The Problem)៖ ការសិក្សានេះដោះស្រាយបញ្ហានៃការវាយតម្លៃមតិសាធារណៈ (Sentiment Analysis) លើបណ្តាញសង្គម Twitter ទាក់ទងនឹងការលុបចោលមាត្រា ៣៧០ (Article 370) របស់រដ្ឋាភិបាលឥណ្ឌា ដោយប្រៀបធៀបប្រសិទ្ធភាពរវាងក្បួនដោះស្រាយរៀនរបស់ម៉ាស៊ីន (Machine Learning algorithms) ផ្សេងៗគ្នា។
វិធីសាស្ត្រ (The Methodology)៖ អ្នកស្រាវជ្រាវបានប្រមូលទិន្នន័យសារធ្វីតជាង ២ សែនសារ ហើយបានសម្អាតទុកត្រឹម ២៩.៧៣២ សារ ដើម្បីយកមកវិភាគមនោសញ្ចេតនាដោយប្រើវិធីសាស្ត្ររៀនរបស់ម៉ាស៊ីនចំនួន៧ប្រភេទខុសៗគ្នា។
លទ្ធផលសំខាន់ៗ (The Verdict)៖
| វិធីសាស្ត្រ (Method) | គុណសម្បត្តិ (Pros) | គុណវិបត្តិ (Cons) | លទ្ធផលគន្លឹះ (Key Result) |
|---|---|---|---|
| Random Forest Classifier ក្បួនដោះស្រាយចំណាត់ថ្នាក់ Random Forest (មានការត្រួតពិនិត្យ) |
មានភាពត្រឹមត្រូវខ្ពស់បំផុត និងកាត់បន្ថយបញ្ហា Overfitting បានយ៉ាងល្អដោយប្រើមែកធាងសម្រេចចិត្ត (Decision Trees) ច្រើនបញ្ចូលគ្នា។ | ទាមទារទិន្នន័យដែលបានបិទស្លាក (Labelled data) រួចជាស្រេចដើម្បីបង្ហាត់ម៉ូដែល និងត្រូវការពេលវេលាគណនាយូរជាងម៉ូដែលធម្មតា។ | ទទួលបានភាពត្រឹមត្រូវ (Accuracy) រហូតដល់ ៩៩% និង F1-Score ៩៩% ល្អជាងគេបំផុតក្នុងការសិក្សា។ |
| Support Vector Machine (SVM) ម៉ាស៊ីនវ៉ិចទ័រគាំទ្រ (មានការត្រួតពិនិត្យ) |
មានប្រសិទ្ធភាពខ្ពស់ក្នុងការស្វែងរកបន្ទាត់ព្រំដែនចំណាត់ថ្នាក់ (Decision boundary) និងផ្តល់ភាពត្រឹមត្រូវខ្ពស់ក្នុងការបែងចែកអារម្មណ៍វិជ្ជមាន និងអវិជ្ជមាន។ | ត្រូវការការកែសម្រួលប៉ារ៉ាម៉ែត្រកម្រិតខ្ពស់ (ដូចជា Cost និង Gamma) ច្រើនទើបទទួលបានលទ្ធផលល្អប្រសើរ។ | ទទួលបានភាពត្រឹមត្រូវ (Accuracy) ៩៨% និង F1-score ៩៨% ឈរនៅលេខរៀងទី២។ |
| TextBlob ក្បួនដោះស្រាយ TextBlob (ផ្អែកលើវចនានុក្រម គ្មានការត្រួតពិនិត្យ) |
មិនទាមទារទិន្នន័យដែលបានបិទស្លាកជាមុន (No labelled data needed) ងាយស្រួលក្នុងការទាញយកកម្រិតប៉ូលមនោសញ្ចេតនាអត្ថបទ។ | ពឹងផ្អែកខ្លាំងលើវចនានុក្រមពាក្យដែលមានស្រាប់ ដែលអាចឲ្យមានកំហុសនៅពេលជួបប្រទះពាក្យស្លែង ឬបរិបទស្មុគស្មាញ។ | ដំណើរការល្អជាងគេក្នុងចំណោមម៉ូដែលគ្មានការត្រួតពិនិត្យ ជាមួយភាពត្រឹមត្រូវ ៨៨% ។ |
| VADER Sentiment ឧបករណ៍វិភាគ VADER (គ្មានការត្រួតពិនិត្យ) |
ស័ក្តិសមបំផុតសម្រាប់វិភាគទិន្នន័យបណ្តាញសង្គម ព្រោះវាអាចយល់ពីកម្រិតមនោសញ្ចេតនា និងពាក្យដែលមានឥទ្ធិពលលើអារម្មណ៍បានល្អ។ | ទទួលបានអត្រាភាពត្រឹមត្រូវទាបបំផុតបើប្រៀបធៀបជាមួយ TextBlob ក្នុងការសិក្សានេះ ព្រោះវាស់វែងតែការប្រើប្រាស់ពាក្យសាមញ្ញ។ | ទទួលបានភាពត្រឹមត្រូវត្រឹមតែ ៦១% ប៉ុន្តែមានតម្លៃកោងនៃក្រាហ្វ AUC ដល់ទៅ ៨៣%។ |
ការចំណាយលើធនធាន (Resource Cost)៖ ទោះបីជាឯកសារមិនបានបញ្ជាក់លម្អិតពីតម្លៃចំណាយលើផ្នែករឹង (Hardware) ក៏ដោយ ការសិក្សានេះទាមទារនូវធនធានកម្មវិធី និងកម្លាំងម៉ាស៊ីនកុំព្យូទ័រល្មមសម្រាប់ការទាញយក និងសម្អាតទិន្នន័យចំនួនច្រើន។
ការសិក្សានេះប្រមូលទិន្នន័យផ្តាច់មុខពីបណ្តាញសង្គម Twitter ផ្តោតលើព្រឹត្តិការណ៍នយោបាយនៅប្រទេសឥណ្ឌា (ការលុបចោលមាត្រា ៣៧០) និងបានផាត់ចោលទិន្នន័យដែលមានមនោសញ្ចេតនាអព្យាក្រឹត (Neutral tweets)។ វាងាយនឹងមានភាពលម្អៀង (Bias) ព្រោះវាឆ្លុះបញ្ចាំងតែមតិរបស់អ្នកប្រើប្រាស់ Twitter ប៉ុណ្ណោះ មិនមែនជាមតិរបស់ប្រជាជនទូទៅនោះទេ។ សម្រាប់ប្រទេសកម្ពុជា នេះជាការក្រើនរំលឹកមួយថា ការវិភាគមតិសាធារណៈត្រូវប្រយ័ត្នចំពោះភាពលម្អៀងនៃប្រភពទិន្នន័យ (ឧ. ទិន្នន័យពី Facebook ឬ TikTok អាចមានលក្ខណៈតំណាងបានទូលំទូលាយជាង Twitter នៅកម្ពុជា)។
វិធីសាស្ត្រក្បួនដោះស្រាយរៀនរបស់ម៉ាស៊ីន (Machine Learning algorithms) ក្នុងការស្រាវជ្រាវនេះ មានសក្តានុពល និងអត្ថប្រយោជន៍យ៉ាងខ្លាំងសម្រាប់ការវិភាគមតិមហាជន ឬមនោសញ្ចេតនាអតិថិជននៅក្នុងបរិបទប្រទេសកម្ពុជា ប្រសិនបើអនុវត្តជាមួយភាសាខ្មែរបានត្រឹមត្រូវ។
សរុបមក ការសាងសង់វចនានុក្រមមនោសញ្ចេតនាភាសាខ្មែរ (Khmer Lexicon) ឲ្យបានរឹងមាំ និងការប្រើប្រាស់ម៉ូដែល Supervised Learning ដូចជា Random Forest នឹងក្លាយជាឧបករណ៍ដ៏មានឥទ្ធិពលសម្រាប់ការទាញយកទិន្នន័យស៊ីជម្រៅពីបណ្តាញសង្គមដើម្បីជំរុញការសម្រេចចិត្តនៅកម្ពុជា។
ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖
| ពាក្យបច្ចេកទេស | ការពន្យល់ជាខេមរភាសា (Khmer Explanation) | និយមន័យសាមញ្ញ (Simple Definition) |
|---|---|---|
| Sentiment Analysis | ជាដំណើរការនៃការប្រើប្រាស់បច្ចេកវិទ្យាដំណើរការភាសាធម្មជាតិ (NLP) ដើម្បីវិភាគ និងកំណត់អត្តសញ្ញាណអារម្មណ៍ ឬមតិយោបល់របស់មនុស្សនៅក្នុងអត្ថបទណាមួយ ថាតើវាមានលក្ខណៈវិជ្ជមាន អវិជ្ជមាន ឬអព្យាក្រឹត។ | ដូចជាអ្នកអានសំបុត្រមួយច្បាប់ ហើយអាចទាយដឹងភ្លាមៗថាអ្នកសរសេរកំពុងសប្បាយចិត្ត ខឹង ឬព្រងើយកន្តើយ។ |
| Supervised Machine Learning | ជាវិធីសាស្ត្របង្រៀនម៉ាស៊ីនកុំព្យូទ័រដោយប្រើប្រាស់ទិន្នន័យដែលគេបានបិទស្លាកចម្លើយត្រឹមត្រូវរួចជាស្រេច ដើម្បីឱ្យវាអាចរៀនពីគំរូនៃទិន្នន័យនោះ និងទស្សន៍ទាយលទ្ធផលសម្រាប់ទិន្នន័យថ្មីៗនៅពេលក្រោយ។ | ដូចជាគ្រូបង្រៀនសិស្សដោយបង្ហាញរូបភាពសត្វឆ្កែព្រមទាំងប្រាប់ថា "នេះគឺសត្វឆ្កែ" ធ្វើបែបនេះច្រំដែលៗរហូតដល់សិស្សអាចចំណាំសត្វឆ្កែបានដោយខ្លួនឯង។ |
| Unsupervised Machine Learning | ជាវិធីសាស្ត្រឱ្យម៉ាស៊ីនកុំព្យូទ័ររៀនស្វែងរកគំរូ ចង្កោម ឬកម្រិតអារម្មណ៍នៅក្នុងទិន្នន័យដោយខ្លួនឯង ដោយមិនចាំបាច់មានការបិទស្លាកប្រាប់ចម្លើយជាមុននោះទេ (ជាទូទៅក្នុងបរិបទនេះ គឺប្រើប្រាស់វចនានុក្រមពាក្យដែលមានស្រាប់)។ | ដូចជាការឱ្យក្មេងម្នាក់តម្រៀបដុំឡេហ្គោ (Lego) ជាក្រុមតាមពណ៌ និងរូបរាង ដោយមិនបានប្រាប់មុនថាពណ៌នីមួយៗមានឈ្មោះអ្វីនោះទេ។ |
| Random Forest | ជាក្បួនដោះស្រាយ (Algorithm) ដែលបង្កើតមែកធាងសម្រេចចិត្ត (Decision Trees) ជាច្រើនបញ្ចូលគ្នា រួចយកចម្លើយភាគច្រើនពីមែកធាងទាំងនោះមកធ្វើជាការសម្រេចចិត្តចុងក្រោយ ដើម្បីបញ្ចៀសការរៀនទន្ទេញ (Overfitting) និងបង្កើនភាពត្រឹមត្រូវ។ | ដូចជាការសួរបញ្ជាក់យោបល់ពីវេជ្ជបណ្ឌិត១០០នាក់ផ្សេងគ្នា រួចយកយោបល់ដែលត្រូវបានគាំទ្រច្រើនបំផុតមកធ្វើជារោគវិនិច្ឆ័យចុងក្រោយ ដើម្បីកុំឱ្យមានកំហុស។ |
| Support Vector Machine (SVM) | ជាក្បួនដោះស្រាយចំណាត់ថ្នាក់ទិន្នន័យ ដែលស្វែងរកគូសបន្ទាត់ ឬប្លង់ព្រំដែនដ៏ល្អបំផុតមួយ (Hyperplane) ដើម្បីខណ្ឌចែកប្រភេទចំណុចទិន្នន័យផ្សេងៗគ្នា (ឧ. វិជ្ជមាន និងអវិជ្ជមាន) ឱ្យនៅដាច់ពីគ្នាបានឆ្ងាយបំផុត។ | ដូចជាការសាងសង់របងមួយនៅចំកណ្តាលវាលស្មៅ ដើម្បីខណ្ឌចែកហ្វូងចៀម និងហ្វូងពពែឱ្យនៅដាច់ពីគ្នាបានល្អបំផុតដោយមិនឱ្យច្រឡំគ្នាចូលក្នុងហ្វូងខុស។ |
| Data Pre-processing | ជាជំហាននៃការសម្អាត និងរៀបចំទិន្នន័យឆៅ ដោយលុបចោលនូវព័ត៌មានមិនចាំបាច់ ឬរំខាន (ដូចជា URL, សញ្ញា #, សញ្ញា @ ឬសញ្ញាអារម្មណ៍) មុននឹងបញ្ជូនទៅឱ្យម៉ាស៊ីនវិភាគ។ | ដូចជាការលាងសម្អាត បកសំបក និងហាន់បន្លែសាច់ឱ្យរួចរាល់ មុននឹងយកវាទៅដាក់ចម្អិនក្នុងឆ្នាំង។ |
| Confusion Matrix | ជាតារាងម៉ាទ្រីសដែលគេប្រើសម្រាប់វាយតម្លៃសមត្ថភាពរបស់ម៉ូដែល ដោយបង្ហាញពីចំនួនដងដែលម៉ូដែលទាយត្រូវ និងទាយខុស ធៀបនឹងការពិតជាក់ស្តែង (រួមមាន True Positive, False Positive, True Negative, False Negative)។ | ដូចជាតារាងកត់ត្រាពិន្ទុប្រឡង ដែលបង្ហាញយ៉ាងច្បាស់ថាមានសំណួរណាខ្លះសិស្សឆ្លើយត្រូវ និងសំណួរណាខ្លះសិស្សឆ្លើយខុសធៀបនឹងកូនសោចម្លើយ។ |
| F1 score | ជាមាត្រដ្ឋានវាស់ស្ទង់ប្រសិទ្ធភាពរបស់ម៉ូដែល ដែលជាមធ្យមភាគរវាង Precision (ភាពសុក្រឹតនៅពេលទាយ) និង Recall (សមត្ថភាពក្នុងការរកឃើញ) ដែលស័ក្តិសមបំផុតសម្រាប់ប្រើប្រាស់លើសំណុំទិន្នន័យដែលមិនមានតុល្យភាព។ | ដូចជាការវាយតម្លៃអ្នកចាំទីបាល់ទាត់ ដោយបូកបញ្ចូលគ្នារវាង "ចំនួនបាល់ដែលគាត់ចាប់បាន" និង "កម្រិតដែលគាត់មិនសូវធ្វើឱ្យរបូតបាល់ចូលទី" ដើម្បីដឹងពីសមត្ថភាពរួមដ៏ពិតប្រាកដរបស់គាត់។ |
| Hyperparameter | ជាប៉ារ៉ាម៉ែត្រ ឬការកំណត់តម្លៃបឋម (Configuration values) ដែលអ្នកវិទ្យាសាស្ត្រទិន្នន័យត្រូវកំណត់ជាមុន មុនពេលចាប់ផ្តើមដំណើរការបង្ហាត់ម៉ូដែល ដើម្បីកែតម្រូវរចនាសម្ព័ន្ធ និងរបៀបរៀនរបស់ក្បួនដោះស្រាយនោះឱ្យបានល្អបំផុត។ | ដូចជាការរឹតបន្តឹង និងសារ៉េខ្សែហ្គីតាឱ្យត្រូវសម្លេង (Tuning) ជាមុន មុនពេលចាប់ផ្តើមលេងតន្ត្រី ដើម្បីធានាថាបទភ្លេងនឹងបន្លឺឡើងពិរោះរណ្តំល្អ។ |
អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖
ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖