Original Title: Machine Learning Approach for Arabic Handwritten Recognition
Source: doi.org/10.3390/app14199020
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

វិធីសាស្ត្ររៀនដោយម៉ាស៊ីនសម្រាប់ការសម្គាល់អក្សរអារ៉ាប់សរសេរដោយដៃ

ចំណងជើងដើម៖ Machine Learning Approach for Arabic Handwritten Recognition

អ្នកនិពន្ធ៖ A. M. Mutawa (Kuwait University / University of Hamburg), Mohammad Y. Allaho (Kuwait University), Monirah Al-Hajeri (Kuwait University)

ឆ្នាំបោះពុម្ព៖ 2024, Applied Sciences (MDPI)

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

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

បញ្ហា (The Problem)៖ ឯកសារនេះផ្តោតលើការដោះស្រាយបញ្ហាប្រឈមក្នុងការសម្គាល់អក្សរអារ៉ាប់សរសេរដោយដៃ (Arabic Handwritten Text) ដោយសារតែលក្ខណៈស្មុគស្មាញ និងទម្រង់សរសេរតភ្ជាប់គ្នាយ៉ាងពិបាកអាននៃអក្សរអារ៉ាប់។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះស្នើឡើងនូវគំរូរៀនស៊ីជម្រៅ (Deep Learning Model) ថ្មីមួយដែលរួមបញ្ចូលគ្នានូវបណ្តាញសរសៃប្រសាទ (Neural Networks) ចំនួនពីរ រួមជាមួយនឹងគំរូភាសាសម្រាប់ការកែសម្រួលទិន្នន័យ។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Proposed Model (ResNet-BiLSTM-CTC)
គំរូដែលបានស្នើឡើងរួមបញ្ចូល ResNet ជាមួយ BiLSTM និង CTC
មានភាពសុក្រឹតខ្ពស់ក្នុងការសម្គាល់អក្សរតភ្ជាប់គ្នា និងមានសមត្ថភាពកែតម្រូវកំហុសបានល្អតាមរយៈការប្រើប្រាស់គំរូភាសា (Language Model)។ ទាមទារថាមពលកុំព្យូទ័រ (GPU) ខ្ពស់សម្រាប់ការហ្វឹកហាត់ ដោយសារតែភាពស្មុគស្មាញនៃទំហំបណ្តាញសរសៃប្រសាទកម្រិតជ្រៅ។ សម្រេចបានអត្រាកំហុសពាក្យ (WER) ២៧.៣១% និងអត្រាកំហុសតួអក្សរ (CER) ១៣.២% លើសំណុំទិន្នន័យ KHATT។
BiLSTM (Jemni et al.)
គំរូ BiLSTM ស្នើដោយ Jemni និងសហការី (២០១៨)
អាចចាប់យកព័ត៌មានបរិបទ (Contextual Information) បានល្អពីទិសដៅទាំងពីរនៃអត្ថបទ។ មានការកំណត់លើទំហំវាក្យសព្ទ (Limited vocabulary) បើប្រៀបធៀបទៅនឹងវិធីសាស្ត្រថ្មីៗ។ អត្រាកំហុសពាក្យ (WER) ២៩.១៣% និងអត្រាកំហុសតួអក្សរ (CER) ១៦.២៧% លើសំណុំទិន្នន័យ KHATT។
Transformer with attention (Momeni & BabaAli)
គំរូ Transformer ដែលមានយន្តការ Attention
មានប្រសិទ្ធភាពខ្ពស់ក្នុងការរៀនពីទំនាក់ទំនងរវាងតួអក្សរក្នុងប្រយោគវែងៗ។ ជួបប្រទះបញ្ហាទាក់ទងនឹងសមត្ថភាពទូទៅ (Generalizability) នៅពេលជួបប្រទះទិន្នន័យថ្មីដែលមិនធ្លាប់មានក្នុងសំណុំហ្វឹកហាត់។ អត្រាកំហុសតួអក្សរ (CER) ១៨.៤៥% លើសំណុំទិន្នន័យ KHATT។

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

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

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

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

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

វិធីសាស្ត្ររួមបញ្ចូលគ្នា (ResNet ជាមួយ BiLSTM ព្រមទាំង CTC) នេះគឺស័ក្តិសមយ៉ាងខ្លាំងសម្រាប់ការអភិវឌ្ឍប្រព័ន្ធសម្គាល់អក្សរខ្មែរសរសេរដោយដៃ ព្រោះអក្សរខ្មែរមានទម្រង់ស្មុគស្មាញ តភ្ជាប់គ្នា និងមានស្រៈលើក្រោមស្រដៀងនឹងអក្សរអារ៉ាប់។

ជារួម ការអនុវត្តស្ថាបត្យកម្មរៀនស៊ីជម្រៅនេះអាចផ្លាស់ប្តូររបៀបដែលស្ថាប័នរដ្ឋនិងឯកជននៅកម្ពុជាគ្រប់គ្រងឯកសារ ដោយបំប្លែងក្រដាសស្នាមឱ្យទៅជាទិន្នន័យឌីជីថលប្រកបដោយប្រសិទ្ធភាព និងចំណាយពេលតិច។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃម៉ូដែល: សិក្សាស្វែងយល់ពីស្ថាបត្យកម្ម Convolutional Neural Networks (CNN) ដូចជា ResNet សម្រាប់ការទាញយកលក្ខណៈពិសេសពីរូបភាព និង BiLSTM រួមជាមួយ CTC Loss សម្រាប់ការសម្គាល់លំដាប់តួអក្សរជាបន្តបន្ទាប់។
  2. ប្រមូល និងរៀបចំទិន្នន័យអក្សរខ្មែរ: បង្កើតឬស្វែងរកសំណុំទិន្នន័យអក្សរខ្មែរសរសេរដោយដៃ បន្ទាប់មកអនុវត្តការកាត់ផ្ទៃសចេញ (Cropping), ការលុបសំឡេងរំខានពីរូបភាព (Noise Filtering), និងការធ្វើឱ្យរូបភាពមានស្តង់ដាររួមមួយដោយប្រើបច្ចេកទេស Image Normalization
  3. រៀបចំបរិស្ថានកូដ និងធនធាន: ដំឡើងភាសា Python និងបណ្ណាល័យ PyTorch។ ប្រើប្រាស់សេវាកម្ម Cloud GPU ដូចជា AWSGoogle Colab Pro ដើម្បីទទួលបានថាមពលគណនាគ្រប់គ្រាន់សម្រាប់ការហ្វឹកហាត់ម៉ូដែលប្រកបដោយភាពរលូន។
  4. បង្កើត និងហ្វឹកហាត់គំរូ: សរសេរកូដផ្គុំ ResNet-32 ភ្ជាប់ជាមួយ BiLSTM (512 hidden units) ចំនួនបីស្រទាប់។ ប្រើប្រាស់ Adadelta Optimizer និងអនុវត្តបច្ចេកទេស Dropout (0.2) ដើម្បីការពារបញ្ហា Overfitting កំឡុងពេលហ្វឹកហាត់គំរូនៅលើទិន្នន័យ។
  5. អនុវត្តគំរូភាសាសម្រាប់ការកែតម្រូវក្រោយពេលព្យាករណ៍: ប្រើប្រាស់ឧបករណ៍ KenLM Toolkit ដើម្បីហ្វឹកហាត់ 3-gram Language Model លើអត្ថបទភាសាខ្មែរទូទៅ ដែលវានឹងជួយកែតម្រូវកំហុសនៃការទាយពាក្យដោយម៉ាស៊ីន (ពីមុខងារ CTC) ឱ្យកាន់តែត្រឹមត្រូវតាមវេយ្យាករណ៍និងអក្ខរាវិរុទ្ធ។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Optical Character Recognition (OCR) បច្ចេកវិទ្យាដែលប្រើសម្រាប់វិភាគរូបភាពនៃអត្ថបទ (ដូចជាក្រដាសសៀវភៅស្កេន ឬអក្សរសរសេរដៃ) ហើយបំប្លែងវាទៅជាទិន្នន័យអត្ថបទឌីជីថល ដែលកុំព្យូទ័រអាចយល់ កែសម្រួល និងស្វែងរកបានយ៉ាងងាយស្រួល។ ដូចជាការយកភ្នែកមនុស្សទៅអានអក្សរលើក្រដាស រួចវាយបញ្ចូលទៅក្នុងកុំព្យូទ័រដោយស្វ័យប្រវត្តិ។
Residual Network (ResNet) ជាប្រភេទស្ថាបត្យកម្មបណ្តាញសរសៃប្រសាទ (CNN) កម្រិតជ្រៅ ដែលប្រើប្រាស់បច្ចេកទេស 'ផ្លូវកាត់' (Identity Shortcut Connection) ដើម្បីបញ្ជូនព័ត៌មានរំលងស្រទាប់មួយចំនួន។ វាជួយឱ្យម៉ូដែលអាចរៀនទាញយកលក្ខណៈពិសេសពីរូបភាពបានកាន់តែល្អ និងការពារមិនឱ្យដំណើរការហ្វឹកហាត់គាំងនៅពេលបណ្តាញមានស្រទាប់ច្រើនពេក។ ដូចជាការសាងសង់ស្ពានអាកាសរំលងផ្លូវខ្វែងកាត់គ្នា ដើម្បីឱ្យរថយន្ត(ព័ត៌មាន)អាចធ្វើដំណើរទៅដល់គោលដៅបានលឿន និងមិនស្ទះចរាចរណ៍នៅកណ្តាលទីក្រុង។
Bidirectional Long Short-Term Memory (BiLSTM) ជាម៉ូដែលបណ្តាញសរសៃប្រសាទដែលអាចចងចាំព័ត៌មានតាមលំដាប់លំដោយ។ វាដំណើរការអត្ថបទពីទិសដៅទាំងពីរ (ពីអតីតកាលទៅអនាគតកាល និងពីអនាគតកាលមកអតីតកាល) ដើម្បីស្វែងយល់ពីបរិបទនៃតួអក្សរនីមួយៗបានយ៉ាងច្បាស់លាស់ ដោយផ្អែកលើតួអក្សរមុននិងតួអក្សរបន្ទាប់របស់វា។ ដូចជាការអានសៀវភៅមួយវគ្គដោយមើលទាំងប្រយោគខាងដើម និងប្រយោគខាងចុង ដើម្បីទាយដឹងថាពាក្យដែលពិបាកអាននៅកណ្តាលនោះគឺជាពាក្យអ្វីពិតប្រាកដ។
Connectionist Temporal Classification (CTC) ជាមុខងារបណ្តាញសរសៃប្រសាទមួយដែលប្រើប្រាស់ដើម្បីទស្សន៍ទាយលំដាប់តួអក្សរ ដោយមិនចាំបាច់ដឹងមុនថាតួអក្សរនីមួយៗស្ថិតនៅទីតាំងពិតប្រាកដណាមួយក្នុងរូបភាពឡើយ។ វាមានប្រយោជន៍ខ្លាំងសម្រាប់ការសម្គាល់អក្សរតភ្ជាប់គ្នាដោយមិនបាច់កាត់ពាក្យជាចម្រៀកៗ (Segmentation-free)។ ដូចជាការស្តាប់អ្នកចម្រៀងច្រៀងអូសបន្លាយសម្លេងយូរឬលឿន ប៉ុន្តែយើងនៅតែអាចកត់ត្រាពាក្យពេចន៍បានត្រឹមត្រូវ ដោយមិនខ្វល់ថាសម្លេងនោះវែងឬខ្លីប៉ុណ្ណានោះទេ។
Language Model (LM) ជាគំរូស្ថិតិដែលគណនាប្រូបាប៊ីលីតេ (ឱកាសកើតឡើង) នៃលំដាប់ពាក្យនៅក្នុងភាសាមួយ។ នៅក្នុងប្រព័ន្ធនេះ វាត្រូវបានប្រើនៅដំណាក់កាលចុងក្រោយដើម្បីកែតម្រូវកំហុសរបស់ម៉ាស៊ីន ដោយជ្រើសរើសពាក្យណាដែលទំនងជាត្រឹមត្រូវបំផុតតាមវេយ្យាករណ៍និងទម្លាប់ប្រើប្រាស់ទូទៅ។ ដូចជាមុខងារកែអក្សរស្វ័យប្រវត្តិ (Auto-correct) លើទូរស័ព្ទដៃ ដែលជួយកែពាក្យខុសទៅជាពាក្យត្រូវដោយស្មានតាមទម្លាប់នៃការសរសេរប្រចាំថ្ងៃ។
Word Error Rate (WER) ជារង្វាស់សម្រាប់វាយតម្លៃកម្រិតនៃភាពត្រឹមត្រូវរបស់ប្រព័ន្ធសម្គាល់អត្ថបទ ដោយគណនាផ្អែកលើចំនួនពាក្យដែលប្រព័ន្ធទាយខុស (ដូចជាការជំនួសពាក្យខុស បាត់ពាក្យ ឬបន្ថែមពាក្យលើស) ធៀបនឹងចំនួនពាក្យសរុបពិតប្រាកដ។ អត្រាកាន់តែទាប មានន័យថាម៉ូដែលកាន់តែមានប្រសិទ្ធភាព។ ដូចជាការប្រឡងសរសេរតាមអាន បើសរសេរខុស១០ពាក្យក្នុងចំណោម១០០ពាក្យ នោះអត្រាកំហុស (WER) របស់អ្នកគឺ ១០%។
Erosion and Dilation ជាបច្ចេកទេសផ្លាស់ប្តូរទម្រង់រូបភាព (Morphological operators) ដើម្បីលុបចំណុចរំខានចេញពីអត្ថបទ។ Erosion ធ្វើឱ្យទំហំតួអក្សររួញតូចដើម្បីលុបស្នាមអុចៗចោល រីឯ Dilation ធ្វើឱ្យតួអក្សររីកធំជាងមុនដើម្បីជួយតភ្ជាប់ខ្សែបន្ទាត់អក្សរដែលដាច់ៗឱ្យជាប់គ្នាវិញ។ ដូចជាការយកជ័រលុបមកលុបស្នាមប្រឡាក់តូចៗជុំវិញអក្សរ រួចយកប៊ិចមកគូសបន្ថែមលើស្នាមអក្សរដែលដាច់ៗដើម្បីឱ្យមើលទៅច្បាស់ល្អ។
Vanishing/exploding gradient problem ជាបញ្ហាបច្ចេកទេសដែលកើតឡើងពេលហ្វឹកហាត់បណ្តាញសរសៃប្រសាទសិប្បនិម្មិតដែលមានស្រទាប់ច្រើនជាន់ពេក ធ្វើឱ្យតម្លៃនៃការកែតម្រូវកំហុសមានទំហំតូចពេក រហូតដល់បាត់សូន្យ ឬធំពេក រហូតដល់ផ្ទុះ ដែលបណ្តាលឱ្យម៉ូដែលមិនអាចរៀនសូត្របន្តទៀតបាន។ ដូចជាការលេងខ្សឹបតគ្នាពីម្នាក់ទៅម្នាក់ក្នុងជួរដ៏វែងមួយ សារដើមអាចនឹងបាត់បង់ន័យទាំងស្រុង ឬប្រែប្រួលក្លាយជារឿងខុសស្រឡះពេលទៅដល់អ្នកចុងក្រោយគេ។

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

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

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