د Python په کارولو سره د ماشین زده کړې کې د خپل K نږدې ګاونډیانو (KNN) الګوریتم پلي کولو په شرایطو کې د ریل او ټیسټ سیټونو لپاره قاموسونو ډکولو لپاره ، موږ اړتیا لرو یو سیسټمیک چلند تعقیب کړو. پدې پروسه کې زموږ ډیټا په مناسب شکل کې بدلول شامل دي چې د KNN الګوریتم لخوا کارول کیدی شي.
لومړی، راځئ چې په Python کې د لغتونو بنسټیز مفهوم پوه کړو. قاموس د کلیدي ارزښت جوړو غیر منظم ټولګه ده، چیرې چې هر کلی ځانګړی دی. د ماشین زده کړې په شرایطو کې، لغتونه عموما د ډیټاسیټونو استازیتوب کولو لپاره کارول کیږي، چیرته چې کلیدونه د ځانګړتیاوو یا ځانګړتیاوو سره مطابقت لري، او ارزښتونه د اړونده ډیټا ټکو استازیتوب کوي.
د ټرینونو او ټیسټ سیټونو لپاره د قاموسونو ډکولو لپاره، موږ باید لاندې مرحلې ترسره کړو:
1. د معلوماتو چمتو کول: زموږ د ماشین زده کړې دندې لپاره د معلوماتو راټولولو او چمتو کولو سره پیل کړئ. پدې کې عموما د معلوماتو پاکول، د ورک شوي ارزښتونو اداره کول، او په مناسب شکل کې ډاټا بدلول شامل دي. ډاډ ترلاسه کړئ چې ډاټا په سمه توګه لیبل شوي یا درجه بندي شوي، ځکه چې دا د څارنې زده کړې دندو لپاره اړین دي.
2. د ډیټاسیټ ویشل: بیا، موږ باید خپل ډیټاسیټ په دوو برخو وویشو: د ریل سیټ او د ټیسټ سیټ. د ریل سیټ به زموږ د KNN الګوریتم روزلو لپاره وکارول شي ، پداسې حال کې چې د ازموینې سیټ به د دې فعالیت ارزولو لپاره وکارول شي. دا ویش موږ سره مرسته کوي چې ارزونه وکړو چې زموږ الګوریتم نه لیدل شوي ډاټا ته څومره ښه عمومي کوي.
3. د فیچر استخراج: کله چې ډیټاسیټ ویشل شي، موږ اړتیا لرو چې اړونده ځانګړتیاوې له ډیټا څخه استخراج کړو او په لغتونو کې یې د کیلي په توګه وټاکو. ځانګړتیاوې کیدای شي شمیري یا کټګوري وي، زموږ د معلوماتو ماهیت پورې اړه لري. د مثال په توګه، که موږ د عکسونو ډیټاسیټ سره کار کوو، موږ ممکن ځانګړتیاوې لکه د رنګ هسټوګرام یا د جوړښت تشریح کونکي استخراج کړو.
4. د ارزښتونو ټاکل: د ځانګړتیاوو له استخراج وروسته، موږ اړتیا لرو چې زموږ په لغتونو کې هرې کلیمې ته اړونده ارزښتونه وټاکو. دا ارزښتونه زموږ په ډیټا سیټ کې د ریښتیني ډیټا ټکي یا مثالونه څرګندوي. هره بیلګه باید د ورته ځانګړتیاو ارزښتونو سره تړاو ولري.
5. د ټرین سیټ قاموس: یو قاموس جوړ کړئ چې د ریل سیټ استازیتوب وکړي. د دې لغت کلیدونه به ځانګړتیاوې وي، او ارزښتونه به لیستونه یا سرې وي چې د ریل سیټ کې د هرې بیلګې لپاره د ورته ځانګړتیاو ارزښتونه لري. د مثال په توګه، که موږ د دوو ځانګړتیاوو (عمر او عاید) او درې مثالونو سره ډیټاسیټ ولرو، د ریل سیټ قاموس ممکن داسې ښکاري:
train_set = {'عمر': [25, 30, 35], 'عايد': [50000, 60000, 70000]}
6. د ټیسټ سیټ قاموس: په ورته ډول د ټیسټ سیټ نمایندګي لپاره قاموس جوړ کړئ. د دې قاموس کلیدونه به ورته ځانګړتیاوې وي لکه د ریل سیټ کې، او ارزښتونه به لیستونه یا سرې وي چې د ازموینې سیټ کې د هرې بیلګې لپاره د ورته ځانګړتیاو ارزښتونه لري. د مثال په توګه، که موږ د دوه مثالونو سره د ازموینې سیټ ولرو، د ټیسټ سیټ قاموس ممکن داسې ښکاري:
test_set = {'عمر': [40, 45], 'عايد': [80000, 90000]}
7. د لغتونو کارول: یوځل چې د ټرینونو او ټیسټ سیټونو لپاره قاموسونه ډک شي، موږ کولی شو د خپل KNN الګوریتم لپاره د معلوماتو په توګه وکاروو. الګوریتم به د ټیسټ سیټ کې د مثالونو لپاره وړاندوینې یا طبقه بندي کولو لپاره د ټرین سیټ څخه د ځانګړتیاو ارزښتونه وکاروي.
د دې ګامونو په تعقیب، موږ کولی شو په مؤثره توګه د ریل او ټیسټ سیټونو لپاره قاموسونه د Python په کارولو سره د ماشین زده کړې کې زموږ د خپل KNN الګوریتم پلي کولو په شرایطو کې ډک کړو. دا لغتونه زموږ د الګوریتم فعالیت روزنې او ارزونې لپاره د بنسټ په توګه کار کوي.
د ټریننګ او ټیسټ سیټونو لپاره د قاموسونو ډکولو لپاره، موږ اړتیا لرو چې ډیټاسیټ چمتو او تقسیم کړو، اړونده ځانګړتیاوې استخراج کړو، په لغتونو کې ورته کلیدونو ته د ځانګړتیاوو ارزښتونه وټاکو، او دا لغتونه زموږ په خپل KNN الګوریتم کې وکاروو.
په اړه نورې وروستۍ پوښتنې او ځوابونه د خپل نږدې نږدې ګاونډیو الګوریتم پلي کول:
- موږ څنګه د خپل K نږدې ګاونډیو الګوریتم دقت محاسبه کوو؟
- په هر لیست کې د وروستي عنصر اهمیت څه دی چې په ریل او ټیسټ سیټونو کې د ټولګي استازیتوب کوي؟
- د ټریننګ او ټیسټ سیټونو ویشلو دمخه د ډیټاسیټ بدلولو هدف څه دی؟
- ولې دا مهمه ده چې د K نږدې ګاونډیو الګوریتم پلي کولو دمخه ډیټاسیټ پاک کړئ؟