Original Title: Connectionist Temporal Classification for Offline Handwritten Text Recognition
Source: github.com
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ចំណាត់ថ្នាក់តាមពេលវេលាគិតបែបតភ្ជាប់ (Connectionist Temporal Classification) សម្រាប់ការស្គាល់អត្ថបទសរសេរដោយដៃក្រៅបណ្តាញ

ចំណងជើងដើម៖ Connectionist Temporal Classification for Offline Handwritten Text Recognition

អ្នកនិពន្ធ៖ Oliver Nina (University of Central Florida)

ឆ្នាំបោះពុម្ព៖ N/A

វិស័យសិក្សា៖ Computer Vision / Machine Learning

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

បញ្ហា (The Problem)៖ ឯកសារនេះដោះស្រាយបញ្ហានៃការសម្គាល់អត្ថបទសរសេរដោយដៃ (HTR) ពីឯកសារប្រវត្តិសាស្ត្រ ដែលជារឿយៗមានភាពយឺតយ៉ាវខ្លាំងក្នុងការបណ្តុះបណ្តាលម៉ូដែលដោយប្រើប្រាស់តែអង្គគណនាកណ្តាល (CPU) ។

វិធីសាស្ត្រ (The Methodology)៖ ការស្រាវជ្រាវនេះប្រើប្រាស់វិធីសាស្ត្ររួមបញ្ចូលគ្នានៃការកែសម្រួលរូបភាព និងបណ្តាញសរសៃប្រសាទសិប្បនិម្មិតកម្រិតខ្ពស់ ដើម្បីដំណើរការរូបភាពអត្ថបទដោយផ្ទាល់។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
CPU-based LSTM + CTC (via Ocrpy)
ម៉ូដែល LSTM + CTC ដំណើរការលើ CPU ដោយប្រើកម្មវិធី Ocrpy
មានកូដប្រភពបើកចំហ (Open Source) ស្រាប់ និងអាចរៀនសម្គាល់ពាក្យបានយ៉ាងច្បាស់លាស់បន្ទាប់ពីការបណ្តុះបណ្តាលច្រើនជុំ។ ការប្រើ Transfer Learning ជួយពន្លឿនការបណ្តុះបណ្តាល។ ចំណាយពេលយូរខ្លាំង (ប្រហែល ២ ថ្ងៃសម្រាប់តែ ១៤ អេប៉ុកលើ CPU) និងពិបាកក្នុងការសាកល្បងជាមួយឯកតាបណ្តាញសរសៃប្រសាទថ្មីៗ ដោយសារត្រូវគណនាដេរីវេនៃអនុគមន៍ដោយផ្ទាល់ដៃ។ បន្ទាប់ពី ៤០ អេប៉ុក (468K ជុំ) ម៉ូដែលអាចសម្គាល់អត្ថបទនិងពាក្យដែលលេចឡើងញឹកញាប់បានយ៉ាងល្អប្រសើរ។
GPU-accelerated LSTM + CTC (via Theano)
ម៉ូដែល LSTM + CTC ប្រើប្រាស់ GPU តាមរយៈ Theano
អាចគណនា Gradient descent ដោយប្រើ GPU ដែលជួយកាត់បន្ថយពេលវេលាបណ្តុះបណ្តាលយ៉ាងច្រើន និងងាយស្រួលផ្លាស់ប្តូរឯកតាបណ្តាញ (Recurrent units) ដើម្បីធ្វើការពិសោធន៍ថ្មីៗ។ ស្ថិតក្នុងដំណាក់កាលអភិវឌ្ឍន៍នៅឡើយ (កំឡុងពេលនិពន្ធឯកសារ) និងតម្រូវឱ្យមានចំណេះដឹងក្នុងការប្រើប្រាស់បណ្ណាល័យ Theano។ ដោះស្រាយបញ្ហាភាពយឺតយ៉ាវនៃការបណ្តុះបណ្តាលម៉ូដែល និងជួយសម្រួលដល់ការស្រាវជ្រាវ (មិនមានតួលេខលទ្ធផលជាក់លាក់ក្នុងឯកសារ)។

ការចំណាយលើធនធាន (Resource Cost)៖ ការស្រាវជ្រាវនេះទាមទារធនធានកុំព្យូទ័រខ្លាំង ជាពិសេសផ្នែករឹង (Hardware) និងទាមទារពេលវេលាយូរសម្រាប់ការបណ្តុះបណ្តាលម៉ូដែលបើមិនមាន GPU ។

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

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

ការសិក្សានេះប្រើប្រាស់សំណុំទិន្នន័យ Transcriptorium ដែលជាឯកសារប្រវត្តិសាស្ត្រអឺរ៉ុប (សរសេរជាភាសាអង់គ្លេស/អឺរ៉ុប)។ ម៉ូដែលនេះប្រហែលជាមិនអាចប្រើប្រាស់ដោយផ្ទាល់សម្រាប់អក្សរខ្មែរបានទេ ដោយសារអក្សរខ្មែរមានទម្រង់ស្មុគស្មាញ មានព្យញ្ជនៈ ស្រៈលើ/ក្រោម និងជើងអក្សរជាប់គ្នា។ ដូច្នេះ ការអនុវត្តនៅកម្ពុជាទាមទារការប្រមូលទិន្នន័យអត្ថបទសរសេរដោយដៃភាសាខ្មែរក្នុងទំហំធំដើម្បីបណ្តុះបណ្តាលវាសាជាថ្មី។

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

ទោះបីជាទិន្នន័យដើមជាភាសាបរទេស ប៉ុន្តែវិធីសាស្ត្រ LSTM រួមផ្សំជាមួយ CTC នេះមានសក្តានុពលខ្លាំងក្នុងការអភិវឌ្ឍប្រព័ន្ធអានអក្សរខ្មែរសរសេរដោយដៃនៅកម្ពុជា។

ការអនុវត្តប្រព័ន្ធនេះនៅកម្ពុជាឱ្យទទួលបានជោគជ័យ ទាមទារការវិនិយោគពេលវេលាលើការបង្កើតសំណុំទិន្នន័យអក្សរខ្មែរសរសេរដោយដៃស្តង់ដារ និងការបំពាក់ហេដ្ឋារចនាសម្ព័ន្ធ GPU កម្រិតខ្ពស់សម្រាប់ការស្រាវជ្រាវ។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃបណ្តាញសរសៃប្រសាទ: អ្នកស្រាវជ្រាវគួរតែចាប់ផ្តើមសិក្សាពីទ្រឹស្តីនៃ Recurrent Neural Networks (RNN), Long Short-Term Memory (LSTM) និងជាពិសេសយន្តការរបស់ Connectionist Temporal Classification (CTC) loss
  2. ប្រមូលនិងកែច្នៃទិន្នន័យអក្សរខ្មែរ: ចាប់ផ្តើមប្រមូលទិន្នន័យអក្សរសរសេរដោយដៃភាសាខ្មែរ ហើយអនុវត្តបច្ចេកទេសកែសម្រួលរូបភាពជាមុន ដូចជាការបំបាត់ភាពទ្រេតដោយប្រើ Affine Transformation និងការកែតម្រូវកម្រិតពណ៌ដោយប្រើ Contrast Normalization ដូចដែលឯកសារបានណែនាំ។
  3. ប្រើប្រាស់ Frameworks ទំនើបៗដែលមានការគាំទ្រ GPU: ជំនួសឱ្យការប្រើប្រាស់ TheanoOcrpy ដែលចាស់ហួសសម័យ សូមងាកមកប្រើប្រាស់ PyTorchTensorFlow វិញដើម្បីកសាងម៉ូដែល CRNN (CNN + Bi-LSTM + CTC) ដែលងាយស្រួលអភិវឌ្ឍ និងដំណើរការលើ GPU បានលឿន។
  4. អនុវត្តបច្ចេកទេសផ្ទេរចំណេះដឹង (Transfer Learning): បណ្តុះបណ្តាលម៉ូដែលជាមួយអត្ថបទខ្មែរវាយដោយកុំព្យូទ័រដោយប្រើ Synthetic Data Generation ជាមុនសិន បន្ទាប់មកសឹមយកម៉ូដែលនោះទៅបន្តបណ្តុះបណ្តាល (Fine-tune) ជាមួយសំណុំទិន្នន័យអក្សរខ្មែរសរសេរដោយដៃពិតប្រាកដដើម្បីសន្សំពេលវេលា។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Connectionist Temporal Classification ជាក្បួនដោះស្រាយសម្រាប់បណ្តាញសរសៃប្រសាទសិប្បនិម្មិត ដែលអនុញ្ញាតឱ្យម៉ូដែលរៀនពីទិន្នន័យតាមលំដាប់លំដោយ (ដូចជាអត្ថបទ ឬសំឡេង) ដោយមិនចាំបាច់មានការកាត់បំបែករូបភាពអត្ថបទទៅជាតួអក្សរនីមួយៗ ហើយតម្រឹមវាទៅនឹងស្លាកពាក្យទុកជាមុននោះទេ។ វាគណនាប្រូបាប៊ីលីតេនៃតួអក្សរដែលអាចកើតមាននៅរាល់ជំហាននៃពេលវេលា។ ដូចជាគ្រូបង្រៀនដែលស្តាប់សិស្សអានប្រយោគទាំងមូល ហើយដឹងថាសិស្សអានត្រូវឬខុស ដោយមិនចាំបាច់ចាប់កំហុសតាមកាត់ព្យាង្គម្តងមួយៗឡើយ។
Long Short-Term Memory ជាប្រភេទនៃបណ្តាញសរសៃប្រសាទសិប្បនិម្មិត (RNN) ដែលមានសមត្ថភាពចងចាំព័ត៌មានពីអតីតកាលក្នុងរយៈពេលយូរ ដែលស័ក្តិសមបំផុតសម្រាប់ការទស្សន៍ទាយលំដាប់លំដោយនៃតួអក្សរ។ វាមានយន្តការត្រួតពិនិត្យ (Gates) ដូចជា input gate និង forget gate ដើម្បីសម្រេចថាគួរចងចាំ ឬបំភ្លេចព័ត៌មានណាខ្លះ។ ដូចជាសៀវភៅកំណត់ហេតុឆ្លាតវៃមួយ ដែលចេះរើសទុកតែរឿងសំខាន់ៗសម្រាប់ប្រើនៅថ្ងៃមុខ និងលុបចោលរឿងឥតប្រយោជន៍ដោយស្វ័យប្រវត្តិ។
Transfer Learning ជាវិធីសាស្ត្រក្នុងរៀនម៉ាស៊ីន (Machine Learning) ដែលគេយកម៉ូដែលដែលបានបណ្តុះបណ្តាលរួចលើកិច្ចការមួយ (ឧទាហរណ៍៖ អានអក្សរវាយដោយកុំព្យូទ័រ) មកប្រើប្រាស់ជាមូលដ្ឋានដើម្បីបន្តបណ្តុះបណ្តាលលើកិច្ចការថ្មីមួយទៀតដែលស្រដៀងគ្នា (ឧទាហរណ៍៖ អានអក្សរសរសេរដោយដៃ) ដើម្បីចំណេញពេលវេលា និងកាត់បន្ថយតម្រូវការទិន្នន័យ។ ដូចជាអ្នកដែលចេះជិះកង់ស្ទាត់ជំនាញស្រាប់ ពេលប្តូរទៅរៀនជិះម៉ូតូ គឺគាត់ឆាប់ចេះជាងអ្នកដែលមិនធ្លាប់ចេះជិះកង់សោះ។
De-slant ជាបច្ចេកទេសកែសម្រួលរូបភាពជាមុន (Preprocessing) នៅក្នុងការសម្គាល់អត្ថបទ ដែលគណនាមុំនៃភាពទ្រេតរបស់អក្សរ ហើយកែតម្រូវតួអក្សរដែលសរសេរទ្រេតទាំងនោះ ឱ្យត្រឡប់មកឈរត្រង់វិញតាមរយៈប្រតិបត្តិការបំលែង (Affine transformation) ដើម្បីងាយស្រួលដល់កុំព្យូទ័រក្នុងការអាន។ ដូចជាការចាប់ទាញស៊ុមរូបថតដែលព្យួរវៀចនៅលើជញ្ជាំង ឱ្យត្រឡប់មកឈរត្រង់ស្មើល្អវិញ។
Vanishing gradient problem ជាបញ្ហាមួយក្នុងការបណ្តុះបណ្តាលបណ្តាញសរសៃប្រសាទដែលជ្រៅៗ ដែលតម្លៃនៃការកែតម្រូវកំហុស (Gradient) ក្លាយទៅជាតូចពេកក្នុងអំឡុងពេល Backpropagation រហូតធ្វើឱ្យស្រទាប់ខាងដើមនៃបណ្តាញមិនអាចរៀន ឬកែប្រែទម្ងន់របស់វាបាន។ ម៉ូដែល LSTM ត្រូវបានបង្កើតឡើងដើម្បីដោះស្រាយបញ្ហានេះ។ ដូចជាការផ្ញើសារខ្សឹបតៗគ្នាក្នុងជួរមនុស្សវែងឆ្ងាយ ដែលសារនោះកាន់តែខ្សោយទៅៗរហូតដល់អ្នកខាងចុងស្តាប់លែងបានន័យអ្វីទាំងអស់។
Contrast Normalization ជាដំណើរការកែតម្រូវកម្រិតពន្លឺនិងភាពងងឹតនៃរូបភាព (Pixel values) ឱ្យមានភាពច្បាស់លាស់និងស៊ីសង្វាក់គ្នា ដោយដកតម្លៃភីកសែលខ្ពស់បំផុតចេញ ដើម្បីទាញពង្រីកគម្លាតនៃពណ៌ប្រផេះ ដែលជួយឱ្យម៉ូដែលបែងចែករវាងតួអក្សរពណ៌ខ្មៅ និងផ្ទៃខាងក្រោយពណ៌សបានកាន់តែច្បាស់។ ដូចជាការកែពន្លឺអេក្រង់ទូរស័ព្ទរបស់អ្នកនៅពេលដើរក្រោមពន្លឺថ្ងៃ ដើម្បីអាចមើលឃើញអក្សរនៅលើអេក្រង់បានច្បាស់លេចធ្លោពីផ្ទៃខាងក្រោយ។
Hidden Markov Models ជាម៉ូដែលស្ថិតិដែលធ្លាប់ត្រូវបានគេនិយមប្រើដើម្បីទស្សន៍ទាយប្រូបាប៊ីលីតេនៃលំដាប់លំដោយនៃព្រឹត្តិការណ៍ ដែលមិនអាចមើលឃើញផ្ទាល់ (Hidden states) ដោយផ្អែកលើព្រឹត្តិការណ៍ដែលអាចសង្កេតបាន។ សព្វថ្ងៃបច្ចេកវិទ្យានេះត្រូវបានជំនួសដោយបណ្តាញសរសៃប្រសាទសិប្បនិម្មិតកម្រិតខ្ពស់សម្រាប់កិច្ចការសម្គាល់អក្សរ។ ដូចជាអ្នកព្យាករណ៍អាកាសធាតុដែលទាយថាថ្ងៃស្អែកអាចនឹងភ្លៀង ដោយផ្អែកទៅលើស្ថានភាពមេឃស្រទុំនៅថ្ងៃនេះ បើទោះជាគាត់មើលមិនឃើញដំណក់ទឹកភ្លៀងផ្ទាល់ក៏ដោយ។

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

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

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