Original Title: Classification of Keratitis from Eye Corneal Photographs using Deep Learning: A Comparative Study on Amoeba, Bacteria, and Fungi
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការចាត់ថ្នាក់ជំងឺរលាកកញ្ចក់ភ្នែកពីរូបថតកញ្ចក់ភ្នែកដោយប្រើការរៀនស៊ីជម្រៅ៖ ការសិក្សាប្រៀបធៀបលើអាមីប បាក់តេរី និងផ្សិត

ចំណងជើងដើម៖ Classification of Keratitis from Eye Corneal Photographs using Deep Learning: A Comparative Study on Amoeba, Bacteria, and Fungi

អ្នកនិពន្ធ៖ Maria Miguel Santos Beirão (Faculdade de Engenharia da Universidade do Porto), Jaime dos Santos Cardoso (Supervisor), João Carlos Ramos Gonçalves Matos (Co-supervisor), Tiago Filipe Sousa Gonçalves (Co-supervisor)

ឆ្នាំបោះពុម្ព៖ 2024

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

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

បញ្ហា (The Problem)៖ ការស្រាវជ្រាវនេះដោះស្រាយបញ្ហាប្រឈមក្នុងការធ្វើរោគវិនិច្ឆ័យជំងឺរលាកកញ្ចក់ភ្នែក (Infectious Keratitis) នៅប្រទេសដែលមានចំណូលទាបនិងមធ្យម ដែលការធ្វើតេស្តមន្ទីរពិសោធន៍មានតម្លៃថ្លៃ និងកម្រ ហើយការវិនិច្ឆ័យតាមគ្លីនិកតែមួយមុខមានភាពលំបាកដោយសាររោគសញ្ញាស្រដៀងគ្នារវាងបាក់តេរី ផ្សិត និងអាមីប។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះប្រើប្រាស់បច្ចេកវិទ្យាការរៀនស៊ីជម្រៅ (Deep Learning) លើបណ្តុំទិន្នន័យរូបភាពកញ្ចក់ភ្នែក ដើម្បីបង្កើតគំរូដែលអាចចាត់ថ្នាក់ប្រភេទនៃការឆ្លងមេរោគបានយ៉ាងជាក់លាក់។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Baseline Single-Task Models (DenseNet121)
គំរូភារកិច្ចទោល (Baseline Single-Task) ដោយប្រើ DenseNet121 ដាច់ដោយឡែកសម្រាប់ជំងឺនីមួយៗ
មានភាពសាមញ្ញក្នុងការអនុវត្ត និងផ្តល់លទ្ធផលល្អសម្រាប់ការវិនិច្ឆ័យជំងឺតែមួយមុខ។ ត្រូវការធនធានកុំព្យូទ័រច្រើនព្រោះត្រូវដំណើរការគំរូចំនួន ៣ ដាច់ដោយឡែកពីគ្នា ហើយមិនអាចសិក្សាពីទំនាក់ទំនងរវាងការឆ្លងមេរោគច្រើនមុខក្នុងពេលតែមួយ (Multi-infection)។ AUROC សម្រាប់បាក់តេរីគឺ ០.៨៣-០.៨៩ ដែលល្អជាង Multitask V1 បន្តិច ប៉ុន្តែមិនមានប្រសិទ្ធភាពក្នុងការប្រើប្រាស់ធនធាន។
Multitask V1 (Shared Backbone)
គំរូពហុភារកិច្ច V1 (Multitask V1) ដែលប្រើឆ្អឹងខ្នងរួមគ្នា និងបំបែកជា ៣ ផ្នែកនៅស្រទាប់ចុងក្រោយ
កាត់បន្ថយពេលវេលានិងធនធានកុំព្យូទ័រ ដោយដំណើរការម្តងអាចព្យាករណ៍បានទាំង ៣ ជំងឺ។ ជួបបញ្ហាក្នុងការចាត់ថ្នាក់បាក់តេរី (False Positives ច្រើន) ដោយសារអតុល្យភាពទិន្នន័យ។ Balanced Accuracy សម្រាប់បាក់តេរីធ្លាក់ចុះមកនៅត្រឹម ០.៥៩-០.៦៥។
Multitask V2 with Clinical Loss (Proposed)
គំរូពហុភារកិច្ច V2 ជាមួយអនុគមន៍ Clinical Loss (គិតគូរពីតម្លៃព្យាបាល)
ផ្តល់អាទិភាពដល់ជំងឺដែលមានតម្លៃព្យាបាលខ្ពស់ (ដូចជាផ្សិត និងអាមីប) ដើម្បីកាត់បន្ថយហានិភ័យហិរញ្ញវត្ថុរបស់អ្នកជំងឺ និងដោះស្រាយបញ្ហាទិន្នន័យមិនស្មើគ្នា។ តម្រូវឱ្យមានការកំណត់តម្លៃពិតប្រាកដនៃការព្យាបាលក្នុងអនុគមន៍បាត់បង់ (Loss function) ដែលអាចប្រែប្រួលទៅតាមតំបន់។ ទទួលបានលទ្ធផលល្អបំផុត ដោយ AUROC សម្រាប់អាមីបឡើងដល់ ០.៩៦ និងផ្សិត ០.៨៧។

ការចំណាយលើធនធាន (Resource Cost)៖ ការអនុវត្តវិធីសាស្ត្រនេះតម្រូវឱ្យមានធនធានកុំព្យូទ័រមធ្យមទៅខ្ពស់សម្រាប់ការបង្វឹកគំរូ (Training) ប៉ុន្តែអាចដំណើរការលើកុំព្យូទ័រធម្មតាបាននៅពេលដាក់ឱ្យប្រើប្រាស់។

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

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

ការសិក្សានេះប្រើប្រាស់ទិន្នន័យពីប្រទេសប្រេស៊ីល (UNIFESP) ដែលមានអ្នកជំងឺភាគច្រើនជាបាក់តេរី (៥៦.៩៨%) ខណៈផ្សិតនិងអាមីបមានចំនួនតិច។ សម្រាប់កម្ពុជា នេះជាចំណុចគួរពិចារណា ព្រោះប្រជាជនកម្ពុជាធ្វើកសិកម្មច្រើន ដែលអាចមានអត្រាឆ្លងផ្សិត (Fungal Keratitis) ខ្ពស់ជាងទិន្នន័យក្នុងគំរូនេះ។ ម៉្យាងទៀត លក្ខណៈរូបសាស្ត្រនៃភ្នែកជនជាតិអាស៊ីអាគ្នេយ៍អាចខុសគ្នាពីប្រជាជនអាមេរិកឡ Latin។

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

វិធីសាស្ត្រនេះមានប្រយោជន៍យ៉ាងខ្លាំងសម្រាប់ប្រទេសកម្ពុជា ដោយសារកង្វះខាតអ្នកជំនាញភ្នែកនៅតាមតំបន់ដាច់ស្រយាល និងតម្លៃខ្ពស់នៃការធ្វើតេស្តមន្ទីរពិសោធន៍។

ការប្រើប្រាស់ AI លើរូបថតភ្នែក (Smartphone photography) គឺជាដំណោះស្រាយដែលមានតម្លៃសមរម្យ និងអាចពង្រីកវិសាលភាពសេវាសុខភាពភ្នែកនៅកម្ពុជាបានយ៉ាងមានប្រសិទ្ធភាព។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះ Deep Learning និង PyTorch: និស្សិតគួរចាប់ផ្តើមសិក្សាពីការប្រើប្រាស់ (PyTorch) និងយល់ដឹងអំពីយន្តការនៃ CNN Architectures ដូចជា (DenseNet121) ឬ (ResNet50) ជាមុនសិន។
  2. ប្រមូលទិន្នន័យក្នុងស្រុក (Local Dataset Collection): សហការជាមួយមន្ទីរពេទ្យភ្នែកធំៗដូចជា មន្ទីរពេទ្យព្រះអង្គឌួង ដើម្បីប្រមូលរូបថតកញ្ចក់ភ្នែកនិងលទ្ធផល Lab របស់អ្នកជំងឺកម្ពុជា ដើម្បីកាត់បន្ថយ Bias នៃទិន្នន័យបរទេស។
  3. អនុវត្តបច្ចេកទេស Transfer Learning: ប្រើប្រាស់គំរូដែលបានបង្វឹកស្រាប់ (Pre-trained weights) ពី ImageNet ហើយធ្វើការបង្វឹកបន្ថែម (Fine-tuning) លើទិន្នន័យក្នុងស្រុក ដើម្បីសន្សំសំចៃធនធាន។
  4. ដោះស្រាយបញ្ហាទិន្នន័យមិនស្មើគ្នា (Imbalanced Data): អនុវត្តបច្ចេកទេសដូចជា (Class Weights) ឬ (Clinical Loss Function) ដូចក្នុងឯកសារនេះ ដើម្បីកុំឱ្យគំរូ AI ផ្អៀងទៅរកតែជំងឺដែលជួបប្រទះញឹកញាប់។
  5. វាយតម្លៃភាពលំអៀង (Bias Evaluation): ធ្វើតេស្តគំរូដោយបែងចែកតាម ភេទ និង អាយុ ដើម្បីធានាថា AI មិនប្រើប្រាស់លក្ខណៈអត្តសញ្ញាណទាំងនេះក្នុងការធ្វើរោគវិនិច្ឆ័យខុស។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Deep Learning ជាវិធីសាស្ត្រមួយនៃបញ្ញាសិប្បនិម្មិត (AI) ដែលប្រើបណ្តាញសរសៃប្រសាទសិប្បនិម្មិត (Neural Networks) ច្រើនជាន់ ដើម្បីរៀននិងទាញយកលក្ខណៈសម្គាល់ពីទិន្នន័យដ៏ច្រើនដោយស្វ័យប្រវត្តិ ដោយមិនចាំបាច់មានមនុស្សកំណត់លក្ខណៈទាំងនោះជាមុន។ ប្រៀបដូចជាការបង្រៀនកូនក្មេងឱ្យស្គាល់សត្វឆ្កែ ដោយបង្ហាញរូបថតឆ្កែរាប់ពាន់សន្លឹក រហូតដល់គេអាចចំណាំវាបានដោយខ្លួនឯង។
Multitask Learning ជាបច្ចេកទេសក្នុងម៉ាស៊ីនរៀន (Machine Learning) ដែលឱ្យគំរូមួយរៀនធ្វើកិច្ចការច្រើនក្នុងពេលតែមួយ (ឧទាហរណ៍៖ ព្យាករណ៍ទាំងបាក់តេរី ផ្សិត និងអាមីប) ដើម្បីឱ្យវាអាចចែករំលែកចំណេះដឹងរវាងកិច្ចការទាំងនោះ និងបង្កើនប្រសិទ្ធភាពសរុប។ ដូចជាការរៀនគណិតវិទ្យានិងរូបវិទ្យាក្នុងពេលតែមួយ ដែលការយល់ដឹងពីមុខវិជ្ជាមួយ អាចជួយឱ្យរៀនមុខវិជ្ជាមួយទៀតបានល្អជាងមុន។
Transfer Learning ជាការយកចំណេះដឹងដែលគំរូ AI បានរៀនពីកិច្ចការមួយ (ឧ. សម្គាល់វត្ថុទូទៅ) មកប្រើប្រាស់ជាមូលដ្ឋានដើម្បីដោះស្រាយកិច្ចការថ្មីមួយទៀតដែលស្រដៀងគ្នា (ឧ. សម្គាល់ជំងឺភ្នែក) ដើម្បីសន្សំពេលវេលានិងទិន្នន័យ។ ដូចជាអ្នកចេះជិះកង់ហើយ នោះអ្នកនឹងរៀនជិះម៉ូតូបានលឿនជាងអ្នកដែលមិនធ្លាប់ចេះជិះកង់សោះ។
Clinical Loss Function ជាអនុគមន៍គណិតវិទ្យាដែលត្រូវបានកែសម្រួលដើម្បីគិតគូរពីផលវិបាកជាក់ស្តែងក្នុងវិស័យសុខាភិបាល។ ក្នុងករណីនេះ វាផ្តល់ទម្ងន់ធ្ងន់ជាងទៅលើកំហុសនៃការមិនរកឃើញជំងឺដែលមានតម្លៃព្យាបាលថ្លៃ ដើម្បីកាត់បន្ថយហានិភ័យហិរញ្ញវត្ថុរបស់អ្នកជំងឺ។ ប្រៀបដូចជាការដាក់ពិន័យធ្ងន់ជាងទៅលើគ្រូពេទ្យដែលមិនបានរកឃើញជំងឺធ្ងន់ធ្ងរ ជាងជំងឺស្រាលៗ។
Saliency Maps ជាបច្ចេកទេសបង្កើតរូបភាពដែលបង្ហាញថា ផ្នែកណាខ្លះនៃរូបភាពដើម (ឧ. ផ្នែកកញ្ចក់ភ្នែក) ដែលគំរូ AI យកមកធ្វើជាមូលដ្ឋានក្នុងការសម្រេចចិត្ត។ វាជួយឱ្យយើងដឹងថា AI កំពុងមើលលើចំណុចត្រឹមត្រូវឬអត់។ ដូចជាការយកប៊ិចហាយឡាយ (Highlight) មកគូសលើអត្ថបទត្រង់កន្លែងដែលសំខាន់ ដើម្បីបង្ហាញថាហេតុអ្វីបានជាយើងសន្និដ្ឋានបែបនេះ។
Data Augmentation ជាវិធីសាស្ត្របង្កើតទិន្នន័យថ្មីៗពីទិន្នន័យដែលមានស្រាប់ ដោយការកែប្រែរូបភាពដើមបន្តិចបន្តួច (ដូចជា បង្វិល ប្តូរពណ៌ ឬត្រឡប់រូបភាព) ដើម្បីឱ្យគំរូ AI មានទិន្នន័យរៀនកាន់តែច្រើន និងមិនងាយចងចាំរូបភាពដដែលៗ។ ដូចជាការយកក្រដាសប្រឡងចាស់មកថតចម្លង ហើយបង្វិលក្រដាស ឬប្តូរពន្លឺ ដើម្បីឱ្យសិស្សរៀនមើលសំណួរក្នុងទម្រង់ផ្សេងៗគ្នា។
AUROC (Area Under the Receiver Operating Characteristic) ជាកម្រិតរង្វាស់ស្ថិតិដែលបង្ហាញពីសមត្ថភាពរបស់គំរូក្នុងការបែងចែករវាងករណីវិជ្ជមាន (មានជំងឺ) និងករណីអវិជ្ជមាន (គ្មានជំងឺ) នៅគ្រប់កម្រិតនៃការសម្រេចចិត្ត (Thresholds)។ គឺជាពិន្ទុសរុបពី ០ ដល់ ១ ដែលប្រាប់ថាតើគ្រូពេទ្យ (ឬ AI) ពូកែប៉ុណ្ណាក្នុងការញែកអ្នកឈឺ និងអ្នកជា ដាច់ពីគ្នា។

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

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

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