Original Title: Answer Sheet Evalution System using NLP
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ប្រព័ន្ធវាយតម្លៃសន្លឹកកិច្ចការប្រឡងដោយប្រើប្រាស់ NLP

ចំណងជើងដើម៖ Answer Sheet Evalution System using NLP

អ្នកនិពន្ធ៖ Joyjeet Mukherjee (Dept. of C.S.E., Asansol Engineering College), Nitish Sadhu (Dept. of C.S.E., Asansol Engineering College), Ankit Chakraborty (Dept. of C.S.E., Asansol Engineering College), Bodhisatta Kumar (Dept. of C.S.E., Asansol Engineering College), Sudipta Hazra (Dept. of C.S.E., Asansol Engineering College)

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

វិស័យសិក្សា៖ Computer Science, Natural Language Processing

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

បញ្ហា (The Problem)៖ ការវាយតម្លៃលើសន្លឹកកិច្ចការសរសេរដោយដៃប្រើប្រាស់ពេលវេលាច្រើន មានភាពនឿយហត់ និងងាយរងនូវភាពលម្អៀង ឬភាពមិនស៊ីសង្វាក់គ្នាពីសំណាក់អ្នកកែ។ ម្យ៉ាងវិញទៀត វិធីសាស្ត្រផ្អែកលើការស្វែងរកពាក្យគន្លឹះ (Keyword matching) ជាប្រពៃណីមិនអាចចាប់យកអត្ថន័យបរិបទពិតប្រាកដនៃចម្លើយបែបពិពណ៌នាបានឡើយ។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះស្នើឡើងនូវប្រព័ន្ធវាយតម្លៃចម្លើយស្វ័យប្រវត្តិ ដោយរួមបញ្ចូលគ្នានូវបច្ចេកវិទ្យាការសម្គាល់តួអក្សរអុបទិក (Optical Character Recognition - OCR) និងដំណើរការភាសាធម្មជាតិ (Natural Language Processing - NLP)។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Traditional Method (TF-IDF with Cosine Similarity)
វិធីសាស្ត្រប្រពៃណី TF-IDF ជាមួយ Cosine Similarity (ការផ្គូផ្គងពាក្យ)
ងាយស្រួលក្នុងការអនុវត្ត និងមានដំណើរការលឿនសម្រាប់ការស្វែងរកពាក្យគន្លឹះចំៗនៅក្នុងអត្ថបទ។ មិនអាចចាប់យកអត្ថន័យបរិបទបានឡើយ ប្រសិនបើសិស្សប្រើប្រាស់ពាក្យសទិសន័យ (Synonyms) ឬសរសេររចនាសម្ព័ន្ធប្រយោគខុសពីចម្លើយគំរូ។ ទទួលបានពិន្ទុភាពត្រឹមត្រូវមធ្យមត្រឹមតែ ៦៧.៣៣% ប៉ុណ្ណោះ ដែលបង្ហាញពីកម្រិតទាបក្នុងការវាយតម្លៃចម្លើយបែបពិពណ៌នា។
Semantic Similarity (Sentence Transformers)
ការវាស់វែងអត្ថន័យបរិបទ (Semantic Similarity) ដោយប្រើ Sentence Transformers
អាចចាប់យកអត្ថន័យស៊ីជម្រៅ និងយល់ពីបរិបទនៃចម្លើយ ទោះបីជាមានការប្រើប្រាស់ពាក្យសទិសន័យ ឬឃ្លាដែលខុសគ្នាក៏ដោយ ដែលធានាបាននូវការដាក់ពិន្ទុប្រកបដោយយុត្តិធម៌។ ត្រូវការធនធានកុំព្យូទ័រច្រើនជាងមុនក្នុងការដំណើរការ និងអាចជួបការលំបាកជាមួយចម្លើយដែលបើកទូលាយពេក (Highly subjective) ឬមានកំហុសអក្ខរាវិរុទ្ធច្រើន។ ទទួលបានពិន្ទុភាពត្រឹមត្រូវមធ្យមខ្ពស់រហូតដល់ ៩៣.៧៩% ដែលមានភាពសុក្រឹតខ្ពស់ និងកៀកនឹងការដាក់ពិន្ទុដោយមនុស្ស។

ការចំណាយលើធនធាន (Resource Cost)៖ ការអនុវត្តប្រព័ន្ធនេះទាមទារនូវបណ្ដុំឧបករណ៍បច្ចេកទេស កម្មវិធីកូដ និងធនធានកុំព្យូទ័រមួយចំនួនសម្រាប់ដំណើរការម៉ូដែល AI និងការទាញយកអត្ថបទពីសន្លឹកកិច្ចការ។

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

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

ការសិក្សានេះត្រូវបានធ្វើឡើងនៅក្នុងប្រទេសឥណ្ឌា (Asansol Engineering College) ដោយផ្ដោតលើការវាយតម្លៃសន្លឹកកិច្ចការសរសេរដោយដៃជាភាសាអង់គ្លេស។ ទិន្នន័យដែលប្រើប្រាស់មិនបានឆ្លុះបញ្ចាំងពីទម្រង់នៃការសរសេរដោយដៃជាភាសាខ្មែរ ឬរចនាសម្ព័ន្ធវេយ្យាករណ៍ខ្មែរឡើយ។ នេះជាបញ្ហាប្រឈមដ៏ធំមួយសម្រាប់ប្រទេសកម្ពុជា ព្រោះការអនុវត្តប្រព័ន្ធនេះទាមទារឱ្យមានការបង្វឹកម៉ូដែល OCR និង NLP សម្រាប់ភាសាខ្មែរឱ្យមានភាពសុក្រឹតជាមុនសិន។

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

ប្រព័ន្ធនេះមានសក្តានុពលខ្ពស់ក្នុងការជួយសម្រួលដល់វិស័យអប់រំនៅកម្ពុជា ពិសេសក្នុងការកាត់បន្ថយពេលវេលាដាក់ពិន្ទុ និងលុបបំបាត់ភាពលម្អៀង។

ទោះបីជាយ៉ាងណាក៏ដោយ ដើម្បីឱ្យប្រព័ន្ធនេះដំណើរការបានល្អក្នុងបរិបទប្រទេសកម្ពុជា គេចាំបាច់ត្រូវអភិវឌ្ឍប្រព័ន្ធទទួលស្គាល់តួអក្សរខ្មែរ (Khmer OCR) និងម៉ូដែលភាសាខ្មែរ (Khmer Sentence Transformers) ដែលមានភាពសុក្រឹតខ្ពស់ជាមុនសិន។

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

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

  1. ការស្វែងយល់ពីបច្ចេកវិទ្យា OCR និងការទាញយកអត្ថបទ: ចាប់ផ្ដើមដោយការសិក្សាពីរបៀបប្រើប្រាស់ OpenCV សម្រាប់ការរៀបចំរូបភាពជាមុន (Noise reduction, Gaussian blur) និងប្រើ PyTesseract ដើម្បីទាញយកអត្ថបទពីសន្លឹកកិច្ចការ។ សាកល្បងជាមួយអត្ថបទភាសាអង់គ្លេស មុននឹងឈានដល់ការស្រាវជ្រាវបន្ថែមលើការអានអក្សរខ្មែរ។
  2. ការរៀបចំទិន្នន័យអត្ថបទ (Text Preprocessing): អនុវត្តការប្រើប្រាស់បណ្ណាល័យ NLTK នៅក្នុង Python ដើម្បីធ្វើការ Tokenization, លុបចោលពាក្យមិនចាំបាច់ (Stopword Removal) និង Lemmatization ទៅលើអត្ថបទដែលទាញយកបាន ដើម្បីរៀបចំវាសម្រាប់ការវិភាគ។
  3. ការអនុវត្តវិធីសាស្ត្រវាយតម្លៃជាមូលដ្ឋាន (TF-IDF): សរសេរកូដដើម្បីបំប្លែងអត្ថបទទៅជាវ៉ិចទ័រ ដោយប្រើ TF-IDF និងគណនាភាពស្រដៀងគ្នាដោយប្រើ Cosine Similarity តាមរយៈបណ្ណាល័យ Scikit-learn ដើម្បីប្រៀបធៀបចម្លើយសិស្សនិងចម្លើយគំរូ។
  4. ការវាយតម្លៃអត្ថន័យស៊ីជម្រៅដោយប្រើម៉ូដែល Deep Learning: សិក្សាពីការប្រើប្រាស់ Sentence Transformers (ឧទាហរណ៍៖ ម៉ូដែល paraphrase-MiniLM-L6-v2) ពី Hugging Face ដើម្បីបង្កើត Dense Embeddings ដែលអាចចាប់យកអត្ថន័យពិតប្រាកដនៃប្រយោគ និងដោះស្រាយបញ្ហាការប្រើប្រាស់ពាក្យសទិសន័យ។
  5. ការសាងសង់ប្រព័ន្ធពេញលេញ និងការវាយតម្លៃ: រួមបញ្ចូលកូដ OCR និង NLP ទៅជាប្រព័ន្ធតែមួយដំណើរការក្នុង Virtual Environment (venv) ជាមួយនឹងទិន្នផលចេញជាឯកសារ CSV។ បន្ទាប់មក វាយតម្លៃប្រព័ន្ធដោយប្រៀបធៀបពិន្ទុដែលកែដោយម៉ាស៊ីន ជាមួយនឹងពិន្ទុដែលកែដោយគ្រូផ្ទាល់ ដើម្បីរកចំណុចខ្វះខាត។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Optical Character Recognition (OCR) បច្ចេកវិទ្យាដែលត្រូវបានប្រើប្រាស់សម្រាប់ចាប់យករូបភាពនៃអក្សរសរសេរដោយដៃ ឬអក្សរបោះពុម្ពនៅលើក្រដាស ហើយបំប្លែងវាទៅជាទិន្នន័យអត្ថបទឌីជីថល (Text) ដែលកុំព្យូទ័រអាចអាន កែសម្រួល និងដំណើរការបន្តបានយ៉ាងងាយស្រួល។ វាដូចជាការផ្តល់ភ្នែកដល់កុំព្យូទ័រដើម្បីមើលអក្សរនៅលើក្រដាស ហើយចម្លងវាចូលទៅក្នុងកម្មវិធី Word ដោយស្វ័យប្រវត្តិ ដោយមិនបាច់អង្គុយវាយបញ្ជូលម្តងមួយតួៗឡើយ។
Natural Language Processing (NLP) ជាផ្នែកមួយនៃបញ្ញាសិប្បនិម្មិត (AI) ដែលផ្តល់លទ្ធភាពឱ្យកុំព្យូទ័រអាចយល់ វិភាគ និងទាញយកអត្ថន័យពីភាសារបស់មនុស្ស (មិនថាការនិយាយ ឬការសរសេរ) ដើម្បីអាចធ្វើការប្រៀបធៀប ឬវាយតម្លៃអត្ថន័យបានយ៉ាងត្រឹមត្រូវ។ វាដូចជាការបង្រៀនកុំព្យូទ័រឱ្យចេះស្តាប់និងយល់ពីភាសាមនុស្ស ដូចជាក្មេងម្នាក់ដែលកំពុងរៀនអាននិងយល់អត្ថន័យនៃសៀវភៅរឿង។
TF-IDF ជារូបមន្តគណិតវិទ្យាសម្រាប់វាស់ស្ទង់ថាតើពាក្យណាមួយមានសារៈសំខាន់ប៉ុណ្ណាក្នុងអត្ថបទមួយ ដោយគិតលើចំនួនដងដែលវាលេចឡើងក្នុងអត្ថបទនោះ (Term Frequency) ធៀបនឹងកម្រិតនៃភាពកម្ររបស់វានៅទូទាំងឯកសារទាំងអស់ (Inverse Document Frequency)។ វាដូចជាការរកមើលពាក្យគន្លឹះសំខាន់បំផុតក្នុងសៀវភៅមួយ ដោយមិនខ្វល់ពីពាក្យដែលគេប្រើញឹកញាប់ពេកដោយមិនសូវមានន័យ ដូចជាពាក្យ 'និង' ឬ 'ដែល' នោះទេ។
Cosine Similarity ជាវិធីសាស្ត្រគណិតវិទ្យាសម្រាប់វាស់វែងភាពស្រដៀងគ្នារវាងអត្ថបទពីរ ដោយបំប្លែងអត្ថបទទាំងនោះទៅជាវ៉ិចទ័រលេខ រួចគណនាមុំរវាងវ៉ិចទ័រទាំងពីរនោះ ដើម្បីមើលថាវាមានទិសដៅស្របគ្នាឬអត់ ដោយមិនខ្វល់ពីប្រវែងនៃអត្ថបទឡើយ។ វាដូចជាការប្រៀបធៀបគំនូរពីរផ្ទាំងថាតើវាមានលក្ខណៈស្រដៀងគ្នាប៉ុណ្ណា ទោះបីជាគំនូរមួយផ្ទាំងតូច និងមួយផ្ទាំងធំក៏ដោយ។
Sentence Transformers ជាម៉ូដែល AI កម្រិតខ្ពស់ដែលត្រូវបានបង្វឹកជាមុន (Pre-trained) សម្រាប់បំប្លែងប្រយោគទាំងមូលទៅជាទិន្នន័យលេខជម្រៅជ្រៅ (Dense Embeddings) ដែលអាចចាប់យកអត្ថន័យបរិបទ និងន័យធៀបនៃប្រយោគនោះបានយ៉ាងស៊ីជម្រៅ។ វាដូចជាអ្នកបកប្រែដ៏ពូកែម្នាក់ដែលអាចយល់ពី 'អត្ថន័យបង្កប់' នៃអ្វីដែលអ្នកនិយាយ ទោះបីជាអ្នកប្រើប្រាស់ពាក្យពេចន៍ខុសគ្នាយ៉ាងណាក៏ដោយ។
Word2vec ជាបច្ចេកទេសបង្រៀនម៉ាស៊ីន (Machine Learning) ដែលបំប្លែងពាក្យនីមួយៗទៅជាវ៉ិចទ័រលេខ ដើម្បីឱ្យកុំព្យូទ័រអាចស្គាល់ទំនាក់ទំនងរវាងពាក្យ (ដូចជាពាក្យសទិសន័យ) ដោយផ្អែកលើការរៀនពីសំណុំទិន្នន័យអត្ថបទដ៏ធំ។ វាដូចជាការរៀបចំផែនទីនៃពាក្យ ដោយពាក្យដែលមានន័យស្រដៀងគ្នា (ឧទាហរណ៍៖ 'សាលារៀន' និង 'វិទ្យាល័យ') ត្រូវបានដាក់ឱ្យនៅជិតគ្នានៅលើផែនទីនោះ។
Tokenization ជាដំណើរការនៃការបំបែកកថាខណ្ឌ ឬប្រយោគវែងៗ ទៅជាឯកតាតូចៗហៅថា Tokens (ឧទាហរណ៍៖ ពាក្យនីមួយៗ ឬសញ្ញាវណ្ណយុត្តិ) ដើម្បីងាយស្រួលដល់កុំព្យូទ័រក្នុងការវិភាគរចនាសម្ព័ន្ធនៃអត្ថបទ។ វាដូចជាការកាត់នំប៉័ងមួយដើមធំទៅជាចំណិតតូចៗ ដើម្បីងាយស្រួលញ៉ាំ ឬយកទៅច្នៃបន្ត។
Lemmatization ជាដំណើរការកាត់ ឬបំប្លែងពាក្យមួយទៅជាទម្រង់ដើមរបស់វា (Base form ឬ Dictionary form) ឧទាហរណ៍បំប្លែងពាក្យ 'running', 'ran' ទៅជាពាក្យ 'run' ដើម្បីកាត់បន្ថយភាពស្មុគស្មាញនៃពាក្យពេលកុំព្យូទ័រធ្វើការប្រៀបធៀប។ វាដូចជាការរកមើលប្រភពដើមនៃពាក្យនៅក្នុងវចនានុក្រម ដោយមិនខ្វល់ពីការផ្លាស់ប្តូរវេយ្យាករណ៍ទៅតាមពេលវេលាឬកាល (Tense) នោះទេ។

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

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

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