Original Title: SENTIMENT ANALYSIS USING MACHINE LEARNING: A COMPREHENSIVE REVIEW
Source: iaeme.com
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការវិភាគមនោសញ្ចេតនាដោយប្រើប្រាស់ការរៀនដោយម៉ាស៊ីន៖ ការត្រួតពិនិត្យយ៉ាងទូលំទូលាយ

ចំណងជើងដើម៖ SENTIMENT ANALYSIS USING MACHINE LEARNING: A COMPREHENSIVE REVIEW

អ្នកនិពន្ធ៖ Amit Taneja (UMB Bank, USA)

ឆ្នាំបោះពុម្ព៖ 2024, Journal of Advanced Research Engineering and Technology (JARET)

វិស័យសិក្សា៖ Natural Language Processing

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

បញ្ហា (The Problem)៖ អត្ថបទនេះដោះស្រាយបញ្ហានៃការទាញយក និងការបកស្រាយអារម្មណ៍ពីទិន្នន័យអត្ថបទដ៏ច្រើនសន្ធឹកសន្ធាប់ដោយស្វ័យប្រវត្តិ តាមរយៈការវាយតម្លៃលើប្រសិទ្ធភាពនៃក្បួនដោះស្រាយការរៀនដោយម៉ាស៊ីន (Machine Learning algorithms) ផ្សេងៗ។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះគឺជាការត្រួតពិនិត្យអក្សរសិល្ប៍យ៉ាងទូលំទូលាយ (Comprehensive Review) ដែលប្រៀបធៀបដំណើរការនៃម៉ូដែលផ្សេងៗគ្នាលើសំណុំទិន្នន័យគោល (Benchmark datasets)។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Support Vector Machines (SVM)
ម៉ាស៊ីនវ៉ិចទ័រគាំទ្រ (SVM)
មានដំណើរការល្អសម្រាប់ការចាត់ថ្នាក់មនោសញ្ចេតនាទូទៅ (Binary/Multi-class) និងអាចធ្វើការបានយ៉ាងល្អជាមួយបច្ចេកទេសទាញយកលក្ខណៈពិសេសដូចជា TF-IDF។ ជួបការលំបាកក្នុងការចាប់យកអត្ថន័យស្មុគស្មាញ និងរចនាសម្ព័ន្ធនៃប្រយោគវែងៗ បើប្រៀបធៀបទៅនឹងបច្ចេកទេសរៀនស៊ីជម្រៅ (Deep Learning)។ ទទួលបានភាពត្រឹមត្រូវ ៨២,៩% លើសំណុំទិន្នន័យ Pang និង ៨៥,៤% លើសំណុំទិន្នន័យ IMDb (Moraes)។
Random Forests
ក្បួនព្រៃចៃដន្យ (Random Forests)
អាចចាប់យកលំនាំទិន្នន័យស្មុគស្មាញ និងមានប្រសិទ្ធភាពក្នុងការដោះស្រាយជាមួយទិន្នន័យដែលមានសំឡេងរំខាន (Noisy data) តាមរយៈការរៀនជាក្រុម (Ensemble learning)។ ទោះជាមានភាពត្រឹមត្រូវខ្ពស់ជាងដើមឈើសម្រេចចិត្តទោល (Individual decision trees) ក៏ដោយ ក៏វានៅមានកម្រិតក្នុងការយល់ពីបរិបទភាសា។ សម្រេចបានភាពត្រឹមត្រូវ ៨១,៦% លើទិន្នន័យ Twitter ធៀបនឹង ៦៨,៤% នៃ Decision Trees (Ahmad)។
Convolutional Neural Networks (CNNs)
បណ្ដាញសរសៃប្រសាទសិប្បនិម្មិតកាឡៃ (CNNs)
ពូកែក្នុងការទាញយកព័ត៌មានអត្ថន័យ (Semantic information) និងលំនាំមូលដ្ឋានពីអត្ថបទដោយស្វ័យប្រវត្តិ។ ទាមទារបរិមាណទិន្នន័យហ្វឹកហាត់ដែលមានស្លាក (Labeled data) ច្រើន ដើម្បីទទួលបានលទ្ធផលល្អប្រសើរ។ ទទួលបានភាពត្រឹមត្រូវ ៨១,៥% លើសំណុំទិន្នន័យ Stanford Sentiment Treebank (Kim)។
Long Short-Term Memory (LSTMs)
បណ្តាញអង្គចងចាំរយៈពេលខ្លី-វែង (LSTMs)
មានសមត្ថភាពខ្ពស់ក្នុងការចងចាំព័ត៌មានពីមុនក្នុងប្រយោគវែងៗ និងដោះស្រាយបញ្ហា Vanishing gradients របស់ RNN ទូទៅ។ ដំណើរការហ្វឹកហាត់អាចមានភាពយឺតយ៉ាវ និងប្រើប្រាស់ធនធានច្រើនជាងក្បួនដោះស្រាយធម្មតា។ សម្រេចបានភាពត្រឹមត្រូវ ៨៩,៩% លើសំណុំទិន្នន័យការវាយតម្លៃផលិតផល Amazon (Graves)។
Bidirectional Encoder Representations from Transformers (BERT)
ម៉ូដែល Transformer (BERT)
មានសមត្ថភាពកំពូលក្នុងការចាប់យកបរិបទស៊ីជម្រៅនៃភាសា និងគាំទ្របច្ចេកទេស Transfer Learning សម្រាប់ការប្រើប្រាស់លើទិន្នន័យថ្មី។ មានទំហំធំខ្លាំង (ប៉ារ៉ាម៉ែត្ររាប់លាន) ដែលទាមទារថាមពលកុំព្យូទ័រ និងអង្គចងចាំដ៏ធំសម្បើមសម្រាប់ការហ្វឹកហាត់ និងការទាញសេចក្តីសន្និដ្ឋាន។ សម្រេចបានភាពត្រឹមត្រូវរហូតដល់ ៩៤,៩% លើសំណុំទិន្នន័យ SST-2 (Devlin) ដែលជាលទ្ធផលល្អដាច់គេ។

ការចំណាយលើធនធាន (Resource Cost)៖ អត្ថបទនេះបានបញ្ជាក់យ៉ាងច្បាស់អំពីតម្រូវការធនធានកុំព្យូទ័រដ៏ធំសម្បើមសម្រាប់ការបង្វឹក និងដាក់ឱ្យដំណើរការម៉ូដែលរៀនស៊ីជម្រៅ (Deep Learning) ជាពិសេសម៉ូដែលប្រភេទ Transformer ដូចជា BERT។

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

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

ការសិក្សានិងការវាយតម្លៃភាគច្រើននៅក្នុងអត្ថបទនេះត្រូវបានធ្វើឡើងលើសំណុំទិន្នន័យជាភាសាអង់គ្លេស (ដូចជា Stanford Sentiment Treebank, Amazon Reviews, IMDb, Twitter)។ នេះមិនបានឆ្លុះបញ្ចាំងពីបញ្ហាប្រឈមនៃភាសាដែលគ្មានការដកឃ្លាច្បាស់លាស់ ឬសូរស័ព្ទស្មុគស្មាញដូចជាភាសាខ្មែរឡើយ។ សម្រាប់ប្រទេសកម្ពុជា ការខ្វះខាតសំណុំទិន្នន័យយោងជាភាសាជាតិ (Khmer Corpus) ធ្វើឱ្យយើងពិបាកយកម៉ូដែលទំនើបៗទាំងនេះមកអនុវត្តផ្ទាល់ ដោយមិនមានការកែច្នៃ និងហ្វឹកហាត់បន្ថែម។

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

ទោះបីជាមានបញ្ហាប្រឈមផ្នែកភាសាក៏ដោយ បច្ចេកវិទ្យាវិភាគមនោសញ្ចេតនានេះមានសក្តានុពលខ្ពស់ក្នុងការជួយស្ថាប័ននិងក្រុមហ៊ុននៅកម្ពុជាក្នុងការស្វែងយល់ពីអតិថិជនកាន់តែច្បាស់។

សរុបមក ការអនុវត្តបច្ចេកទេសទាំងនេះនៅកម្ពុជាទាមទារឱ្យមានការវិនិយោគជាមុនលើការស្រាវជ្រាវ NLP សម្រាប់ភាសាខ្មែរ ប៉ុន្តែវានឹងក្លាយជាកាតាលីករដ៏សំខាន់សម្រាប់ការសម្រេចចិត្តផ្អែកលើទិន្នន័យ (Data-driven decision making) នាពេលអនាគត។

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

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

  1. ជំហានទី១៖ សិក្សាមូលដ្ឋានគ្រឹះនៃទិន្នន័យអត្ថបទ និងការរៀបចំជាមុន (Text Preprocessing): និស្សិតគួរចាប់ផ្តើមរៀនពីរបៀបបំប្លែងអត្ថបទដោយប្រើបច្ចេកទេស Tokenization, ការដក Stop-words ចេញ និងការប្រើប្រាស់ TF-IDF ដោយសាកល្បងសរសេរកូដ Python ជាមួយបណ្ណាល័យ NLTK លើទិន្នន័យអត្ថបទសាមញ្ញ។
  2. ជំហានទី២៖ អនុវត្តក្បួនដោះស្រាយការរៀនមានការត្រួតពិនិត្យ (Supervised Machine Learning): ប្រើប្រាស់បណ្ណាល័យ Scikit-learn ដើម្បីបង្កើតម៉ូដែលវិភាគមនោសញ្ចេតនាមូលដ្ឋាន (Baseline models) ដូចជា Support Vector Machines (SVM) និង Random Forests តាមរយៈការហ្វឹកហាត់លើសំណុំទិន្នន័យបើកទូលាយដូចជា IMDb Movie Reviews
  3. ជំហានទី៣៖ ឈានចូលការរៀនស៊ីជម្រៅ (Deep Learning) សម្រាប់ភាសា: ពង្រីកចំណេះដឹងទៅលើបណ្ដាញសរសៃប្រសាទសិប្បនិម្មិត ដោយប្រើប្រាស់ TensorFlowPyTorch ដើម្បីបង្កើតម៉ូដែល CNN សម្រាប់ការចាត់ថ្នាក់ប្រយោគ និង LSTM ដើម្បីចាប់យកទំនាក់ទំនងពាក្យនៅក្នុងប្រយោគវែងៗ។
  4. ជំហានទី៤៖ ប្រើប្រាស់បច្ចេកវិទ្យាទំនើប Transformer និង Transfer Learning: ស្វែងយល់ពីរបៀបប្រើប្រាស់ Hugging Face Transformers library ដើម្បីទាញយកម៉ូដែលកម្រិតខ្ពស់ដូចជា BERTDistilBERT មកធ្វើការកែសម្រួល (Fine-tuning) សម្រាប់គម្រោងជាក់លាក់ណាមួយដោយមិនចាំបាច់បង្វឹកពីចំណុចសូន្យ។
  5. ជំហានទី៥៖ ចូលរួមអភិវឌ្ឍន៍ NLP សម្រាប់ភាសាខ្មែរ: ចាប់ផ្តើមអនុវត្តចំណេះដឹងទាំងនេះលើអត្ថបទភាសាខ្មែរ ដោយសាកល្បងប្រើប្រាស់ឧបករណ៍បំបែកពាក្យខ្មែរ ដូចជា Khmer Word Segmentation tool (khmernltk) ឬចូលរួមប្រមូលទិន្នន័យយោបល់ (Comments) ជាភាសាខ្មែរពីបណ្តាញសង្គម ដើម្បីបង្កើតសំណុំទិន្នន័យសម្រាប់ហ្វឹកហាត់ដោយខ្លួនឯង។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Sentiment Analysis ដំណើរការប្រើប្រាស់បច្ចេកវិទ្យាបញ្ញាសិប្បនិម្មិតដើម្បីកំណត់ និងចាត់ថ្នាក់មនោសញ្ចេតនា ឬអារម្មណ៍ (វិជ្ជមាន អវិជ្ជមាន ឬអព្យាក្រឹត) ដែលបង្កប់នៅក្នុងអត្ថបទដោយស្វ័យប្រវត្តិ។ ដូចជាការមានជំនួយការម្នាក់អានសៀវភៅបញ្ចេញមតិរបស់អតិថិជនរាប់ពាន់សន្លឹក ហើយបែងចែកជាក្រុមថាអ្នកណាពេញចិត្ត និងអ្នកណាមិនពេញចិត្តក្នុងរយៈពេលប៉ុន្មានវិនាទី។
Support Vector Machines (SVM) ក្បួនដោះស្រាយការរៀនដោយម៉ាស៊ីនដែលព្យាយាមស្វែងរកបន្ទាត់ ឬប្លង់ដ៏ល្អបំផុតនៅក្នុងលំហទិន្នន័យ ដើម្បីបំបែកទិន្នន័យជាក្រុមផ្សេងៗគ្នាឱ្យនៅដាច់ពីគ្នាបានច្បាស់លាស់បំផុត។ ដូចជាការគូសបន្ទាត់មួយនៅលើតុដើម្បីញែកផ្លែប៉ោម និងផ្លែក្រូចឱ្យនៅដាច់ពីគ្នាដោយមានគម្លាតធំទូលាយបំផុត។
Long short-term memory (LSTM) networks ប្រភេទនៃបណ្ដាញសរសៃប្រសាទសិប្បនិម្មិត (RNN) ដែលមានសមត្ថភាពពិសេសក្នុងការចងចាំព័ត៌មានពីមុនៗក្នុងរយៈពេលយូរ ដែលស័ក្តិសមបំផុតសម្រាប់ការវិភាគប្រយោគ ឬលំដាប់ពាក្យវែងៗនៅក្នុងភាសា។ ដូចជាមនុស្សម្នាក់ដែលអានសៀវភៅ ហើយនៅតែចងចាំតួអង្គ និងសាច់រឿងពីជំពូកទីមួយយ៉ាងច្បាស់នៅពេលអានដល់ជំពូកចុងក្រោយ។
BERT ម៉ូដែលភាសាដ៏មានអានុភាពបង្កើតដោយ Google ដែលអានអត្ថបទទាំងពីឆ្វេងទៅស្តាំ និងពីស្តាំទៅឆ្វេងក្នុងពេលតែមួយ ដើម្បីយល់ពីបរិបទ និងអត្ថន័យស៊ីជម្រៅនៃពាក្យនីមួយៗនៅក្នុងប្រយោគ។ ដូចជាអ្នកអានដែលមើលប្រយោគទាំងមូលសិនមុននឹងសន្និដ្ឋានអត្ថន័យពាក្យនីមួយៗ ជំនួសឱ្យការបកប្រែពាក្យមួយៗតាមលំដាប់រៀង។
TF-IDF រូបមន្តគណិតវិទ្យាសម្រាប់គណនាទម្ងន់នៃពាក្យមួយ ដើម្បីកំណត់ថាពាក្យនោះកម្រ និងមានសារៈសំខាន់កម្រិតណាសម្រាប់អត្ថបទមួយ ធៀបនឹងឯកសារទាំងអស់ដែលមានក្នុងប្រព័ន្ធ។ ដូចជាការរកមើលពាក្យ "វេទមន្ត" ក្នុងសៀវភៅរឿង បើវាលេចឡើងច្រើន វាច្បាស់ជាសៀវភៅរឿងព្រេង (ពាក្យនេះមានទម្ងន់ខ្ពស់) ឯពាក្យ "និង" មាននៅគ្រប់ទីកន្លែង ដូច្នេះវាមិនសូវមានតម្លៃក្នុងការសម្គាល់សៀវភៅនោះទេ។
Domain adaptation ដំណើរការបង្វឹកម៉ូដែល AI ដែលបានរៀនយ៉ាងស្ទាត់ជំនាញពីប្រភពទិន្នន័យមួយ (ឧទាហរណ៍ ការពិនិត្យមើលកុន) ឱ្យអាចបន្តដំណើរការបានល្អលើប្រភពទិន្នន័យថ្មីមួយទៀត (ឧទាហរណ៍ ការពិនិត្យមើលផលិតផលទូរស័ព្ទ) ដោយមិនបាត់បង់ភាពត្រឹមត្រូវ។ ដូចជាការបញ្ជូនចុងភៅជំនាញខាងម្ហូបអ៊ីតាលី ឱ្យទៅរៀនធ្វើម្ហូបចិនដោយប្រើប្រាស់ចំណេះដឹងមូលដ្ឋាន និងការភ្លក់រសជាតិដែលគាត់មានស្រាប់។
Tokenization ដំណើរការកាត់បំបែកអត្ថបទ ឬប្រយោគវែងៗទៅជាចំណែកតូចៗ (ពាក្យនីមួយៗ ឬនិមិត្តសញ្ញា) ដែលជាជំហានដំបូងដើម្បីឱ្យកុំព្យូទ័រងាយស្រួលបំប្លែងអត្ថបទទៅជាលេខ និងវិភាគអត្ថន័យ។ ដូចជាការកាត់នំប៉័ងមួយដើមធំទៅជាចំណិតតូចៗជាមុនសិន ដើម្បីឱ្យយើងងាយស្រួលទំពារនិងរំលាយ។
Transfer learning បច្ចេកទេសដែលម៉ូដែលត្រូវបានហ្វឹកហាត់ជាមុនលើទិន្នន័យទូទៅដ៏ច្រើនសន្ធឹកសន្ធាប់ ហើយបន្ទាប់មកត្រូវបានយកទៅកែសម្រួលបន្តិចបន្តួច (Fine-tune) ដើម្បីដោះស្រាយបញ្ហាជាក់លាក់ណាមួយ ដែលចំណេញពេលវេលា និងត្រូវការទិន្នន័យថ្មីតិចតួច។ ដូចជាមនុស្សម្នាក់ដែលចេះជិះកង់រួចហើយ យកជំនាញទប់លំនឹងនោះទៅរៀនជិះម៉ូតូ ដែលធ្វើឱ្យគាត់ឆាប់ចេះជិះម៉ូតូជាងការរៀនពីសូន្យដោយមិនធ្លាប់ជិះកង់សោះ។

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

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

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