បញ្ហា (The Problem)៖ ការសិក្សានេះដោះស្រាយបញ្ហានៃការវិវត្តយ៉ាងឆាប់រហ័សរបស់មេរោគកុំព្យូទ័រ (Malware variants) ដែលធ្វើឱ្យកម្មវិធីកម្ចាត់មេរោគតាមបែបប្រពៃណីពិបាកក្នុងការរកឃើញ និងទាមទារការបង្វឹកគំរូឡើងវិញទាំងស្រុងដែលចំណាយពេលនិងធនធានច្រើន។
វិធីសាស្ត្រ (The Methodology)៖ ការស្រាវជ្រាវនេះប្រើប្រាស់វិធីសាស្ត្រការរៀនបន្ថែម (Incremental Learning) ដែលអនុញ្ញាតឱ្យប្រព័ន្ធរក្សាចំណេះដឹងដែលមានស្រាប់ និងបន្តរៀនពីទិន្នន័យថ្មីៗដើម្បីសម្របខ្លួនទៅនឹងការគំរាមកំហែងដែលផ្លាស់ប្តូរ។
លទ្ធផលសំខាន់ៗ (The Verdict)៖
| វិធីសាស្ត្រ (Method) | គុណសម្បត្តិ (Pros) | គុណវិបត្តិ (Cons) | លទ្ធផលគន្លឹះ (Key Result) |
|---|---|---|---|
| Proposed Incremental Learning Model គំរូការរៀនបន្ថែមដែលបានស្នើឡើង (ដោយប្រើ CNN និង PCA) |
មានសមត្ថភាពធ្វើបច្ចុប្បន្នភាពចំណេះដឹងជាបន្តបន្ទាប់ដោយមិនចាំបាច់បង្វឹកគំរូឡើងវិញពីដើម និងអាចរកឃើញប្រភេទមេរោគថ្មីៗបានយ៉ាងមានប្រសិទ្ធភាព។ | ទាមទារការរចនាប្រព័ន្ធដ៏ស្មុគស្មាញដើម្បីថ្លឹងថ្លែងរវាងការរក្សាចំណេះដឹងចាស់ និងការទទួលយកចំណេះដឹងថ្មី (Stability-Plasticity Dilemma)។ | សម្រេចបានភាពត្រឹមត្រូវ (Accuracy) ៩៩.៣៤% និង F1-Score ៩៩.២១% លើទិន្នន័យចម្រុះ។ |
| Traditional Machine Learning ការរៀនម៉ាស៊ីនបែបប្រពៃណី (Static Learning) |
ងាយស្រួលក្នុងការអនុវត្តដំបូង និងមានប្រសិទ្ធភាពខ្ពស់លើទិន្នន័យដែលមានលក្ខណៈថេរ។ | មិនអាចសម្របខ្លួនទៅនឹងមេរោគបំប្លែងថ្មីបានល្អ និងតម្រូវឱ្យបង្វឹកគំរូឡើងវិញទាំងស្រុងដែលចំណាយពេលនិងធនធានច្រើន។ | មានការលំបាកក្នុងការរកឃើញប្រភេទមេរោគថ្មី (Zero-day attacks) បើប្រៀបធៀបនឹងវិធីសាស្ត្រ Incremental។ |
ការចំណាយលើធនធាន (Resource Cost)៖ ការសិក្សានេះបង្ហាញថាគំរូនេះអាចដំណើរការបានយ៉ាងល្អលើកុំព្យូទ័រដែលមានកម្លាំងមធ្យម មិនចាំបាច់ត្រូវការម៉ាស៊ីនមេ (Server) ខ្នាតធំពេកទេ។
ការសិក្សានេះប្រើប្រាស់សំណុំទិន្នន័យអន្តរជាតិ (VirusShare, Kaggle) ដែលមានលក្ខណៈទូទៅ។ សម្រាប់បរិបទកម្ពុជា វាអាចខ្វះទិន្នន័យអំពីមេរោគដែលបង្កើតឡើងជាក់លាក់ដើម្បីវាយប្រហារធនាគារ ឬស្ថាប័នក្នុងស្រុក ប៉ុន្តែលក្ខណៈបច្ចេកទេសនៃមេរោគគឺមានលក្ខណៈសកល ដូច្នេះនៅតែអាចអនុវត្តបាន។
វិធីសាស្ត្រនេះមានសារៈសំខាន់ខ្លាំងសម្រាប់កម្ពុជា ដោយសារស្ថាប័នភាគច្រើនមិនទាន់មានធនធានកុំព្យូទ័រខ្នាតធំដើម្បីបង្វឹក AI ជារៀងរាល់ថ្ងៃ។
បច្ចេកវិទ្យានេះផ្តល់នូវដំណោះស្រាយដែលមានប្រសិទ្ធភាពខ្ពស់ និងសន្សំសំចៃធនធាន ដែលស័ក្តិសមសម្រាប់បរិបទនៃប្រទេសកំពុងអភិវឌ្ឍន៍ដូចកម្ពុជា។
ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖
| ពាក្យបច្ចេកទេស | ការពន្យល់ជាខេមរភាសា (Khmer Explanation) | និយមន័យសាមញ្ញ (Simple Definition) |
|---|---|---|
| Incremental Learning | គឺជាវិធីសាស្ត្រនៃ Machine Learning ដែលអនុញ្ញាតឱ្យប្រព័ន្ធបន្តរៀនពីទិន្នន័យថ្មីៗជាបន្តបន្ទាប់ ដោយរក្សាចំណេះដឹងចាស់ទុក និងមិនចាំបាច់បង្ហាត់គំរូ (Model) ឡើងវិញតាំងពីដើមនោះទេ។ | ដូចជាគ្រូពេទ្យម្នាក់ដែលបន្តរៀនអំពីជំងឺថ្មីៗបន្ថែមទៀតនៅក្នុងអាជីពរបស់គាត់ ដោយមិនចាំបាច់ត្រឡប់ទៅរៀននៅសាលាពេទ្យឡើងវិញពីដំបូងឡើយ។ |
| Stochastic Gradient Descent (SGD) | គឺជាបច្ចេកទេសគណិតវិទ្យាដែលប្រើដើម្បីកែតម្រូវប៉ារ៉ាម៉ែត្ររបស់ម៉ូដែលបន្តិចម្តងៗ ដើម្បីកាត់បន្ថយកំហុសក្នុងការទស្សន៍ទាយ ដោយធ្វើការគណនាលើផ្នែកតូចៗនៃទិន្នន័យជាជាងទិន្នន័យទាំងអស់។ | ដូចជាការដើរចុះពីលើភ្នំនៅពេលមានអ័ព្ទ ដោយឈានជើងមួយជំហានម្តងៗទៅតាមជម្រាលដីដែលនៅពីមុខ ដើម្បីចុះទៅដល់ដីរាបស្មើ។ |
| Softmax function | គឺជាអនុគមន៍គណិតវិទ្យាដែលបំប្លែងពិន្ទុឆៅ (Raw scores) ពីបណ្តាញសរសៃប្រសាទ (Neural Network) ទៅជាភាគរយនៃប្រូបាប៊ីលីតេ ដើម្បីកំណត់ថាតើទិន្នន័យនោះស្ថិតក្នុងក្រុមមួយណា (ឧទាហរណ៍៖ ជាមេរោគ ឬមិនមែន)។ | ដូចជាការបំប្លែងចំនួនសន្លឹកឆ្នោតទៅជាភាគរយ ដើម្បីមើលថាបេក្ខជនមួយណាមានសង្ឃឹមឈ្នះច្រើនជាងគេ។ |
| Principal Component Analysis (PCA) | គឺជាវិធីសាស្ត្រកាត់បន្ថយភាពស្មុគស្មាញនៃទិន្នន័យ ដោយជ្រើសរើសយកតែលក្ខណៈសំខាន់ៗបំផុត និងលុបបំបាត់ព័ត៌មានដែលមិនចាំបាច់ ឬស្ទួនគ្នា ដើម្បីឱ្យកុំព្យូទ័រដំណើរការលឿន។ | ដូចជាការសង្ខេបសៀវភៅដ៏ក្រាស់មួយក្បាល មកនៅត្រឹមប៉ុន្មានទំព័រដែលមានតែចំណុចសំខាន់ៗបំផុត។ |
| Convolutional Neural Network (CNN) | គឺជាប្រភេទនៃបណ្តាញសរសៃប្រសាទសិប្បនិម្មិត (AI) ដែលមានសមត្ថភាពខ្ពស់ក្នុងការវិភាគរូបភាព ឬទិន្នន័យដែលមានរចនាសម្ព័ន្ធជាក្រឡា ដើម្បីស្វែងរកលក្ខណៈពិសេសដោយស្វ័យប្រវត្តិ។ | ដូចជាការប្រើកែវយឹតដើម្បីពិនិត្យមើលរូបភាពមួយផ្នែកម្តងៗ ដើម្បីស្វែងរកលក្ខណៈពិសេសដូចជា គែម ឬរូបរាងរបស់វត្ថុ។ |
| Transfer Learning | គឺជាបច្ចេកទេសដែលយកចំណេះដឹងពីម៉ូដែល AI ដែលបានបង្ហាត់រួចរាល់លើការងារមួយ (ដែលមានទិន្នន័យច្រើន) មកប្រើប្រាស់ដើម្បីដោះស្រាយបញ្ហាថ្មីមួយទៀតដែលស្រដៀងគ្នា ដើម្បីកុំឱ្យខាតពេលបង្ហាត់ថ្មី។ | ដូចជាអ្នកចេះលេងហ្គីតាស្រាប់ អាចយកជំនាញនោះទៅរៀនលេងឧបករណ៍តន្ត្រី អ៊ុយគូលេឡេ (Ukulele) បានលឿនជាងអ្នកមិនចេះសោះ។ |
| Fine-tuning | គឺជាដំណើរការកែតម្រូវបន្តិចបន្តួចទៅលើម៉ូដែល AI ដែលមានស្រាប់ (Pre-trained model) ដើម្បីឱ្យវាធ្វើការកាន់តែច្បាស់លាស់ជាមួយទិន្នន័យថ្មី ឬកិច្ចការជាក់លាក់ណាមួយ។ | ដូចជាការបង្វិលប៊ូតុងវិទ្យុតិចៗ ដើម្បីឱ្យសំឡេងកាន់តែច្បាស់ បន្ទាប់ពីបានរកឃើញប៉ុស្តិ៍ដែលចង់ស្តាប់ឃើញហើយ។ |
អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖
ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖