បញ្ហា (The Problem)៖ ការដាក់ពង្រាយម៉ូដែល Deep Learning លើឧបករណ៍ Edge (IoT) ជួបប្រទះនឹងបញ្ហាប្រឈមដោយសារដែនកំណត់នៃថាមពលដំណើរការ អង្គចងចាំ និងថាមពលថ្ម ដែលទាមទារឱ្យមានការកាត់បន្ថយទំហំម៉ូដែលដោយមិនធ្វើឱ្យបាត់បង់ភាពត្រឹមត្រូវ។
វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះស្នើឡើងនូវក្របខ័ណ្ឌបង្ហាប់បណ្តាញសរសៃប្រសាទសិប្បនិម្មិត (Neural network compression framework) ដោយប្រើប្រាស់វិធីសាស្ត្រចម្បងៗរួមមាន៖
លទ្ធផលសំខាន់ៗ (The Verdict)៖
| វិធីសាស្ត្រ (Method) | គុណសម្បត្តិ (Pros) | គុណវិបត្តិ (Cons) | លទ្ធផលគន្លឹះ (Key Result) |
|---|---|---|---|
| Baseline Models (ResNet34 & VGG16) ម៉ូដែលដើម (ResNet34 និង VGG16) |
មានភាពត្រឹមត្រូវខ្ពស់ក្នុងការចំណាត់ថ្នាក់រូបភាព និងមានសមត្ថភាពទាញយកលក្ខណៈពិសេសបានល្អ។ | ត្រូវការទំហំអង្គចងចាំធំ ប្រើប្រាស់ថាមពលច្រើន និងយឺតក្នុងការដំណើរការលើឧបករណ៍ IoT។ | ភាពត្រឹមត្រូវ 79% សម្រាប់ ResNet34 និង 83.55% សម្រាប់ VGG16 លើសំណុំទិន្នន័យ CIFAR-10។ |
| Proposed Compressed Framework (Pruning + K-means + 8-bit Quantization) ក្របខ័ណ្ឌបង្ហាប់ដែលបានស្នើ (ការកាត់តម្រង + K-means + កង់ទិច 8-bit) |
កាត់បន្ថយទំហំម៉ូដែលបានយ៉ាងច្រើន សន្សំសំចៃអង្គចងចាំ និងថាមពលថ្ម ស័ក្តិសមបំផុតសម្រាប់ឧបករណ៍ Edge។ | ទាមទារការកែសម្រួលម៉ូដែល (Fine-tuning) យ៉ាងប្រុងប្រយ័ត្នដើម្បីកុំឱ្យបាត់បង់ភាពត្រឹមត្រូវច្រើន និងមានការថយចុះភាពត្រឹមត្រូវបន្តិចបន្តួច។ | កាត់បន្ថយប៉ារ៉ាម៉ែត្របាន 80 ដង ខណៈរក្សាភាពត្រឹមត្រូវ 78.01% (ResNet34) និង 82.34% (VGG16) ដោយខាតបង់ភាពត្រឹមត្រូវតិចជាង 1%។ |
ការចំណាយលើធនធាន (Resource Cost)៖ ការសិក្សានេះប្រើប្រាស់ភាសា Python និងបណ្ណាល័យកូដចំហសម្រាប់ការបង្ហាត់ និងបង្ហាប់ម៉ូដែល ដែលទាមទារកម្លាំងម៉ាស៊ីន (GPU) សម្រាប់វគ្គបង្ហាត់ តែប្រើប្រាស់ធនធានតិចតួចបំផុតសម្រាប់ការដាក់ពង្រាយ។
ការសិក្សានេះប្រើប្រាស់សំណុំទិន្នន័យ CIFAR-10 ដែលជាទិន្នន័យរូបភាពទំហំតូច (32x32 ភីកសែល) សម្រាប់ការស្រាវជ្រាវទូទៅ។ ទិន្នន័យនេះមិនឆ្លុះបញ្ចាំងពីស្ថានភាពជាក់ស្តែងនៅក្នុងប្រទេសកម្ពុជានោះទេ ដូចជារូបភាពផ្លូវថ្នល់ យានយន្ត ឬបរិស្ថានក្នុងស្រុក ដែលទាមទារឱ្យមានការប្រមូលទិន្នន័យជាក់ស្តែងបន្ថែមដើម្បីយកមកប្រើប្រាស់ផ្ទាល់។
វិធីសាស្ត្រនៃការបង្ហាប់ម៉ូដែលនេះមានអត្ថប្រយោជន៍យ៉ាងខ្លាំងសម្រាប់ប្រទេសកម្ពុជា ពិសេសក្នុងការអភិវឌ្ឍប្រព័ន្ធ IoT ឆ្លាតវៃដែលមានតម្លៃទាប និងសន្សំសំចៃថាមពល។
ជារួម បច្ចេកវិទ្យានេះជួយកាត់បន្ថយការពឹងផ្អែកលើប្រព័ន្ធ Cloud ដែលមានតម្លៃថ្លៃ និងអ៊ីនធឺណិត ដែលស័ក្តិសមបំផុតសម្រាប់ការដាក់ពង្រាយបច្ចេកវិទ្យា AI ក្នុងតម្លៃថោកនៅទូទាំងប្រទេសកម្ពុជា។
ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖
| ពាក្យបច្ចេកទេស | ការពន្យល់ជាខេមរភាសា (Khmer Explanation) | និយមន័យសាមញ្ញ (Simple Definition) |
|---|---|---|
| Convolutional neural networks (CNNs) | ជាប្រភេទបណ្តាញសរសៃប្រសាទសិប្បនិម្មិតដែលត្រូវបានរចនាឡើងយ៉ាងពិសេសសម្រាប់វិភាគ និងសម្គាល់ទិន្នន័យរូបភាពឬវីដេអូ ដោយប្រើប្រតិបត្តិការបន្ស៊ីគ្នា (convolution) ដើម្បីទាញយកលក្ខណៈពិសេសរបស់រូបភាព។ | ដូចជាភ្នែក និងខួរក្បាលមនុស្សដែលមើលឃើញរូបភាពមួយ ហើយដឹងថាវាជាសត្វឆ្មា ឬសត្វឆ្កែដោយសម្គាល់តាមរយៈរូបរាង និងពណ៌។ |
| Edge computing | ការដំណើរការនិងវិភាគទិន្នន័យនៅក្បែរប្រភពដែលបង្កើតទិន្នន័យនោះផ្ទាល់ (ដូចជាកាមេរ៉ា ឬទូរស័ព្ទ) ជាជាងការបញ្ជូនទិន្នន័យទាំងអស់ទៅកាន់ម៉ាស៊ីនមេ (Cloud) ដែលនៅឆ្ងាយ។ | ដូចជាការគិតលេខនៅក្នុងក្បាលរបស់អ្នកផ្ទាល់ ជាជាងការសរសេរសំណួរផ្ញើតាមសំបុត្រទៅសួរគ្រូនៅសាលា ដើម្បីសន្សំពេលវេលា។ |
| Filter pruning | បច្ចេកទេសកាត់បន្ថយទំហំម៉ូដែល AI ដោយលុបបំបាត់តម្រង (filters) ឬប៉ារ៉ាម៉ែត្រណាដែលមានតម្លៃតូច ឬមិនសូវមានឥទ្ធិពលដល់ការសម្រេចចិត្តរបស់ម៉ូដែល ដើម្បីឱ្យម៉ូដែលដំណើរការបានលឿន។ | ដូចជាការកាត់មែកឈើដែលងាប់ ឬមិនសូវសំខាន់ចោល ដើម្បីឱ្យដើមឈើលូតលាស់បានល្អ និងមិនសូវធ្ងន់។ |
| 8-bit Quantization | ដំណើរការកាត់បន្ថយកម្រិតភាពសុក្រឹតនៃទិន្នន័យទម្ងន់ (weights) របស់ម៉ូដែលពី 32-bit (ទំហំធំ) មកត្រឹម 8-bit (ទំហំតូច) ដែលជួយកាត់បន្ថយទំហំអង្គចងចាំបានច្រើនយ៉ាងសន្ធឹកសន្ធាប់ តែនៅតែរក្សាភាពត្រឹមត្រូវដែលអាចទទួលយកបាន។ | ដូចជាការបង្រួមរូបភាពទំហំ 4K មកត្រឹម HD ដែលរូបភាពនៅតែអាចមើលយល់ តែស៊ីទំហំផ្ទុកតិចជាងមុនឆ្ងាយ។ |
| K-means Clustering | ជាក្បួនដោះស្រាយសម្រាប់រៀបចំទិន្នន័យជាក្រុម (clusters) ដែលមានលក្ខណៈស្រដៀងគ្នា ដោយស្វែងរកចំណុចកណ្តាល (centroids) នៃក្រុមនីមួយៗ ដើម្បីកាត់បន្ថយភាពស្មុគស្មាញនៃទិន្នន័យ។ | ដូចជាការរៀបចំសៀវភៅក្នុងបណ្ណាល័យតាមប្រភេទ (ប្រវត្តិវិទ្យា វិទ្យាសាស្ត្រ កំណាព្យ) ដើម្បីងាយស្រួលរក និងចំណេញកន្លែង។ |
| Inference | ដំណាក់កាលដែលម៉ូដែល AI ត្រូវបានយកទៅប្រើប្រាស់ជាក់ស្តែង ដើម្បីធ្វើការទស្សន៍ទាយ ឬចំណាត់ថ្នាក់លើទិន្នន័យថ្មី ដែលវាមិនធ្លាប់បានឃើញពីមុនមក ក្រោយពេលដែលវាត្រូវបានបង្ហាត់ (trained) រួចរាល់។ | ដូចជាសិស្សដែលរៀនចប់ ហើយចូលប្រឡងដើម្បីដោះស្រាយលំហាត់ថ្មីៗដោយប្រើចំណេះដឹងដែលធ្លាប់រៀន។ |
| Knowledge distillation | វិធីសាស្ត្របង្ហាត់ម៉ូដែល AI មួយដែលមានទំហំតូច (Student) ឱ្យរៀនចម្លងតាមការសម្រេចចិត្តរបស់ម៉ូដែលមួយទៀតដែលមានទំហំធំនិងស្មុគស្មាញ (Teacher) ដើម្បីទទួលបានសមត្ថភាពប្រហាក់ប្រហែលគ្នាក្នុងទំហំតូចជាង។ | ដូចជាសិស្សក្មេងដែលរៀនសង្ខេបមេរៀន និងយកគំនិតសំខាន់ៗពីសាស្ត្រាចារ្យជើងចាស់ ដើម្បីឱ្យចេះរហ័សនិងពូកែដូចគ្នា។ |
| Memory footprint | ទំហំនៃអង្គចងចាំ (RAM) ដែលកម្មវិធី ឬម៉ូដែលមួយត្រូវការដើម្បីដំណើរការប្រកបដោយប្រសិទ្ធភាពនៅលើឧបករណ៍ណាមួយ។ | ដូចជាទំហំនៃកាតាបស្ពាយរបស់អ្នក បើកាតាបធំពេក (memory footprint ធំ) អ្នកមិនអាចយកវាចូលទៅក្នុងកន្លែងចង្អៀត (ឧបករណ៍ Edge) បានទេ។ |
អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖
ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖