Original Title: Data Stream Mining and Concept Drift: Novel Approaches and Applications
Source: is.muni.cz
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការទាញយកទិន្នន័យពីបណ្តាញទិន្នន័យ (Data Stream Mining) និងបម្រែបម្រួលទម្រង់ទិន្នន័យ (Concept Drift)៖ អភិក្រមថ្មីៗ និងការអនុវត្ត

ចំណងជើងដើម៖ Data Stream Mining and Concept Drift: Novel Approaches and Applications

អ្នកនិពន្ធ៖ Petr Kosina (Masaryk University)

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

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

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

បញ្ហា (The Problem)៖ ឯកសារនេះដោះស្រាយបញ្ហានៃការវិភាគទិន្នន័យដ៏ច្រើនសន្ធឹកសន្ធាប់ដែលហូរចូលជាបន្តបន្ទាប់ (Data Streams) ដោយផ្តោតលើការសម្របខ្លួនទៅនឹងការផ្លាស់ប្តូរលក្ខណៈនៃទិន្នន័យតាមពេលវេលាដែលហៅថា បម្រែបម្រួលទម្រង់ទិន្នន័យ (Concept Drift)។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះស្នើឡើងនូវវិធីសាស្ត្រសិក្សាម៉ាស៊ីន (Machine Learning) បែបថ្មីដោយប្រើប្រាស់ប្រព័ន្ធសិក្សាពីរស្រទាប់ និងយន្តការនៃការបង្កើតវិធានសម្រេចចិត្តតាមលំដាប់លំដោយ។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Two-Layer Learning System
ប្រព័ន្ធសិក្សាពីរស្រទាប់ (Meta-learning)
អាចរកឃើញ និងប្រើប្រាស់ឡើងវិញនូវម៉ូដែលចាស់ៗបានលឿនតាមរយៈ Meta-classifiers ដោយមិនចាំបាច់រង់ចាំការបញ្ជាក់ (feedback) យូរឡើយ។ មានប្រសិទ្ធភាពខ្ពស់នៅពេលមានបម្រែបម្រួលទម្រង់កើតឡើងដដែលៗ។ ទាមទារការរៀបចំស្មុគស្មាញ និងត្រូវការរក្សាទុកម៉ូដែលជាច្រើនក្នុងអង្គចងចាំរយៈពេលវែង (Long-term memory) ដើម្បីរង់ចាំការប្រើប្រាស់ឡើងវិញ។ អាចតាមដាន និងប្តូរម៉ូដែលដោយស្វ័យប្រវត្តិនៅពេលទម្រង់ទិន្នន័យមានការផ្លាស់ប្តូរ និងត្រលប់មកវិញ (Recurrent concepts)។
Incremental Decision Rules
វិធានសម្រេចចិត្តកើនឡើង (ឧ. Facil, AQ-PM)
មានលក្ខណៈម៉ូឌុល (Modularity) និងងាយស្រួលយល់ (Interpretability)។ គេអាចកែប្រែ ឬលុបចោលតែផ្នែកខ្លះនៃវិធានដែលហួសសម័យ ដោយមិនប៉ះពាល់ដល់ម៉ូដែលទាំងមូល។ ការថែរក្សាវិធានដែលស៊ីសង្វាក់គ្នា (Consistent rules) អាចប្រឈមនឹងការលំបាក និងការថយចុះល្បឿននៅពេលទិន្នន័យប្រែប្រួលលឿនពេក។ ស័ក្តិសមសម្រាប់ទិន្នន័យហូរចូលបន្តបន្ទាប់ ដោយទាមទារអង្គចងចាំ និងពេលវេលាថេរក្នុងការអានទិន្នន័យមួយម្តងៗ។
Very Fast Decision Tree (VFDT)
មែកធាងសម្រេចចិត្តល្បឿនលឿន
ស័ក្តិសមសម្រាប់ទិន្នន័យហូរចូលលឿន ដោយប្រើទ្រឹស្តី Hoeffding bound ដើម្បីកំណត់ភាពជឿជាក់ក្នុងការបំបែកមែកធាងដោយមិនចាំបាច់រង់ចាំទិន្នន័យទាំងអស់។ មិនសូវមានភាពបត់បែនក្នុងការកាត់ចេញ (Pruning) ឬកែប្រែផ្នែកតូចៗនៅពេលមានការផ្លាស់ប្តូរទម្រង់ទិន្នន័យ (Concept drift) បើប្រៀបធៀបទៅនឹង Decision Rules។ អាចបង្កើតមែកធាងចំណាត់ថ្នាក់ដោយឆ្លងកាត់ការអានទិន្នន័យ (Single scan) តែម្តងគត់ប្រកបដោយប្រសិទ្ធភាព។

ការចំណាយលើធនធាន (Resource Cost)៖ ការទាញយកទិន្នន័យពីបណ្តាញទិន្នន័យ (Data Stream Mining) ទាមទារលក្ខខណ្ឌតឹងរ៉ឹងបំផុតលើធនធានកុំព្យូទ័រ ដើម្បីធានាបាននូវដំណើរការក្នុងពេលវេលាជាក់ស្តែង (Real-time)។

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

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

ឯកសារនេះគឺជាសំណើនិក្ខេបបទ (Thesis Proposal) ដែលផ្តោតជាចម្បងលើទ្រឹស្តី និងការអភិវឌ្ឍន៍ក្បួនដោះស្រាយ (Algorithms) ជាងការសាកល្បងលើសំណុំទិន្នន័យជាក់ស្តែងធំៗ។ ចំពោះប្រទេសកម្ពុជា ការពឹងផ្អែកតែលើទ្រឹស្តីនេះអាចជួបបញ្ហាប្រឈម ព្រោះលក្ខណៈនៃទិន្នន័យក្នុងស្រុក (ដូចជាអាកប្បកិរិយាអ្នកប្រើប្រាស់កាតធនាគារ ឬទិន្នន័យអាកាសធាតុ) អាចមានភាពខុសប្លែកពីសំណុំទិន្នន័យស្តង់ដារដែលគេនិយមយកមកសាកល្បង។

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

វិធីសាស្ត្រ Machine Learning លើ Data Streams នេះមានសក្តានុពល និងសារៈសំខាន់ខ្លាំងណាស់សម្រាប់ស្ថាប័ននានានៅកម្ពុជាដែលត្រូវការវិភាគទិន្នន័យក្នុងពេលវេលាជាក់ស្តែង។

សរុបមក ការអនុវត្តអភិក្រម Stream Mining នឹងជួយកម្ពុជាឱ្យផ្លាស់ប្តូរពីការវិភាគទិន្នន័យបែបប្រពៃណី ទៅជាការសម្រេចចិត្តប្រកបដោយភាពរហ័សរហួន និងទាន់សភាពការណ៍។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃ Stream Mining: ចាប់ផ្តើមដោយការស្វែងយល់ពីក្បួនដោះស្រាយមូលដ្ឋានដែលប្រើអង្គចងចាំថេរដូចជា Incremental Naive Bayes និង Very Fast Decision Tree (VFDT)។ អ្នកអាចសាកល្បងអនុវត្តក្បួនទាំងនេះតាមរយៈ Framework កូដបើកចំហរដូចជា River នៅក្នុង Python ឬ WEKA/MOA។
  2. អនុវត្តក្បួនរកឃើញបម្រែបម្រួលទម្រង់ (Concept Drift Detection): សិក្សា និងសរសេរកូដអនុវត្តវិធីសាស្ត្រចាប់យកបម្រែបម្រួលដូចជា Page-Hinkley test, SPC, និង EDDM។ សាកល្បងបង្កើតឈុតទិន្នន័យសិប្បនិម្មិត (Synthetic data) ទីដែល Concept ត្រូវបានបង្ខំឲ្យផ្លាស់ប្តូរ ដើម្បីមើលពីរបៀបដែលក្បួនទាំងនេះផ្តល់សញ្ញាព្រមាន (Warning/Drift level)។
  3. រចនា និងសាកល្បងប្រព័ន្ធសិក្សាពីរស្រទាប់ (Two-Layer Learning): រៀបចំរចនាសម្ព័ន្ធម៉ូដែលដោយបែងចែកជា Base Classifier (ស្រទាប់ទី១: សម្រាប់ទស្សន៍ទាយទិន្នន័យ) និង Meta-Classifier (ស្រទាប់ទី២: សម្រាប់តាមដានភាពត្រឹមត្រូវនៃស្រទាប់ទី១)។ ប្រើប្រាស់ Python ដើម្បីកសាងយន្តការផ្ទុក (Pool) សម្រាប់ចងចាំម៉ូដែលចាស់ៗ។
  4. អភិវឌ្ឍវិធានសម្រេចចិត្តកើនឡើង (Incremental Rule Induction): រចនាក្បួនដោះស្រាយដើម្បីបង្កើតបញ្ជីវិធាន (Decision lists) ដែលមានសមត្ថភាពបន្ថែមលក្ខខណ្ឌថ្មីៗ (Specialization) ឬលុបចោលវិធានដែលលែងមានសុពលភាព។ ធានាថាកូដដំណើរការដោយមិនចាំបាច់ Re-train ម៉ូដែលតាំងពីដើមវិញ។
  5. អនុវត្តលើគម្រោងជាក់ស្តែង (Real-world Application): ប្រមូលទិន្នន័យហូរចូលជាក់ស្តែង ឧទាហរណ៍ទិន្នន័យធាតុអាកាសពី APIs ឬទិន្នន័យប្រតិបត្តិការទិញលក់ ដើម្បីធ្វើតេស្តប្រព័ន្ធទាំងមូល។ វាស់វែងល្បឿន (Processing time per instance) កម្រិតប្រើប្រាស់ Memory និងភាពត្រឹមត្រូវ រួចប្រៀបធៀបជាមួយវិធីសាស្ត្រ Off-line ធម្មតា។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Data Stream Mining ការទាញយកចំណេះដឹង ឬការវិភាគទិន្នន័យដែលហូរចូលជាបន្តបន្ទាប់និងមានទំហំធំធេងដោយគ្មានទីបញ្ចប់ ដែលទាមទារឱ្យប្រព័ន្ធដំណើរការបានលឿន និងប្រើប្រាស់អង្គចងចាំត្រឹមទំហំថេរមួយប៉ុណ្ណោះ។ ដូចជាការផឹកទឹកពីទុយោទឹកពន្លត់អគ្គីភ័យ ដែលអ្នកត្រូវតែលេបយកទឹកភ្លាមៗនៅពេលវាហូរមក ដោយមិនអាចស្តុកវាទុកក្នុងកែវបានឡើយ។
Concept Drift បាតុភូតដែលលក្ខណៈនៃទិន្នន័យ ឬទំនាក់ទំនងរវាងទិន្នន័យ និងលទ្ធផលមានការផ្លាស់ប្តូរទៅតាមពេលវេលា ដែលធ្វើឱ្យម៉ូដែលម៉ាស៊ីន (Machine Learning Model) ដែលធ្លាប់រៀនពីមុន លែងមានភាពត្រឹមត្រូវសម្រាប់ការទស្សន៍ទាយបច្ចុប្បន្ន។ ដូចជាការផ្លាស់ប្តូរចំណូលចិត្តសម្លៀកបំពាក់ពីមួយរដូវទៅមួយរដូវ ដែលធ្វើឱ្យច្បាប់នៃការទស្សន៍ទាយការស្លៀកពាក់ចាស់ៗលែងស័ក្តិសម។
Virtual concept drift ការផ្លាស់ប្តូរនៃរបាយទិន្នន័យ (Data distribution) ដោយមិនមានការផ្លាស់ប្តូរអត្ថន័យគោលដៅពិតប្រាកដនោះទេ ដូចជាសាររំខាន (Spam) ដែលនៅតែជាសាររំខានដដែល តែវាគ្រាន់តែប្តូរទម្រង់ពាក្យពេចន៍ ឬប្រេកង់។ ដូចជាចោរដែលប្តូរសម្លៀកបំពាក់ដើម្បីកុំឱ្យគេចំណាំបាន ប៉ុន្តែធាតុពិតនៅតែជាចោរដដែល។
Meta-learning ដំណើរការដែលប្រព័ន្ធ 'រៀនពីរបៀបរៀន' ដោយប្រមូល និងប្រើប្រាស់បទពិសោធន៍ពីអតីតកាល (Meta-knowledge) ដើម្បីស្វែងយល់ថា តើម៉ូដែលមួយណាដែលស័ក្តិសមបំផុតសម្រាប់ប្រើដោះស្រាយបញ្ហា ឬទិន្នន័យក្នុងបរិបទថ្មីណាមួយ។ ដូចជាសិស្សម្នាក់ដែលដឹងថាខ្លួនឯងពូកែរៀនតាមរយៈការមើលរូបភាព ជាជាងការអានអក្សរ ដូច្នេះគេតែងតែជ្រើសរើសវិធីសាស្ត្ររៀនបានត្រឹមត្រូវដោយស្វ័យប្រវត្តិ។
Two-Layer Learning System ប្រព័ន្ធសិក្សាមានពីរស្រទាប់ ដោយស្រទាប់ទីមួយ (Base classifier) ធ្វើការទស្សន៍ទាយលើទិន្នន័យ រីឯស្រទាប់ទីពីរ (Meta-classifier) ធ្វើការវាយតម្លៃថា តើស្រទាប់ទីមួយនោះពិតជាកំពុងដំណើរការបានត្រឹមត្រូវឬអត់នៅក្នុងបរិបទបច្ចុប្បន្ន។ ដូចជាមានអ្នកធ្វើការម្នាក់ (ស្រទាប់ទី១) និងអ្នកត្រួតពិនិត្យម្នាក់ទៀត (ស្រទាប់ទី២) ដែលចាំមើលថាអ្នកធ្វើការនោះកំពុងធ្វើត្រូវឬខុស។
Page-Hinkley test វិធីសាស្ត្រស្ថិតិដែលគេប្រើជាទូទៅក្នុងការវិភាគសញ្ញា (Signal processing) ដើម្បីតាមដាន និងរកឱ្យឃើញការផ្លាស់ប្តូរភ្លាមៗនៃទិន្នន័យ ឬកម្រិតកំហុសរបស់ម៉ូដែល ដែលជួយផ្តល់សញ្ញាព្រមានពីបម្រែបម្រួលទម្រង់ (Concept drift)។ ដូចជាឧបករណ៍រោទិ៍ប្រកាសអាសន្ន ដែលនឹងបន្លឺសំឡេងឡើងភ្លាមៗនៅពេលដែលវាតាមដានឃើញថាកម្រិតទឹកក្នុងទន្លេកើនឡើងខុសប្រក្រតី។
Hoeffding bound ទ្រឹស្តីបទគណិតវិទ្យាដែលត្រូវបានប្រើនៅក្នុង Very Fast Decision Tree (VFDT) ដើម្បីធានាថា តើម៉ូដែលត្រូវការទិន្នន័យប៉ុន្មានទើបគ្រប់គ្រាន់ក្នុងការធ្វើការសម្រេចចិត្ត (ឧ. ការបំបែកមែកធាង) ក្នុងកម្រិតភាពជឿជាក់ខ្ពស់ ដោយមិនចាំបាច់រង់ចាំមើលទិន្នន័យទាំងអស់។ ដូចជាការភ្លក់ស៊ុបត្រឹមតែមួយស្លាបព្រាដើម្បីចង់ដឹងថាវាប្រៃឬសាប ដោយមិនចាំបាច់ហូបស៊ុបអស់ទាំងមូលឆ្នាំង។
Incremental Rule Induction ការបង្កើត និងធ្វើបច្ចុប្បន្នភាពវិធានការសម្រេចចិត្ត (Decision rules) បន្តបន្ទាប់គ្នាម្តងមួយៗនៅពេលមានទិន្នន័យថ្មីហូរចូល ដោយមិនចាំបាច់កសាងប្រព័ន្ធវិធានទាំងមូលឡើងវិញពីចំណុចសូន្យឡើយ។ ដូចជាការសរសេរច្បាប់ទម្លាប់បន្ថែមថ្មីៗចូលក្នុងសៀវភៅវិន័យ និងលុបចោលត្រង់ចំណុចណាដែលហួសសម័យ ដោយមិនចាំបាច់ហែកសៀវភៅចាស់ចោលហើយសរសេរថ្មីទាំងអស់។

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

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

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