Original Title: Balancing Class for Performance of Classification with a Clinical Dataset
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការធ្វើឱ្យមានតុល្យភាពចំណាត់ថ្នាក់សម្រាប់ប្រសិទ្ធភាពនៃការធ្វើចំណាត់ថ្នាក់ជាមួយនឹងសំណុំទិន្នន័យគ្លីនិក

ចំណងជើងដើម៖ Balancing Class for Performance of Classification with a Clinical Dataset

អ្នកនិពន្ធ៖ N. Poolsawad (University of Hull), C. Kambhampati (University of Hull), J.G.F. Cleland (Hull York Medical School)

ឆ្នាំបោះពុម្ព៖ 2014, Proceedings of the World Congress on Engineering (WCE)

វិស័យសិក្សា៖ Data Mining / Health Informatics

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

បញ្ហា (The Problem)៖ ឯកសារនេះដោះស្រាយបញ្ហានៃការបែងចែកចំណាត់ថ្នាក់ទិន្នន័យដែលគ្មានតុល្យភាព (Imbalanced class distribution) នៅក្នុងសំណុំទិន្នន័យគ្លីនិក ដែលក្បួនដោះស្រាយចំណាត់ថ្នាក់ (Classification algorithms) តែងតែមានភាពលំអៀងទៅរកទិន្នន័យភាគច្រើន និងធ្វើឱ្យមានកំហុសខ្ពស់ក្នុងការទស្សន៍ទាយទិន្នន័យភាគតិច (ឧទាហរណ៍៖ ករណីអ្នកជំងឺស្លាប់)។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះស៊ើបអង្កេត និងប្រៀបធៀបយុទ្ធសាស្រ្តនៃការយកគំរូទិន្នន័យ (Data sampling) ចំនួនពីរ ដើម្បីធ្វើឱ្យសំណុំទិន្នន័យគ្លីនិកមានតុល្យភាព មុននឹងអនុវត្តក្បួនដោះស្រាយម៉ាស៊ីនរៀន (Machine learning classifiers)។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Imbalanced Data Classification (Baseline)
ការធ្វើចំណាត់ថ្នាក់លើទិន្នន័យគ្មានតុល្យភាព (ម៉ូដែលដើម)
មិនមានការកែប្រែ ឬបន្ថែមទិន្នន័យសិប្បនិម្មិត ដែលរក្សាបាននូវទម្រង់ដើមនៃទិន្នន័យ។ ម៉ូដែលរៀនសូត្រលំអៀងទៅរកទិន្នន័យភាគច្រើន (អ្នកជំងឺរស់) ធ្វើឱ្យមានកំហុសខ្ពស់ក្នុងការទស្សន៍ទាយទិន្នន័យភាគតិច (អ្នកជំងឺស្លាប់)។ ក្បួន Random Forest (RF) ផ្តល់អត្រា Recall ត្រឹមតែ ៥៦.៣% ប៉ុណ្ណោះសម្រាប់ចំណាត់ថ្នាក់អ្នកជំងឺ 'ស្លាប់'។
Over-sampling via SMOTE
ការយកគំរូទិន្នន័យបន្ថែមតាមរយៈបច្ចេកទេស SMOTE
ជួយបង្កើនទិន្នន័យភាគតិចដោយមិនបាត់បង់ព័ត៌មានដើមនៃទិន្នន័យភាគច្រើន ធ្វើឱ្យម៉ូដែលរៀនបានកាន់តែល្អ។ ការបង្កើតទិន្នន័យសិប្បនិម្មិតច្រើនពេកអាចបណ្តាលឱ្យមានបញ្ហា Overfitting លើទិន្នន័យហ្វឹកហាត់។ ក្បួន Random Forest (RF) បង្កើនអត្រា Recall ដល់ ៧៩.៨% និង Precision ដល់ ៧៧.៦% សម្រាប់ចំណាត់ថ្នាក់អ្នកជំងឺ 'ស្លាប់'។
Distance-based random under-sampling
ការកាត់បន្ថយគំរូទិន្នន័យដោយចៃដន្យផ្អែកលើចម្ងាយ
កាត់បន្ថយពេលវេលាក្នុងការហ្វឹកហាត់ម៉ូដែល និងផ្តល់អត្រា Recall (Sensitivity) ល្អជាងគេបន្តិចបន្តួចសម្រាប់ករណីភាគតិច។ អាចប្រឈមនឹងការបាត់បង់ទិន្នន័យ ឬព័ត៌មានសំខាន់ៗមួយចំនួនពីក្រុមទិន្នន័យភាគច្រើន។ ក្បួន Random Forest (RF) ផ្តល់អត្រា Recall ខ្ពស់បំផុតរហូតដល់ ៨២.៦% សម្រាប់ចំណាត់ថ្នាក់អ្នកជំងឺ 'ស្លាប់'។

ការចំណាយលើធនធាន (Resource Cost)៖ ឯកសារមិនបានបញ្ជាក់លម្អិតអំពីតម្រូវការផ្នែករឹង (Hardware) នោះទេ ប៉ុន្តែការអនុវត្តបច្ចេកទេសនេះទាមទារកម្មវិធីដែលអាចដំណើរការក្បួនដោះស្រាយ Machine Learning និងទំហំផ្ទុកគ្រប់គ្រាន់សម្រាប់សំណុំទិន្នន័យ។

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

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

ការសិក្សានេះត្រូវបានធ្វើឡើងដោយប្រើប្រាស់សំណុំទិន្នន័យ LIFELAB ដែលផ្តោតលើអ្នកជំងឺខ្សោយបេះដូងនៅតំបន់អឺរ៉ុប (ចក្រភពអង់គ្លេស)។ លក្ខណៈជីវសាស្រ្ត របៀបរស់នៅ និងប្រព័ន្ធថែទាំសុខភាពនៅទីនោះមានភាពខុសគ្នាពីប្រទេសកម្ពុជា។ ដូច្នេះ ការយកម៉ូដែលនេះមកអនុវត្តផ្ទាល់នៅកម្ពុជាអាចប្រឈមនឹងភាពលំអៀង (Bias) ប្រសិនបើមិនមានការកែសម្រួល ឬហ្វឹកហាត់ឡើងវិញជាមួយទិន្នន័យអ្នកជំងឺក្នុងស្រុក។

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

ទោះបីជាទិន្នន័យមានប្រភពមកពីក្រៅប្រទេសក្តី វិធីសាស្រ្ត និងបច្ចេកទេសក្នុងឯកសារនេះមានប្រយោជន៍ខ្លាំងណាស់សម្រាប់វិស័យសុខាភិបាលកម្ពុជា។

ការយល់ដឹងពីបច្ចេកទេសធ្វើឱ្យទិន្នន័យមានតុល្យភាព នឹងជួយឱ្យអ្នកស្រាវជ្រាវកម្ពុជាអាចបង្កើតប្រព័ន្ធ AI ផ្នែកវេជ្ជសាស្រ្តដែលមានភាពសុក្រឹតខ្ពស់ និងជួយសង្គ្រោះអាយុជីវិតបានទាន់ពេលវេលា។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃ Machine Learning: ស្វែងយល់ពីក្បួនដោះស្រាយចំណាត់ថ្នាក់ជាមូលដ្ឋាន ជាពិសេសក្បួន Random Forest (RF) និង Support Vector Machine (SVM) តាមរយៈការអនុវត្តជាមួយបណ្ណាល័យ scikit-learn ក្នុង Python។
  2. ដោះស្រាយបញ្ហាទិន្នន័យបាត់បង់ (Missing Values): មុននឹងធ្វើចំណាត់ថ្នាក់ ត្រូវរៀនអនុវត្តបច្ចេកទេស SVM-based Imputation ឬប្រើប្រាស់ KNNImputer ដើម្បីបំពេញចន្លោះទិន្នន័យដែលបាត់ក្នុងសំណុំទិន្នន័យគ្លីនិក។
  3. អនុវត្តបច្ចេកទេសធ្វើឱ្យទិន្នន័យមានតុល្យភាព: ប្រើប្រាស់កញ្ចប់កម្មវិធី imbalanced-learn នៅក្នុង Python ដើម្បីសាកល្បងអនុវត្តបច្ចេកទេស SMOTE (សម្រាប់ Over-sampling) និង NearMiss ឬ RandomUnderSampler (សម្រាប់ Under-sampling) លើសំណុំទិន្នន័យរបស់អ្នក។
  4. វាយតម្លៃម៉ូដែលដោយប្រើ Confusion Matrix: បញ្ឈប់ការពឹងផ្អែកតែលើសូចនាករ Accuracy។ ត្រូវរៀនវាយតម្លៃម៉ូដែលដោយផ្តោតសំខាន់លើសូចនាករ Precision និង Recall តាមរយៈការវិភាគ Confusion Matrix ដើម្បីធានាថាការទស្សន៍ទាយករណីគ្រោះថ្នាក់ (Minority class) មានប្រសិទ្ធភាពខ្ពស់។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Imbalanced dataset គឺជាស្ថានភាពដែលទិន្នន័យក្នុងក្រុមមួយមានចំនួនច្រើនលើសលប់ធៀបនឹងក្រុមមួយទៀត (ឧទាហរណ៍៖ ទិន្នន័យអ្នកជំងឺរស់មានច្រើនជាងអ្នកស្លាប់ឆ្ងាយណាស់) ដែលធ្វើឱ្យកុំព្យូទ័ររៀនទន្ទេញតែលក្ខណៈរបស់ក្រុមភាគច្រើន និងទស្សន៍ទាយខុសលើក្រុមភាគតិច។ ដូចជាសិស្សដែលរៀនសៀវភៅដែលមានលំហាត់បូក ១០០០ តែមានលំហាត់ដកតែ ៥ ពេលប្រឡងគាត់ចេះតែបូក តែធ្វើដកមិនចេញទេ។
SMOTE (Synthetic Minority Over-sampling Technique) គឺជាបច្ចេកទេសបង្កើតទិន្នន័យថ្មីៗ (សិប្បនិម្មិត) សម្រាប់ក្រុមដែលមានទិន្នន័យតិច ដោយវាគណនាចម្ងាយរវាងទិន្នន័យចាស់ៗ រួចបង្កើតចំណុចទិន្នន័យថ្មីនៅចន្លោះកណ្តាលនោះ ដើម្បីឱ្យក្រុមទាំងពីរមានចំនួនស្មើគ្នា។ ដូចជាការថតចម្លងឯកសារ និងកែសម្រួលពាក្យបន្តិចបន្តួច ដើម្បីឱ្យមានសៀវភៅអានគ្រប់គ្រាន់សម្រាប់សិស្សម្នាក់ៗ។
Under-sampling គឺជាវិធីសាស្រ្តកាត់បន្ថយចំនួនទិន្នន័យពីក្រុមដែលមានភាគច្រើន (Majority class) ដោយជ្រើសរើសយកតែទិន្នន័យសំខាន់ៗ ដើម្បីទាញទំហំទិន្នន័យឱ្យធ្លាក់មកស្មើនឹងក្រុមភាគតិច (Minority class)។ ដូចជាការរើសយកតែផ្លែប៉ោមល្អៗ១០ផ្លែ ពីក្នុងកន្ត្រកដែលមាន១០០ផ្លែ ដើម្បីយកមកប្រៀបធៀបជាមួយផ្លែក្រូចដែលមានតែ១០ផ្លែ។
Recall (Sensitivity) ជារង្វាស់វាយតម្លៃម៉ូដែលដែលបង្ហាញថា ក្នុងចំណោមករណីគោលដៅទាំងអស់ (ឧទាហរណ៍៖ អ្នកជំងឺស្លាប់) តើប្រព័ន្ធអាចស្វែងរកឃើញត្រឹមត្រូវប៉ុន្មានភាគរយដោយមិនរំលងចោល។ វាមានសារៈសំខាន់បំផុតក្នុងវិស័យពេទ្យ។ ដូចជាការប្រើសំណាញ់ចាប់ត្រី តើសំណាញ់នោះអាចចាប់ត្រីដែលមានក្នុងស្រះបានប៉ុន្មានក្បាល (ទោះបីជាជាប់សំរាមខ្លះក៏ដោយ សំខាន់កុំឱ្យរួចត្រី)។
False negative គឺជាកំហុសក្នុងការធ្វើចំណាត់ថ្នាក់ ដែលប្រព័ន្ធកុំព្យូទ័រទស្សន៍ទាយថា "អវិជ្ជមាន ឬគ្មានបញ្ហាទេ" ប៉ុន្តែការពិតជាក់ស្តែងគឺ "វិជ្ជមាន ឬមានបញ្ហាធ្ងន់ធ្ងរ"។ កំហុសនេះអាចបណ្តាលឱ្យបាត់បង់ជីវិតអ្នកជំងឺដោយសារព្យាបាលមិនទាន់ពេល។ ដូចជាប្រព័ន្ធរោទិ៍អគ្គិភ័យមិនបន្លឺសំឡេង និងគិតថាគ្មានផ្សែង នៅពេលដែលមានភ្លើងកំពុងឆេះផ្ទះពិតមែន។
Random Forest (RF) គឺជាក្បួនដោះស្រាយម៉ាស៊ីនរៀន (Machine Learning Algorithm) ដែលបង្កើតនិងប្រើប្រាស់ "ដើមឈើសម្រេចចិត្ត" (Decision Trees) ជាច្រើនដើមរួមគ្នា ដើម្បីធ្វើការបោះឆ្នោតសម្រេចថាតើទិន្នន័យថ្មីមួយគួរស្ថិតក្នុងក្រុមចំណាត់ថ្នាក់ណា។ ដូចជាការសួរយោបល់ពីគ្រូពេទ្យជំនាញ១០០នាក់ រួចយកចម្លើយដែលមានអ្នកបោះឆ្នោតគាំទ្រច្រើនជាងគេ ដើម្បីធ្វើរោគវិនិច្ឆ័យចុងក្រោយ។
Missing values imputation គឺជាដំណើរការនៃការប្រើប្រាស់ក្បួនគណិតវិទ្យា ឬក្បួនម៉ាស៊ីនរៀន (ដូចជា SVM) ដើម្បីទស្សន៍ទាយ និងបំពេញចន្លោះទិន្នន័យដែលបាត់បង់ ឬមិនបានកត់ត្រា ដើម្បីរក្សាគុណភាពទិន្នន័យសម្រាប់វិភាគបន្ត។ ដូចជាការបំពេញពាក្យក្នុងចន្លោះនៃល្បះ ដោយទាយមើលអត្ថន័យនៃពាក្យដែលនៅសងខាងវា។

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

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

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