Original Title: CTC in the Context of Generalized Full-Sum HMM Training
Source: dx.doi.org
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

CTC ក្នុងបរិបទនៃការបណ្តុះបណ្តាលម៉ូដែល Generalized Full-Sum HMM

ចំណងជើងដើម៖ CTC in the Context of Generalized Full-Sum HMM Training

អ្នកនិពន្ធ៖ Albert Zeyer, Eugen Beck, Ralf Schlüter, Hermann Ney

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

វិស័យសិក្សា៖ Machine Learning

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

បញ្ហា (The Problem)៖ ឯកសារនេះដោះស្រាយបញ្ហានៃការយល់ដឹងពីសកម្មភាពមិនប្រក្រតីឬ "peaky" (ការប្រមូលផ្តុំលទ្ធផលខ្លាំងក្នុងរយៈពេលខ្លី) របស់ម៉ូដែល CTC នៅក្នុងប្រព័ន្ធសម្គាល់សំឡេង (Speech Recognition)។

វិធីសាស្ត្រ (The Methodology)៖ អ្នកស្រាវជ្រាវបានបង្កើតទម្រង់ទូទៅនៃការបណ្តុះបណ្តាលកូនកាត់ HMM-NN ដោយប្រើវិធីសាស្ត្រ full-sum លើលំដាប់ស្ថានភាពលាក់កំបាំង (hidden state-sequence) ដើម្បីវិភាគប្រៀបធៀបជាមួយ CTC។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Framewise CE Training (with Viterbi alignment)
ការបណ្តុះបណ្តាល Framewise CE (ដោយប្រើប្រាស់ Viterbi alignment ជាមុន)
ទទួលបានអត្រាកំហុសពាក្យ (WER) ទាបបំផុត និងមានស្ថេរភាពក្នុងការបណ្តុះបណ្តាល ព្រោះវាមានការកំណត់គោលដៅច្បាស់លាស់។ ទាមទារឱ្យមានការតម្រឹមទិន្នន័យ (alignment) ពីមុនដោយប្រព័ន្ធផ្សេង (ដូចជា GMM-HMM) ដែលពិបាកសម្រាប់ភាសាដែលខ្វះទិន្នន័យ។ ទទួលបាន WER សរុប 15.4% លើទិន្នន័យ Switchboard (ល្អជាងគេ)។
Full-sum training without FFNN (CTC-like)
ការបណ្តុះបណ្តាល Full-sum ដោយគ្មាន FFNN (ស្រដៀងនឹង CTC ធម្មតា)
អាចបណ្តុះបណ្តាលពីចំណុចចាប់ផ្តើម (from scratch) ដោយមិនត្រូវការការតម្រឹមទុកជាមុនពីប្រព័ន្ធផ្សេង។ មានបញ្ហា 'peaky' (ប្រមូលផ្តុំលទ្ធផលខ្លាំងក្នុងរយៈពេលខ្លី) និងបរាជ័យក្នុងការរៀនតម្រឹមឱ្យបានត្រឹមត្រូវទៅនឹងសំឡេងជាក់ស្តែង ដែលនាំឱ្យ WER ខ្ពស់។ ទទួលបាន WER សរុប 19.5% និងអត្រាកំហុស Frame (FER) ខ្ពស់រហូតដល់ 84.5%។
Full-sum training with FFNN and State Prior
ការបណ្តុះបណ្តាល Full-sum ដោយរួមបញ្ចូល FFNN និង State Prior
អាចបណ្តុះបណ្តាលពីដើម (from scratch) ខណៈពេលដែលកាត់បន្ថយបញ្ហា peaky និងរក្សាបាននូវការតម្រឹមជិតស្និទ្ធនឹងសំឡេងជាក់ស្តែង។ នៅតែមានគម្លាតអត្រាកំហុសតិចតួចបើប្រៀបធៀបទៅនឹងការបណ្តុះបណ្តាល framewise ស្តង់ដារ ហើយទាមទារការកំណត់ប៉ារ៉ាម៉ែត្រ (hyperparameter tuning) ស្មុគស្មាញ។ ទទួលបាន WER សរុប 17.5% និង FER ធ្លាក់ចុះមកត្រឹម 48.8%។

ការចំណាយលើធនធាន (Resource Cost)៖ ការអនុវត្តវិធីសាស្ត្រនេះទាមទារធនធានកុំព្យូទ័រខ្លាំង ជាពិសេសការប្រើប្រាស់ GPU សម្រាប់ការគណនា Baum-Welch alignment ឱ្យបានរហ័ស និងទិន្នន័យសំឡេងខ្នាតធំ។

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

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

ការសិក្សានេះប្រើប្រាស់ទិន្នន័យភាសាអង់គ្លេស (Switchboard និង WSJCam0) ជាមួយនឹងវចនានុក្រមបញ្ចេញសំឡេង CMU សម្រាប់ការសាកល្បង។ នេះជារឿងសំខាន់សម្រាប់កម្ពុជា ព្រោះភាសាខ្មែរមានរចនាសម្ព័ន្ធសូរសព្ទខុសគ្នាស្រឡះ (មានស្រៈ ព្យញ្ជនៈ ជើង និងគ្មានការដកឃ្លារវាងពាក្យ) ដែលទាមទារការបង្កើតកញ្ចប់សូរសព្ទ (phoneme set) និងច្បាប់តម្រឹម (alignment rules) ថ្មីទាំងស្រុងសម្រាប់ការហ្វឹកហាត់។

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

វិធីសាស្ត្របណ្តុះបណ្តាល Generalized Full-Sum HMM នេះមានសក្តានុពលខ្ពស់សម្រាប់ជួយជំរុញការអភិវឌ្ឍប្រព័ន្ធសម្គាល់សំឡេង (ASR) សម្រាប់ភាសាខ្មែរ។

សរុបមក ឯកសារនេះផ្តល់នូវដំណោះស្រាយបច្ចេកទេសដ៏រឹងមាំក្នុងការកសាងប្រព័ន្ធ ASR សម្រាប់ភាសាដែលមានធនធានតិច (low-resource languages) ដោយកាត់បន្ថយការពឹងផ្អែកលើម៉ូដែលកាត់តម្រឹមពីមុន (prior alignment models)។

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

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

  1. សិក្សាទ្រឹស្តី Acoustic Modeling និង HMM-NN: និស្សិតត្រូវស្វែងយល់ពីមូលដ្ឋានគ្រឹះនៃ Hidden Markov Model (HMM), Connectionist Temporal Classification (CTC), និង Baum-Welch algorithm ដើម្បីយល់ពីរបៀបដែលម៉ូដែលធ្វើការតម្រឹមរវាងសំឡេង និងអត្ថបទដោយមិនបាច់មានការកំណត់ទុកជាមុន។
  2. រៀបចំទិន្នន័យសំឡេង និងវចនានុក្រមសូរសព្ទភាសាខ្មែរ: ប្រមូលទិន្នន័យសំឡេងភាសាខ្មែរ និងបង្កើតវចនានុក្រមបញ្ចេញសំឡេង (Pronunciation Lexicon) ដោយកំណត់រចនាសម្ព័ន្ធ phonemes របស់ខ្មែរឱ្យបានច្បាស់លាស់សម្រាប់ប្រើក្នុងក្របខ័ណ្ឌ WFSA (Weighted Finite-State Transducer)
  3. ដំឡើងឧបករណ៍ និង Framework សម្រាប់ការហ្វឹកហាត់: រៀបចំម៉ាស៊ីនសេវើដែលមាន GPU និងដំឡើង RETURNN framework រួមជាមួយបរិស្ថាន CUDA ដើម្បីអាចដំណើរការកូដសរសេរផ្ទាល់ (Custom CUDA code) សម្រាប់ Baum-Welch alignment ឱ្យបានលឿន។
  4. អនុវត្តការហ្វឹកហាត់ Full-Sum និង FFNN រួមគ្នា: ចាប់ផ្តើមហ្វឹកហាត់ម៉ូដែល BLSTM ពីដើម (from scratch) ដោយដាក់បញ្ចូលការហ្វឹកហាត់រួមគ្នាជាមួយ FFNN (Feed-Forward Neural Network) ដោយប្រើយុទ្ធសាស្ត្រ Full-sum training និងការកំណត់ state prior ដើម្បីទប់ស្កាត់បញ្ហា peaky។
  5. វាយតម្លៃ និងកែតម្រូវប៉ារ៉ាម៉ែត្រ (Hyperparameter Tuning): ធ្វើការវាស់ស្ទង់ Word Error Rate (WER) និងវិភាគ Alignment error របស់ម៉ូដែល រួចកែតម្រូវកម្រិតថយចុះ (decay factor) នៃទម្ងន់ Acoustic-model scale (β) ចាប់ពី 0.05 ដល់ 0.3 ដូចដែលអ្នកស្រាវជ្រាវបានធ្វើដើម្បីបង្កើនភាពត្រឹមត្រូវ។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Connectionist Temporal Classification (CTC) ជាមុខងារវាយតម្លៃ (Loss function) សម្រាប់បណ្តុះបណ្តាលបណ្តាញសរសៃប្រសាទកុំព្យូទ័រក្នុងការសម្គាល់សំឡេង ដោយមិនចាំបាច់មានការកំណត់ចំណុចពេលវេលា (alignment) ជាក់លាក់រវាងសំឡេង និងអក្សរពីមុន។ វាប្រើសញ្ញា "blank" (ទទេ) ដើម្បីដោះស្រាយបញ្ហាសំឡេងអូសបន្លាយ។ ដូចជាគ្រូបង្រៀនក្មេងឱ្យស្តាប់ និងសរសេរពាក្យទាំងមូល ដោយមិនខ្វល់ថាអក្សរនីមួយៗត្រូវនឹងវិនាទីទីប៉ុន្មាននៃសំឡេងនោះទេ។
Hidden Markov Model (HMM) ជាម៉ូដែលស្ថិតិដែលប្រើសម្រាប់តំណាងឱ្យប្រព័ន្ធដែលមានស្ថានភាពលាក់កំបាំង (hidden states) ដែលផ្លាស់ប្តូរតាមពេលវេលា។ វាត្រូវបានប្រើប្រាស់យ៉ាងទូលំទូលាយក្នុងការសម្គាល់សំឡេង ដើម្បីទស្សន៍ទាយលំដាប់នៃសូរសព្ទដោយផ្អែកលើទិន្នន័យសំឡេងដែលទទួលបាន។ ដូចជាការទាយអាកាសធាតុថ្ងៃស្អែក ដោយមើលថាតើថ្ងៃនេះមេឃស្រឡះឬមានពពក ទោះបីជាយើងមិនដឹងច្បាស់ពីចលនាខ្យល់ពិតប្រាកដ (hidden state) ក៏ដោយ។
Baum-Welch algorithm ជាក្បួនដោះស្រាយសម្រាប់ស្វែងរកប៉ារ៉ាម៉ែត្រដែលល្អបំផុតរបស់ម៉ូដែល HMM ដោយបូកសរុបប្រូបាប៊ីលីតេនៃគ្រប់លទ្ធភាពនៃការតម្រឹម (alignments) ទាំងអស់រវាងសំឡេងនិងអត្ថបទ។ នៅក្នុងឯកសារនេះ គេហៅវាថាការបណ្តុះបណ្តាល full-sum។ ដូចជាការគិតគូរពីគ្រប់ផ្លូវទាំងអស់ដែលអាចដើរទៅដល់គោលដៅ ដើម្បីស្វែងរកមើលថាផ្លូវណាដែលមានឱកាសទៅដល់ញឹកញាប់ និងមានសុវត្ថិភាពជាងគេបំផុត។
Viterbi alignment ជានីតិវិធីស្វែងរកលំដាប់នៃស្ថានភាពលាក់កំបាំង (hidden states) តែមួយគត់ដែលមានប្រូបាប៊ីលីតេខ្ពស់បំផុត (ទំនងបំផុត) សម្រាប់ស៊េរីទិន្នន័យដែលបានសង្កេតឃើញ ផ្ទុយពី Baum-Welch ដែលគិតពីគ្រប់លទ្ធភាពទាំងអស់។ ដូចជាការកម្ម៉ង់ Google Maps ឱ្យបង្ហាញតែផ្លូវមួយខ្សែគត់ដែលលឿនបំផុត ដើម្បីទៅដល់គោលដៅ ជំនួសឱ្យការពិចារណាផ្លូវវាងផ្សេងៗទៀត។
State prior probability ជាប្រូបាប៊ីលីតេជាមុនដែលបញ្ជាក់ថាតើស្ថានភាព (state) ឬសូរសព្ទនីមួយៗមានឱកាសកើតឡើងញឹកញាប់ប៉ុណ្ណានៅក្នុងទិន្នន័យទូទៅ មុនពេលយើងគិតពីទិន្នន័យសំឡេងជាក់ស្តែង។ ការប្រើប្រាស់វាជួយកាត់បន្ថយបាតុភូតទិន្នន័យប្រមូលផ្តុំខ្លាំង (peaky behavior)។ ដូចជាការដឹងជាមុនថានៅកម្ពុជារដូវវស្សាមានភ្លៀងធ្លាក់ញឹកញាប់ជាងរដូវប្រាំង មុនពេលយើងមើលមេឃនៅថ្ងៃនេះដើម្បីទាយថានឹងមានភ្លៀងឬអត់។
Peaky behavior ជាបាតុភូតក្នុង CTC ដែលម៉ូដែលបញ្ចេញលទ្ធផលទទេ (blank symbol) ស្ទើរតែគ្រប់ពេលវេលា ហើយបញ្ចេញអក្សរពិតប្រាកដតែក្នុងរយៈពេលខ្លីមែនទែន (ចេញជាកំពូលស្រួចៗ) ដែលធ្វើឱ្យម៉ូដែលមិនសូវចាប់អារម្មណ៍នឹងការតម្រឹមពេលវេលាជាក់ស្តែងរបស់សំឡេង។ ដូចជាមនុស្សម្នាក់ដែលអង្គុយស្ងៀមរហូត រួចស្រាប់តែនិយាយប្រាប់ចម្លើយមួយយ៉ាងលឿនក្នុងមួយពព្រិចភ្នែក ហើយក៏ស្ងាត់ទៅវិញ។
BLSTM (Bidirectional Long Short-Term Memory) ជាប្រភេទបណ្តាញសរសៃប្រសាទកុំព្យូទ័រ (RNN) ដែលមានសមត្ថភាពចងចាំទិន្នន័យទាំងពីអតីតកាលនិងអនាគតកាលក្នុងបរិបទ (រត់ទៅមុខនិងថយក្រោយ) ដើម្បីធ្វើការសម្រេចចិត្តបានកាន់តែត្រឹមត្រូវ ពិសេសសម្រាប់ការសម្គាល់សំឡេង។ ដូចជាការអានសៀវភៅដែលយើងអានទាំងប្រយោគខាងមុខ និងប្រយោគខាងក្រោយ ដើម្បីអាចទាយយល់ន័យនៃពាក្យពិបាកមួយដែលនៅកណ្តាល។
Feed-Forward Neural Network (FFNN) ជាបណ្តាញសរសៃប្រសាទសាមញ្ញដែលបញ្ជូនព័ត៌មានទៅមុខជានិច្ច គ្មានការតភ្ជាប់ត្រឡប់ក្រោយ (no loops)។ ក្នុងឯកសារនេះ វាត្រូវបានប្រើរួមគ្នាជាមួយ BLSTM ដើម្បីបង្ខំឲ្យម៉ូដែលតម្រឹមទិន្នន័យសំឡេងឲ្យត្រូវនឹងពេលវេលាជាក់ស្តែង (regularization)។ ដូចជាខ្សែសង្វាក់ផលិតកម្មក្នុងរោងចក្រ ដែលវត្ថុធាតុដើមត្រូវបញ្ជូនទៅមុខជារហូតពីដំណាក់កាលមួយទៅដំណាក់កាលមួយទៀត ដោយមិនអាចបញ្ជូនត្រឡប់ថយក្រោយបានឡើយ។

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

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

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