Original Title: Efficiency of Flash Flood Prediction by XGBoost and Random Forest using 15 minutes & 1 hour time period sensor data.
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ប្រសិទ្ធភាពនៃការទស្សន៍ទាយទឹកជំនន់រហ័សដោយប្រើប្រាស់ XGBoost និង Random Forest ជាមួយនឹងទិន្នន័យសេនស័ររយៈពេល ១៥ នាទី និង ១ ម៉ោង

ចំណងជើងដើម៖ Efficiency of Flash Flood Prediction by XGBoost and Random Forest using 15 minutes & 1 hour time period sensor data.

អ្នកនិពន្ធ៖ Ghiridhar Iyer, National College of Ireland, Dr. Manuel Tova-Izquierdo, National College of Ireland (Supervisor)

ឆ្នាំបោះពុម្ព៖ 2020, National College of Ireland

វិស័យសិក្សា៖ Machine Learning / Cloud Computing

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

បញ្ហា (The Problem)៖ ការសិក្សានេះផ្តោតលើការដោះស្រាយបញ្ហានៃការទស្សន៍ទាយទឹកជំនន់រហ័ស (Flash Flood Nowcasting) ដោយប្រើប្រាស់ទិន្នន័យសេនស័រក្នុងចន្លោះពេលខ្លីដើម្បីផ្តល់ការព្រមានបានទាន់ពេលវេលា និងជួយសង្គ្រោះអាយុជីវិតមនុស្ស។

វិធីសាស្ត្រ (The Methodology)៖ ការស្រាវជ្រាវនេះប្រើប្រាស់ទិន្នន័យសេនស័រពីទីភ្នាក់ងារបរិស្ថានចក្រភពអង់គ្លេស រួមផ្សំជាមួយនឹងបច្ចេកវិទ្យា Cloud Computing និង Machine Learning ដើម្បីបង្កើត និងវាយតម្លៃម៉ូដែលទស្សន៍ទាយ។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
XGBoost (Extreme Gradient Boosting)
ក្បួនដោះស្រាយ XGBoost
មានភាពត្រឹមត្រូវខ្ពស់ក្នុងការទស្សន៍ទាយកម្រិតទឹក (Precision និង Sensitivity ខ្ពស់បំផុត) ទាំងសម្រាប់ទិន្នន័យចន្លោះពេល១៥នាទី និង១ម៉ោង។ វាមានសមត្ថភាពខ្ពស់ក្នុងការកាត់បន្ថយកំហុស និងមិនសូវមានការរោទិ៍ខុស (False alarms)។ មាននិន្នាការក្នុងការទស្សន៍ទាយតម្លៃទាបជាងការពិតបន្តិចបន្តួច (Underestimates) យោងតាមកត្តា Accuracy ហើយទាមទារការស្វែងយល់ស៊ីជម្រៅក្នុងការកំណត់ទម្រង់ប៉ារ៉ាម៉ែត្រ (Hyperparameter tuning)។ ទទួលបានអត្រា Precision ៩៩.០៣% សម្រាប់ទិន្នន័យ១៥នាទី និង ៩៣.១០% សម្រាប់ទិន្នន័យ១ម៉ោង និងមានសមត្ថភាពចាប់សញ្ញាព្រមានបាន ១០២ ក្នុងចំណោម ១០៣ ករណី។
Random Forest
ក្បួនដោះស្រាយ Random Forest
ងាយស្រួលក្នុងការអនុវត្ត និងទទួលបានពិន្ទុ R-Square ខ្ពស់គួរឱ្យកត់សម្គាល់ ដែលស័ក្តិសមក្នុងការស្វែងរកទំនាក់ទំនងរវាងអថេរផ្សេងៗក្នុងទិន្នន័យ។ មានកំហុសក្នុងការទស្សន៍ទាយច្រើនជាងដោយមាននិន្នាការទាយតម្លៃខ្ពស់ជាងការពិត (Overestimates) ព្រមទាំងខកខានក្នុងការព្រមានទឹកជំនន់មួយចំនួនធំ (Missed warnings)។ ទទួលបានអត្រា Precision ត្រឹមតែ ៩១.២៦% (១៥នាទី) និង ៧២.៤១% (១ម៉ោង) ហើយខកខានការព្រមានចំនួន ៩ ដង ក្នុងចំណោម ១០៣ ករណី។

ការចំណាយលើធនធាន (Resource Cost)៖ ការស្រាវជ្រាវនេះពឹងផ្អែកយ៉ាងខ្លាំងលើហេដ្ឋារចនាសម្ព័ន្ធ Cloud សម្រាប់ការផ្ទុក និងកែច្នៃទិន្នន័យ ខណៈពេលដែលទាមទារធនធានកុំព្យូទ័រ (Compute Power) ល្មមសម្រាប់ការហ្វឹកហាត់ម៉ូដែល។

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

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

ការសិក្សានេះប្រមូលទិន្នន័យពីទន្លេ Mersey ក្នុងទីក្រុង Liverpool ចក្រភពអង់គ្លេស ដែលមានលក្ខណៈភូមិសាស្ត្រ និងអាកាសធាតុខុសស្រឡះពីប្រទេសកម្ពុជា។ ម្យ៉ាងវិញទៀត ទិន្នន័យពិតប្រាកដមានត្រឹមតែ ១ ខែប៉ុណ្ណោះ ដែលនាំឱ្យការប្រើប្រាស់បច្ចេកវិទ្យា GAN ដើម្បីបង្កើតទិន្នន័យក្លែងក្លាយបន្ថែមអាចនឹងមិនឆ្លុះបញ្ចាំងពីភាពស្មុគស្មាញនៃប្រព័ន្ធទឹកភ្លៀងរដូវវស្សានៅអាស៊ីអាគ្នេយ៍ឡើយ។

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

ថ្វីត្បិតតែលក្ខខណ្ឌភូមិសាស្ត្រខុសគ្នា ប៉ុន្តែវិធីសាស្ត្រប្រើប្រាស់ម៉ូដែលស្វែងរកម៉ាស៊ីន (Machine Learning) នេះមានសក្តានុពលខ្ពស់ណាស់ក្នុងការដោះស្រាយបញ្ហាទឹកជំនន់រហ័សនៅកម្ពុជា។

ជារួម បច្ចេកទេស Nowcasting (ទស្សន៍ទាយមុន២៤ម៉ោង) ដោយប្រើប្រាស់ Machine Learning នេះអាចជួយសង្គ្រោះអាយុជីវិត និងទ្រព្យសម្បត្តិប្រជាជនកម្ពុជាបានយ៉ាងច្រើន ប្រសិនបើមានការវិនិយោគលើប្រព័ន្ធសេនស័រ IoT អោយបានទូលំទូលាយ។

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

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

  1. រៀបចំប្រព័ន្ធប្រមូល និងបន្សុទ្ធទិន្នន័យ (Data Engineering): ដំឡើងឧបករណ៍សេនស័រវាស់ទឹកភ្លៀង និងកម្ពស់ទឹកតាមដងទន្លេសំខាន់ៗ។ បន្ទាប់មកបញ្ជូនទិន្នន័យចូលទៅកាន់ Amazon S3 រួចប្រើប្រាស់ AWS Athena ដើម្បីធ្វើការច្រោះ និងចងក្រងទិន្នន័យតាមចន្លោះពេល ១៥នាទី និង ១ម៉ោង។ ប្រើប្រាស់ CTGAN ក្នុងករណីដែលទិន្នន័យប្រវត្តិសាស្ត្រមានមិនគ្រប់គ្រាន់។
  2. អភិវឌ្ឍ និងហ្វឹកហាត់ម៉ូដែល (Model Development): សរសេរកូដដោយប្រើប្រាស់ភាសា Python ជាមួយនឹងបណ្ណាល័យ XGBoost ព្រោះវាមានប្រសិទ្ធភាពខ្ពស់ជាង Random Forest។ ប្រើប្រាស់ AWS SageMaker ដើម្បីដំណើរការហ្វឹកហាត់ម៉ូដែល (Training) ដោយផ្តោតលើអថេរគោលដៅសំខាន់ៗដូចជា កម្ពស់ទឹក ទឹកភ្លៀង សីតុណ្ហភាព និងខ្យល់។
  3. វាយតម្លៃសមត្ថភាពប្រព័ន្ធយ៉ាងតឹងរ៉ឹង (Evaluation with PASS): កុំពឹងផ្អែកតែលើសូចនាករ R-Square តែមួយមុខ។ ត្រូវវាយតម្លៃម៉ូដែលដោយប្រើប្រាស់ប្រព័ន្ធវាស់ស្ទង់ PASS (Precision, Accuracy, Sensitivity, Specificity) ដើម្បីធានាថាម៉ូដែលមិនបញ្ចេញការរោទិ៍ខុស (False alarms) ច្រើនពេក ព្រោះវាធ្វើឱ្យប៉ះពាល់ដល់ទំនុកចិត្តរបស់ប្រជាជន។ បង្កើត Dashboard ដោយប្រើ Amazon QuickSight ដើម្បីតាមដានលទ្ធផល។
  4. ដាក់ឱ្យដំណើរការប្រព័ន្ធព្រមានដោយស្វ័យប្រវត្តិ (Deployment & Alerting): ប្រើប្រាស់ AWS Lambda ដើម្បីទាញយកទិន្នន័យទស្សន៍ទាយ (Predictions) ពីម៉ូដែលមកវិភាគ ហើយបើរកឃើញថាកម្ពស់ទឹកនឹងឡើងដល់កម្រិតគ្រោះថ្នាក់ ត្រូវភ្ជាប់ប្រព័ន្ធនេះទៅកាន់ SMS Gateway ឬកម្មវិធី Telegram Bots ដើម្បីផ្ញើសារប្រកាសអាសន្នទៅកាន់អាជ្ញាធរពាក់ព័ន្ធ באופןស្វ័យប្រវត្តិ។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Nowcasting គឺជាការព្យាករណ៍អាកាសធាតុនិងគ្រោះមហន្តរាយ (ដូចជាទឹកជំនន់រហ័ស) ក្នុងរយៈពេលខ្លីបំផុត ពោលគឺចាប់ពីប៉ុន្មាននាទី រហូតដល់ ២៤ ម៉ោងខាងមុខ ដោយពឹងផ្អែកលើទិន្នន័យជាក់ស្តែងពេលបច្ចុប្បន្ន (Real-time data) ជាជាងការព្យាករណ៍សម្រាប់ច្រើនថ្ងៃទៅមុខ (Forecasting)។ ដូចជាការមើលឃើញពពកខ្មៅងងឹតមកដល់ ហើយយើងទាយដឹងភ្លាមៗថាភ្លៀងនឹងធ្លាក់ក្នុងរយៈពេល ១០ នាទីទៀត មិនមែនទាយសម្រាប់សប្តាហ៍ក្រោយនោះទេ។
Generative Adversarial Network (GAN) គឺជាបច្ចេកវិទ្យាបញ្ញាសិប្បនិម្មិត (AI) ដែលត្រូវបានប្រើប្រាស់នៅក្នុងការស្រាវជ្រាវនេះដើម្បីបង្កើតទិន្នន័យក្លែងក្លាយ (Synthetic Data) បន្ថែមដែលមានលក្ខណៈនិងទម្រង់ការបែកចែកស្រដៀងទៅនឹងទិន្នន័យពិតប្រាកដ ដើម្បីជួយបង្រៀនម៉ូដែលឱ្យកាន់តែឆ្លាតវៃ នៅពេលដែលចំនួនទិន្នន័យពិតមានតិចតួចពេក។ ដូចជាវិចិត្រករម្នាក់រៀនគូររូបថតចម្លងឱ្យដូចបេះបិទទៅនឹងរូបពិត រហូតដល់អ្នកមើលមិនអាចបែងចែកដឹងថាមួយណាជារូបពិត និងមួយណាជារូបគូរ។
XGBoost គឺជាក្បួនដោះស្រាយម៉ាស៊ីនរៀន (Machine Learning algorithm) ដ៏មានអានុភាពខ្ពស់ ដែលដំណើរការដោយការបង្កើតដើមឈើសម្រេចចិត្ត (Decision Trees) ជាច្រើនបន្តបន្ទាប់គ្នា។ ដើមឈើនីមួយៗព្យាយាមកែតម្រូវកំហុសរបស់ដើមឈើមុនៗ ដែលធ្វើឱ្យវាមានភាពត្រឹមត្រូវ កាត់បន្ថយសំលេងរំខានក្នុងទិន្នន័យ (Noise) និងលឿនក្នុងការទស្សន៍ទាយ។ ដូចជាការសួរសិស្សពូកែៗមួយក្រុមឱ្យធ្វើលំហាត់រួមគ្នា ដោយសិស្សម្នាក់ៗជួយកែចំណុចខុសរបស់សិស្សមុន រហូតទទួលបានចម្លើយដ៏ត្រឹមត្រូវបំផុតមួយ។
Hyperparameter tuning គឺជាដំណើរការនៃការកែតម្រូវ និងស្វែងរកការកំណត់រចនាសម្ព័ន្ធ (Configuration values) ដ៏ប្រសើរបំផុតរបស់ម៉ូដែល Machine Learning មុនពេលចាប់ផ្តើមហ្វឹកហាត់វា ដើម្បីបង្កើនសមត្ថភាពទស្សន៍ទាយ និងការពារកុំឱ្យម៉ូដែលរៀនទន្ទេញទិន្នន័យខុសទម្រង់ធម្មជាតិ (Overfitting)។ ដូចជាការរុញប៊ូតុងសារ៉េសំឡេង (Bass, Treble) នៅលើធុងបាសចុះឡើង រហូតទាល់តែយើងលឺសម្លេងតន្ត្រីពិរោះ និងច្បាស់ល្អបំផុត។
PASS Evaluation គឺជាបណ្តុំនៃរង្វាស់រង្វាល់បច្ចេកទេស (Precision, Accuracy, Sensitivity, Specificity) ដែលប្រើសម្រាប់វាយតម្លៃគុណភាពពិតប្រាកដនៃការទស្សន៍ទាយ។ វាមិនត្រឹមតែប្រាប់ថាទាយត្រូវប៉ុន្មានភាគរយទេ តែវាប្រាប់លម្អិតថាតើកុំព្យូទ័រមានការរោទិ៍សញ្ញាព្រមានខុស (False alarms) ប៉ុន្មានដង ឬខកខានមិនបានព្រមានពេលមានគ្រោះថ្នាក់ពិតប្រាកដប៉ុន្មានដង។ ដូចជាការដាក់ពិន្ទុអ្នកយាមទ្វារ ដែលមិនត្រឹមតែសរសើរពេលគាត់ចាប់ចោរបាននោះទេ តែត្រូវកាត់ពិន្ទុពេលគាត់ច្រឡំវាយសមាជិកគ្រួសារថាជាចោរផងដែរ។
Random Forest គឺជាក្បួនដោះស្រាយម៉ាស៊ីនរៀន ដែលបង្កើតដើមឈើសម្រេចចិត្ត (Decision Trees) ជាច្រើនដោយចៃដន្យ និងឯករាជ្យពីគ្នា រួចយកលទ្ធផលរបស់ពួកវាទាំងអស់មកបូកបញ្ចូលគ្នា (ជាមធ្យមភាគ ឬតាមសំឡេងឆ្នោតច្រើនជាងគេ) ដើម្បីធ្វើការទស្សន៍ទាយលទ្ធផលរួមមួយដែលមានលំនឹងល្អ។ ដូចជាការសួរមតិពីមនុស្ស ១០០ នាក់ផ្សេងៗគ្នាដើម្បីសម្រេចចិត្តលើរឿងមួយ ជាជាងការជឿលើការសម្រេចចិត្តរបស់មនុស្សតែម្នាក់។
Data assimilation គឺជាបច្ចេកទេសនៃការបញ្ចូលទិន្នន័យអង្កេតជាក់ស្តែងថ្មីៗ ទៅក្នុងម៉ូដែលព្យាករណ៍គណិតវិទ្យាដែលកំពុងដំណើរការជាបន្តបន្ទាប់ ដើម្បីកែតម្រូវគន្លងទស្សន៍ទាយ និងធ្វើឱ្យលទ្ធផលលើកក្រោយៗកាន់តែមានភាពសុក្រឹត ឆ្លើយតបទៅនឹងការប្រែប្រួលភ្លាមៗ។ ដូចជាការបើកបរតាមកម្មវិធី Google Maps ដែលប្រព័ន្ធតែងតែធ្វើបច្ចុប្បន្នភាពណែនាំផ្លូវវាងថ្មីៗភ្លាមៗ នៅពេលវាដឹងថាផ្លូវខាងមុខកំពុងមានការកកស្ទះខ្លាំង។

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

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

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