Original Title: Bird Voice Classification Based on Combination Feature Extraction and Reduction Dimension with the K-Nearest Neighbor
Source: doi.org/10.22266/ijies2022.0228.24
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការចាត់ថ្នាក់សំឡេងសត្វស្លាបដោយផ្អែកលើការរួមបញ្ចូលគ្នានៃការទាញយកលក្ខណៈពិសេស និងការកាត់បន្ថយវិមាត្រជាមួយ K-Nearest Neighbor

ចំណងជើងដើម៖ Bird Voice Classification Based on Combination Feature Extraction and Reduction Dimension with the K-Nearest Neighbor

អ្នកនិពន្ធ៖ Pulung Nurtantio Andono (Universitas Dian Nuswantoro), Guruh Fajar Shidik, Dwi Puji Prabowo, Dewi Pergiwati, Ricardus Anggi Pramunendar

ឆ្នាំបោះពុម្ព៖ 2022, International Journal of Intelligent Engineering and Systems

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

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

បញ្ហា (The Problem)៖ ឯកសារនេះដោះស្រាយបញ្ហានៃការចាត់ថ្នាក់ និងសម្គាល់ប្រភេទសត្វស្លាបដែលកំពុងរងការគំរាមកំហែងជិតផុតពូជ តាមរយៈការវិភាគគំរូសំឡេងនៅក្នុងបរិស្ថានបើកចំហ ដោយសារការស្តាប់ដោយត្រចៀកមនុស្សផ្ទាល់មានដែនកំណត់និងភាពលំបាក។

វិធីសាស្ត្រ (The Methodology)៖ ការស្រាវជ្រាវនេះបានស្នើឡើងនូវប្រព័ន្ធស្វ័យប្រវត្តិមួយដោយប្រើប្រាស់បច្ចេកទេសបំបាត់សំឡេងរំខាន ការទាញយកលក្ខណៈពិសេសចម្រុះ និងការកាត់បន្ថយវិមាត្រទិន្នន័យដើម្បីធ្វើចំណាត់ថ្នាក់សំឡេងសត្វស្លាបឱ្យបានត្រឹមត្រូវ។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
MFCC + GTCC + KNN (Proposed Method)
ការទាញយកលក្ខណៈពិសេស MFCC និង GTCC រួមបញ្ចូលគ្នា ជាមួយក្បួនចាត់ថ្នាក់ KNN
ផ្តល់លទ្ធផលត្រឹមត្រូវខ្ពស់បំផុត ដោយប្រើប្រាស់ចំណុចខ្លាំងនៃការកំណត់សំឡេងរបស់ MFCC និងសមត្ថភាពទប់ទល់នឹងសំឡេងរំខានរបស់ GTCC។ មិនតម្រូវឱ្យមានពេលវេលាបង្វឹក (Training time) យូរនោះទេ។ ត្រូវការទំហំផ្ទុកទិន្នន័យច្រើន និងមានភាពស្មុគស្មាញក្នុងការគណនាខ្ពស់នៅពេលដែលចំនួនទិន្នន័យកើនឡើងច្រើន។ ទទួលបានភាពត្រឹមត្រូវជាមធ្យម ៧៨.១១% ដែលជាលទ្ធផលខ្ពស់ជាងគេក្នុងការពិសោធន៍។
Decision Tree (DT)
មែកធាងសេចក្តីសម្រេច (Decision Tree)
ងាយស្រួលយល់ និងបកស្រាយពីលក្ខខណ្ឌនៃការសម្រេចចិត្តក្នុងការចាត់ថ្នាក់សំឡេង។ មិនអាចកែប្រែម៉ូដែលបានទេនៅពេលមានព័ត៌មានថ្មីចូល ពោលគឺត្រូវបង្កើតមែកធាងពីដើមឡើងវិញ ដែលចំណាយពេល។ ទទួលបានភាពត្រឹមត្រូវ ៧០.៨៦% (ទាបជាង KNN ប្រមាណ ៧.២៥%)។
Neural Network (NN)
បណ្ដាញសរសៃប្រសាទសិប្បនិម្មិត (Neural Network)
អាចរៀន និងស្វែងយល់ពីទំនាក់ទំនងដ៏ស្មុគស្មាញនៃទិន្នន័យសំឡេងបានយ៉ាងល្អ។ ត្រូវការពេលវេលាបង្វឹក (Training time) យូរខ្លាំង និងតម្រូវឱ្យមានការកំណត់ Hyperparameters ច្រើននិងស្មុគស្មាញ។ ទទួលបានភាពត្រឹមត្រូវត្រឹមតែប្រហែល ៥៧.៤៨% ប៉ុណ្ណោះ ដែលទាបជាងការរំពឹងទុកសម្រាប់ទិន្នន័យនេះ។
Naive Bayes (NB)
ក្បួនដោះស្រាយ Naive Bayes
ជាក្បួនដោះស្រាយសាមញ្ញ ដំណើរការលឿន និងងាយស្រួលក្នុងការអនុវត្តលើទិន្នន័យទូទៅ។ ដំណើរការមិនបានល្អលើទិន្នន័យនេះទាល់តែសោះ ដោយសារវាជា Parametric classification និងជាប្រភេទ Generative model ដែលបង្កើតករណីថ្មី។ ទទួលបានភាពត្រឹមត្រូវទាបបំផុត គឺត្រឹមតែប្រហែល ២៦.៥៥% ប៉ុណ្ណោះ។

ការចំណាយលើធនធាន (Resource Cost)៖ ការសិក្សានេះតម្រូវឱ្យមានកម្មវិធីកុំព្យូទ័រឯកទេស និងសមត្ថភាពដំណើរការម៉ាស៊ីន (Hardware) ក្នុងកម្រិតមធ្យមទៅខ្ពស់ សម្រាប់ការទាញយកលក្ខណៈពិសេសសំឡេង និងការប្រើប្រាស់ KNN លើសំណុំទិន្នន័យធំ។

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

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

ការសិក្សានេះប្រើប្រាស់សំណុំទិន្នន័យសាធារណៈពី Cornell Lab of Ornithology (សហរដ្ឋអាមេរិក) ដែលមានសត្វស្លាប ២៦៤ ប្រភេទ ទោះបីជាអ្នកស្រាវជ្រាវមានមូលដ្ឋាននៅប្រទេសឥណ្ឌូនេស៊ីក៏ដោយ។ សម្រាប់ប្រទេសកម្ពុជា ការយកម៉ូដែលនេះមកប្រើប្រាស់ផ្ទាល់អាចប្រឈមនឹងបញ្ហាភាពត្រឹមត្រូវ ដោយសារសត្វស្លាបក្នុងស្រុក (Endemic species) និងសូរសព្ទបរិស្ថានព្រៃឈើនៅកម្ពុជាមានលក្ខណៈខុសប្លែកពីសំណុំទិន្នន័យដើម។

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

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

ជារួម ការយកបច្ចេកទេស Machine Learning មកវិភាគសំឡេងសត្វស្លាប (Bioacoustics) នឹងជួយពង្រឹងប្រសិទ្ធភាពនៃការការពារជីវៈចម្រុះនៅកម្ពុជាដោយសន្សំសំចៃពេលវេលា និងធនធានមនុស្ស។

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

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

  1. ប្រមូល និងរៀបចំសំណុំទិន្នន័យសំឡេងសត្វស្លាបកម្ពុជា: សហការជាមួយអង្គការអភិរក្សដូចជា WCS ឬ BirdLife International ដើម្បីប្រមូលឯកសារសំឡេងសត្វស្លាបក្នុងស្រុក។ ប្រើប្រាស់កម្មវិធី Audacity ឬបណ្ណាល័យ Librosa ក្នុង Python ដើម្បីកាត់ត និងសម្អាតទិន្នន័យបឋម។
  2. អនុវត្តការបំបាត់សំឡេងរំខានដោយប្រើប្រាស់ YAMNet: សិក្សា និងអនុវត្ត TensorFlow AudioSet YAMNet ដើម្បីស្វែងរកព្រំដែននៃសំឡេងសត្វស្លាប (Voice Segmentation) និងបំបាត់សំឡេងរំខានបរិស្ថាន (Noise Reduction) ដោយស្វ័យប្រវត្តិ។
  3. ទាញយកលក្ខណៈពិសេសសំឡេងចម្រុះ (MFCC និង GTCC): សរសេរកូដដោយប្រើប្រាស់ MATLAB ឬបណ្ណាល័យ pyAudioAnalysis ដើម្បីទាញយកលក្ខណៈពិសេស MFCC (ឆ្លុះបញ្ចាំងពីការស្តាប់របស់មនុស្ស) និង GTCC (ទប់ទល់នឹងសំឡេងរំខាន) រួចបញ្ចូលវាជាវ៉ិចទ័រតែមួយ។
  4. កាត់បន្ថយវិមាត្រទិន្នន័យដើម្បីបង្កើនល្បឿនគណនា: ប្រើប្រាស់ក្បួនដោះស្រាយ k-Means Clustering ពីបណ្ណាល័យ Scikit-learn ដើម្បីកាត់បន្ថយចំណុចទិន្នន័យដែលស្រដៀងគ្នាត្រួតស៊ីគ្នា (Redundant data) ដែលជួយសម្រាលបន្ទុកក្នុងការប្រើប្រាស់ Memory ម៉ាស៊ីន។
  5. អភិវឌ្ឍគំរូចាត់ថ្នាក់ KNN និងធ្វើតេស្តលទ្ធផល: ប្រើប្រាស់ K-Nearest Neighbor (KNN) classifier ដើម្បីចាត់ថ្នាក់ប្រភេទសត្វស្លាប។ ធ្វើការកែសម្រួលតម្លៃ Hyperparameter 'k' ដើម្បីស្វែងរកភាពត្រឹមត្រូវខ្ពស់បំផុត និងអាចធ្វើការប្រៀបធៀបវាជាមួយនឹងម៉ូដែល Deep Learning ផ្សេងទៀតនៅជំហានបន្ទាប់។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Mel Frequency Cepstral Coefficients (MFCC) ជាវិធីសាស្ត្រទាញយកលក្ខណៈពិសេសនៃសំឡេង ដែលដំណើរការស្រដៀងនឹងរបៀបដែលត្រចៀកមនុស្សស្តាប់ឮ ដោយវាបំប្លែងរលកសំឡេងទៅជាទិន្នន័យលេខតាមរយៈរង្វាស់ប្រេកង់ (Mel Scale) ដែលងាយចាប់យកលក្ខណៈខុសគ្នានៃសំឡេងនីមួយៗ។ ដូចជាឧបករណ៍បកប្រែសំឡេងធម្មជាតិ ឱ្យទៅជាភាសាលេខកូដដែលកុំព្យូទ័រអាចយល់បាន ដោយផ្ដោតលើតែកម្រិតសំឡេងណាដែលត្រចៀកមនុស្សអាចឮច្បាស់។
Gammatone Cepstral Coefficients (GTCC) ជាបច្ចេកទេសទាញយកព័ត៌មានពីសំឡេង ដោយក្លែងធ្វើតាមដំណើរការនៃក្រដាសត្រចៀកមនុស្ស (Cochlea) ដែលវាមានសមត្ថភាពខ្ពស់ក្នុងការកាត់បំបាត់សំឡេងរំខាន (Noise) ពីបរិស្ថានជុំវិញដោយមិនបាត់បង់អត្តសញ្ញាណសំឡេងដើម។ ដូចជាតម្រងត្រងទឹក ដែលច្រោះយកតែកម្ទេចកម្ទីកខ្វក់ចេញ ហើយរក្សាទុកតែទឹកស្អាតសុទ្ធល្អ (ទាញយកតែសំឡេងសត្វស្លាបសុទ្ធចេញពីខ្យល់និងសំឡេងរំខាន)។
K-Nearest Neighbor (KNN) ជាក្បួនដោះស្រាយសម្រាប់ធ្វើចំណាត់ថ្នាក់ទិន្នន័យថ្មី ដោយប្រៀបធៀបវាទៅនឹងទិន្នន័យចាស់ៗដែលនៅក្បែរវាបំផុតចំនួន K (ផ្អែកលើភាពស្រដៀងគ្នា) ដោយមិនទាមទារការបង្វឹកម៉ូដែល (Training) ទុកជាមុននោះទេ។ ដូចជាការទស្សន៍ទាយចរិតរបស់សិស្សថ្មីម្នាក់ ដោយសង្កេតមើលទៅលើចរិតរបស់មិត្តភក្តិជិតស្និទ្ធបំផុតចំនួន ៣ ឬ ៥ នាក់ដែលអង្គុយក្បែរគាត់។
k-Means clustering ជាវិធីសាស្ត្របែងចែកទិន្នន័យទៅជាក្រុមៗ (Clusters) ចំនួន k ដោយស្វ័យប្រវត្តិ ដោយប្រមូលផ្ដុំទិន្នន័យដែលមានលក្ខណៈស្រដៀងគ្នាចូលក្នុងក្រុមតែមួយ ដើម្បីងាយស្រួលកាត់បន្ថយទិន្នន័យដែលជាន់គ្នា។ ដូចជាការរៀបចំសៀវភៅក្នុងបណ្ណាល័យ ដោយយកសៀវភៅដែលមានប្រធានបទដូចគ្នា ទៅដាក់លើធ្នើរតែមួយជាមួយគ្នា ដើម្បីងាយស្រួលរក និងចំណេញកន្លែងផ្ទុក។
YAMNet ជាបណ្ដាញសរសៃប្រសាទសិប្បនិម្មិត (Neural Network) ដែលត្រូវបានបង្វឹកជាស្រេច ដើម្បីស្កេនរកមើល និងកាត់បំបែកសំឡេងគោលដៅ (ដូចជាសំឡេងសត្វស្លាប) ចេញពីសំឡេងផ្សេងៗនៅក្នុងប្រព័ន្ធអូឌីយ៉ូ។ ដូចជានាឡិការោទ៍ឆ្លាតវៃ ដែលចេះរើសស្តាប់តែសំឡេងម្ចាស់ហៅ ទោះបីជានៅក្បែរនោះមានសំឡេងឡានម៉ូតូខ្លាំងប៉ុណ្ណាក៏ដោយ។
Discrete Fourier Transform (DFT) ជាសមីការគណិតវិទ្យាដែលបំប្លែងរលកសញ្ញាសំឡេងពីទម្រង់ពេលវេលា (Time domain) ទៅជាទម្រង់ប្រេកង់ (Frequency domain) ដើម្បីវិភាគរកមើលថាតើថាមពលសំឡេងនោះស្ថិតនៅកម្រិតប្រេកង់ណាខ្លះ។ ដូចជាការយកទឹកក្រឡុកផ្លែឈើចម្រុះមួយកែវ ទៅបំបែកចេញវិញជាផ្លែឈើនីមួយៗ ឱ្យដឹងច្បាស់ថាមានផ្លែប៉ោមប៉ុន្មានភាគរយ និងផ្លែក្រូចប៉ុន្មានភាគរយ។
Windowing ជាបច្ចេកទេសកាត់បំបែករលកសំឡេងវែងៗទៅជាកង់តូចៗ (Frames) ដែលត្រួតស៊ីគ្នា ដើម្បីរក្សាភាពជាប់គ្នានៃសញ្ញាសំឡេង ការពារកុំឱ្យបាត់បង់ព័ត៌មានសំខាន់ៗនៅត្រង់ចំណុចកាត់។ ដូចជាការថតរូបភាពបន្តបន្ទាប់គ្នា (Panorama) ដោយរូបនីមួយៗមានជាប់ទេសភាពត្រួតគ្នាបន្តិចបន្តួច ដើម្បីឱ្យពេលផ្គុំចូលគ្នាវិញឃើញទេសភាពនោះពេញលេញតភ្ជាប់គ្នា។

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

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

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