Original Title: A hyper-tuned Vision Transformer model with Explainable AI for Eye disease detection and classification from medical images
Source: www.researchgate.net
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ម៉ូដែល Vision Transformer ដែលបានកែសម្រួលយ៉ាងល្អិតល្អន់ជាមួយបញ្ញាសិប្បនិម្មិតដែលអាចពន្យល់បាន (Explainable AI) សម្រាប់ការរកឃើញ និងចំណាត់ថ្នាក់ជំងឺភ្នែកពីរូបភាពវេជ្ជសាស្ត្រ

ចំណងជើងដើម៖ A hyper-tuned Vision Transformer model with Explainable AI for Eye disease detection and classification from medical images

អ្នកនិពន្ធ៖ Md Shahin Ali, Md Khairul Islam (Islamic University, Bangladesh)

ឆ្នាំបោះពុម្ព៖ 2023 Islamic University, Bangladesh

វិស័យសិក្សា៖ Biomedical Engineering

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

បញ្ហា (The Problem)៖ ជំងឺភ្នែកគឺជាបញ្ហាសុខភាពដ៏ចម្បងដែលប៉ះពាល់ដល់មនុស្សរាប់លាននាក់ ខណៈដែលការរកឃើញទាន់ពេលវេលាមានសារៈសំខាន់សម្រាប់ការការព្យាបាល ប៉ុន្តែម៉ូដែល Deep Learning បច្ចុប្បន្ននៅខ្វះតម្លាភាពក្នុងការបកស្រាយលទ្ធផលនៃការធ្វើរោគវិនិច្ឆ័យ។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះស្នើឡើងនូវវិធីសាស្ត្រថ្មីមួយដោយប្រើប្រាស់ម៉ូដែល Vision Transformer (ViT) ដែលត្រូវបានកំណត់ប៉ារ៉ាម៉ែត្រយ៉ាងល្អិតល្អន់ រួមជាមួយនឹងបច្ចេកទេសបញ្ញាសិប្បនិម្មិតដែលអាចពន្យល់បាន (Explainable AI)។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Proposed ViT (Hyper-tuned Vision Transformer)
ម៉ូដែល Vision Transformer (ViT) ដែលបានកែសម្រួលយ៉ាងល្អិតល្អន់
ទទួលបានលទ្ធផលល្អបំផុតក្នុងការចាត់ថ្នាក់ជំងឺភ្នែក ព្រមទាំងមានសមត្ថភាពពន្យល់ពីដំណើរការនៃការសម្រេចចិត្ត (Explainable AI) ដែលជួយដល់ការយល់ដឹងរបស់គ្រូពេទ្យ។ ទាមទារទិន្នន័យសម្រាប់បង្ហាត់ច្រើន និងត្រូវការកម្លាំងម៉ាស៊ីនមានក្រាហ្វិកកាត (GPU) ខ្ពស់ដើម្បីដំណើរការការគណនាស្មុគស្មាញ។ សម្រេចបានភាពត្រឹមត្រូវខ្ពស់បំផុតរហូតដល់ ៩១,៤០%, Precision ៩៤,០៧% និង F1 Score ៩១,២៨%។
MobileNetV2
ម៉ូដែល MobileNetV2
ប្រើប្រាស់ធនធានកុំព្យូទ័រតិច និងដំណើរការបានលឿន ដែលស័ក្តិសមបំផុតសម្រាប់ការដាក់ឱ្យដំណើរការលើឧបករណ៍ចល័ត ឬទូរស័ព្ទដៃ។ ទោះបីជាលទ្ធផលល្អគួរសម ប៉ុន្តែវាមិនមានសមត្ថភាពផ្តល់នូវតម្លាភាពក្នុងការបកស្រាយលទ្ធផល (Lack of Explainability) ដូចម៉ូដែលដែលប្រើ XAI នោះទេ។ ទទួលបានភាពត្រឹមត្រូវ ៩១,០៣% និង F1 Score ៨៩,២៧% ដែលស្ថិតនៅលំដាប់ទីពីរ។
Baseline Deep Learning (VGG16 & ResNet50)
ម៉ូដែល Deep Learning មូលដ្ឋាន (VGG16 និង ResNet50)
ងាយស្រួលក្នុងការអនុវត្តតាមរយៈវិធីសាស្ត្រ Transfer Learning និងមានកូដគំរូជាច្រើនដែលអាចស្វែងរកបាននៅលើអ៊ីនធឺណិតទូទៅ។ មានភាពត្រឹមត្រូវទាបជាងគេ និងជួបការលំបាកក្នុងការចាប់យកលក្ខណៈពិសេសតូចៗរវាងកោសិការូបភាពភ្នែក ដែលងាយធ្វើឱ្យមានការវិភាគខុស។ ភាពត្រឹមត្រូវនៃការធ្វើតេស្តមានកម្រិតត្រឹម ៨១,៦៩% សម្រាប់ VGG16 និង ៨៨,៨៩% សម្រាប់ ResNet50។

ការចំណាយលើធនធាន (Resource Cost)៖ ការស្រាវជ្រាវនេះបានបញ្ជាក់យ៉ាងច្បាស់ពីធនធានផ្នែករឹង និងផ្នែកទន់ដែលត្រូវបានប្រើប្រាស់សម្រាប់ការបង្ហាត់ម៉ូដែល ដែលទាមទារកម្លាំងម៉ាស៊ីនកម្រិតមធ្យមទៅខ្ពស់។

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

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

ការសិក្សានេះត្រូវបានស្រាវជ្រាវ និងប្រើប្រាស់សំណុំទិន្នន័យរូបភាពរ៉េទីនភ្នែកតូចមួយ (៦០១ រូបភាព) ដែលប្រមូលបានពីប្រភពដែលមិនមានការចង្អុលបង្ហាញច្បាស់លាស់ពីទីតាំងភូមិសាស្ត្រ ឬជាតិសាសន៍របស់អ្នកជំងឺឡើយ។ សម្រាប់ប្រទេសកម្ពុជា ភាពលម្អៀងនេះគឺមានសារៈសំខាន់ណាស់ ព្រោះលក្ខណៈជីវសាស្ត្រ និងទម្រង់រ៉េទីនភ្នែករបស់ប្រជាជនអាស៊ីអាគ្នេយ៍អាចមានការប្រែប្រួល ដែលទាមទារឱ្យមានការសាកល្បងជាមួយទិន្នន័យក្នុងស្រុកបន្ថែមទៀតមុនពេលយកមកប្រើប្រាស់ជាក់ស្តែង។

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

ទោះបីជាមានបញ្ហាប្រឈមលើទំហំទិន្នន័យក៏ដោយ វិធីសាស្ត្រនេះមានសក្តានុពលខ្ពស់ណាស់ក្នុងការកែលម្អវិស័យចក្ខុវិទ្យានៅប្រទេសកម្ពុជា ជាពិសេសនៅតាមតំបន់ដែលខ្វះខាតធនធាន។

ជារួម ការដាក់បញ្ចូលបញ្ញាសិប្បនិម្មិតដែលអាចពន្យល់បាន (Explainable AI) នឹងជួយបង្កើនតម្លាភាព និងទំនុកចិត្តដល់គ្រូពេទ្យកម្ពុជាក្នុងការប្រើប្រាស់បច្ចេកវិទ្យាដើម្បីវិភាគជំងឺភ្នែកឱ្យបានលឿន និងច្បាស់លាស់។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃ Vision Transformer: ចាប់ផ្តើមរៀនពីទ្រឹស្តី និងស្ថាបត្យកម្មរបស់ Vision Transformer (ViT) ដោយប្រើប្រាស់ PyTorchTensorFlow តាមរយៈមេរៀនបង្រៀនឥតគិតថ្លៃនៅលើ YouTube របស់កាណាល់ជំនាញ AI ឬវគ្គសិក្សានៅលើ Coursera
  2. រៀបចំ និងបង្កើនទិន្នន័យរូបភាពវេជ្ជសាស្ត្រ: ស្វែងរកសំណុំទិន្នន័យជំងឺភ្នែកពីគេហទំព័រ Kaggle (ឧទាហរណ៍ដូចជា Ocular Disease Intelligent Recognition - ODIR) រួចអនុវត្តបច្ចេកទេស Data Augmentation ដូចជាបង្វិលរូប (Rotation) ត្រឡប់ (Flipping) និងប្តូរទំហំឱ្យត្រូវនឹងស្តង់ដារដែលម៉ូដែលត្រូវការ។
  3. អភិវឌ្ឍ និងកែសម្រួលម៉ូដែល (Hyper-parameter Tuning): សរសេរកូដដើម្បីបង្ហាត់ម៉ូដែលនៅលើបរិស្ថាន Google Colab ដោយកំណត់ប៉ារ៉ាម៉ែត្រ (Hyperparameters) សំខាន់ៗឱ្យបានត្រឹមត្រូវ ដូចជាកំណត់កញ្ចប់ទិន្នន័យ Batch size: 64, Epochs: 100 និង Learning Rate: 0.001 ដើម្បីទទួលបានលទ្ធផលប្រសើរបំផុត។
  4. អនុវត្តបច្ចេកទេស Explainable AI (XAI): បញ្ជូលបណ្ណាល័យកូដ LIME និង SHAP ទៅក្នុងគម្រោងរបស់អ្នក ដើម្បីបង្កើតចេញជាផែនទីកម្ដៅ (Heatmaps) ដែលអាចចង្អុលបង្ហាញពីតំបន់ខូចខាតលើរ៉េទីនភ្នែក ដែលជាមូលហេតុធ្វើឱ្យម៉ូដែលសម្រេចចិត្តចាត់ថ្នាក់ជំងឺនេះ។
  5. បង្កើតចំណុចប្រទាក់សម្រាប់អ្នកប្រើប្រាស់ (User Interface): សាកល្បងវេចខ្ចប់ម៉ូដែល (Model Deployment) និងបង្កើតជាកម្មវិធី Web App ងាយស្រួលប្រើប្រាស់ដោយពឹងផ្អែកលើ StreamlitGradio ដើម្បីអនុញ្ញាតឱ្យសាស្រ្តាចារ្យ ឬគ្រូពេទ្យសាកល្បងបញ្ចូលរូបភាពស្កែនភ្នែក និងទទួលបានការវិភាគភ្លាមៗ។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Vision Transformer ជាស្ថាបត្យកម្មបញ្ញាសិប្បនិម្មិតដែលកាត់រូបភាពមួយជាបំណែកតូចៗ (Patches) ហើយវិភាគទំនាក់ទំនងរវាងបំណែកទាំងនោះព្រមៗគ្នាដើម្បីយល់ពីរូបភាពទាំងមូល ដោយមិនពឹងផ្អែកលើការស្កែនជាលំដាប់លំដោយដូចម៉ូដែលចាស់ៗ (CNN) ឡើយ។ ដូចជាការយកផ្ទាំងរូបភាពធំមួយមកកាត់ជាបំណែកផ្គុំ (Jigsaw puzzle) ហើយអ្នកអាចមើលឃើញបំណែកទាំងអស់ក្នុងពេលតែមួយ ដើម្បីដឹងថានេះជារូបអ្វី ដោយមិនបាច់មើលតាំងពីឆ្វេងទៅស្តាំម្តងមួយៗ។
Explainable AI ជាបណ្តុំបច្ចេកទេសដែលជួយបកស្រាយ និងបង្ហាញពីហេតុផលនៅពីក្រោយការសម្រេចចិត្តរបស់ប្រព័ន្ធកុំព្យូទ័រ ដែលធ្វើឱ្យមនុស្សអាចយល់ដឹងថាហេតុអ្វីបានជាម៉ូដែលទស្សន៍ទាយលទ្ធផលបែបនេះ ជាជាងគ្រាន់តែបញ្ចេញចម្លើយយ៉ាងគិតិបិទជិត (Black box)។ ដូចជាសិស្សដែលមិនត្រឹមតែផ្តល់ចម្លើយត្រឹមត្រូវក្នុងការប្រឡងគណិតវិទ្យាប៉ុណ្ណោះទេ តែថែមទាំងសរសេរយ៉ាងលម្អិតពីរបៀបគណនាពីមួយជំហានទៅមួយជំហានឱ្យគ្រូបានឃើញច្បាស់លាស់។
Self-attention ជាយន្តការគណនានៅក្នុងម៉ូដែល Transformer ដែលជួយឱ្យប្រព័ន្ធនេះដឹងថាត្រូវផ្តោតការយកចិត្តទុកដាក់លើផ្នែកណាមួយនៃទិន្នន័យ (ឬរូបភាព) ដែលមានសារៈសំខាន់ជាងគេក្នុងការជួយដល់ការសម្រេចចិត្តរួម។ ដូចជាពេលអ្នកកំពុងស្តាប់នរណាម្នាក់និយាយក្នុងបន្ទប់ដែលមានសំឡេងរំខានច្រើន ខួរក្បាលអ្នកនឹងផ្តោតតែទៅលើសំឡេងរបស់អ្នកនិយាយនោះ ហើយច្រានចោលសំឡេងរំខានផ្សេងៗ។
LIME ជាបច្ចេកទេសពន្យល់ AI មួយដែលបង្កើតផែនទីកម្ដៅ (Heatmap) ដោយផ្តោតលើតំបន់តូចៗនៃទិន្នន័យ (ឧទាហរណ៍ ផ្នែកណាមួយនៃរូបភាពភ្នែក) ដើម្បីបង្ហាញថាតំបន់ណាដែលជះឥទ្ធិពលខ្លាំងជាងគេឱ្យ AI សម្រេចចិត្តចាត់ថ្នាក់ជំងឺនោះ។ ដូចជាគ្រូពេទ្យដែលយកម្រាមដៃចង្អុលចំកន្លែងខូចខាតនៅលើរូបភាពស្កែនភ្នែក រួចប្រាប់អ្នកជំងឺថា "ដោយសារតែចំណុចតូចនេះហើយ ទើបខ្ញុំសន្និដ្ឋានថាអ្នកមានជំងឺទឹកដក់ក្នុងភ្នែក"។
SHAP ជាវិធីសាស្ត្រគណនាបែបទ្រឹស្តីហ្គេម (Game Theory) ដែលវាស់វែង និងបែងចែកពិន្ទុឥទ្ធិពលដល់លក្ខណៈពិសេសនីមួយៗ (Features) របស់ទិន្នន័យ ដើម្បីបង្ហាញថាចំណុចនីមួយៗបានចូលរួមចំណែកប៉ុន្មានភាគរយក្នុងការទស្សន៍ទាយចុងក្រោយរបស់ AI។ ដូចជាការបែងចែកប្រាក់រង្វាន់ដល់កីឡាករក្នុងក្រុមបាល់ទាត់ម្នាក់ៗ ដោយផ្អែកលើទំហំនៃការខិតខំប្រឹងប្រែង និងការស៊ុតបញ្ចូលទីរបស់ពួកគេម្នាក់ៗដែលធ្វើឱ្យក្រុមទទួលបានជ័យជម្នះ។
Data Augmentation ជាដំណើរការនៃការបង្កើតទិន្នន័យថ្មីៗបន្ថែមពីលើទិន្នន័យដើមដែលមានស្រាប់ តាមរយៈការបំប្លែងរូបភាពបន្តិចបន្តួចដូចជា ការបង្វិល ការត្រឡប់ ឬការប្តូរទំហំ ដើម្បីបង្រៀនម៉ូដែលឱ្យកាន់តែឆ្លាត និងជៀសវាងបញ្ហាទន្ទេញចាំមាត់ (Overfitting)។ ដូចជាការយកសៀវភៅលំហាត់តែមួយក្បាល មកប្តូរលេខ និងប្រធានបន្តិចបន្តួចដើម្បីបង្កើតជាលំហាត់ថ្មីៗរាប់រយទៀត ឱ្យសិស្សអនុវត្តទាល់តែស្ទាត់ជំនាញ។
Hyper-parameter Tuning ជាការកែសម្រួលតម្លៃកំណត់ជាមុន (Configurations) របស់ម៉ូដែល AI មុនពេលចាប់ផ្តើមដំណើរការបង្ហាត់ ដូចជាអត្រានៃការរៀនសូត្រ (Learning Rate) ដើម្បីស្វែងរកចំណុចដែលម៉ូដែលនោះអាចរៀនបានលឿន និងមានភាពត្រឹមត្រូវខ្ពស់បំផុត។ ដូចជាការសារ៉េខ្សែហ្គីតាឱ្យត្រូវសម្លេង (Tuning) មុនពេលឡើងប្រគុំតន្ត្រី ដើម្បីធានាថាបទចម្រៀងដែលលេងចេញមកមានសម្លេងពិរោះរណ្តំល្អបំផុតតាមដែលអាចធ្វើទៅបាន។
Gradient descent ជាក្បួនដោះស្រាយគណិតវិទ្យាសម្រាប់ស្វែងរកចំណុចដែលទាបបំផុតនៃកំហុស (Loss function) របស់ម៉ូដែល ដោយធ្វើការកែតម្រូវប៉ារ៉ាម៉ែត្របន្តិចម្តងៗទៅតាមទិសដៅដែលកាត់បន្ថយកំហុសនោះរហូតដល់កម្រិតអប្បបរមា។ ដូចជាមនុស្សបិទភ្នែកម្នាក់កំពុងព្យាយាមដើរចុះពីលើភ្នំ គាត់ប្រើជើងដើម្បីស្ទាបរកផ្លូវណាដែលជម្រាលចុះក្រោម ហើយដើរតាមផ្លូវនោះរហូតដល់គាត់ដល់បាតជ្រលងភ្នំ។

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

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

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