Original Title: A Review of Data Mining, Big Data Analytics, and Machine Learning Approaches
Source: doi.org/10.53759/181X/JCNS202303016
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការពិនិត្យឡើងវិញលើការទាញយកទិន្នន័យ ការវិភាគទិន្នន័យធំ និងវិធីសាស្ត្រយន្តការសិក្សា

ចំណងជើងដើម៖ A Review of Data Mining, Big Data Analytics, and Machine Learning Approaches

អ្នកនិពន្ធ៖ Francisco Pedro (University of Minho, Braga, Portugal)

ឆ្នាំបោះពុម្ព៖ 2023, Journal of Computing and Natural Science

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

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

បញ្ហា (The Problem)៖ ការស្រាវជ្រាវនេះដោះស្រាយពីបញ្ហាប្រឈមក្នុងការអនុវត្តក្បួនដោះស្រាយការទាញយកទិន្នន័យ និងយន្តការសិក្សាប្រពៃណី (Traditional ML) ទៅលើទិន្នន័យធំ (Big Data) ដែលមានទំហំធំ ស្មុគស្មាញ និងផ្លាស់ប្តូរជានិច្ច។

វិធីសាស្ត្រ (The Methodology)៖ អត្ថបទនេះធ្វើការត្រួតពិនិត្យ និងប្រៀបធៀបសមត្ថភាព និងដែនកំណត់នៃវិធីសាស្ត្រយន្តការសិក្សាផ្សេងៗគ្នាក្នុងបរិបទនៃការវិភាគទិន្នន័យធំ។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
K-Means Clustering
ក្បួនដោះស្រាយ K-Means
មានប្រសិទ្ធភាពខ្ពស់ក្នុងការចាត់ថ្នាក់ទិន្នន័យដែលមានទំហំធំ និងងាយស្រួលក្នុងការអនុវត្ត។ អាចដំណើរការបានតែជាមួយទិន្នន័យជាលេខប៉ុណ្ណោះ ហើយងាយនឹងជាប់គាំងនៅត្រឹមចំណុចល្អបំផុតក្នុងតំបន់ (Local optimum)។ មានប្រសិទ្ធភាពក្នុងការគណនា ប៉ុន្តែអាចផ្តល់នូវដំណោះស្រាយដែលមិនល្អបំផុត និងមិនស័ក្តិសមសម្រាប់ទិន្នន័យចម្រុះ។
k-Nearest Neighbors (k-NN)
ក្បួនដោះស្រាយ k-NN
ងាយស្រួលក្នុងការអនុវត្ត និងមានភាពធន់នឹងទិន្នន័យរំខាន (Noise) នៅពេលប្រើតម្លៃ k ធំ។ ទាមទារទំហំផ្ទុកច្រើនដោយសារវាត្រូវរក្សាទុកទិន្នន័យទាំងអស់ក្នុងអង្គចងចាំ និងពិបាកដោះស្រាយជាមួយទិន្នន័យប្រភេទចម្រុះ។ មិនស័ក្តិសមសម្រាប់ការគ្រប់គ្រងសំណុំទិន្នន័យខ្នាតធំ (Big Data) ឡើយ ដោយសារបញ្ហាកម្រិតអង្គចងចាំ។
Support Vector Machine (SVM)
ម៉ាស៊ីនវ៉ិចទ័រគាំទ្រ (SVM)
មានប្រសិទ្ធភាពក្នុងការដោះស្រាយបញ្ហាដែលមានវិមាត្រខ្ពស់ ទិន្នន័យមិនលីនេអ៊ែរ និងទិន្នន័យ thinned (Sparsity) និងធន់នឹង Outliers។ ចំណាយពេលគណនាច្រើន ងាយរងគ្រោះក្នុងការកំណត់ប៉ារ៉ាម៉ែត្រ (Tuning) និងមិនល្អសម្រាប់ទិន្នន័យខ្នាតធំ។ បង្ហាញពីដែនកំណត់ក្នុងការគ្រប់គ្រងសមត្ថភាពពង្រីកទំហំគណនា (Computational scalability) និងប្រភេទអថេរទិន្នន័យចម្រុះ។
Decision Trees & Random Forest
មែកធាងសេចក្តីសម្រេច និង Random Forest
មិនសូវទាមទារការរៀបចំទិន្នន័យជាមុន មានភាពធន់នឹង Outliers និងអាចផ្តល់លទ្ធផលល្អតាមរយៈបច្ចេកទេសបណ្តុំ (Ensemble)។ មែកធាងតែមួយអាចងាយនឹងជួបបញ្ហា Overfitting ប្រសិនបើមិនមានការកាត់មែក (Pruning) ត្រឹមត្រូវ។ បង្ហាញពីដំណើរការខ្ពស់ក្នុងការដោះស្រាយសំណុំទិន្នន័យធំទូលាយ ទោះបីជាអាចមានហានិភ័យ Overfitting ក៏ដោយ។
Naive Bayes
ក្បួនដោះស្រាយ Naive Bayes
សាងសង់លឿន បណ្តុះបណ្តាលឆាប់រហ័ស និងល្អសម្រាប់សំណុំទិន្នន័យតូចៗដែលមានទិន្នន័យប្រភេទប្រភេទ (Categorical)។ សន្មតថាអថេរទាំងអស់ឯករាជ្យពីគ្នា (ដែលកម្រពិតប្រាកដ) និងជួបបញ្ហាប្រូបាប៊ីលីតេសូន្យ (Zero-probability problem)។ ស័ក្តិសមសម្រាប់សំណុំបណ្តុះបណ្តាលតូចៗ ប៉ុន្តែងាយរងគ្រោះដោយការលំអៀង (Bias) ហើយមិនសូវប្រើក្នុងប្រព័ន្ធដាក់ពិន្ទុឥណទាន។
Neural Networks (ANN)
បណ្តាញសរសៃប្រសាទសប្បនិម្មិត (ANN)
មានសមត្ថភាពខ្ពស់ក្នុងការទស្សន៍ទាយ ធន់នឹងទិន្នន័យរំខាន និងអាចដោះស្រាយទំនាក់ទំនងស្មុគស្មាញ (Non-linear)។ ពិបាកក្នុងការពន្យល់ពីលទ្ធផល (Black-box) ត្រូវការការគណនាច្រើន និងអាចជួបបញ្ហាក្នុងការស្វែងរកចំណុចល្អបំផុតសកល។ ប្រសិទ្ធភាពក្នុងការដំណើរការសំណុំទិន្នន័យខ្នាតធំជាមួយម៉ូដែលស្មុគស្មាញនៅមានកម្រិត និងទាមទារធនធានច្រើន។
Deep Learning & Representation Learning
ការសិក្សាស៊ីជម្រៅ និងការសិក្សាតំណាង
ពូកែក្នុងការទាញយកលក្ខណៈពិសេសដោយស្វ័យប្រវត្តិពីទិន្នន័យឆៅ (Unstructured data) និងស័ក្តិសមបំផុតសម្រាប់ Big Data។ ទាមទារពេលវេលាបណ្តុះបណ្តាលយូរខ្លាំង និងត្រូវការយន្តការបណ្តុះបណ្តាលបន្ថែម (Incremental training) សម្រាប់ទិន្នន័យដែលប្រែប្រួលជានិច្ច។ បង្ហាញពីសក្តានុពលខ្ពស់ក្នុងការដោះស្រាយសំណុំទិន្នន័យខ្នាតធំ (Big Data) បើទោះបីជាមានឧបសគ្គផ្នែកគណនាក៏ដោយ។

ការចំណាយលើធនធាន (Resource Cost)៖ ឯកសារនេះបានបញ្ជាក់ថា ក្បួនដោះស្រាយប្រពៃណីភាគច្រើនបរាជ័យក្នុងការវិភាគ Big Data ដោយសារវាទាមទារការផ្ទុកទិន្នន័យក្នុងអង្គចងចាំចម្បង (Primary memory) ចំណែកឯ Deep Learning ត្រូវការថាមពលគណនា និងពេលវេលាយូរ។

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

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

ដោយសារឯកសារនេះគឺជាការត្រួតពិនិត្យអក្សរសិល្ប៍ (Literature Review) វាមិនបានផ្តោតលើការធ្វើតេស្តលើសំណុំទិន្នន័យប្រជាសាស្ត្រជាក់លាក់ណាមួយឡើយ។ ទោះយ៉ាងណាក៏ដោយ សម្រាប់ប្រទេសកម្ពុជា ការត្រួតពិនិត្យការលំអៀងទិន្នន័យ (Data Bias) ក្នុង Big Data គឺមានសារៈសំខាន់ណាស់ ព្រោះម៉ូដែលដែលហ្វឹកហាត់លើទិន្នន័យបរទេសអាចផ្តល់ការទស្សន៍ទាយមិនត្រឹមត្រូវលើឥរិយាបថឬបរិបទក្នុងស្រុក។

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

ការយល់ដឹងពីចំណុចខ្លាំងនិងចំណុចខ្សោយនៃក្បួនដោះស្រាយ Machine Learning ប្រពៃណី និង Deep Learning មានសារៈសំខាន់សម្រាប់ការជ្រើសរើសបច្ចេកវិទ្យាដ៏ត្រឹមត្រូវសម្រាប់ស្ថាប័ននៅកម្ពុជា។

ការជ្រើសរើសក្បួនដោះស្រាយឱ្យស្របទៅនឹងទំហំទិន្នន័យ និងគោលបំណងអាជីវកម្ម នឹងជួយស្ថាប័នកម្ពុជាសន្សំសំចៃធនធានកុំព្យូទ័រ និងទទួលបានលទ្ធផលវិភាគប្រកបដោយភាពច្បាស់លាស់។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃ Machine Learning ប្រពៃណី: ចាប់ផ្តើមអនុវត្តក្បួនដោះស្រាយដូចជា K-Means, SVM, និង Random Forest ដោយប្រើប្រាស់បណ្ណាល័យ Scikit-Learn នៅក្នុង Python ដើម្បីយល់ពីដំណើរការទាញយកទិន្នន័យខ្នាតតូចនិងមធ្យម។
  2. ស្វែងយល់ពីប្រព័ន្ធបច្ចេកវិទ្យាទិន្នន័យធំ (Big Data Ecosystem): សិក្សាពីរបៀបដែលបច្ចេកវិទ្យាដូចជា HadoopApache Spark (ជាមួយ MapReduce) អាចជួយពង្រីកសមត្ថភាពវិភាគទិន្នន័យដែលមិនអាចផ្ទុកក្នុងអង្គចងចាំកុំព្យូទ័រតែមួយបាន។
  3. អភិវឌ្ឍជំនាញខាងការសិក្សាស៊ីជម្រៅ (Deep Learning): ប្រើប្រាស់ Framework ដូចជា TensorFlowPyTorch ដើម្បីបង្កើតម៉ូដែល AutoencodersMulti-Layer Perceptrons សម្រាប់ទាញយកលក្ខណៈពិសេសពីទិន្នន័យស្មុគស្មាញ (Representation Learning)។
  4. ស្វែងយល់ពី Machine Lifelong Learning (ML3): សិក្សាស្រាវជ្រាវពីបច្ចេកទេស Lifelong Learning ដើម្បីរចនាម៉ូដែលដែលអាចរៀនសូត្រពីទិន្នន័យថ្មីៗជាបន្តបន្ទាប់ (Continuous Learning) ដោយមិនភ្លេចចំណេះដឹងចាស់។
  5. អនុវត្តលើគម្រោងទិន្នន័យកម្ពុជាជាក់ស្តែង: ប្រមូលសំណុំទិន្នន័យធំៗក្នុងស្រុក (ឧ. ទិន្នន័យអាកាសធាតុពី Kaggle ឬ Open Data Cambodia) ហើយអនុវត្តបច្ចេកទេសបណ្តុំ (Ensemble Methods) ដើម្បីបង្កើតប្រព័ន្ធទស្សន៍ទាយប្រកបដោយភាពត្រឹមត្រូវខ្ពស់។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Principal Component Analysis (PCA) វិធីសាស្ត្រស្ថិតិដែលប្រើដើម្បីកាត់បន្ថយវិមាត្រនៃទិន្នន័យ (Dimensionality Reduction) ដោយរក្សាទុកតែព័ត៌មានសំខាន់ៗបំផុត ដែលជួយកាត់បន្ថយភាពស្មុគស្មាញនិងទំហំទិន្នន័យដើម្បីងាយស្រួលវិភាគ។ ដូចជាការសង្ខេបសៀវភៅក្រាស់មួយក្បាលឱ្យនៅត្រឹមមួយទំព័រដោយមិនបាត់បង់អត្ថន័យ និងសាច់រឿងដើម។
Support Vector Machine (SVM) ក្បួនដោះស្រាយយន្តការសិក្សាដែលស្វែងរកបន្ទាត់ឬប្លង់ដ៏ល្អបំផុត (Hyperplane) ដើម្បីខណ្ឌចែកទិន្នន័យទៅជាក្រុមផ្សេងៗគ្នា ដោយផ្តោតលើការកសាងព្រំដែនដោយផ្អែកលើចំណុចទិន្នន័យដែលនៅក្បែរបន្ទាត់នោះជាងគេបំផុត។ ដូចជាការគូសបន្ទាត់ព្រំដែនមួយនៅលើវាលស្មៅដើម្បីបំបែកហ្វូងចៀម និងហ្វូងពពែឱ្យនៅឆ្ងាយពីគ្នាតាមដែលអាចធ្វើទៅបាន។
Ensemble learning បច្ចេកទេសបណ្តុំដែលរួមបញ្ចូលគ្នានូវម៉ូដែលយន្តការសិក្សាច្រើន (ដូចជាការបញ្ចូល Decision Trees ជាច្រើនចូលគ្នា) ដើម្បីធ្វើការទស្សន៍ទាយរួមគ្នា ដែលផ្តល់លទ្ធផលសុក្រឹត និងកាត់បន្ថយកំហុសជាងការប្រើម៉ូដែលតែមួយ។ ដូចជាការសួរយោបល់ពីគ្រូពេទ្យជំនាញ៥នាក់ដើម្បីធ្វើរោគវិនិច្ឆ័យជំងឺមួយ ជាជាងការជឿជាក់លើការសម្រេចចិត្តរបស់គ្រូពេទ្យតែម្នាក់។
Overfitting បញ្ហានៅក្នុង Machine Learning នៅពេលដែលម៉ូដែលរៀនទន្ទេញចាំទិន្នន័យបណ្តុះបណ្តាលខ្លាំងពេក រួមទាំងចំណុចរំខាន (Noise) ធ្វើឱ្យវាបរាជ័យក្នុងការទស្សន៍ទាយទិន្នន័យថ្មីដែលវាមិនធ្លាប់ជួបប្រទះ។ ដូចជាសិស្សដែលទន្ទេញចាំចម្លើយវិញ្ញាសាចាស់គ្រប់អក្សរ ប៉ុន្តែប្រឡងធ្លាក់នៅពេលគ្រូចេញលំហាត់ថ្មីដែលខុសគ្នាបន្តិចបន្តួច។
Representation learning វិធីសាស្ត្រដែលអនុញ្ញាតឱ្យប្រព័ន្ធកុំព្យូទ័ររៀនទាញយកលក្ខណៈពិសេសដោយស្វ័យប្រវត្តិពីទិន្នន័យឆៅ (ដូចជារូបភាព ឬអត្ថបទ) ដោយមិនចាំបាច់មានមនុស្សរៀបចំទិន្នន័យជាមុន ដែលជាមូលដ្ឋានគ្រឹះនៃការសិក្សាស៊ីជម្រៅ (Deep Learning)។ ដូចជាការបង្រៀនក្មេងឱ្យចេះចំណាំមុខសត្វឆ្កែដោយខ្លួនឯងតាមរយៈការមើលរូបភាពច្រើនដង ជាជាងការប្រាប់ពីលក្ខណៈត្រចៀក ឬកន្ទុយវាដោយផ្ទាល់។
Backpropagation ក្បួនដោះស្រាយដ៏សំខាន់ក្នុងបណ្តាញសរសៃប្រសាទ (Neural Networks) ដែលគណនាទំហំនៃកំហុស (Error) ពីលទ្ធផលចុងក្រោយ រួចបញ្ជូនព័ត៌មាននោះត្រឡប់ថយក្រោយវិញតាមស្រទាប់នីមួយៗ ដើម្បីកែតម្រូវទម្ងន់ (Weights) របស់បណ្តាញឱ្យកាន់តែសុក្រឹត។ ដូចជាអ្នកបាញ់ធ្នូដែលបាញ់ខុសគោលដៅ រួចពិនិត្យមើលកំហុសរបស់ខ្លួនដើម្បីកែសម្រួលកម្លាំងនិងទិសដៅសម្រាប់ការបាញ់លើកក្រោយឱ្យចំគោលដៅ។
MapReduce គំរូកម្មវិធីសម្រាប់ដំណើរការទិន្នន័យធំ (Big Data) ក្នុងប្រព័ន្ធកុំព្យូទ័រច្រើន ដោយបំបែកទិន្នន័យជាចំណែកតូចៗ (Map) ទៅឱ្យកុំព្យូទ័រផ្សេងៗដំណើរការព្រមគ្នា រួចប្រមូលលទ្ធផលបញ្ចូលគ្នាវិញ (Reduce)។ ដូចជាការបែងចែកកិច្ចការបោសសម្អាតសាលារៀនដ៏ធំមួយទៅឱ្យសិស្សច្រើនថ្នាក់ធ្វើព្រមគ្នា រួចប្រមូលសំរាមទាំងអស់មកដាក់ក្នុងធុងតែមួយនៅចុងបញ្ចប់។

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

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

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