បញ្ហា (The Problem)៖ ឯកសារនេះដោះស្រាយបញ្ហាប្រឈមក្នុងការបង្កើតប្រព័ន្ធធ្វើអន្តរកម្មជាសំឡេងបន្តប្រកបដោយប្រសិទ្ធភាព ដើម្បីជួយដល់ជនពិការក្នុងការបំពេញការងារប្រចាំថ្ងៃដូចជាការស្វែងរកតាម Google និងការរៀបចំឯកសារដោយមិនចាំបាច់ប្រើប្រាស់ដៃ។
វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះប្រើប្រាស់ស្ថាបត្យកម្មមានបីម៉ូឌុល (អ្នកប្រើប្រាស់ API សំឡេង និងប្រព័ន្ធ) ដោយប្រើប្រាស់ភាសា Python និងម៉ូដែលស្ថិតិសូរស័ព្ទ ដើម្បីដំណើរការនិងបកប្រែសញ្ញាសំឡេងទៅជាពាក្យបញ្ជាឌីជីថល។
លទ្ធផលសំខាន់ៗ (The Verdict)៖
| វិធីសាស្ត្រ (Method) | គុណសម្បត្តិ (Pros) | គុណវិបត្តិ (Cons) | លទ្ធផលគន្លឹះ (Key Result) |
|---|---|---|---|
| Online Speech Recognition (Google Speech API) ការទទួលស្គាល់សំឡេងអនឡាញ (Google Speech API) |
មានភាពត្រឹមត្រូវខ្ពស់ ងាយស្រួលក្នុងការប្រើប្រាស់ និងមិនតម្រូវឱ្យមានការដំឡើងកម្មវិធី ឬទិន្នន័យស្មុគស្មាញនៅក្នុងម៉ាស៊ីន។ | ទាមទារឱ្យមានការភ្ជាប់អ៊ីនធឺណិតជានិច្ច ដើម្បីដំណើរការបំប្លែងសំឡេង។ | អាចបំប្លែងសំឡេងទៅជាអត្ថបទ និងបញ្ជាការស្វែងរកតាមគេហទំព័រ (web browser) បានយ៉ាងរលូន និងជោគជ័យ។ |
| Offline Speech Recognition (e.g., Pocket Sphinx) ការទទួលស្គាល់សំឡេងអော့ហ្វឡាញ (ឧទាហរណ៍ Pocket Sphinx) |
អាចដំណើរការទាញយកនិងបំប្លែងសំឡេងបានដោយមិនចាំបាច់មានការភ្ជាប់បណ្តាញអ៊ីនធឺណិត។ | មានភាពស្មុគស្មាញខ្លាំងក្នុងការដំឡើង និងទាមទារការកំណត់រចនាសម្ព័ន្ធ (dependencies) ព្រមទាំងទិន្នន័យយ៉ាងច្រើន។ | មិនត្រូវបានជ្រើសរើសសម្រាប់ការអនុវត្តជាក់ស្តែងនៅក្នុងការសិក្សានេះទេ ដោយសារភាពស្មុគស្មាញសម្រាប់អ្នកអភិវឌ្ឍន៍។ |
ការចំណាយលើធនធាន (Resource Cost)៖ ឯកសារនេះបានបញ្ជាក់យ៉ាងច្បាស់អំពីតម្រូវការផ្នែករឹង (Hardware) និងផ្នែកទន់ (Software) សម្រាប់ដំណើរការប្រព័ន្ធដោយរលូនលើម៉ាស៊ីនកុំព្យូទ័រផ្ទាល់ខ្លួន។
ការសិក្សានេះផ្តោតសំខាន់លើការប្រើប្រាស់ Google Speech API ដែលត្រូវបានបង្វឹកជាចម្បងលើទិន្នន័យសំឡេងភាសាអង់គ្លេស និងភាសាធំៗផ្សេងទៀត។ វាមិនមានការបញ្ជាក់អំពីភាពជោគជ័យក្នុងការប្រើប្រាស់ជាមួយគ្រាមភាសាតំបន់ ឬអាកប្បកិរិយានៃសំឡេងអ្នកនិយាយភាសាផ្សេងនោះទេ ដែលនេះជាបញ្ហាប្រឈមដ៏ធំមួយប្រសិនបើយើងចង់យកមកអនុវត្តដោយផ្ទាល់សម្រាប់ភាសាខ្មែរនៅកម្ពុជា។
ទោះបីជាប្រព័ន្ធនេះរចនាឡើងសម្រាប់ភាសាអង់គ្លេសក៏ដោយ ក៏ស្ថាបត្យកម្មប្រព័ន្ធអន្តរកម្មតាមសំឡេងនេះ មានសក្តានុពលយ៉ាងធំធេងក្នុងការនាំយកមកអនុវត្តនៅកម្ពុជា។
សរុបមក បច្ចេកវិទ្យានេះជាមូលដ្ឋានគ្រឹះដ៏ល្អសម្រាប់ការអភិវឌ្ឍន៍ប្រព័ន្ធស្វ័យប្រវត្តិកម្ម ប៉ុន្តែទាមទារឱ្យមានការវិនិយោគលើការប្រមូលទិន្នន័យសំឡេងភាសាខ្មែរ (Speech Corpus) ជាមុនសិន ទើបអាចប្រើប្រាស់បានពេញលេញ។
ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖
| ពាក្យបច្ចេកទេស | ការពន្យល់ជាខេមរភាសា (Khmer Explanation) | និយមន័យសាមញ្ញ (Simple Definition) |
|---|---|---|
| Hidden Markov Model | ម៉ូដែលស្ថិតិដែលប្រើសម្រាប់ប្រព័ន្ធដែលមានស្ថានភាពលាក់កំបាំង (hidden states) ដោយវាគណនាប្រូបាប៊ីលីតេនៃការផ្លាស់ប្តូរពីស្ថានភាពមួយទៅស្ថានភាពមួយទៀត។ ក្នុងប្រព័ន្ធនេះ វាត្រូវបានប្រើដើម្បីទស្សន៍ទាយពាក្យដែលអ្នកប្រើប្រាស់និយាយដោយផ្អែកលើលក្ខណៈនៃសញ្ញាសំឡេង។ | ដូចជាការព្យាយាមទស្សន៍ទាយអាកាសធាតុ (ភ្លៀង ឬ ស្រឡះ) ដោយគ្រាន់តែមើលសម្លៀកបំពាក់របស់មនុស្សដែលដើរចូលក្នុងបន្ទប់ ដោយមិនបានឃើញមេឃផ្ទាល់។ |
| Viterbi algorithm | ក្បួនដោះស្រាយតាមបែបគណិតវិទ្យាដែលប្រើជាមួយ Hidden Markov Model ដើម្បីស្វែងរកខ្សែសង្វាក់នៃស្ថានភាពលាក់កំបាំងដែលមានប្រូបាប៊ីលីតេខ្ពស់បំផុត។ វាជួយស្វែងរកលំដាប់ពាក្យដែលត្រឹមត្រូវបំផុតយ៉ាងលឿនដោយមិនចាំបាច់គណនាគ្រប់លទ្ធភាពទាំងអស់។ | ដូចជាកម្មវិធី Google Maps ដែលស្វែងរកផ្លូវលឿនបំផុតទៅកាន់គោលដៅ ដោយប្រៀបធៀបតែផ្លូវធំៗ និងបោះបង់ចោលផ្លូវទាល់ឬផ្លូវវាងដែលយឺតជាងគេ។ |
| acoustic model | ម៉ូដែលដែលបង្កើតទំនាក់ទំនងរវាងសញ្ញាសំឡេង (audio signal) និងឯកតាសូរស័ព្ទ (phonemes) ដើម្បីបែងចែកថាតើសំឡេងដែលបានបញ្ចូលនោះជាតួអក្សរ ឬពាក្យអ្វី។ | ដូចជាសៀវភៅវចនានុក្រមសំឡេង ដែលប្រាប់កុំព្យូទ័រថា រលកសំឡេងរាងបែបនេះ គឺជាសូរអក្សរ "ក" ឬ "ខ"។ |
| Mel Frequency Cepstrum Coefficients (MFCC) | បច្ចេកទេសទាញយកលក្ខណៈពិសេស (Feature extraction) ពីរលកសំឡេង ដែលតំណាងឱ្យរូបរាងថាមពលនៃសំឡេងក្នុងកម្រិតប្រេកង់រលកដែលត្រចៀកមនុស្សអាចស្តាប់ឮ និងបែងចែកដាច់ពីគ្នា។ | ដូចជាការយកស្នាមម្រាមដៃរបស់សំឡេង ដើម្បីឱ្យកុំព្យូទ័រអាចចំណាំដឹងថាសំឡេងនេះខុសពីសំឡេងមួយទៀតយ៉ាងដូចម្តេច ទោះជាមនុស្សពីរនាក់និយាយពាក្យតែមួយក៏ដោយ។ |
| Word error rate | រង្វាស់សម្រាប់វាយតម្លៃភាពត្រឹមត្រូវនៃប្រព័ន្ធទទួលស្គាល់សំឡេង ដោយគិតតាមរយៈការបូកបញ្ចូលចំនួនពាក្យដែលបាត់ (deletions), បន្ថែមខុស (insertions), និងជំនួសខុស (substitutions) ចែកនឹងចំនួនពាក្យសរុប។ | ដូចជាការដាក់ពិន្ទុក្នុងការសរសេរតាមអាន (Dictation) ដោយកាត់ពិន្ទុរាល់ពេលសិស្សសរសេរខុសអក្ខរាវិរុទ្ធ សរសេរលើស ឬសរសេរខ្វះពាក្យ។ |
| tokenization | ដំណើរការនៃការបំបែកអត្ថបទវែងៗ ឬសញ្ញាបញ្ចូលទៅជាបំណែកតូចៗ (ដូចជាពាក្យ ឃ្លា ឬតួអក្សរ) ដែលហៅថា tokens ដើម្បីឱ្យកុំព្យូទ័រងាយស្រួលយកទៅវិភាគនិងដំណើរការម៉ាស៊ីនបន្ត (machine level processing)។ | ដូចជាការកាត់ប្រយោគមួយឃ្លាវែងទៅជាពាក្យនីមួយៗដាច់ពីគ្នា ដើម្បីងាយស្រួលយកទៅបកប្រែម្តងមួយពាក្យ។ |
| Dynamic Time Warping | ក្បួនដោះស្រាយសម្រាប់វាស់វែងភាពស្រដៀងគ្នារវាងស៊េរីទិន្នន័យពីរ (ដូចជារលកសំឡេង) ដែលអាចមានល្បឿន ឬពេលវេលាខុសគ្នា។ វាជួយឱ្យកុំព្យូទ័រស្គាល់ពាក្យតែមួយ ទោះបីជាអ្នកនិយាយ និយាយលឿន ឬយឺតក៏ដោយ។ | ដូចជាការប្រៀបធៀបចម្រៀងមួយបទដែលច្រៀងលឿន និងច្រៀងយឺត ដោយទាញឱ្យចង្វាក់វាស៊ីគ្នាដើម្បីដឹងថាវាពិតជាបទតែមួយឬអត់។ |
អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖
ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖