diff --git a/translations/lt/.co-op-translator.json b/translations/lt/.co-op-translator.json index 7328b0149..796740ece 100644 --- a/translations/lt/.co-op-translator.json +++ b/translations/lt/.co-op-translator.json @@ -1,7 +1,7 @@ { "1-Introduction/1-intro-to-ML/README.md": { - "original_hash": "69389392fa6346e0dfa30f664b7b6fec", - "translation_date": "2025-09-05T07:56:36+00:00", + "original_hash": "3a6394c6f5ce3f8aee8211e92eaf9ef0", + "translation_date": "2026-05-26T22:51:07+00:00", "source_file": "1-Introduction/1-intro-to-ML/README.md", "language_code": "lt" }, @@ -240,8 +240,8 @@ "language_code": "lt" }, "5-Clustering/1-Visualize/README.md": { - "original_hash": "730225ea274c9174fe688b21d421539d", - "translation_date": "2025-09-05T07:50:18+00:00", + "original_hash": "08b00d9fbffc667a7fe7fc19ac00dfbd", + "translation_date": "2026-05-26T22:50:36+00:00", "source_file": "5-Clustering/1-Visualize/README.md", "language_code": "lt" }, diff --git a/translations/lt/1-Introduction/1-intro-to-ML/README.md b/translations/lt/1-Introduction/1-intro-to-ML/README.md index c0a694cfc..3833fd8bd 100644 --- a/translations/lt/1-Introduction/1-intro-to-ML/README.md +++ b/translations/lt/1-Introduction/1-intro-to-ML/README.md @@ -1,150 +1,157 @@ # Įvadas į mašininį mokymąsi -## [Prieš paskaitos testas](https://ff-quizzes.netlify.app/en/ml/) +## [Priešpaskaitinė viktorina](https://ff-quizzes.netlify.app/en/ml/) --- -[![ML pradedantiesiems - Įvadas į mašininį mokymąsi pradedantiesiems](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML pradedantiesiems - Įvadas į mašininį mokymąsi pradedantiesiems") +[![ML for beginners - Introduction to Machine Learning for Beginners](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML for beginners - Introduction to Machine Learning for Beginners") -> 🎥 Spustelėkite paveikslėlį aukščiau, kad peržiūrėtumėte trumpą vaizdo įrašą apie šią pamoką. +> 🎥 Spustelėkite aukščiau esantį vaizdą, kad pamatytumėte trumpą vaizdo įrašą, apžvelgiantį šią pamoką. -Sveiki atvykę į šį kursą apie klasikinį mašininį mokymąsi pradedantiesiems! Nesvarbu, ar esate visiškai naujas šioje srityje, ar patyręs ML specialistas, norintis atnaujinti žinias, džiaugiamės, kad prisijungėte! Norime sukurti draugišką starto vietą jūsų ML studijoms ir mielai įvertinsime, atsakysime bei įtrauksime jūsų [atsiliepimus](https://github.com/microsoft/ML-For-Beginners/discussions). +Sveiki atvykę į šį klasikinių mašininio mokymosi kursą pradedantiesiems! Nesvarbu, ar jūs visiškai naujas šioje srityje, ar patyręs ML praktikas, norintis pasipraktikuoti tam tikrą sritį, mes džiaugiamės, kad prisijungėte! Mes norime sukurti draugišką starto vietą jūsų ML studijoms ir būtų malonu įvertinti, atsakyti į ir įtraukti jūsų [atsiliepimus](https://github.com/microsoft/ML-For-Beginners/discussions). -[![Įvadas į ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Įvadas į ML") +[![Introduction to ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Introduction to ML") -> 🎥 Spustelėkite paveikslėlį aukščiau, kad peržiūrėtumėte vaizdo įrašą: MIT profesorius John Guttag pristato mašininį mokymąsi. +> 🎥 Spustelėkite aukščiau esantį vaizdą, kad pamatytumėte vaizdo įrašą: MIT's John Guttag pristato mašininį mokymąsi --- ## Pradžia su mašininiu mokymusi -Prieš pradėdami šį mokymo planą, turite paruošti savo kompiuterį darbui su vietiniais užrašais. +Prieš pradedant šią programą, reikia turėti paruoštą kompiuterį, kuris galėtų vykdyti užrašų knygeles vietoje. -- **Konfigūruokite savo kompiuterį naudodamiesi šiais vaizdo įrašais**. Naudokite šias nuorodas, kad sužinotumėte, [kaip įdiegti Python](https://youtu.be/CXZYvNRIAKM) savo sistemoje ir [nustatyti teksto redaktorių](https://youtu.be/EU8eayHWoZg) programavimui. -- **Išmokite Python**. Taip pat rekomenduojama turėti pagrindines [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott) žinias – tai programavimo kalba, naudinga duomenų mokslininkams, kurią naudosime šiame kurse. -- **Išmokite Node.js ir JavaScript**. Šiame kurse kelis kartus naudosime JavaScript kuriant interneto programas, todėl jums reikės turėti [node](https://nodejs.org) ir [npm](https://www.npmjs.com/) įdiegtus, taip pat [Visual Studio Code](https://code.visualstudio.com/) Python ir JavaScript programavimui. -- **Sukurkite GitHub paskyrą**. Kadangi mus radote čia, [GitHub](https://github.com), galbūt jau turite paskyrą, bet jei ne, sukurkite ją ir tada nukopijuokite šį mokymo planą, kad galėtumėte naudoti jį savarankiškai. (Taip pat galite mums suteikti žvaigždutę 😊) -- **Susipažinkite su Scikit-learn**. Susipažinkite su [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), ML bibliotekų rinkiniu, kurį naudosime šiose pamokose. +- **Sužinokite, kaip sukonfigūruoti savo mašiną pagal šiuos vaizdo įrašus.** Naudokite šias nuorodas, norėdami sužinoti [kaip įdiegti Python](https://youtu.be/CXZYvNRIAKM) sistemoje ir [kaip nustatyti teksto redaktorių](https://youtu.be/EU8eayHWoZg) kūrimui. +- **Išmokite Python.** Taip pat rekomenduojama turėti pagrindines žinias apie [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), tai programavimo kalba, naudinga duomenų mokslininkams ir kurią naudodami dirbsime šiame kurse. +- **Išmokite Node.js ir JavaScript.** Šiame kurse taip pat keletą kartų naudosime JavaScript, kuriant žiniatinklio programas, todėl reikės turėti įdiegtus [node](https://nodejs.org) ir [npm](https://www.npmjs.com/), taip pat [Visual Studio Code](https://code.visualstudio.com/), skirtą Python ir JavaScript kūrimui. +- **Sukurkite GitHub paskyrą.** Kadangi radote mus čia, [GitHub](https://github.com), galbūt jau turite paskyrą, bet jei ne, sukurkite ją ir tada susikurkite šios programos forką naudoti savo tikslams. (Taip pat galite mums uždegti žvaigždutę 😊) +- **Susipažinkite su Scikit-learn.** Pažinkite [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), ML bibliotekų rinkinį, kurį naudosime šioms pamokoms. --- ## Kas yra mašininis mokymasis? -Terminas „mašininis mokymasis“ yra vienas populiariausių ir dažniausiai vartojamų šiandien. Yra nemaža tikimybė, kad bent kartą girdėjote šį terminą, jei turite kokį nors ryšį su technologijomis, nesvarbu, kokioje srityje dirbate. Tačiau mašininio mokymosi mechanika daugeliui žmonių yra paslaptis. Pradedančiajam mašininio mokymosi tema kartais gali atrodyti bauginanti. Todėl svarbu suprasti, kas iš tikrųjų yra mašininis mokymasis, ir mokytis apie jį žingsnis po žingsnio, naudojant praktinius pavyzdžius. +Terminas „mašininis mokymasis“ yra vienas iš populiariausių ir dažniausiai naudojamų šiandien. Neabejotinai yra didelė tikimybė, kad šį terminą bent kartą esate girdėjęs, jei turite tam tikrą pažinimą apie technologijas, nesvarbu, kurioje srityje dirbate. Tačiau mašininio mokymosi mechanizmai daugumai žmonių yra paslaptis. Mašininio mokymosi pradedančiajam šis dalykas kartais gali pasirodyti pribloškiantis. Todėl svarbu suprasti, kas iš tikrųjų yra mašininis mokymasis, ir mokytis po žingsnelį, praktiškai. --- ## Populiarumo kreivė -![ml populiarumo kreivė](../../../../1-Introduction/1-intro-to-ML/images/hype.png) +![ml hype curve](../../../../translated_images/lt/hype.07183d711a17aafe.webp) -> Google Trends rodo naujausią termino „mašininis mokymasis“ populiarumo kreivę. +> Google Trends rodo neseną termino „mašininis mokymasis“ „populiarumo kreivę“ --- ## Paslaptinga visata -Mes gyvename visatoje, pilnoje įdomių paslapčių. Didieji mokslininkai, tokie kaip Stephenas Hawkingas, Albertas Einšteinas ir daugelis kitų, paskyrė savo gyvenimus ieškodami prasmingos informacijos, kuri atskleistų pasaulio aplink mus paslaptis. Tai yra žmogaus mokymosi būklė: žmogaus vaikas mokosi naujų dalykų ir kasmet, augdamas iki pilnametystės, atskleidžia savo pasaulio struktūrą. +Mes gyvename visatoje, kupinoje įdomių paslapčių. Didieji mokslininkai, tokie kaip Stephen Hawking, Albert Einstein ir daugelis kitų, skyrė savo gyvenimus reikšmingos informacijos paieškai, atveriančiai mus supančio pasaulio paslaptis. Tai yra žmogaus mokymosi sąlyga: žmogaus vaikas mokosi naujų dalykų ir metų metais atranda savo pasaulio struktūrą, kol subręsta. --- ## Vaiko smegenys -Vaiko smegenys ir pojūčiai suvokia aplinkos faktus ir palaipsniui išmoksta paslėptus gyvenimo modelius, kurie padeda vaikui sukurti logines taisykles, leidžiančias atpažinti išmoktus modelius. Žmogaus smegenų mokymosi procesas daro žmones pačiais sudėtingiausiais gyvais padarais šiame pasaulyje. Nuolatinis mokymasis, atrandant paslėptus modelius ir vėliau juos tobulinant, leidžia mums visą gyvenimą tobulėti. Šis mokymosi gebėjimas ir evoliucinis pajėgumas yra susijęs su sąvoka, vadinama [smegenų plastiškumu](https://www.simplypsychology.org/brain-plasticity.html). Paviršutiniškai galime rasti motyvacinių panašumų tarp žmogaus smegenų mokymosi proceso ir mašininio mokymosi koncepcijų. +Vaiko smegenys ir jutimai suvokia aplinkos faktus ir palaipsniui įsisavina gyvenimo paslėptas taisykles, kurios padeda vaikui sukurti loginius dėsnius, identifikuojančius išmoktas taisykles. Žmogaus smegenų mokymosi procesas daro žmogų šio pasaulio sudėtingiausiu gyvuoju padaru. Nuolatinis mokymasis atrandant paslėptas taisykles ir jas tobulinant leidžia mums vis gerėti visą gyvenimą. Šis mokymosi gebėjimas ir evoliucinis potencialas susijęs su sąvoka, vadinama [smegenų plastika](https://www.simplypsychology.org/brain-plasticity.html). Paviršutiniškai galima rasti keletą motyvacinių panašumų tarp žmogaus smegenų mokymosi proceso ir mašininio mokymosi koncepcijų. --- ## Žmogaus smegenys -[Žmogaus smegenys](https://www.livescience.com/29365-human-brain.html) suvokia dalykus iš realaus pasaulio, apdoroja suvoktą informaciją, priima racionalius sprendimus ir atlieka tam tikrus veiksmus pagal aplinkybes. Tai vadiname protingu elgesiu. Kai programuojame mašiną, kad ji imituotų protingo elgesio procesą, tai vadinama dirbtiniu intelektu (AI). +[Žmogaus smegenys](https://www.livescience.com/29365-human-brain.html) suvokia dalykus iš realaus pasaulio, apdoroja gautą informaciją, priima racionalius sprendimus ir atlieka tam tikrus veiksmus, atsižvelgdamos į aplinkybes. Tai vadiname protingu elgesiu. Kai mes programuojame imituoti šį protingą elgesio procesą mašinoje, tai vadinama dirbtiniu intelektu (AI). --- -## Kai kurie terminai +## Terminai -Nors terminai gali būti painūs, mašininis mokymasis (ML) yra svarbi dirbtinio intelekto dalis. **ML susijęs su specializuotų algoritmų naudojimu, siekiant atskleisti prasmingą informaciją ir rasti paslėptus modelius iš suvoktų duomenų, kad būtų patvirtintas racionalaus sprendimų priėmimo procesas**. +Nors terminai kartais painiojami, mašininis mokymasis (ML) yra svarbi dirbtinio intelekto dalis. **ML susijęs su specialių algoritmų naudojimu siekiant atrasti reikšmingą informaciją ir paslėptas taisykles iš duomenų, patvirtinančių racionalaus sprendimų priėmimo procesą**. --- -## AI, ML, gilus mokymasis +## AI, ML, gilusis mokymasis -![AI, ML, gilus mokymasis, duomenų mokslas](../../../../1-Introduction/1-intro-to-ML/images/ai-ml-ds.png) +![AI, ML, deep learning, data science](../../../../translated_images/lt/ai-ml-ds.537ea441b124ebf6.webp) -> Diagrama, rodanti AI, ML, gilaus mokymosi ir duomenų mokslo ryšius. Infografiką sukūrė [Jen Looper](https://twitter.com/jenlooper), įkvėpta [šios grafikos](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining). +> Diagrama, rodanti AI, ML, giliojo mokymosi ir duomenų mokslo ryšius. Infografiką sukūrė [Jen Looper](https://twitter.com/jenlooper), įkvėpta [šios grafikos](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining) --- -## Temos, kurias aptarsime +## Sąvokos, kurias aptarsime -Šiame mokymo plane aptarsime tik pagrindines mašininio mokymosi koncepcijas, kurias pradedantysis turi žinoti. Daugiausia dėmesio skirsime „klasikiniam mašininiam mokymuisi“, naudodami Scikit-learn – puikią biblioteką, kurią daugelis studentų naudoja mokydamiesi pagrindų. Norint suprasti platesnes dirbtinio intelekto ar gilaus mokymosi koncepcijas, būtina turėti stiprias mašininio mokymosi pagrindines žinias, kurias norime pasiūlyti čia. +Šiame programoje mes aprėpsime tik pagrindines mašininio mokymosi sąvokas, kurių pradedantiesiems būtina išmokti. Mes daugiausia kalbėsime apie „klasikinį mašininį mokymąsi“, naudodamiesi puikia biblioteka Scikit-learn, kurią daugelis studentų naudoja mokydamiesi pagrindų. Norint suprasti platesnes dirbtinio intelekto ar giliojo mokymosi koncepcijas, būtinos tvirtos mašininio mokymosi žinios, kurias mes norime čia suteikti. --- ## Šiame kurse išmoksite: -- pagrindines mašininio mokymosi koncepcijas +- pagrindines mašininio mokymosi sąvokas - ML istoriją -- ML ir sąžiningumą -- regresijos ML technikas -- klasifikacijos ML technikas -- klasterizacijos ML technikas -- natūralios kalbos apdorojimo ML technikas -- laiko eilučių prognozavimo ML technikas -- pastiprinimo mokymąsi -- realaus pasaulio ML taikymus +- ML ir sąžiningumo aspektus +- regresijos ML metodus +- klasifikacijos ML metodus +- klasterizacijos ML metodus +- natūralios kalbos apdorojimo ML metodus +- laiko eilučių prognozavimo ML metodus +- stiprinamąjį mokymąsi +- praktines ML taikymo sritis --- ## Ko neaptarsime -- gilus mokymasis -- neuroniniai tinklai +- giliojo mokymosi +- dirbtinių neuroninių tinklų - AI -Siekiant geresnės mokymosi patirties, vengsime neuroninių tinklų sudėtingumo, „gilaus mokymosi“ – daugiapakopio modelių kūrimo naudojant neuroninius tinklus – ir AI, kurį aptarsime kitame mokymo plane. Taip pat pasiūlysime būsimą duomenų mokslo mokymo planą, skirtą šiam platesnės srities aspektui. +Gerinti mokymosi patirtį vengsime neuroninių tinklų kompleksų, „giliojo mokymosi“ – daugiasluoksnio modelių kūrimo naudojant neuroninius tinklus – bei AI temų, kurios bus aptariamos kitoje programoje. Taip pat artimiausiu metu pasiūlysime duomenų mokslo programą, skirtą šiai sričiai. --- ## Kodėl verta studijuoti mašininį mokymąsi? -Mašininis mokymasis, iš sistemų perspektyvos, apibrėžiamas kaip automatizuotų sistemų kūrimas, kurios gali išmokti paslėptus modelius iš duomenų, kad padėtų priimti protingus sprendimus. +Mašininis mokymasis, žiūrint iš sistemų perspektyvos, apibrėžiamas kaip automatizuotų sistemų kūrimas, kurios gali išmokti paslėptas taisykles iš duomenų, padėdamos priimti protingus sprendimus. -Ši motyvacija laisvai įkvėpta to, kaip žmogaus smegenys mokosi tam tikrų dalykų, remdamiesi duomenimis, kuriuos suvokia iš išorinio pasaulio. +Ši motyvacija yra laisvai įkvėpta žmogaus smegenų mokymosi principo, kai smegenys mokosi dalykų iš išorinio pasaulio suvoktos informacijos. -✅ Pagalvokite minutę, kodėl verslas norėtų naudoti mašininio mokymosi strategijas, o ne kurti griežtai užkoduotą taisyklių sistemą. +✅ Pagalvokite akimirką, kodėl verslas norėtų naudoti mašininio mokymosi strategijas, o ne kurti taisyklių variklį pagal iš anksto apibrėžtas taisykles. --- -## Mašininio mokymosi taikymas +## Kodėl svarbi duomenų kokybė -Mašininio mokymosi taikymas dabar yra beveik visur ir toks pat paplitęs kaip duomenys, kurie cirkuliuoja mūsų visuomenėse, generuojami mūsų išmaniųjų telefonų, prijungtų įrenginių ir kitų sistemų. Atsižvelgiant į pažangiausių mašininio mokymosi algoritmų potencialą, mokslininkai tyrinėja jų gebėjimą spręsti daugiadimensines ir daugiadisciplinines realaus gyvenimo problemas su puikiais rezultatais. +Aukštos kokybės duomenys gerina modelio našumą. Prasti arba triukšmingi duomenys gali sukelti netikslius prognozes net naudojant pažangiausius mašininio mokymosi algoritmus. --- -## Taikomo ML pavyzdžiai +## Mašininio mokymosi taikymai + +Mašininio mokymosi taikymai dabar yra beveik visur ir yra tokie įprasti, kaip duomenys, kurie plaukia mūsų visuomenėse, generuojami mūsų išmaniuosiuose telefonuose, prijungtuose įrenginiuose ir kituose sistemose. Atsižvelgiant į pažangių mašininio mokymosi algoritmų didžiulį potencialą, mokslininkai tyrinėja jų galimybes spręsti daugiasluoksnes ir daugdisciplinines realaus gyvenimo problemas su puikiais teigiamais rezultatais. + +--- +## Mašininio mokymosi taikymo pavyzdžiai **Mašininį mokymąsi galite naudoti įvairiais būdais**: -- Prognozuoti ligos tikimybę pagal paciento medicininę istoriją ar ataskaitas. -- Naudoti orų duomenis, kad prognozuotumėte orų įvykius. +- Nuspėti ligos tikimybę iš paciento medicininės istorijos ar įrašų. +- Naudotis orų duomenimis orų įvykiams prognozuoti. - Suprasti teksto nuotaiką. -- Aptikti netikras naujienas, kad sustabdytumėte propagandos plitimą. +- Aptikti netikras žinias ir sustabdyti propagandos plitimą. -Finansai, ekonomika, žemės mokslai, kosmoso tyrimai, biomedicinos inžinerija, kognityviniai mokslai ir net humanitariniai mokslai pritaikė mašininį mokymąsi, kad išspręstų sudėtingas, duomenų apdorojimo reikalaujančias savo srities problemas. +Finansai, ekonomika, žemės moksla, kosmoso tyrimai, biomedicinos inžinerija, pažinimo mokslas ir net humanitariniai mokslai pritaikė mašininį mokymąsi spręsti sudėtingas, duomenų apdorojimo reikalaujančias savo srities problemas. --- ## Išvada -Mašininis mokymasis automatizuoja modelių atradimo procesą, surandant prasmingas įžvalgas iš realaus pasaulio ar generuotų duomenų. Jis pasirodė esąs labai vertingas verslo, sveikatos ir finansų srityse, be kitų. +Mašininis mokymasis automatizuoja modelių atradimo procesą, ieškodamas prasmingų įžvalgų iš realių ar generuotų duomenų. Jis pasitvirtino esąs itin vertingas verslo, sveikatos ir finansų taikymuose bei kituose. -Artimiausioje ateityje mašininio mokymosi pagrindų supratimas taps būtinybe žmonėms iš bet kurios srities dėl jo plačiai paplitusio pritaikymo. +Artimoje ateityje pagrindinių mašininio mokymosi žinių supratimas bus būtinas bet kurios srities žmonėms dėl plačiai paplitusio taikymo. --- # 🚀 Iššūkis -Nupieškite, popieriuje arba naudodamiesi internetine programa, pvz., [Excalidraw](https://excalidraw.com/), savo supratimą apie AI, ML, gilaus mokymosi ir duomenų mokslo skirtumus. Pridėkite idėjų apie problemas, kurias kiekviena iš šių technikų gerai sprendžia. +Nupieškite ant popieriaus arba naudodamiesi internetine programa, pvz., [Excalidraw](https://excalidraw.com/), kaip suprantate skirtumus tarp AI, ML, giliojo mokymosi ir duomenų mokslo. Pridėkite idėjų, kokias problemas kiekviena iš šių technikų gerai sprendžia. -# [Po paskaitos testas](https://ff-quizzes.netlify.app/en/ml/) +# [Po paskaitos viktorina](https://ff-quizzes.netlify.app/en/ml/) --- -# Apžvalga ir savarankiškas mokymasis +# Peržiūra ir savarankiškas mokymasis -Norėdami sužinoti daugiau apie tai, kaip galite dirbti su ML algoritmais debesyje, sekite šį [mokymosi kelią](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott). +Norėdami sužinoti daugiau apie tai, kaip dirbti su ML algoritmais debesyje, sekite šią [mokymosi programą](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott). -Paimkite [mokymosi kelią](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) apie ML pagrindus. +Išmokite pagrindus naudodamiesi šia [mokymosi programa](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott). --- # Užduotis -[Pradėkite darbą](assignment.md) +[Pradėkite ir paleiskite](assignment.md) --- -**Atsakomybės atsisakymas**: -Šis dokumentas buvo išverstas naudojant AI vertimo paslaugą [Co-op Translator](https://github.com/Azure/co-op-translator). Nors siekiame tikslumo, prašome atkreipti dėmesį, kad automatiniai vertimai gali turėti klaidų ar netikslumų. Originalus dokumentas jo gimtąja kalba turėtų būti laikomas autoritetingu šaltiniu. Kritinei informacijai rekomenduojama profesionali žmogaus vertimo paslauga. Mes neprisiimame atsakomybės už nesusipratimus ar klaidingus interpretavimus, atsiradusius naudojant šį vertimą. \ No newline at end of file + +**Atsakomybės apribojimas**: +Šis dokumentas buvo išverstas naudojant dirbtinio intelekto vertimo paslaugą [Co-op Translator](https://github.com/Azure/co-op-translator). Nors siekiame tikslumo, prašome atkreipti dėmesį, kad automatiniai vertimai gali turėti klaidų ar netikslumų. Originalus dokumentas jo gimtąja kalba laikomas autoritetingu šaltiniu. Svarbiai informacijai rekomenduojama naudoti profesionalų žmogiškąjį vertimą. Mes neatsakome už jokius nesusipratimus ar neteisingą interpretaciją, kilusią naudojantis šiuo vertimu. + \ No newline at end of file diff --git a/translations/lt/5-Clustering/1-Visualize/README.md b/translations/lt/5-Clustering/1-Visualize/README.md index 62283f889..3d19f1345 100644 --- a/translations/lt/5-Clustering/1-Visualize/README.md +++ b/translations/lt/5-Clustering/1-Visualize/README.md @@ -1,116 +1,116 @@ # Įvadas į klasterizavimą -Klasterizavimas yra [nesupervizuoto mokymosi](https://wikipedia.org/wiki/Unsupervised_learning) tipas, kuris daro prielaidą, kad duomenų rinkinys yra nepažymėtas arba jo įvestys nėra susietos su iš anksto apibrėžtais rezultatais. Jis naudoja įvairius algoritmus, kad išanalizuotų nepažymėtus duomenis ir sudarytų grupes pagal duomenyse pastebėtus modelius. +Klasterizavimas yra [nesupervizinio mokymosi](https://wikipedia.org/wiki/Unsupervised_learning) tipas, kuris daro prielaidą, kad duomenų rinkinys nėra pažymėtas arba jo įvestys nėra susietos su iš anksto apibrėžtais išvestimis. Jis naudoja įvairius algoritmus nesuprastiems duomenims rūšiuoti ir pateikti grupes pagal duomenyse pastebėtas tendencijas. [![No One Like You by PSquare](https://img.youtube.com/vi/ty2advRiWJM/0.jpg)](https://youtu.be/ty2advRiWJM "No One Like You by PSquare") -> 🎥 Spustelėkite aukščiau esančią nuotrauką, kad peržiūrėtumėte vaizdo įrašą. Mokydamiesi mašininio mokymosi su klasterizavimu, pasimėgaukite Nigerijos šokių muzikos ritmais – tai labai vertinama PSquare daina iš 2014 metų. +> 🎥 Spustelėkite aukščiau esančią nuotrauką, norėdami peržiūrėti vaizdo įrašą. Mokydamiesi mašininio mokymosi su klasterizavimu, mėgaukitės Nigerijos Dance Hall dainomis – tai labai vertinamas 2014 metų PSquare kūrinys. -## [Prieš paskaitos testas](https://ff-quizzes.netlify.app/en/ml/) +## [Priešpaskaitinis testas](https://ff-quizzes.netlify.app/en/ml/) ### Įvadas -[Klasterizavimas](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) yra labai naudingas duomenų tyrinėjimui. Pažiūrėkime, ar jis gali padėti atrasti tendencijas ir modelius, kaip Nigerijos auditorija vartoja muziką. +[Klasterizavimas](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) labai naudingas duomenų tyrimui. Pažiūrėkime, ar jis gali padėti atrasti tendencijas ir modelius, kaip Nigerijos auditorija vartotoja muziką. -✅ Skirkite minutę pagalvoti apie klasterizavimo panaudojimą. Kasdieniame gyvenime klasterizavimas vyksta, kai turite skalbinių krūvą ir reikia išrūšiuoti šeimos narių drabužius 🧦👕👖🩲. Duomenų moksle klasterizavimas vyksta analizuojant vartotojo pageidavimus arba nustatant bet kokio nepažymėto duomenų rinkinio charakteristikas. Klasterizavimas tam tikra prasme padeda įvesti tvarką į chaosą, kaip tvarkant kojinių stalčių. +✅ Skirkite minutę pagalvoti apie klasterizavimo panaudojimą. Tikrame gyvenime klasterizavimas vyksta, kai turite krūvą skalbinių ir reikia išrūšiuoti šeimos narių drabužius 🧦👕👖🩲. Duomenų moksle klasterizavimas vyksta tada, kai analizuojamos vartotojo nuostatos arba nustatomos bet kokio nepažymėto duomenų rinkinio savybės. Klasterizavimas tam tikra prasme padeda tvarkytis su chaoso supratimu, kaip kojinių stalčius. [![Introduction to ML](https://img.youtube.com/vi/esmzYhuFnds/0.jpg)](https://youtu.be/esmzYhuFnds "Introduction to Clustering") -> 🎥 Spustelėkite aukščiau esančią nuotrauką, kad peržiūrėtumėte vaizdo įrašą: MIT profesorius John Guttag pristato klasterizavimą. +> 🎥 Spustelėkite aukščiau esančią nuotrauką, norėdami peržiūrėti vaizdo įrašą: MIT John Guttag pristato klasterizavimą -Profesinėje aplinkoje klasterizavimas gali būti naudojamas rinkos segmentavimui, pavyzdžiui, nustatant, kokios amžiaus grupės perka tam tikrus produktus. Kitas panaudojimas galėtų būti anomalijų aptikimas, pavyzdžiui, siekiant nustatyti sukčiavimą iš kredito kortelių operacijų duomenų rinkinio. Taip pat galite naudoti klasterizavimą, kad nustatytumėte auglius medicininių skenavimų rinkinyje. +Profesionalioje aplinkoje klasterizavimas gali būti naudojamas nustatyti rinkos segmentacijai, pavyzdžiui, kokios amžiaus grupės perka tam tikrus produktus. Kita paskirtis gali būti anomalijų aptikimas, pavyzdžiui, aptikti sukčiavimą kreditinių kortelių operacijų duomenų rinkinyje. Taip pat galite naudoti klasterizavimą navikų nustatymui medicininių nuskaitymų partijoje. -✅ Pagalvokite minutę, kaip galėjote susidurti su klasterizavimu „laukinėje gamtoje“, bankininkystės, e. prekybos ar verslo aplinkoje. +✅ Pagalvokite minutę, kaip galbūt susidūrėte su klasterizavimu „gyvenime“, bankininkystės, elektroninės prekybos ar verslo kontekste. -> 🎓 Įdomu tai, kad klasterių analizė atsirado antropologijos ir psichologijos srityse 1930-aisiais. Ar galite įsivaizduoti, kaip ji galėjo būti naudojama? +> 🎓 Įdomu, kad klasterių analizė kilo antropologijos ir psichologijos srityse 1930-aisiais. Ar galite įsivaizduoti, kaip ji galėjo būti naudojama? -Be to, klasterizavimas gali būti naudojamas grupuojant paieškos rezultatus – pavyzdžiui, pagal apsipirkimo nuorodas, vaizdus ar apžvalgas. Klasterizavimas yra naudingas, kai turite didelį duomenų rinkinį, kurį norite sumažinti ir atlikti detalesnę analizę, todėl ši technika gali būti naudojama norint sužinoti apie duomenis prieš kuriant kitus modelius. +Kitaip tariant, klasterizavimą galima naudoti paieškos rezultatų grupavimui – pagal pavyzdžiui, pirkinių nuorodas, vaizdus ar atsiliepimus. Klasterizavimas naudingas, kai turite didelį duomenų rinkinį, kurį norite sumažinti ir atlikti išsamesnę analizę, taigi ši technika gali būti panaudota norint pažinti duomenis prieš kuriant kitus modelius. -✅ Kai jūsų duomenys yra suskirstyti į klasterius, galite priskirti jiems klasterio ID. Ši technika gali būti naudinga išsaugant duomenų rinkinio privatumą; vietoj to galite nurodyti duomenų tašką pagal jo klasterio ID, o ne pagal labiau atskleidžiančius identifikuojamus duomenis. Ar galite sugalvoti kitų priežasčių, kodėl norėtumėte naudoti klasterio ID, o ne kitus klasterio elementus, kad jį identifikuotumėte? +✅ Kai jūsų duomenys bus suskirstyti į klasterius, priskiriate jiems klasterio Id, o ši technika naudinga išsaugoti duomenų privatumą; vietoje atskirų duomenų taškų galite nurodyti tik klasterio Id. Ar galite pagalvoti apie kitų priežasčių, dėl kurių būtų geriau naudoti klasterio Id, o ne kitus klasterio elementus identifikuoti? -Gilinkite savo supratimą apie klasterizavimo technikas šiame [mokymosi modulyje](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott). +Pagilinkite žinias apie klasterizavimo metodus šiame [mokymosi modulyje](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott) ## Pradžia su klasterizavimu -[Scikit-learn siūlo platų metodų pasirinkimą](https://scikit-learn.org/stable/modules/clustering.html) klasterizavimui atlikti. Jūsų pasirinkimas priklausys nuo naudojimo atvejo. Pagal dokumentaciją, kiekvienas metodas turi įvairių privalumų. Štai supaprastinta lentelė apie Scikit-learn palaikomus metodus ir jų tinkamus naudojimo atvejus: - -| Metodo pavadinimas | Naudojimo atvejis | -| :---------------------------- | :------------------------------------------------------------------ | -| K-Means | bendras naudojimas, induktyvus | -| Affinity propagation | daug, netolygūs klasteriai, induktyvus | -| Mean-shift | daug, netolygūs klasteriai, induktyvus | -| Spectral clustering | mažai, tolygūs klasteriai, transduktyvus | -| Ward hierarchical clustering | daug, apriboti klasteriai, transduktyvus | -| Agglomerative clustering | daug, apriboti, ne Euklidiniai atstumai, transduktyvus | -| DBSCAN | netolygi geometrija, netolygūs klasteriai, transduktyvus | -| OPTICS | netolygi geometrija, netolygūs klasteriai su kintamu tankiu, transduktyvus | -| Gaussian mixtures | tolygi geometrija, induktyvus | -| BIRCH | didelis duomenų rinkinys su išimtimis, induktyvus | - -> 🎓 Kaip mes kuriame klasterius, labai priklauso nuo to, kaip grupuojame duomenų taškus į grupes. Išskaidykime kai kuriuos terminus: +[Scikit-learn siūlo platų](https://scikit-learn.org/stable/modules/clustering.html) klasterizavimo metodų spektrą. Pasirinkimas priklausys nuo naudojimo atvejo. Pagal dokumentaciją, kiekvienas metodas turi įvairių privalumų. Štai supaprastinta lentelė su Scikit-learn palaikomais metodais ir jų tinkamais panaudojimo atvejais: + +| Metodas | Panaudojimo atvejis | +| :--------------------------- | :------------------------------------------------------------------- | +| K-Means | bendras tikslas, indukcinis | +| Afiniteto propagacija | daug, nelyginiai klasteriai, indukcinis | +| Mean-shift | daug, nelyginiai klasteriai, indukcinis | +| Spektrinis klasterizavimas | keli, lygūs klasteriai, transdukcinis | +| Ward hierarchinis klasterizavimas | daug, riboti klasteriai, transdukcinis | +| Agregacinis klasterizavimas | daug, riboti, ne Euklido atstumai, transdukcinis | +| DBSCAN | nelygi plokštuma, nelyginiai klasteriai, transdukcinis | +| OPTICS | nelygi plokštuma, įvairaus tankio nelyginiai klasteriai, transdukcinis | +| Gauso mišiniai | plokšti, indukciniai | +| BIRCH | didelis duomenų rinkinys su iškritusiais, indukcinis | + +> 🎓 Kaip kuriame klasterius, labai priklauso nuo to, kaip surenkame duomenų taškus į grupes. Išskleiskime keletą terminų: > -> 🎓 ['Transduktyvus' vs. 'induktyvus'](https://wikipedia.org/wiki/Transduction_(machine_learning)) +> 🎓 ['Transdukcinis' vs. 'indukcinis'](https://wikipedia.org/wiki/Transduction_(machine_learning)) > -> Transduktyvi išvada yra daroma iš stebėtų mokymo atvejų, kurie susiejami su konkrečiais testavimo atvejais. Induktyvi išvada yra daroma iš mokymo atvejų, kurie susiejami su bendromis taisyklėmis, kurios tik tada taikomos testavimo atvejams. +> Transdukcinė išvada gaunama iš stebimų mokymo atvejų, atitinkančių konkrečius testavimo atvejus. Indukcinė išvada gaunama iš mokymo atvejų, kurie apibrėžia bendras taisykles, kurias vėliau taiko testavimo atvejams. > -> Pavyzdys: Įsivaizduokite, kad turite duomenų rinkinį, kuris yra tik iš dalies pažymėtas. Kai kurie dalykai yra „plokštelės“, kai kurie „CD“, o kai kurie yra tušti. Jūsų užduotis yra suteikti etiketes tuštiems duomenims. Jei pasirinksite induktyvų požiūrį, treniruosite modelį ieškodami „plokštelių“ ir „CD“, ir taikysite tas etiketes nepažymėtiems duomenims. Šis požiūris turės sunkumų klasifikuojant dalykus, kurie iš tikrųjų yra „kasetės“. Transduktyvus požiūris, kita vertus, efektyviau tvarko šiuos nežinomus duomenis, nes jis dirba grupuodamas panašius elementus ir tada priskiria etiketę grupei. Šiuo atveju klasteriai gali atspindėti „apvalius muzikinius dalykus“ ir „kvadratinius muzikinius dalykus“. +> Pavyzdys: Tarkime, turite duomenų rinkinį, kuris iš dalies pažymėtas. Kai kurie duomenys yra „įrašai“, kiti „CD“, o kai kurie tušti. Jūsų užduotis – pridėti žymas tuštiems. Pasirinkę indukcinį būdą, apmokytumėte modelį ieškoti „įrašų“ ir „CD“ ir priskirti tokius ženklus nepažymėtiems duomenims. Tokiu būdu sunku būtų klasifikuoti „kasetes“. Transdukcinis būdas veiksmingiau tvarkosi su nežinomu duomenų rinkiniu, nes bando grupuoti panašius elementus ir priskiria žymę grupei. Tokiu atveju klasteriai gali atspindėti „apvalius muzikinus daiktus“ ir „kampuotus muzikinus daiktus“. > -> 🎓 ['Netolygi' vs. 'tolygia' geometrija](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering) +> 🎓 ['Nelygi plokštuma' vs. 'plokščia' geometrija](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering) > -> Matematinėje terminologijoje netolygi vs. tolygi geometrija reiškia atstumų tarp taškų matavimą naudojant „tolygias“ ([Euklidines](https://wikipedia.org/wiki/Euclidean_geometry)) arba „netolygias“ (ne Euklidines) geometrines metodikas. +> Remiantis matematiniais terminais, „nelygi plokštuma“ ir „plokščia“ geometrija reiškia atstumų tarp taškų matavimą pasitelkiant atitinkamai „plokščią“ ([Euklido](https://wikipedia.org/wiki/Euclidean_geometry)) arba „nelygią“ (ne Euklido) geometriją. > ->'Tolygia' šiame kontekste reiškia Euklidinę geometriją (dalis jos mokoma kaip „plokštuminė“ geometrija), o netolygi reiškia ne Euklidinę geometriją. Ką geometrija turi bendro su mašininiu mokymusi? Na, kaip dvi matematikos sritys, turi būti bendras būdas matuoti atstumus tarp taškų klasteriuose, ir tai gali būti daroma „tolygiai“ arba „netolygiai“, priklausomai nuo duomenų pobūdžio. [Euklidiniai atstumai](https://wikipedia.org/wiki/Euclidean_distance) matuojami kaip linijos segmento ilgis tarp dviejų taškų. [Ne Euklidiniai atstumai](https://wikipedia.org/wiki/Non-Euclidean_geometry) matuojami palei kreivę. Jei jūsų duomenys, vizualizuoti, atrodo, kad neegzistuoja plokštumoje, jums gali prireikti specializuoto algoritmo, kad juos apdorotumėte. +> Čia „plokščia“ reiškia Euklido geometriją (jos dalis mokoma kaip „plokštumos“ geometrija), o „nelygi“ – ne Euklido geometriją. Kuo geometrija susijusi su mašininiu mokymusi? Kadangi abi sritys remiasi matematika, turi būti bendras būdas matuoti atstumus tarp taškų klasteriuose, ir tai gali būti daroma „plokščiu“ arba „nelygiu“ būdu, priklausomai nuo duomenų pobūdžio. [Euklido atstumai](https://wikipedia.org/wiki/Euclidean_distance) matuojami kaip atkarpos ilgis tarp dviejų taškų. [Ne Euklido atstumai](https://wikipedia.org/wiki/Non-Euclidean_geometry) matuojami palei kreivę. Jei jūsų duomenys, vizualizuojant, atrodo neegzistuojantys plokštumoje, gali prireikti naudoti specializuotą algoritmą. > -![Tolygios vs Netolygios Geometrijos Infografikas](../../../../5-Clustering/1-Visualize/images/flat-nonflat.png) -> Infografikas sukurtas [Dasani Madipalli](https://twitter.com/dasani_decoded) +>![Plokščios vs Nelygios geometrijos infografika](../../../../translated_images/lt/flat-nonflat.d1c8c6e2a96110c1.webp) +> Infografika: [Dasani Madipalli](https://twitter.com/dasani_decoded) > > 🎓 ['Atstumai'](https://web.stanford.edu/class/cs345a/slides/12-clustering.pdf) > -> Klasteriai apibrėžiami pagal jų atstumų matricą, pvz., atstumus tarp taškų. Šis atstumas gali būti matuojamas keliais būdais. Euklidiniai klasteriai apibrėžiami pagal taškų reikšmių vidurkį ir turi „centroidą“ arba centrinį tašką. Atstumai matuojami pagal atstumą iki to centro. Ne Euklidiniai atstumai reiškia „klastroidus“, tašką, kuris yra arčiausiai kitų taškų. Klastroidai savo ruožtu gali būti apibrėžiami įvairiais būdais. +> Klasteriai apibrėžiami savo atstumo matrica, t. y. atstumais tarp taškų. Šie atstumai gali būti matuojami keliais būdais. Euklido klasteriai apibrėžiami taškų reikšmių vidurkiu ir turi 'centroidą' arba centro tašką. Atstumai matuojami iki to centro taško. Ne Euklido atstumai reiškia 'klustroidus' – tašką, esančią arčiausiai kitų taškų. Klustroidai gali būti apibrėžti skirtingais būdais. > -> 🎓 ['Apriboti'](https://wikipedia.org/wiki/Constrained_clustering) +> 🎓 ['Ribota'](https://wikipedia.org/wiki/Constrained_clustering) > -> [Apribotas klasterizavimas](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) įveda „pusiau supervizuotą“ mokymąsi į šį nesupervizuotą metodą. Taškų tarpusavio ryšiai pažymimi kaip „negali būti susieti“ arba „turi būti susieti“, todėl duomenų rinkiniui pridedamos tam tikros taisyklės. +> [Ribotas klasterizavimas](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) įterpia 'pusiau prižiūrimą' mokymąsi į šią nesupervizinę metodiką. Taškų ryšiai žymimi kaip 'negali būti susieti' arba 'turi būti susieti', todėl duomenims taikomi tam tikri apribojimai. > ->Pavyzdys: Jei algoritmas paleidžiamas laisvai ant nepažymėtų arba pusiau pažymėtų duomenų, klasteriai, kuriuos jis sukuria, gali būti prastos kokybės. Aukščiau pateiktame pavyzdyje klasteriai gali grupuoti „apvalius muzikinius dalykus“, „kvadratinius muzikinius dalykus“, „trikampius dalykus“ ir „sausainius“. Jei duodami tam tikri apribojimai arba taisyklės („daiktas turi būti pagamintas iš plastiko“, „daiktas turi galėti groti muziką“), tai gali padėti „apriboti“ algoritmą, kad jis priimtų geresnius sprendimus. +> Pavyzdys: Jei algoritmas darbo laisvėje ant nesutvarkytų arba pusiau pažymėtų duomenų, sugeneruoti klasteriai gali būti prastos kokybės. Aukščiau pavyzdyje klasteriai gali sugrupuoti „apvalius muzikos daiktus“, „kampuotus muzikos daiktus“, „trikampius daiktus“ ir „sausainius“. Jei suteiktume apribojimus arba taisykles („daiktas turi būti pagamintas iš plastiko“, „daiktas turi galėti groti muziką“), tai padėtų algoritmui pasirinkti geriau. > -> 🎓 'Tankis' +> 🎓 Tankis > -> Duomenys, kurie yra „triukšmingi“, laikomi „tankiais“. Atstumai tarp taškų kiekviename jo klasteryje gali būti, ištyrus, daugiau ar mažiau tankūs, arba „susigrūdę“, todėl šiuos duomenis reikia analizuoti naudojant tinkamą klasterizavimo metodą. [Šis straipsnis](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) demonstruoja skirtumą tarp K-Means klasterizavimo ir HDBSCAN algoritmų naudojimo triukšmingam duomenų rinkiniui su netolygiu klasterio tankiu tyrinėti. +> Duomenys, laikomi „triukšmingais“, priskiriami prie „tankaus“. Atstumai tarp taškų kiekviename klasteryje gali būti mažiau arba labiau tankūs, ar „suspausti“, todėl duomenis reikia analizuoti su tinkamu klasterizavimo metodu. [Šiame straipsnyje](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) parodytas skirtumas tarp K-Means ir HDBSCAN algoritmų, analizuojant triukšmingą duomenų rinkinį su nevienodu klasterių tankiu. ## Klasterizavimo algoritmai -Yra daugiau nei 100 klasterizavimo algoritmų, ir jų naudojimas priklauso nuo turimų duomenų pobūdžio. Aptarkime keletą pagrindinių: +Yra daugiau nei 100 klasterizavimo algoritmų, o jų naudojimas priklauso nuo turimų duomenų pobūdžio. Aptarkime kai kuriuos svarbiausius: -- **Hierarchinis klasterizavimas**. Jei objektas klasifikuojamas pagal jo artumą prie netolimo objekto, o ne prie tolimesnio, klasteriai formuojami pagal jų narių atstumą iki kitų objektų. Scikit-learn aglomeracinis klasterizavimas yra hierarchinis. +- **Hierarchinis klasterizavimas**. Jei objektas klasifikuojamas pagal artimumą prie kito artimo objekto, o ne prie tolimesnio, klasteriai formuojami remiantis narių atstumais iki kitų objektų. Scikit-learn aglomeracinis klasterizavimas yra hierarchinis. - ![Hierarchinio klasterizavimo Infografikas](../../../../5-Clustering/1-Visualize/images/hierarchical.png) - > Infografikas sukurtas [Dasani Madipalli](https://twitter.com/dasani_decoded) + ![Hierarchinio klasterizavimo infografika](../../../../translated_images/lt/hierarchical.bf59403aa43c8c47.webp) + > Infografika: [Dasani Madipalli](https://twitter.com/dasani_decoded) -- **Centroidų klasterizavimas**. Šis populiarus algoritmas reikalauja pasirinkti „k“, arba klasterių skaičių, po kurio algoritmas nustato klasterio centrinį tašką ir surenka duomenis aplink tą tašką. [K-means klasterizavimas](https://wikipedia.org/wiki/K-means_clustering) yra populiari centroidų klasterizavimo versija. Centras nustatomas pagal artimiausią vidurkį, todėl toks pavadinimas. Kvadratinis atstumas nuo klasterio yra minimalizuojamas. +- **Centroidinis klasterizavimas**. Šis populiarus algoritmas reikalauja pasirinkti „k“ – suformuojamų klasterių skaičių, po ko algoritmas nustato klasterio centro tašką ir renkasi duomenis aplink šį tašką. [K-means klasterizavimas](https://wikipedia.org/wiki/K-means_clustering) yra populiari centroidinio klasterizavimo versija. Centras nustatomas pagal artimiausią vidurkį, iš čia ir pavadinimas. Kvadratinis atstumas iki klasterio sumažinamas iki minimumo. - ![Centroidų klasterizavimo Infografikas](../../../../5-Clustering/1-Visualize/images/centroid.png) - > Infografikas sukurtas [Dasani Madipalli](https://twitter.com/dasani_decoded) + ![Centroidinio klasterizavimo infografika](../../../../translated_images/lt/centroid.097fde836cf6c918.webp) + > Infografika: [Dasani Madipalli](https://twitter.com/dasani_decoded) -- **Paskirstymo pagrindu klasterizavimas**. Remiantis statistiniu modeliavimu, paskirstymo pagrindu klasterizavimas orientuojasi į tikimybės nustatymą, kad duomenų taškas priklauso klasteriui, ir priskiria jį atitinkamai. Gaussian mišinių metodai priklauso šiam tipui. +- **Pasiskirstymo pagrindu klasterizavimas**. Remiasi statistiniu modeliavimu, pagrindinis dėmesys skiriamas nustatyti tikimybę, kad duomenų taškas priklauso klasteriui, ir atitinkamai priskiria jam klasterį. Priklauso Gauso mišinių metodai. -- **Tankio pagrindu klasterizavimas**. Duomenų taškai priskiriami klasteriams pagal jų tankį arba grupavimą aplink vienas kitą. Duomenų taškai, esantys toli nuo grupės, laikomi išimtimis arba triukšmu. DBSCAN, Mean-shift ir OPTICS priklauso šiam klasterizavimo tipui. +- **Tankio pagrindu klasterizavimas**. Duomenų taškai priskiriami klasteriams pagal jų tankį arba grupavimąsi vienas prie kito. Atstumai tarp tolimų taškų laikomi iškritusiais arba triukšmu. DBSCAN, Mean-shift ir OPTICS algoritmai priklauso šiai klasterizavimo rūšiai. -- **Tinklelio pagrindu klasterizavimas**. Daugiamatėms duomenų rinkiniams sukuriamas tinklelis, o duomenys paskirstomi tarp tinklelio langelių, taip sukuriant klasterius. +- **Tinklelio pagrindu klasterizavimas**. Multimatiniai duomenys paskirstomi į tinklelio langelius, kurie sukuria klasterius. -## Užduotis – suklasterizuokite savo duomenis +## Užduotis – klasterizuokite savo duomenis -Klasterizavimo technika labai palengvinama tinkama vizualizacija, todėl pradėkime vizualizuoti mūsų muzikos duomenis. Ši užduotis padės mums nuspręsti, kurį klasterizavimo metodą efektyviausiai naudoti šių duomenų pobūdžiui. +Klasterizavimas kaip technika labai palengvinamas geru vizualizavimu, tad pradėkime nuo mūsų muzikos duomenų vizualizavimo. Ši užduotis padės nuspręsti, kurią klasterizavimo metodą efektyviausiai naudoti su šių duomenų pobūdžiu. -1. Atidarykite [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) failą šiame aplanke. +1. Atidarykite šį aplanke esantį [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) failą. -1. Importuokite `Seaborn` paketą gerai duomenų vizualizacijai. +1. Importuokite `Seaborn` paketą, skirtą geram duomenų vaizdavimui. ```python !pip install seaborn ``` -1. Pridėkite dainų duomenis iš [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Užpildykite duomenų rėmelį su informacija apie dainas. Pasiruoškite tyrinėti šiuos duomenis importuodami bibliotekas ir išvesdami duomenis: +1. Užpildykite dainų duomenis iš [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Įkelkite duomenų rėmelį su informacija apie dainas. Pasiruoškite tirti šiuos duomenis importuodami bibliotekas ir išvedami duomenis: ```python import matplotlib.pyplot as plt @@ -122,21 +122,21 @@ Klasterizavimo technika labai palengvinama tinkama vizualizacija, todėl pradėk Patikrinkite pirmas kelias duomenų eilutes: - | | pavadinimas | albumas | atlikėjas | atlikėjo pagrindinis žanras | išleidimo data | ilgis | populiarumas | šoklumas | akustiškumas | energija | instrumentiškumas | gyvumas | garsumas | kalbėjimas | tempas | laiko parašas | - | --- | ------------------------ | ---------------------------- | ------------------- | --------------------------- | -------------- | ------ | ---------- | ------------ | -------------- | ------ | ---------------- | -------- | -------- | ----------- | ------- | -------------- | - | 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternatyvus r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 | - | 1 | -| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 | -| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 | -| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 | + | | name | album | artist | artist_top_genre | release_date | length | popularity | danceability | acousticness | energy | instrumentalness | liveness | loudness | speechiness | tempo | time_signature | + | --- | ------------------------ | ---------------------------- | ------------------- | ---------------- | ------------ | ------ | ---------- | ------------ | ------------ | ------ | ---------------- | -------- | -------- | ----------- | ------- | -------------- | + | 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 | + | 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 | + | 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 | + | 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 | + | 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 | -1. Gaukite informaciją apie duomenų rėmelį, iškviesdami `info()`: +1. Gaukite šiek tiek informacijos apie duomenų rėmelį, iškviesdami `info()`: ```python df.info() ``` - Rezultatas atrodo taip: + Išvestis atrodys maždaug taip: ```output @@ -164,13 +164,13 @@ Klasterizavimo technika labai palengvinama tinkama vizualizacija, todėl pradėk memory usage: 66.4+ KB ``` -1. Patikrinkite, ar nėra tuščių reikšmių, iškviesdami `isnull()` ir patvirtindami, kad suma yra 0: +1. Patikrinkite, ar nėra tuščių reikšmių, iškviesdami `isnull()` ir patikrindami, ar suma lygina 0: ```python df.isnull().sum() ``` - Viskas gerai: + Atrodo gerai: ```output name 0 @@ -209,11 +209,11 @@ Klasterizavimo technika labai palengvinama tinkama vizualizacija, todėl pradėk | 75% | 2017 | 242098.5 | 31 | 0.8295 | 0.403 | 0.87575 | 0.000234 | 0.164 | -3.331 | 0.177 | 125.03925 | 4 | | max | 2020 | 511738 | 73 | 0.966 | 0.954 | 0.995 | 0.91 | 0.811 | 0.582 | 0.514 | 206.007 | 5 | -> 🤔 Jei dirbame su klasterizavimu, nesupervizuotu metodu, kuriam nereikia pažymėtų duomenų, kodėl rodome šiuos duomenis su etiketėmis? Duomenų tyrimo fazėje jie yra naudingi, tačiau klasterizavimo algoritmams jie nėra būtini. Galėtumėte tiesiog pašalinti stulpelių pavadinimus ir nurodyti duomenis pagal stulpelių numerius. +> 🤔 Jei dirbame su klasterizacija, nekontroliuojama metodu, kuriam nereikia žymėtų duomenų, kodėl šiuos duomenis rodome su žymomis? Duomenų tyrimo etape tai yra naudinga, bet klasterizacijos algoritmams ženklai nėra būtini. Galite tiesiog pašalinti stulpelių antraštes ir nurodyti duomenis pagal stulpelių numerį. -Pažvelkite į bendras duomenų reikšmes. Atkreipkite dėmesį, kad populiarumas gali būti '0', kas rodo dainas, kurios neturi reitingo. Pašalinkime jas netrukus. +Pažiūrėkite į bendrą duomenų reikšmių vaizdą. Atkreipkite dėmesį, kad populiarumas gali būti '0', rodantis dainas, neturinčias reitingo. Pašalinkime jas netrukus. -1. Naudokite stulpelinę diagramą, kad sužinotumėte populiariausius žanrus: +1. Naudokite stulpelinę diagramą, kad sužinotumėte pačias populiariausias žanrus: ```python import seaborn as sns @@ -225,13 +225,13 @@ Pažvelkite į bendras duomenų reikšmes. Atkreipkite dėmesį, kad populiaruma plt.title('Top genres',color = 'blue') ``` - ![most popular](../../../../5-Clustering/1-Visualize/images/popular.png) + ![most popular](../../../../translated_images/lt/popular.9c48d84b3386705f.webp) -✅ Jei norite pamatyti daugiau aukščiausių reikšmių, pakeiskite top `[:5]` į didesnę reikšmę arba pašalinkite ją, kad pamatytumėte viską. +✅ Jei norite pamatyti daugiau didžiausių reikšmių, pakeiskite `[:5]` į didesnę reikšmę arba pašalinkite ją, kad matytumėte visas. -Atkreipkite dėmesį, kai aukščiausias žanras apibūdinamas kaip 'Missing', tai reiškia, kad Spotify jo neklasifikavo, todėl pašalinkime jį. +Atkreipkite dėmesį, kai aukščiausias žanras apibūdinamas kaip 'Missing', tai reiškia, kad Spotify jo neklasifikavo, tad pašalinkime jį. -1. Pašalinkite trūkstamus duomenis, juos filtruodami +1. Pašalinkite trūkstamus duomenis filtruodami juos ```python df = df[df['artist_top_genre'] != 'Missing'] @@ -242,11 +242,11 @@ Atkreipkite dėmesį, kai aukščiausias žanras apibūdinamas kaip 'Missing', t plt.title('Top genres',color = 'blue') ``` - Dabar dar kartą patikrinkite žanrus: + Dabar patikrinkite žanrus dar kartą: - ![most popular](../../../../5-Clustering/1-Visualize/images/all-genres.png) + ![most popular](../../../../translated_images/lt/all-genres.1d56ef06cefbfcd6.webp) -1. Trys populiariausi žanrai akivaizdžiai dominuoja šiame duomenų rinkinyje. Susikoncentruokime į `afro dancehall`, `afropop` ir `nigerian pop`, papildomai filtruokime duomenų rinkinį, kad pašalintume viską su 0 populiarumo reikšme (tai reiškia, kad jie nebuvo klasifikuoti pagal populiarumą duomenų rinkinyje ir gali būti laikomi triukšmu mūsų tikslams): +1. Tolimųjų trys žanrai dominuoja šiame duomenų rinkinyje. Susikoncentruokime į `afro dancehall`, `afropop` ir `nigerian pop`, papildomai filtruodami duomenų rinkinį, kad pašalintume viską, kur populiarumas yra 0 (tai reiškia, kad duomenų rinkinyje nebuvo priskirtas populiarumas ir tai gali būti triukšmas mums): ```python df = df[(df['artist_top_genre'] == 'afro dancehall') | (df['artist_top_genre'] == 'afropop') | (df['artist_top_genre'] == 'nigerian pop')] @@ -258,7 +258,7 @@ Atkreipkite dėmesį, kai aukščiausias žanras apibūdinamas kaip 'Missing', t plt.title('Top genres',color = 'blue') ``` -1. Greitai patikrinkite, ar duomenys koreliuoja kokiu nors stipriu būdu: +1. Atlikite greitą testą, ar duomenys rimtai koreliuoja: ```python corrmat = df.corr(numeric_only=True) @@ -266,21 +266,21 @@ Atkreipkite dėmesį, kai aukščiausias žanras apibūdinamas kaip 'Missing', t sns.heatmap(corrmat, vmax=.8, square=True) ``` - ![correlations](../../../../5-Clustering/1-Visualize/images/correlation.png) + ![correlations](../../../../translated_images/lt/correlation.a9356bb798f5eea5.webp) - Vienintelė stipri koreliacija yra tarp `energy` ir `loudness`, kas nėra labai stebėtina, nes garsus muzika paprastai yra gana energinga. Kitaip koreliacijos yra gana silpnos. Bus įdomu pamatyti, ką klasterizavimo algoritmas gali padaryti su šiais duomenimis. + Vienintelė stipri koreliacija yra tarp `energy` ir `loudness`, kas nėra labai stebinanti, kadangi garsioji muzika dažnai yra gana energinga. Kitais atvejais koreliacijos yra gana silpnos. Įdomu bus pamatyti, ką klasterizacijos algoritmas su šiais duomenimis gali sukurti. - > 🎓 Atkreipkite dėmesį, kad koreliacija nereiškia priežastinio ryšio! Turime koreliacijos įrodymą, bet neturime priežastinio ryšio įrodymo. [Ši juokinga svetainė](https://tylervigen.com/spurious-correlations) turi keletą vizualizacijų, kurios pabrėžia šį punktą. + > 🎓 Atkreipkite dėmesį, kad koreliacija nereiškia priežastingumo! Turime koreliacijos įrodymą, bet ne priežastingumo įrodymą. [Juokingas tinklalapis](https://tylervigen.com/spurious-correlations) turi vizualizacijų, kurios pabrėžia šį faktą. -Ar šiame duomenų rinkinyje yra konvergencija aplink dainos suvokiamą populiarumą ir šokamumą? FacetGrid rodo, kad yra koncentriniai apskritimai, kurie sutampa, nepriklausomai nuo žanro. Ar gali būti, kad Nigerijos skoniai konverguoja tam tikru šokamumo lygiu šiam žanrui? +Ar šie duomenys sutampa apie dainos suvokiamą populiarumą ir šokamumą? FacetGrid rodo, kad egzistuoja koncentrinės žiedinės linijos, nepriklausomai nuo žanro. Ar gali būti, kad Nigerijos muzikiniai skoniai sutampa tam tikru šokamumo lygiu šiam žanrui? -✅ Išbandykite skirtingus duomenų taškus (energy, loudness, speechiness) ir daugiau ar skirtingų muzikos žanrų. Ką galite atrasti? Pažvelkite į `df.describe()` lentelę, kad pamatytumėte bendrą duomenų taškų pasiskirstymą. +✅ Išbandykite skirtingus duomenų taškus (energija, garsumas, kalbėjimo intensyvumas) ir daugiau ar skirtingų muzikos žanrų. Ką galite atrasti? Peržiūrėkite `df.describe()` lentelę, kad pamatytumėte bendrą duomenų taškų pasiskirstymą. -### Užduotis - duomenų pasiskirstymas +### Pratimai – duomenų pasiskirstymas -Ar šie trys žanrai reikšmingai skiriasi pagal jų šokamumo suvokimą, remiantis jų populiarumu? +Ar šie trys žanrai žymiai skiriasi jų šokamumo suvokimu, remiantis jų populiarumu? -1. Išnagrinėkite mūsų trijų populiariausių žanrų duomenų pasiskirstymą pagal populiarumą ir šokamumą išilgai tam tikros x ir y ašies. +1. Išnagrinėkite mūsų trijų geriausių žanrų duomenų pasiskirstymą populiarumui ir šokamumui duotose x ir y ašyse. ```python sns.set_theme(style="ticks") @@ -292,15 +292,15 @@ Ar šie trys žanrai reikšmingai skiriasi pagal jų šokamumo suvokimą, remian ) ``` - Galite atrasti koncentrinius apskritimus aplink bendrą konvergencijos tašką, rodančius taškų pasiskirstymą. + Galite aptikti koncentrines žiedines linijas aplink bendrą sankirtos tašką, rodantį taškų pasiskirstymą. - > 🎓 Atkreipkite dėmesį, kad šiame pavyzdyje naudojama KDE (Kernel Density Estimate) grafika, kuri atvaizduoja duomenis naudojant nuolatinę tikimybės tankio kreivę. Tai leidžia interpretuoti duomenis dirbant su keliomis pasiskirstymo reikšmėmis. + > 🎓 Atkreipkite dėmesį, kad šis pavyzdys naudoja KDE (Branduolio tankio įvertį) grafiką, kuris reprezentuoja duomenis naudojant tęstinį tikimybės tankio kreivę. Tai leidžia interpretuoti duomenis dirbant su keliais pasiskirstymais. - Apskritai, trys žanrai laisvai suderinti pagal jų populiarumą ir šokamumą. Nustatyti klasterius šiuose laisvai suderintuose duomenyse bus iššūkis: + Apskritai, trys žanrai silpnai sutampa pagal jų populiarumą ir šokamumą. Nustatyti klasterius šiame silpnai sutampančiame duomenyje bus iššūkis: - ![distribution](../../../../5-Clustering/1-Visualize/images/distribution.png) + ![distribution](../../../../translated_images/lt/distribution.9be11df42356ca95.webp) -1. Sukurkite sklaidos diagramą: +1. Sukurkite išsklaidytos diagramos grafiką: ```python sns.FacetGrid(df, hue="artist_top_genre", height=5) \ @@ -308,31 +308,33 @@ Ar šie trys žanrai reikšmingai skiriasi pagal jų šokamumo suvokimą, remian .add_legend() ``` - Sklaidos diagrama su tomis pačiomis ašimis rodo panašų konvergencijos modelį + Tokia pat ašių išsklaidytos diagramos grafika rodo panašią sankirtos struktūrą - ![Facetgrid](../../../../5-Clustering/1-Visualize/images/facetgrid.png) + ![Facetgrid](../../../../translated_images/lt/facetgrid.9b2e65ce707eba1f.webp) -Apskritai, klasterizavimui galite naudoti sklaidos diagramas, kad parodytumėte duomenų klasterius, todėl šio tipo vizualizacijos įvaldymas yra labai naudingas. Kitoje pamokoje naudosime šiuos filtruotus duomenis ir taikysime k-means klasterizavimą, kad atrastume grupes šiuose duomenyse, kurios įdomiai persidengia. +Apskritai, klasterizacijai galite naudoti išsklaidytos diagramas, kad parodytumėte duomenų klasterius, todėl šio vizualizavimo tipo įvaldymas yra labai naudingas. Kitame pamokoje naudosime šiuos filtruotus duomenis ir atliksime k-means klasterizaciją, kad atrastume grupes duomenyse, kurios, atrodo, įdomiai sutampa. --- ## 🚀Iššūkis -Ruošiantis kitai pamokai, sudarykite diagramą apie įvairius klasterizavimo algoritmus, kuriuos galite atrasti ir naudoti gamybos aplinkoje. Kokias problemas klasterizavimas bando spręsti? +Pasiruošiant kitam pamokui, sukurkite diagramą apie įvairius klasterizacijos algoritmus, kuriuos galėtumėte atrasti ir naudoti gamybos aplinkoje. Kokias problemas klasterizacija bando spręsti? ## [Po paskaitos testas](https://ff-quizzes.netlify.app/en/ml/) -## Apžvalga ir savarankiškas mokymasis +## Peržiūra ir savarankiškas mokymasis -Prieš taikydami klasterizavimo algoritmus, kaip išmokome, gerai suprasti savo duomenų rinkinio pobūdį. Skaitykite daugiau apie šią temą [čia](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html) +Prieš taikant klasterizacijos algoritmus, kaip mes išmokome, verta suprasti savo duomenų rinkinio pobūdį. Apie tai skaitykite daugiau [čia](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html). -[Šis naudingas straipsnis](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) paaiškina įvairius klasterizavimo algoritmus ir jų elgesį, atsižvelgiant į skirtingas duomenų formas. +[Šis naudingas straipsnis](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) paaiškina skirtingų klasterizacijos algoritmų elgesį, atsižvelgiant į skirtingas duomenų formas. -## Užduotis +## Namų darbai -[Tyrinėkite kitus vizualizacijos būdus klasterizavimui](assignment.md) +[Tirti kitas vizualizacijas klasterizacijai](assignment.md) --- -**Atsakomybės apribojimas**: -Šis dokumentas buvo išverstas naudojant AI vertimo paslaugą [Co-op Translator](https://github.com/Azure/co-op-translator). Nors siekiame tikslumo, atkreipkite dėmesį, kad automatiniai vertimai gali turėti klaidų ar netikslumų. Originalus dokumentas jo gimtąja kalba turėtų būti laikomas autoritetingu šaltiniu. Kritinei informacijai rekomenduojama profesionali žmogaus vertimo paslauga. Mes neprisiimame atsakomybės už nesusipratimus ar klaidingus interpretavimus, atsiradusius naudojant šį vertimą. \ No newline at end of file + +**Atsakomybės apribojimas**: +Šis dokumentas buvo išverstas naudojant dirbtinio intelekto vertimo paslaugą [Co-op Translator](https://github.com/Azure/co-op-translator). Nors siekiame tikslumo, prašome atkreipti dėmesį, kad automatiniai vertimai gali turėti klaidų ar netikslumų. Originalus dokumentas jo gimtąja kalba laikomas autoritetingu šaltiniu. Svarbiai informacijai rekomenduojama naudoti profesionalų žmogiškąjį vertimą. Mes neatsakome už jokius nesusipratimus ar neteisingą interpretaciją, kilusią naudojantis šiuo vertimu. + \ No newline at end of file diff --git a/translations/my/.co-op-translator.json b/translations/my/.co-op-translator.json index 38adc6113..e0485a7e3 100644 --- a/translations/my/.co-op-translator.json +++ b/translations/my/.co-op-translator.json @@ -1,7 +1,7 @@ { "1-Introduction/1-intro-to-ML/README.md": { - "original_hash": "69389392fa6346e0dfa30f664b7b6fec", - "translation_date": "2025-09-05T12:49:34+00:00", + "original_hash": "3a6394c6f5ce3f8aee8211e92eaf9ef0", + "translation_date": "2026-05-26T22:47:41+00:00", "source_file": "1-Introduction/1-intro-to-ML/README.md", "language_code": "my" }, @@ -240,8 +240,8 @@ "language_code": "my" }, "5-Clustering/1-Visualize/README.md": { - "original_hash": "730225ea274c9174fe688b21d421539d", - "translation_date": "2025-09-05T12:15:48+00:00", + "original_hash": "08b00d9fbffc667a7fe7fc19ac00dfbd", + "translation_date": "2026-05-26T22:46:56+00:00", "source_file": "5-Clustering/1-Visualize/README.md", "language_code": "my" }, diff --git a/translations/my/1-Introduction/1-intro-to-ML/README.md b/translations/my/1-Introduction/1-intro-to-ML/README.md index 4e7373326..45fa9af36 100644 --- a/translations/my/1-Introduction/1-intro-to-ML/README.md +++ b/translations/my/1-Introduction/1-intro-to-ML/README.md @@ -1,150 +1,157 @@ -# စက်ရုပ်သင်ယူမှုအကြောင်းအရာ +# မစဉ်းစားပြီး စက်သင်ယူခြင်းအတွက် အကြို ## [Pre-lecture quiz](https://ff-quizzes.netlify.app/en/ml/) --- -[![ML for beginners - စက်ရုပ်သင်ယူမှုအကြောင်းအရာ](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML for beginners - စက်ရုပ်သင်ယူမှုအကြောင်းအရာ") +[![ML for beginners - Introduction to Machine Learning for Beginners](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML for beginners - Introduction to Machine Learning for Beginners") -> 🎥 အပေါ်ရှိပုံကိုနှိပ်ပြီး ဒီသင်ခန်းစာကို လိုက်လံလေ့လာပါ။ +> 🎥 ဤသင်တန်းကို အလုပ်လုပ်ခြင်း၏ အတိုချုံ့ဗီဒီယိုအတွက် အထက်ပါပုံကို နှိပ်ပါ။ -စက်ရုပ်သင်ယူမှုအကြောင်းအရာကို စတင်လေ့လာရန် ဒီသင်ခန်းစာကို ကြိုဆိုပါတယ်။ သင်သည် ဒီအကြောင်းအရာကို လုံးဝအသစ်ဖြစ်စေ၊ ML အတွေ့အကြုံရှိသူဖြစ်စေ၊ ကျွန်ုပ်တို့နှင့်အတူ လေ့လာရန် ဝမ်းသာစွာကြိုဆိုပါတယ်။ ML ကို စတင်လေ့လာရန် သင့်အတွက် သက်တောင့်သက်သာရှိသော အခြေခံနေရာတစ်ခု ဖန်တီးရန် ကျွန်ုပ်တို့ရည်ရွယ်ထားပြီး သင်၏ [အကြံပြုချက်](https://github.com/microsoft/ML-For-Beginners/discussions) ကိုလည်း လက်ခံပြီး တုံ့ပြန်ပေးပါမည်။ +သင်ကြားမှုသင်တန်းအတွက် classical machine learning ကို စတင်လေ့လာသူများအတွက် ကြိုဆိုပါသည်။ သင်သည် ဤအကြောင်းအရာနှင့် အသစ်စတင်သူဖြစ်ပါစေ၊ ML လက်တွေ့ကျွမ်းကျင်သူဖြစ်ပါစေ၊ သင်သည် သင့်ရဲ့ ML သင်ကြားမှုအတွက် လှုပ်ရှားမှုတစ်ခု ဖြစ်ပေါ်စေချင်ပါတယ်၊ စိတ်ချရတဲ့ နေရာတစ်ခုဖန်တီးပေးချင်ပါတယ်။ ကျနော်တို့သည် သင့် [တုံ့ပြန်ချက်](https://github.com/microsoft/ML-For-Beginners/discussions) ကို အကဲဖြတ်၊ တုံ့ပြန်၊ ထည့်သွင်းရာတွင် ဝမ်းမြောက်ပါသည်။ [![Introduction to ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Introduction to ML") -> 🎥 အပေါ်ရှိပုံကိုနှိပ်ပြီး MIT မှ John Guttag ၏ စက်ရုပ်သင်ယူမှုအကြောင်းအရာကို ကြည့်ရှုပါ။ +> 🎥 ဤပုံကို နှိပ်၍ MIT ၏ John Guttag မှ machine learning ကို မှိတ်ဆောင်သောဗီဒီယိုကို ကြည့်ပါ။ --- -## စက်ရုပ်သင်ယူမှုကို စတင်လေ့လာခြင်း +## စက်သင်ယူခြင်းနှင့် စတင်ခြင်း -ဒီသင်ခန်းစာကို စတင်မတိုင်မီ သင့်ကွန်ပျူတာကို notebook များကို ဒေသတွင်းတွင် အဆင်ပြေစွာ အသုံးပြုနိုင်ရန် ပြင်ဆင်ထားရမည်။ +ဤသင်ခန်းစာကို စတင်မလုပ်မီ သင်၏ ကွန်ပျူတာကို စနစ်အလိုက် အဆင့်သတ်မှတ်ပြီး တိုက်ရိုက် notebook များကို အလုပ်လုပ်နိုင်ရန် ပြင်ဆင်ထားရန်လိုအပ်ပါသည်။ -- **သင့်စက်ကို ဤဗီဒီယိုများဖြင့် ပြင်ဆင်ပါ**။ [Python](https://youtu.be/CXZYvNRIAKM) ကို သင့်စနစ်တွင် ထည့်သွင်းနည်းနှင့် [စာသားတည်းဖြတ်ရေးကိရိယာ](https://youtu.be/EU8eayHWoZg) ကို စတင်အသုံးပြုနည်းကို လေ့လာရန် အောက်ပါလင့်ခ်များကို အသုံးပြုပါ။ -- **Python ကို လေ့လာပါ**။ [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott) အခြေခံကို သိရှိထားရန် အကြံပြုပါသည်။ Python သည် ဒေတာသိပ္ပံပညာရှင်များအတွက် အသုံးဝင်သော programming language ဖြစ်ပြီး ဒီသင်ခန်းစာတွင် အသုံးပြုပါမည်။ -- **Node.js နှင့် JavaScript ကို လေ့လာပါ**။ ဒီသင်ခန်းစာတွင် web app များတည်ဆောက်ရာတွင် JavaScript ကို အနည်းငယ်အသုံးပြုမည်ဖြစ်သောကြောင့် [node](https://nodejs.org) နှင့် [npm](https://www.npmjs.com/) ကို ထည့်သွင်းထားရန် လိုအပ်ပါသည်။ Python နှင့် JavaScript တို့အတွက် [Visual Studio Code](https://code.visualstudio.com/) ကိုလည်း အသုံးပြုနိုင်ရန် ပြင်ဆင်ထားပါ။ -- **GitHub အကောင့်တစ်ခု ဖန်တီးပါ**။ သင် [GitHub](https://github.com) တွင် ကျွန်ုပ်တို့ကို ရှာဖွေတွေ့ရှိခဲ့သောကြောင့် အကောင့်ရှိပြီးဖြစ်နိုင်သော်လည်း မရှိသေးပါက အကောင့်တစ်ခု ဖန်တီးပြီး ဒီသင်ခန်းစာကို fork လုပ်ပါ။ (ကျွန်ုပ်တို့ကို star တစ်ခုလည်း ပေးပါ 😊) -- **Scikit-learn ကို လေ့လာပါ**။ [Scikit-learn](https://scikit-learn.org/stable/user_guide.html) သည် ML libraries များဖြစ်ပြီး ဒီသင်ခန်းစာများတွင် ကိုးကားအသုံးပြုမည်ဖြစ်သည်။ +- **ဤဗီဒီယိုများနှင့် သင့်ကွန်ပျူတာကို ချိန်ညှိပါ**။ အောက်ပါလင့်ခ်များကို အသုံးပြု၍ [Python ကိုတပ်ဆင်နည်း](https://youtu.be/CXZYvNRIAKM) နှင့် [code editor တစ်ခုကို စိတ်ကြိုက်ပြင်ဆင်နည်း](https://youtu.be/EU8eayHWoZg) ကို သင်ယူပါ။ +- **Python ကို သင်ယူပါ**။ ဒီသင်ခန်းစာတွင် အသုံးပြုသော ဒေတာသိပ္ပံပညာရှင်များအတွက် အသုံးဝင်သော ဘာသာစကားဖြစ်သော [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott) အခြေခံနားလည်မှု ရှိရန် အကြံပြုသည်။ +- **Node.js နှင့် JavaScript ကို သင်ယူပါ**။ ကျွန်ုပ်တို့ သင်ခန်းစာအတွင်း python နှင့် JavaScript နှစ်ခုလုံးအတွက် အသုံးပြု၍ ဝက်ဘ်အက်ပ်များ တည်ဆောက်မှုအတွက် [node](https://nodejs.org) နှင့် [npm](https://www.npmjs.com/) တပ်ဆင်ထားရမည်၊ အတူတကွ [Visual Studio Code](https://code.visualstudio.com/) ကို လည်း အသုံးပြုနိုင်ရမည်။ +- **GitHub အကောင့်ဖန်တီးပါ**။ သင်သည် ဒီမှာ [GitHub](https://github.com) တွင် ကျွန်ုပ်တို့ကို ရှာဖွေတွေ့ရှိခဲ့သောကြောင့် သင်မှာ အကောင့်ရှိဖြစ်ပါနိုင်သည်၊ မရှိလျှင် ဖန်တီးပါ၊ နောက်တစ်ကြိမ် သင်၏ ကိုယ်ပိုင်သင်ခန်းစာပုံစံအတိုင်း branch မဖြတ်ရန် fork လုပ်ပါ။ (ကျွန်ုပ်တို့အား ကြယ်ပေးသည်မှာလည်း ကျေးဇူးတင်ပါသည် 😊) +- **Scikit-learn ကို စူးစမ်းရှုပါ**။ ယင်းသင်ခန်းစာများတွင် ကိုးကားသော ML လိုင်ဘရီများဖြစ်သော [Scikit-learn](https://scikit-learn.org/stable/user_guide.html) ကို လေ့လာလိမ့်မည်။ --- -## စက်ရုပ်သင်ယူမှုဆိုတာဘာလဲ? +## စက်သင်ယူခြင်း란ဘာလဲ? -'Sစက်ရုပ်သင်ယူမှု' ဆိုသော စကားလုံးသည် ယနေ့ခေတ်တွင် အလွန်လူကြိုက်များပြီး မကြာခဏအသုံးပြုသော စကားလုံးတစ်ခုဖြစ်သည်။ သင်သည် နည်းပညာနှင့် ရင်းနှီးပြီး အလုပ်အကိုင်မည်သည့်နယ်ပယ်တွင်မဆို ဒီစကားလုံးကို အနည်းဆုံးတစ်ကြိမ်တော့ ကြားဖူးနိုင်ပါသည်။ သို့သော် စက်ရုပ်သင်ယူမှု၏ လုပ်ဆောင်ပုံများသည် လူအများအတွက် နက်နဲသောအရာတစ်ခုဖြစ်သည်။ စက်ရုပ်သင်ယူမှုကို စတင်လေ့လာသူများအတွက် အခါအားလျော်စွာ အလွန်ခက်ခဲသောအရာတစ်ခုလို ခံစားရနိုင်သည်။ ထို့ကြောင့် စက်ရုပ်သင်ယူမှုဆိုတာဘာလဲဆိုတာကို နားလည်ရန်အရေးကြီးပြီး လက်တွေ့နမူနာများဖြင့် အဆင့်ဆင့်လေ့လာသင့်သည်။ +'စက်သင်ယူခြင်း' ဟူသော စကားလုံးသည် ယနေ့ခေတ်အများဆုံးအသုံးပြုသော စကားလုံးတစ်ခုဖြစ်သည်။ နည်းပညာနှင့် သင်သိရှိမှုတစ်ခုခုရှိပါက ဤစကားလုံးကို တစ်ခါတစ်ရံ ကြားဖူးဖြစ်ပြီး ဖြစ်နိုင်ပါသည်။ သို့သော် စက်သင်ယူခြင်း၏ လုပ်ဆောင်ပုံများသည် လူအများစုအတွက် မထင်ရှားသေးပါ။ စက်သင်ယူသူ အသစ်အတွက် ပညာရပ်သည် လုပ်ဆောင်ရ အခက်အခဲများ ဖြစ်နိုင်သည်။ ထို့ကြောင့် စက်သင်ယူခြင်းသည် တကယ် အဘယ်နည်းကို နားလည်ကောင်းစွာ ရယူခြင်းနှင့် လက်တွေ့အဖြစ်များမှတဆင့် အဆင့်ဆင့် သင်ယူသည်မှာ အရေးကြီးသည်။ --- -## Hype curve +## အားလုံးစိတ်လှုပ်ရှားသည့် လမ်းကြောင်း -![ml hype curve](../../../../1-Introduction/1-intro-to-ML/images/hype.png) +![ml hype curve](../../../../translated_images/my/hype.07183d711a17aafe.webp) -> Google Trends မှ 'machine learning' စကားလုံး၏ နောက်ဆုံးရ 'hype curve' ကို ပြသထားသည်။ +> Google Trends ကနေ 'machine learning' စကားလုံး၏ လတ်တလော hype curve ကို ပြသနေသည်။ --- -## အံ့ဖွယ်ကမ္ဘာ +## တစ်ခုသောအံ့ဖွယ်ကမ္ဘာ -ကျွန်ုပ်တို့သည် အံ့ဖွယ်အရာများနှင့် ပြည့်နှက်နေသော ကမ္ဘာတစ်ခုတွင် နေထိုင်ကြသည်။ Stephen Hawking, Albert Einstein စသည်ဖြင့် အထင်ကရ သိပ္ပံပညာရှင်များသည် ကမ္ဘာ့အကြောင်းအရာများကို ရှာဖွေဖော်ထုတ်ရန် အသက်ကို အလုံးစုံအပ်နှံခဲ့ကြသည်။ လူသားများသည် အသက်အရွယ်ကြီးလာသည်နှင့်အမျှ ကမ္ဘာ့ဖွဲ့စည်းပုံကို ရှာဖွေဖော်ထုတ်သည့် သင်ယူမှုအခြေအနေဖြစ်သည်။ +ကျွန်တော်တို့သည် အံ့ဖွယ်စုံလင်သော လျှို့ဝှက်ချက်များအပြည့်နက်သော ကမ္ဘာတစ်ခုတွင် နေနေသည်။ နာမည်ကြီး သိပ္ပံပညာရှင်များဖြစ်သူ Stephen Hawking၊ Albert Einstein နှင့် အခြားအများအပြားသည် စိုင်းစွမ်းသော သတင်းအချက်အလက်ကို ရှာဖွေရန် ကိုယ်ပိုင်ဘဝကို သတ်မှတ်ထားသည်။ လူသားသည် ဂရုပြုတတ်သော လူသားကလေးထံမှ တစ်နှစ်နှစ်စဉ် တိုးတက်လာပြီး သူ၏ကမ္ဘာ၏ ဖွဲ့စည်းမှုကို ရှာဖွေသင်ယူလေ့လာသည်။ --- ## ကလေး၏ ဦးနှောက် -ကလေး၏ ဦးနှောက်နှင့် အာရုံခံကိရိယာများသည် ပတ်ဝန်းကျင်မှ အချက်အလက်များကို သိရှိပြီး gradually hidden patterns များကို သင်ယူသည်။ ဒီသင်ယူမှုသည် ကလေးကို logical rules များဖန်တီးရန် အထောက်အကူပြုသည်။ လူသား၏ ဦးနှောက်သည် hidden patterns များကို ရှာဖွေဖော်ထုတ်ပြီး အဆင့်ဆင့်တိုးတက်လာစေသည်။ ဒီသင်ယူနိုင်စွမ်းနှင့် တိုးတက်နိုင်စွမ်းသည် [brain plasticity](https://www.simplypsychology.org/brain-plasticity.html) ဆိုသော အယူအဆနှင့် ဆက်စပ်နေသည်။ လူသား၏ ဦးနှောက်၏ သင်ယူမှုနှင့် စက်ရုပ်သင်ယူမှု၏ အယူအဆများအကြား motivational similarities များကို ရှာဖွေနိုင်သည်။ +ကလေး၏ ဦးနှောက်နှင့်ကြားနာစိတ်က သူ၏ပတ်ဝန်းကျင်မှ အချက်အလက်များကို သိမြင်ပြီး နည်းနည်းအားဖြင့် နက်ရှိုင်းသော လျှို့ဝှက် မျက်နှာပြင်များကို ရှာဖွေသည်။ ဤကလေးသည် နှလုံးသား ဖြင့် အချက်အလက်များကို သဘောပေါက်သီ ကျန်းမာရေးရှိသော စည်းမျဥ်းစည်းကမ်းများ ဖန်တီးနိုင်ခြင်းကို သင်ယူသည်။ လူ့ဦးနှောက်၏ သင်ယူမှုလုပ်ငန်းဖြင့် လူသားများသည် ကမ္ဘာပေါ်ရှိ ကျွမ်းကျင်ဆုံးသော အသက်ရှင်သော အဖွဲ့အစည်း ဖြစ်လာသည်။ လျှို့ဝှက်မှုများကို မျက်မှောက်တည့်စွာ ရှာဖွေပြီး ထို pattern များပေါ်တွင် တီထွင်ဆန်းသစ်ခြင်းသည် ကျွန်ုပ်တို့ကို ဘဝတစ်လျှောက်လုံး ပိုမိုကောင်းမွန်စေသည်။ ဒီသင်ယူနိုင်မှုနှင့် ပြောင်းလဲ တိုးတက်မှုစွမ်းဆောင်ရည်သည် [brain plasticity](https://www.simplypsychology.org/brain-plasticity.html) ဟုခေါ်သော အယူအဆနှင့် ဆက်စပ်နေသည်။ မျက်နှာပြင်အထက်ပိုင်းတွင် လူ့ဦးနှောက်၏ သင်ယူခြင်းလုပ်ငန်းနှင့် စက်သင်ယူခြင်း၏ အယူအဆများအကြား ပြိုင်ပြိုင်စားစား အားပေးမှု ရှိသည်။ --- -## လူသား၏ ဦးနှောက် +## လူ့ဦးနှောက် -[lူသား၏ ဦးနှောက်](https://www.livescience.com/29365-human-brain.html) သည် အပြင်လောကမှ အချက်အလက်များကို သိရှိပြီး အချက်အလက်များကို လုပ်ဆောင်မှုအခြေအနေအရ ဆုံးဖြတ်ချက်များကို ချမှတ်သည်။ ဒီလိုလုပ်ဆောင်မှုကို intelligent behavior ဟုခေါ်သည်။ ဒီ intelligent behavior ကို စက်တစ်ခုတွင် program လုပ်ခြင်းသည် artificial intelligence (AI) ဟုခေါ်သည်။ +[l်ာ္�ို႔ညတင္ထဴေ့ပါတဟ််မ္ာ်ဂဂတိလယူတ်မ](https://www.livescience.com/29365-human-brain.html) သဘာဝကိရိယာများမှ သတင်းအချက်ကို သိမြင်၏၊ ကိုယ်တိုင် သိမြင်ထားသည့် သတင်းအချက်များကို အလုပ်လုပ်သည်၊ ယဉ်ကျေးမှုဆောင်ရွက်ချက်ဖြင့် နှုတ်ဆက်ဖြစ်စေရန် အချက်အလက်များကို အသုံးပြု၍ လုပ်ဆောင်ချက်တစ်ခုခုကို ပြုလုပ်သည်။ ဤသည်ကို ကျွန်ုပ်တို့သည် တောက်လျှောက် ကျွမ်းကျင်မှုရှိသော အပြုအမူဟု ခေါ်သည်။ ဦးနောက်ယှဉ်ပြောပါက စက်တစ်လုံးတွင် ဤအပြုအမူ 域စမတ်လည်တိုက်ဇာတ်ကို programming လုပ်ခြင်းကို ဒုတိယ ဉာဏ်အင်္ဂါရပ် (AI) ဟုခေါ်သည်။ --- -## အဓိကအသုံးအနှုန်းများ +## တချို့သော စကားလုံးများ -စကားလုံးများသည် အလွယ်တကူ ရောထွေးနိုင်သော်လည်း machine learning (ML) သည် artificial intelligence ၏ အရေးပါသော အခွဲတစ်ခုဖြစ်သည်။ **ML သည် အထူး algorithm များကို အသုံးပြု၍ hidden patterns များကို ရှာဖွေဖော်ထုတ်ပြီး အချက်အလက်များကို အသုံးပြု၍ ဆုံးဖြတ်ချက်များကို အတည်ပြုရန် အရေးပါသော အချက်အလက်များကို ရှာဖွေဖော်ထုတ်ခြင်းနှင့် ဆက်စပ်နေသည်**။ +စကားလုံးများ ခြွင်းချက် ဖြစ်ပေါ်နိုင်သော်လည်း စက်သင်ယူခြင်း (ML) သည် ဒုတိယ ဉာဏ် (AI) ၏ အရေးပါတဲ့ အမျိုးအစားတစ်ခု ဖြစ်သည်။ **ML သည် အထူးပြု အယ်လဂေါရစ်သမ်များ အသုံးပြုကာ အဓိကသတင်းအချက်များ ရှာဖွေကာ မမြင်သာသော ပုံစံများကို ရှာဖွေကာ ရှိသော ဒေတာမှ မှန်ကန်သော ဆုံးဖြတ်ချက်များ ဆောင်ရွက်နိုင်ရန် ဆောင်ရွက်သည်။** --- -## AI, ML, Deep Learning +## AI, ML, အနက်ရောင်သင်ယူခြင်း -![AI, ML, deep learning, data science](../../../../1-Introduction/1-intro-to-ML/images/ai-ml-ds.png) +![AI, ML, deep learning, data science](../../../../translated_images/my/ai-ml-ds.537ea441b124ebf6.webp) -> AI, ML, deep learning, data science တို့၏ ဆက်စပ်မှုကို ပြသထားသော diagram။ [Jen Looper](https://twitter.com/jenlooper) မှ [ဒီ graphic](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining) ကို အခြေခံ၍ ဖန်တီးထားသည်။ +> AI, ML, deep learning နှင့် ဒေတာသိပ္ပံတို့အကြား ဆက်နွယ်မှုများကို ဖော်ပြသောဇယား။ [Jen Looper](https://twitter.com/jenlooper) မှ infographic ဖြစ်ပြီး [ဤပုံစံ](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining) မှ ရယူထားသည်။ --- -## လေ့လာရန် အကြောင်းအရာများ +## လေ့လာရမည့် အယူအဆများ -ဒီသင်ခန်းစာတွင် စက်ရုပ်သင်ယူမှု၏ အဓိကအကြောင်းအရာများကိုသာ လေ့လာမည်ဖြစ်သည်။ ကျွန်ုပ်တို့သည် classical machine learning ကို Scikit-learn ကို အသုံးပြု၍ အဓိကအခြေခံများကို လေ့လာမည်ဖြစ်သည်။ artificial intelligence သို့မဟုတ် deep learning ၏ ကျယ်ပြန့်သော အကြောင်းအရာများကို နားလည်ရန် ML အခြေခံကို သိရှိထားရန် အရေးကြီးသည်။ +ဤသင်ခန်းစာတွင် စက်သင်ယူခြင်း၏ အခြေခံကျသော အယူအဆများသာ လေ့လာမည်ဖြစ်သည်။ ကျွန်ုပ်တို့သည် Scikit-learn ကို အသုံးပြုကာ လူသင်ယူသူများစွာ အသုံးပြုသော classical machine learning ကို အဓိကပင်လေ့လာပါမည်။ ဒုတိယ ဉာဏ် ပိုမိုကျယ်ပြန့်သည့် အယူအဆများကို နားလည်ရန်၊ စက်သင်ယူခြင်း၏ အခြေခံ အကျဉ်းများကို ပိုင်နိုင်ရန် လိုအပ်သည်ဖြစ်၍ ဤသင်ခန်းစာတွင် ထည့်သွင်းထားသည်။ --- -## ဒီသင်ခန်းစာတွင် သင်လေ့လာမည့်အရာများ: +## ဤသင်ခန်းစာတွင် သင်သိရှိမည့် အရာများ -- စက်ရုပ်သင်ယူမှု၏ အဓိကအကြောင်းအရာများ -- ML ၏ သမိုင်းကြောင်း +- စက်သင်ယူခြင်း၏ အခြေခံအယူအဆများ +- ML ၏ သမိုင်း - ML နှင့် တရားမျှတမှု -- regression ML နည်းလမ်းများ -- classification ML နည်းလမ်းများ -- clustering ML နည်းလမ်းများ -- natural language processing ML နည်းလမ်းများ -- time series forecasting ML နည်းလမ်းများ +- regression ML နည်းစနစ်များ +- classification ML နည်းစနစ်များ +- clustering ML နည်းစနစ်များ +- သဘာဝဘာသာစကားဆိုင်ရာ ML နည်းစနစ်များ +- အချိန်စီးရီးခန့်မှန်းရေး ML နည်းစနစ်များ - reinforcement learning -- ML ၏ လက်တွေ့အသုံးချမှုများ +- ML ၏ လက်တွေ့လုပ်ငန်းများ --- -## ကျွန်ုပ်တို့ မလေ့လာမည့်အရာများ +## မလေ့လာမည့် အကြောင်းအရာများ -- deep learning -- neural networks -- AI +- အနက်ရောင်သင်ယူခြင်း (deep learning) +- နယူးရယ်ကွန်ယက်များ (neural networks) +- ဒုတိယ ဉာဏ် (AI) -သင်ယူမှုကို ပိုမိုလွယ်ကူစေရန် neural networks, deep learning, AI တို့၏ ရှုပ်ထွေးမှုများကို ရှောင်ရှားမည်ဖြစ်သည်။ ကျွန်ုပ်တို့သည် data science curriculum တစ်ခုကို လာမည့်အချိန်တွင် တင်ဆက်မည်ဖြစ်သည်။ +အကောင်းမွန်သော သင်ယူမှုအတွေ့အကြုံ ပေးရန် neural networks ၏ စနစ်ရှုပ်ထွေးမှုများ၊ ‘deep learning’ ဟူသော နယူးရယ်ကွန်ယက်များ အထပ်ထပ် သုံးသပ်လေ့လာမှု၊ နှင့် AI ကို ဧခြား အခြားသင်ခန်းစာတွင် ဆွေးနွေးပါမည်။ ဤကဏ္ဍအတွက် ဒေတာသိပ္ပံ သင်ခန်းစာတစ်ခုကို လာမည့်အချိန်တွင် ထုတ်ပြန်ရန်ရှိပါသည်။ --- -## စက်ရုပ်သင်ယူမှုကို ဘာကြောင့်လေ့လာရမလဲ? +## စက်သင်ယူခြင်း သင်ယူရန် အကြောင်းပြချက် -စနစ်အမြင်မှ machine learning ကို data မှ hidden patterns များကို ရှာဖွေဖော်ထုတ်ပြီး intelligent decisions များကို အထောက်အကူပြုရန် automated systems များဖန်တီးခြင်းဟု သတ်မှတ်သည်။ +စက်သင်ယူခြင်းသည် စနစ်တကျ စနစ်အလိုက် အလိုအလျောက် ပုံသေနည်းများကို ဖန်တီးတည်ဆောက်ခြင်းဖြစ်ပြီး ဒေတာမှ ထွက်ရှိသော ပုံစံများကို သင်ယူကာ ဉာဏ်ရည်ပြည့်ဝသော ဆုံးဖြတ်ချက်များ မြှင့်တင်ရန် ကူညီပေးသည်။ -ဒီ motivation သည် လူသား၏ ဦးနှောက်သည် အပြင်လောကမှ perceives data ကို အသုံးပြု၍ သင်ယူပုံကို အနည်းငယ်အခြေခံထားသည်။ +ဤလှုံ့ဆော်မှုသည် လူ့ဦးနှောက်သည် အပြင်က ကမ္ဘာမှ သိမြင်သည့် ဒေတာများအပေါ် မှီငြမ်း၍ သင်ယူသည့် နည်းပုံကို အခြေခံသည်။ -✅ စဉ်းစားကြည့်ပါ - ဘာကြောင့် စီးပွားရေးလုပ်ငန်းတစ်ခုသည် hard-coded rules-based engine တစ်ခု ဖန်တီးခြင်းအစား machine learning strategies များကို အသုံးပြုရန် ကြိုးစားမည်နည်း။ +✅ စီးပွားရေးလုပ်ငန်းသည် စက်သင်ယူနည်းဗျူဟာများကို အသုံးပြုချင်ရန် ဘာကြောင့် ရှိသည်၊ စနစ်ကိုအစဉ်အလာတစ်ခုအတိုင်း ချုပ်ရိုးစည်းကမ်း ဇယား ဖြင့် ဖန်တီးခြင်း နှိုင်းယှဉ်စဉ်းစားကြည့်ပါ။ --- -## စက်ရုပ်သင်ယူမှု၏ အသုံးချမှုများ +## ဒေတာအရည်အသွေး အရေးကြီးချက် -စက်ရုပ်သင်ယူမှု၏ အသုံးချမှုများသည် ယနေ့ခေတ်တွင် data များနှင့်အတူ နေရာတိုင်းတွင် ရှိနေသည်။ state-of-the-art ML algorithms များ၏ အလွန်ကြီးမားသော potential ကို ရှာဖွေဖော်ထုတ်ရန် သုတေသနများကို လုပ်ဆောင်နေကြသည်။ +အရည်အသွေးမြင့် ဒေတာများသည် မော်ဒယ်၏ အလုပ်အမှုဆောင်မှုကို တိုးတက်စေသည်။ အရည်အသွေးကျဆင်းသော ဒေတာများ သို့မဟုတ် အနံ့နှင့် အတူ ဒေတာသည် တင်မြှောက်မှု မှားယွင်းခြင်းဖြစ်စေနိုင်သည်။ --- -## ML ကို လက်တွေ့အသုံးချမှုများ +## စက်သင်ယူခြင်း၏ အသုံးချမှုများ -**စက်ရုပ်သင်ယူမှုကို အမျိုးမျိုးအသုံးပြုနိုင်သည်**: +စက်သင်ယူခြင်းဖြစ်သည့်အရာများ သက်ဆိုင်ရာ ဒေသများနှင့် စီးပွားရေးလုပ်ငန်း၊ ကျန်းမာရေး၊ ဘဏ္ဍာရေး ၊ သက်ရှိမှုစနစ်များ အားလုံးတွင် မြန်ဆန်စွာ အသုံးချနေကြသည်။ စက်သင်ယူနည်းဗျူဟာများ၏ ထူးခြားသော စွမ်းဆောင်ရည်ကြောင့် သုတေသနရှင်များသည် များစွာသော မျိုးစုံသော အခက်အခဲများကို ဖြေရှင်းရာတွင် ၎င်းတို့၏ စွမ်းရည်ကို စူးစမ်းလေ့လာခဲ့ကြသည်။ -- လူနာ၏ ဆေးဘက်ဆိုင်ရာမှတ်တမ်းများမှ ရောဂါဖြစ်နိုင်ခြေကို ခန့်မှန်းရန် -- ရာသီဥတုအချက်အလက်များကို အသုံးပြု၍ ရာသီဥတုဖြစ်နိုင်ခြေကို ခန့်မှန်းရန် -- စာသား၏ စိတ်ထားကို နားလည်ရန် -- အတုသတင်းများကို ရှာဖွေဖော်ထုတ်ပြီး propaganda ကို ရပ်တန့်ရန် +--- +## စက်သင်ယူမှု လက်တွေ့ ဥပမာများ + +**စက်သင်ယူခြင်းကို ဖြင့်အသုံးများစွာအသုံးပြုနိုင်သည်** - + +- လူနာ၏ ဆေးဘက်သမားမှတ်တမ်းများမှ နာတာရှည်ရောဂါ ဖြစ်လားမဖြစ်လား ခန့်မှန်းသည်။ +- မိုးလေဝသ ဒေတာအရ မိုးလေဝသဖြစ်ရလဒ် ခန့်မှန်းသည်။ +- စာသား၏ စိတ်ခံစားမှုကို နားလည်သည်။ +- ပရိုပဂန်းဒါ ဖြန့်ချိခြင်းကို ရပ်တန့်ရန် မီဒီယာသတင်း အမှားများကို ဖော်ထုတ်သည်။ -Finance, economics, earth science, space exploration, biomedical engineering, cognitive science, humanities စသည်တို့တွင် ML ကို အသုံးပြု၍ data-processing-heavy problems များကို ဖြေရှင်းနေကြသည်။ +ဘဏ္ဍာရေး၊ စီးပွားရေး၊ မြေဗေဒ၊ မိသားစုကြီး ကြယ်ပုံစီမံခြင်း၊ ဇီဝဆေးပညာ၊ ဦးနှောက်ပညာ နှင့် လူမှုဗေဒကဏ္ဍများမှ စက်သင်ယူ နည်းပညာကို မိမိတိုင်းအခက်အခဲ ပြဿနာများ ဖြေရှင်းရန် အသုံးချဆောင်ရွက်နေကြသည်။ --- -## နိဂုံး +## နိဂုံးချုပ် -စက်ရုပ်သင်ယူမှုသည် real-world သို့မဟုတ် generated data မှ hidden patterns များကို ရှာဖွေဖော်ထုတ်ပြီး အရေးပါသော insights များကို ရှာဖွေဖော်ထုတ်သည်။ စီးပွားရေး, ကျန်းမာရေး, ငွေကြေး application များတွင် အလွန်တန်ဖိုးရှိသည်။ +စက်သင်ယူခြင်းသည် အချက်အလက်အရင်းအမြစ်မှ အဓိကဖြစ်သော သတင်းအချက်များ ရှာဖွေသည့် လုပ်ငန်းစဉ်ကို မော်ဒယ်လိုက် စနစ်တကျလုပ်ဆောင်သည်။ ၎င်းသည် စီးပွားရေး၊ ကျန်းမာရေးနှင့် ဘဏ္ဍာရေးလောကတွင် တန်ဖိုး အရှိန်အဟုန်တိုးစေသည်။ -အနာဂတ်တွင် ML အခြေခံကို နားလည်ခြင်းသည် နယ်ပယ်မည်သည့်နယ်ပယ်မှမဆို လူတိုင်းအတွက် မဖြစ်မနေလိုအပ်လာမည်။ +နီးကပ်လာတဲ့ အနာဂတ်တွင် မည်သည့်နယ်ပယ်မှမဆို စက်သင်ယူခြင်း၏ အခြေခံကို သိရှိနားလည်ရမည်ဖြစ်သည်၊ ၎င်း၏ ကျယ်ပြန့်စွာ အသုံးချမှုပြုကြောင်းကြောင့် ဖြစ်သည်။ --- # 🚀 စိန်ခေါ်မှု -AI, ML, deep learning, data science တို့၏ ကွာခြားချက်များကို သင်၏ နားလည်မှုကို [Excalidraw](https://excalidraw.com/) ကဲ့သို့သော online app သို့မဟုတ် စက္ကူပေါ်တွင် ရေးဆွဲပါ။ အခြားနည်းလမ်းများဖြင့် ဖြေရှင်းနိုင်သော ပြဿနာများကို ထည့်သွင်းပါ။ +စာရွက်ပေါ်တွင် သို့မဟုတ် အွန်လိုင်း app တစ်ခုဖြစ်သော [Excalidraw](https://excalidraw.com/) မှတဆင့် AI, ML, deep learning နှင့် data science ၏ ကွာခြားချက်များကို သင်၏ နားလည်မှုအတိုင်း ရေးဆွဲပေးပါ။ ဤနည်းလမ်းများအားလုံးအား ဖြေရှင်းနိုင်သောပြဿနာများအကြောင်းကို အကြံဉာဏ်များ ထည့်သွင်းရေးဆွဲပါ။ # [Post-lecture quiz](https://ff-quizzes.netlify.app/en/ml/) --- -# ပြန်လည်သုံးသပ်ခြင်းနှင့် ကိုယ်တိုင်လေ့လာခြင်း +# ပြန်လည်သုံးသပ်ခြင်း & ကိုယ်တိုင်လေ့လာမှု -ML algorithms များကို cloud တွင် အသုံးပြုနည်းကို လေ့လာရန် [Learning Path](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott) ကို လိုက်နာပါ။ +Cloud တွင် ML အယ်လဂေါရစ်သမ်များနှင့် မည်သို့ လုပ်ဆောင်နိုင်မည်ကို ပိုမိုသိရှိရန် ယခု [Learning Path](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott) ကို လိုက်နာပါ။ -ML အခြေခံများကို လေ့လာရန် [Learning Path](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) ကို လိုက်နာပါ။ +ML အခြေခံ ကို သင်ယူရန် [Learning Path](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) တစ်ခုကို လည်း လိုက်နာပါ။ --- -# လုပ်ငန်းတာဝန် +# အလုပ်အကိုင် တာဝန် [Get up and running](assignment.md) --- -**ဝက်ဘ်ဆိုက်မှတ်ချက်**: -ဤစာရွက်စာတမ်းကို AI ဘာသာပြန်ဝန်ဆောင်မှု [Co-op Translator](https://github.com/Azure/co-op-translator) ကို အသုံးပြု၍ ဘာသာပြန်ထားပါသည်။ ကျွန်ုပ်တို့သည် တိကျမှန်ကန်မှုအတွက် ကြိုးစားနေသော်လည်း၊ အလိုအလျောက်ဘာသာပြန်ဆိုမှုများတွင် အမှားများ သို့မဟုတ် မတိကျမှုများ ပါဝင်နိုင်သည်ကို ကျေးဇူးပြု၍ သတိပြုပါ။ မူရင်းစာရွက်စာတမ်းကို ၎င်း၏ မူလဘာသာစကားဖြင့် အာဏာတည်သောရင်းမြစ်အဖြစ် သတ်မှတ်သင့်ပါသည်။ အရေးကြီးသော အချက်အလက်များအတွက် လူ့ဘာသာပြန်ပညာရှင်များမှ အတည်ပြုထားသော ဘာသာပြန်ဆိုမှုကို အသုံးပြုရန် အကြံပြုပါသည်။ ဤဘာသာပြန်ဆိုမှုကို အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော နားလည်မှုမှားများ သို့မဟုတ် အဓိပ္ပာယ်မှားများအတွက် ကျွန်ုပ်တို့သည် တာဝန်မယူပါ။ \ No newline at end of file + +**ပြောကြားချက်** +ဤစာတမ်းကို AI ဘာသာပြန်ဝန်ဆောင်မှု [Co-op Translator](https://github.com/Azure/co-op-translator) အသုံးပြု၍ ဘာသာပြန်ထားပါသည်။ ကျွန်ုပ်တို့သည် တိကျမှန်ကန်မှုအတွက် ကြိုးပမ်းနေသော်လည်း၊ စက်ကိရိယာဘာသာပြန်ခြင်းများတွင် အမှားများ သို့မဟုတ် မှားယွင်းချက်များ ပါဝင်နိုင်ကြောင်း သတိပြုပါရန် လိုအပ်ပါသည်။ မူလစာတမ်းကို မူရင်းဘာသာဖြင့်သာ ယုံကြည်စိတ်ချရသော အချက်အလက်အဖြစ် သတ်မှတ်သင့်သည်။ အရေးကြီးသည့် သတင်းအချက်အလက်များအတွက် ပရော်ဖက်ရှင်နယ် လူသားဘာသာပြန်သူဝန်ဆောင်မှုကို အကြံပြုပါသည်။ ဤဘာသာပြန်ချက်ကို အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော နားလည်မှုကွာခြားမှုများ သို့မဟုတ် မမှန်ကန်သော အသုံးပြုမှုများအတွက် ကျွန်ုပ်တို့ တာဝန်မခံပါ။ + \ No newline at end of file diff --git a/translations/my/5-Clustering/1-Visualize/README.md b/translations/my/5-Clustering/1-Visualize/README.md index ec45ccf7d..99b3baef1 100644 --- a/translations/my/5-Clustering/1-Visualize/README.md +++ b/translations/my/5-Clustering/1-Visualize/README.md @@ -1,127 +1,141 @@ -# Clustering ကိုမိတ်ဆက်ခြင်း +# clustering မိတ်ဆက်ခြင်း -Clustering သည် [Unsupervised Learning](https://wikipedia.org/wiki/Unsupervised_learning) အမျိုးအစားတစ်ခုဖြစ်ပြီး၊ dataset တွင် label မပါရှိခြင်း သို့မဟုတ် input များကို predefined output များနှင့်မတူညီခြင်းကိုယူဆသည်။ Clustering သည် unlabeled data များကိုစီစဉ်ရန်အတွက် အမျိုးမျိုးသော algorithm များကိုအသုံးပြုပြီး၊ data တွင်တွေ့ရှိသော pattern များအပေါ်အခြေခံ၍ အုပ်စုများကိုဖော်ထုတ်ပေးသည်။ +Clustering သည် [Unsupervised Learning](https://wikipedia.org/wiki/Unsupervised_learning) ၏အမျိုးအစားတစ်ခုဖြစ်ပြီး ဒေတာစုစည်းမှုသည် မှတ်တမ်းမထားသော သို့မဟုတ် ၎င်း၏အင်ပുട്ടများကို ယခင်သတ်မှတ်ထားသော ထုတ်လွှင့်ချက်များနှင့် မကိုက်ညီကြောင်း ခန့်မှန်းထားသည်။ ၎င်းသည် မှတ်တမ်းမထားသော ဒေတာကို အမျိုးမျိုးသော 알고리즘များအသုံးပြု၍ စီစဉ်ကာ ဒေတာအတွင်းရှိ နမူနာအတိုင်း အုပ်စုများပေးသည်။ [![No One Like You by PSquare](https://img.youtube.com/vi/ty2advRiWJM/0.jpg)](https://youtu.be/ty2advRiWJM "No One Like You by PSquare") -> 🎥 အထက်ပါပုံကိုနှိပ်ပြီး video ကိုကြည့်ပါ။ Clustering ဖြင့် machine learning ကိုလေ့လာနေစဉ်၊ Nigerian Dance Hall သီချင်းများကိုခံစားပါ - PSquare ၏ 2014 ခုနှစ်မှ highly rated သီချင်းတစ်ပုဒ်ဖြစ်သည်။ +> 🎥 အပေါ်ကပုံကိုနှိပ်၍ ဗီဒီယိုကြည့်ပါ။ သင်သည် clustering ဖြင့် machine learning ကိုလေ့လာသောအခါ Nigerian Dance Hall သီချင်းများကိုအားကျပါစေ - ၎င်းသည် ၂၀၁၄ ခုနှစ်တွင် PSquare မှ ထွက်ရှိခဲ့သောအမြင့်ဆုံးသီချင်းတစ်ပုဒ်ဖြစ်သည်။ ## [Pre-lecture quiz](https://ff-quizzes.netlify.app/en/ml/) -### မိတ်ဆက် +### မိတ်ဆက်ခြင်း -[Clustering](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) သည် data exploration အတွက် အလွန်အသုံးဝင်သည်။ Nigerian audience များ၏ music စားသုံးပုံစံများတွင် trend များနှင့် pattern များကိုဖော်ထုတ်နိုင်မလားဆိုတာကြည့်ကြမယ်။ +[Clustering](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) သည် ဒေတာရှာဖွေမှုအတွက် အထူးအသုံးဝင်သည်။ Nigerian ပရိသတ်များက မျိုးစုံသီချင်းများကို ဘယ်လိုစားသုံးကြသည်ဆိုတာတွင် ရေရှည်ဂရုစိုက်စွာ ရှာဖွေရေးနှင့် နမူနာများကို ရှာဖွေကြရအောင်။ -✅ Clustering ၏အသုံးဝင်မှုများအကြောင်းကိုအချိန်တစ်မိနစ်ယူပြီးစဉ်းစားပါ။ အမှန်တစ်ရားတွင် Clustering သည် သင်အဝတ်လျှော်ပုံတစ်ပုံကိုယူပြီး မိသားစုဝင်များ၏အဝတ်အစားများကိုစီစဉ်သောအခါဖြစ်ပေါ်သည် 🧦👕👖🩲။ Data science တွင် Clustering သည် user ၏စိတ်ကြိုက်များကိုခွဲခြားရန် သို့မဟုတ် unlabeled dataset တစ်ခု၏လက္ခဏာများကိုသတ်မှတ်ရန်အခါဖြစ်ပေါ်သည်။ Clustering သည် chaos ကိုအဓိပ္ပါယ်ရှိစေရာအတွက် အကူအညီပေးသည်၊ ဥပမာ - sock drawer တစ်ခုလိုပါပဲ။ +✅ clustering ၏ အသုံးအနှုန်းများအကြောင်း တစ်မိနစ် စဉ်းစားကြည့်ပါ။ အပြင်ပတ်ဝန်းကျင်တွင်၊ အထည်ဆောင်ပစ္စည်းအုပ်တစ်စုရှိပါက မိသားစုဝင်တစ်ဦးချင်းစီ၏အထည်များကို သီးခြားခွဲထုတ်ရာတွင် clustering ဖြစ်ပေါ်သည် 🧦👕👖🩲။ ဒေတာသိပ္ပံတွင်၊ user ၏ နှစ်သက်မှုများကို စိစစ်ရာတွင် သို့မဟုတ် မမှတ်တမ်းထားသော dataset ၏ သတ်မှတ်ချက်များကို ဖေါ်ထုတ်ရာတွင် clustering ဖြစ်ပေါ်သည်။ clustering သည် ရောဂါအုပ်စုတစ်ခုကဲ့သို့ ထိန်းသိမ်းရန် ကူညီပေးသည်။ [![Introduction to ML](https://img.youtube.com/vi/esmzYhuFnds/0.jpg)](https://youtu.be/esmzYhuFnds "Introduction to Clustering") -> 🎥 အထက်ပါပုံကိုနှိပ်ပြီး video ကိုကြည့်ပါ။ MIT ၏ John Guttag မှ Clustering ကိုမိတ်ဆက်သည်။ +> 🎥 အပေါ်ကပုံကိုနှိပ်၍ ဗီဒီယိုကြည့်ပါ - MIT မှ John Guttag မှ clustering အကြောင်း မိတ်ဆက်သည် -အလုပ်အကိုင် setting တွင် Clustering ကို market segmentation သတ်မှတ်ရန်၊ ဥပမာ - ဘယ်အသက်အရွယ်အုပ်စုများက ဘယ်ပစ္စည်းများကိုဝယ်လဲဆိုတာသတ်မှတ်ရန် အသုံးပြုနိုင်သည်။ အခြားအသုံးပြုမှုတစ်ခုကတော့ anomaly detection ဖြစ်ပြီး၊ ဥပမာ - credit card transaction dataset မှ fraud ကိုဖော်ထုတ်ရန်ဖြစ်သည်။ သို့မဟုတ် medical scan များအစုအပေါ်တွင် tumor များကိုသတ်မှတ်ရန် Clustering ကိုအသုံးပြုနိုင်သည်။ +အသက်မွေး၀မ်းကြောင်း ပတ်ဝန်းကျင်၌ clustering ကို သုံး၍ ဈေးကွက် segmentation နှင့် အသက်အိုင်းအုပ်စုများ၊ မည်ကဲ့သို့ ပစ္စည်းများ ဝယ်ယူကြသည်ဆိုသည်ကို သတ္တိထားနိုင်သည်။ နောက်ထပ်အသုံးဝင်မှုမှာ မှားယွင်းမှုများ သို့မဟုတ် ခရက်ဒစ်ကဒ် လွှဲပြောင်းမှုများမှ တရားမဝင် လှုပ်ရှားမှုများကို ရှာဖွေရေးဖြစ်နိုင်သည်။ သို့မဟုတ် ဆေးဘက်ဆိုင်ရာ စကင်များမှ ကင်ဆာတောက်များကို ဖော်ထုတ်ရန် clustering ကိုသုံးနိုင်သည်။ -✅ Banking, e-commerce, သို့မဟုတ် business setting တစ်ခုတွင် Clustering ကို 'in the wild' တွေ့ရှိဖူးလားဆိုတာကိုအချိန်တစ်မိနစ်ယူပြီးစဉ်းစားပါ။ +✅ ဘဏ်လုပ်ငန်း၊ အွန်လိုင်းစျေးဝယ်ခြင်း သို့မဟုတ် စီးပွားရေး ပတ်ဝန်းကျင်တွင် clustering ကို တွေ့ကြုံခံစားဖူးသည်ကို တစ်မိနစ်စဉ်းစားကြည့်ပါ။ -> 🎓 စိတ်ဝင်စားဖွယ်ကောင်းသည်မှာ၊ Cluster analysis သည် 1930 ခုနှစ်များတွင် Anthropology နှင့် Psychology ကဏ္ဍများတွင်မူလစတင်ခဲ့သည်။ အဲဒီအချိန်မှာဘယ်လိုအသုံးပြုခဲ့မလဲဆိုတာကိုစဉ်းစားနိုင်မလား? +> 🎓 စိတ်ဝင်စားဖွယ်ကောင်းသည်မှာ cluster သုံးသပ်ချက်ဟာ ၁၉၃၀ ပြည့်နှစ်များက လူမှုမူနှင့် စိတ်ပညာနယ်ပယ်များမှလာသည်။ ၎င်းကို ဘယ်လိုအသုံးပြုခဲ့တာလဲဟု စဉ်းစားနိုင်ပါသလား? -အခြားနည်းလမ်းတစ်ခုကတော့ search result များကို grouping လုပ်ရန်ဖြစ်သည် - shopping link များ၊ image များ သို့မဟုတ် review များဖြင့် grouping လုပ်ခြင်း။ Clustering သည် dataset ကြီးတစ်ခုကိုလျှော့ချပြီး၊ granular analysis ပိုမိုလုပ်ဆောင်လိုသောအခါ အသုံးဝင်သည်။ ထို့ကြောင့်၊ အခြား model များကိုတည်ဆောက်မီ data အကြောင်းကိုလေ့လာရန်အတွက် technique တစ်ခုအဖြစ်အသုံးပြုနိုင်သည်။ +အခြားပုံစံတွင် ရှာဖွေမှု ရလဒ်များကို အုပ်စုဖွဲ့နိုင်သည် - ဥပမာ စျေးဝယ်လင့်ခ်များ၊ ပုံများ သို့မဟုတ် သုံးသပ်ချက်များဖြင့်။ clustering သည် အရမ်းကြီးမားသော ဒေတာစုစည်းမှုရှိပြီး ဆက်လက် စိစစ်တွက်ချက်ရန် အကြမ်းဖျင်းနည်းလမ်းဖြင့် အသုံးပြုလိုသောအခါ အသုံးကျသည်။ ထို့ကြောင့် မတူညီသည့် မော်ဒယ်များတည်ဆောက်ခြင်းမတိုင်မီ ဒေတာကို သင်ယူနိုင်ရန် အသုံးပြုသည်။ -✅ Data ကို cluster များအတွင်းစီစဉ်ပြီးနောက်၊ Cluster Id တစ်ခုကိုပေးအပ်ပြီး၊ dataset privacy ကိုထိန်းသိမ်းရန်အတွက် technique တစ်ခုအဖြစ်အသုံးဝင်သည်။ Data point ကိုပိုမိုဖော်ထုတ်နိုင်သော identifiable data များမဟုတ်ဘဲ Cluster Id ဖြင့်ရည်ညွှန်းနိုင်သည်။ Cluster Id ကိုအသုံးပြုရန်အခြားအကြောင်းရင်းများကိုစဉ်းစားနိုင်မလား? +✅ သင်၏ဒေတာအား အုပ်စုများအနေဖြင့် စုစည်းပြီးနောက်၊ အဲဒီအုပ်စုကို cluster Id ဖြင့် သတ်မှတ်၍ ဒီနည်းလမ်းက ဒေတာစုစည်းမှု၏ ကိုယ်ရေးကာကွယ်မှုကို ထိန်းသိမ်းရာတွင် အသုံးဝင်နိုင်သည်။ အစားတစ်ခုချင်းစီအား cluster id ဖြင့် ကိုယ်စားပြု၍ သီးခြားသိရှိစေသော ဒေတာများဖြင့် မသိသာစေခြင်းဖြစ်သည်။ cluster Id ကို အခြားသူများအစား သုံးရသော အခြားအကြောင်း ပြောပြနိုင်ပါသလား။ -Clustering technique များအကြောင်းကို [Learn module](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott) တွင်ပိုမိုနက်နက်ရှိုင်းရှိုင်းလေ့လာပါ။ +clustering နည်းပညာများကို ပိုမိုနက်ရှိုင်းစွာ လေ့လာရန် [Learn module](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott) ကို ကြည့်ပါ +## clustering စတင်ခြင်း -## Clustering ကိုစတင်အသုံးပြုခြင်း +[Scikit-learn သည် clustering လုပ်ရန် နည်းလမ်းများ များစွာ](https://scikit-learn.org/stable/modules/clustering.html) ပေးပို့ပေးသည်။ သင်ရွေးချယ်မည့်အမျိုးအစားသည် သုံးရန်အခြေအနေမှာ မူတည်သည်။ စာရွက်စာတမ်းအရ၊ နည်းလမ်းတိုင်းတွင် အကြောင်းအရင်းများ ရှိသည်။ ရိုးရှင်းစွာ အောက်တွင် Scikit-learn သတင်းအချက်အလက်တွင် ပါဝင်သော နည်းလမ်းများနှင့် သုံးစေရေး ဖြစ်စဉ်များကို တပ်ဆင်ထားသည် - -[Scikit-learn မှာ](https://scikit-learn.org/stable/modules/clustering.html) Clustering ကိုလုပ်ဆောင်ရန်အတွက် နည်းလမ်းများစွာရှိသည်။ သင်ရွေးချယ်မည့်အမျိုးအစားသည် သင့် use case အပေါ်မူတည်သည်။ Documentation အရ၊ နည်းလမ်းတစ်ခုစီမှာ အမျိုးမျိုးသောအကျိုးကျေးဇူးများရှိသည်။ Scikit-learn မှ support ပြုသောနည်းလမ်းများနှင့်၎င်းတို့၏သင့်လျော်သော use case များကိုရိုးရှင်းသောဇယားအဖြစ်ဖော်ပြထားသည်။ - -| နည်းလမ်းအမည် | Use case | +| နည်းလမ်းအမည် | အသုံးပြုမှု | | :--------------------------- | :--------------------------------------------------------------------- | -| K-Means | general purpose, inductive | -| Affinity propagation | many, uneven clusters, inductive | -| Mean-shift | many, uneven clusters, inductive | -| Spectral clustering | few, even clusters, transductive | -| Ward hierarchical clustering | many, constrained clusters, transductive | -| Agglomerative clustering | many, constrained, non Euclidean distances, transductive | -| DBSCAN | non-flat geometry, uneven clusters, transductive | -| OPTICS | non-flat geometry, uneven clusters with variable density, transductive | +| K-Means | ပေါ်ပေါက်နေသော ရည်ရွယ်ချက်များ၊ inductive | +| Affinity propagation | cluster များအနေ အများ၊ မညီမျှမှုရှိသည်၊ inductive | +| Mean-shift | cluster များအနေ အများ၊ မညီမျှမှုရှိသည်၊ inductive | +| Spectral clustering | cluster အနည်းငယ်၊ ထပ်တူညီမျှ cluster များရှိသည်၊ transductive | +| Ward hierarchical clustering | cluster များအနေ အများ၊ ကန့်သတ်ထားသော cluster များ, transductive | +| Agglomerative clustering | cluster များအနေ အများ၊ ကန့်သတ်ထားသော၊ ဥယျာဉ်ဥပမာ Euclidean မဟုတ်သော အကွာအဝေးများ၊ transductive | +| DBSCAN | non-flat geometry, မညီမျှသော cluster များ, transductive | +| OPTICS | non-flat geometry, မညီမျှပြီး အနူးအနန္တ စွမ်းအင်ရှိသော cluster များ, transductive | | Gaussian mixtures | flat geometry, inductive | -| BIRCH | large dataset with outliers, inductive | +| BIRCH | အကြီးစား dataset အသုံးပြုခြင်းနှင့် ထွက်ရှိမှုများပါရှိသည်, inductive | -> 🎓 Cluster များကိုဖန်တီးပုံသည် data point များကိုအုပ်စုများအတွင်းစုစည်းပုံနှင့်အလွန်ဆက်စပ်နေသည်။ Vocabulary အချို့ကိုရှင်းလင်းကြည့်ရအောင်: +> 🎓 cluster များကို ဘယ်လိုဖန်တီးသလဲဆိုတာသည် ဒေတာအမှတ်များကို အုပ်စုအဖြစ် စုပေါင်းခြင်း နည်းလမ်းနှင့် အတူ များစွာဆိုင်သည်။ အချို့အကြောင်းအရာကို ခွဲခြမ်းစိတ်ဖြာကြရအောင် - > -> 🎓 ['Transductive' vs. 'inductive'](https://wikipedia.org/wiki/Transduction_(machine_learning)) +> 🎓 ['Transductive' နှင့် 'inductive'](https://wikipedia.org/wiki/Transduction_(machine_learning)) > -> Transductive inference သည် observed training case များမှတစ်ဆင့် specific test case များကို map လုပ်ခြင်းဖြစ်သည်။ Inductive inference သည် training case များမှတစ်ဆင့် general rule များကို map လုပ်ပြီး၊ test case များတွင်သာအသုံးပြုခြင်းဖြစ်သည်။ +> Transductive inference သည် ကြည့်ရှုခံရသော သင်ကြားမှုကိစ္စများမှ သတ္တိပြုသည့် စမ်းသပ်မှုကိစ္စများကို တိုက်ရိုက်ချိတ်ဆက်သည်။ Inductive inference သည် သင်ကြားမှုကိစ္စများမှ အထွေထွေစည်းမျဉ်းများသို့ ပြောင်းလဲသည့်နောက် သတ်မှတ်မှုများအား စမ်းသပ်မှုကိစ္စများတွင် အသုံးပြုသည်။ > -> ဥပမာ - သင့် dataset တွင် label တစ်စိတ်တစ်ပိုင်းသာပါရှိသည်။ အချို့သည် 'records'၊ အချို့သည် 'cds'၊ အချို့သည် blank ဖြစ်သည်။ Blank များအတွက် label များပေးရန်သင့်တာဝန်ဖြစ်သည်။ Inductive approach ကိုရွေးချယ်ပါက၊ 'records' နှင့် 'cds' ကိုရှာဖွေသော model တစ်ခုကို train လုပ်ပြီး၊ unlabeled data တွင် label များကိုအသုံးပြုမည်။ ဤနည်းလမ်းသည် 'cassettes' ဖြစ်သောအရာများကို classify လုပ်ရန်အခက်အခဲရှိမည်။ Transductive approach သည် unknown data ကိုပိုမိုထိရောက်စွာကိုင်တွယ်နိုင်သည်၊ အရာများကိုအုပ်စုများအတွင်းစုစည်းပြီး၊ အုပ်စုတစ်ခုကို label ပေးသည်။ ဤကိစ္စတွင် cluster များသည် 'round musical things' နှင့် 'square musical things' ကိုဖော်ပြနိုင်သည်။ +> နမူနာ - သင်တွင် သင်ခန်းစာတစ်ခုတွင် ဒီတာစုတစ်ခုမှာ ဒေတာအမှတ်တစ်စိတ်တစ်ပိုင်းသာ မှတ်တမ်းထားသည်ဟု စဉ်းစားပါ။ အချို့ဟာ 'record' များဖြစ်ပြီး အချို့ 'cd' များဖြစ်သည်၊ အချို့လည်း ရှင်းလင်းချက်မရှိပါ။ သင်တစ်ဦးအနေဖြင့် ရှင်းလင်းချက်မရှိသော အချို့ရှိရာတွင် label များပေးရန်တာ၀န်ရှိသည်။ inductive နည်းလမ်းအသုံးပြုပါက 'record' နှင့် 'cd' များ ရှာဖွေရန် ကိုယ်တတ်နိုင်သည့် model တစ်ခုဘယ်လိုတည်ဆောက်မည်ဆိုသည့် မော်ဒယ်ကို သင်ကြားပြီး သီးခြားတော့ေတာမဲ့ဒေတာတွင် သတ်မှတ်ချက်များကို အသုံးပြုသွားမည်ဖြစ်သည်။ ၎င်းနည်းလမ်းသည် ထိုအမှတ်အသားမရှိသော 'cassette' များကို သတ်မှတ်ရာတွင် အခက်အခဲရှိမည်ဖြစ်သည်။ Transductive နည်းလမ်း ဒါမှမဟုတ် သိသာသည့် ဒေတာများကို အုပ်စုသို့ ပုံစံပေါ်တင်ပြီး သတ်မှတ်ချက်များကို ဆက်လက် မျှဝေသည်။ ဒီကိစ္စတွင် cluster များသည် 'ကမ္ဘာပတ်သံ္ဂါး' များနှင့် 'ချောင်းစတုရန်းအမျိုးအစားသံဂါး' များကို ဖော်ပြနိုင်သည်။ > -> 🎓 ['Non-flat' vs. 'flat' geometry](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering) +> 🎓 ['Non-flat' နှင့် 'flat' geometry](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering) > -> Mathematical terminology မှရရှိသော၊ non-flat vs. flat geometry သည် point များအကြားအကွာအဝေးကို 'flat' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) သို့မဟုတ် 'non-flat' (non-Euclidean) geometrical နည်းလမ်းများဖြင့်တိုင်းတာခြင်းကိုရည်ညွှန်းသည်။ +> သင်္ချာဆိုင်ရာအသုံးအနှုန်းမှ ရရှိသော non-flat နှင့် flat geometry သည် အချက်အလက်များအကြား အကွာအဝေးကို 'flat' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) သို့မဟုတ် 'non-flat' (non-Euclidean) ခြေလမ်းဖြင့် တိုင်းတာသည်။ > ->'Flat' သည် Euclidean geometry ကိုရည်ညွှန်းပြီး၊ 'non-flat' သည် non-Euclidean geometry ကိုရည်ညွှန်းသည်။ Geometry သည် machine learning နှင့်ဘာကြောင့်ဆက်စပ်နေရသလဲ? Mathematics အပေါ်အခြေခံထားသောနယ်ပယ်နှစ်ခုအဖြစ်၊ cluster များအတွင်း point များအကြားအကွာအဝေးကိုတိုင်းတာရန်နည်းလမ်းတစ်ခုရှိရမည်။ [Euclidean distances](https://wikipedia.org/wiki/Euclidean_distance) သည် point နှစ်ခုအကြား line segment ၏အရှည်ကိုတိုင်းတာခြင်းဖြစ်သည်။ [Non-Euclidean distances](https://wikipedia.org/wiki/Non-Euclidean_geometry) သည် curve အတိုင်းတာခြင်းဖြစ်သည်။ သင့် data ကို visualization လုပ်ပါက၊ plane ပေါ်တွင်မရှိသည့်အခါ၊ specialized algorithm တစ်ခုကိုအသုံးပြုရန်လိုအပ်နိုင်သည်။ +> 'Flat' သည် Euclidean Geometry ကို ရည်ညွှန်းပြီး non-flat သည် non-Euclidean Geometry ကို ရည်ညွှန်းသည်။ Machine learning နှင့် သင်္ချာဆိုင်ရာ နယ်ပယ်များသည် ဒေတာအမှတ်များအကြား အကွာအဝေး တိုင်းတာခြင်းအတွက် စည်းကမ်းတစ်ခုရှိသည်။ စည်းကမ်းသည် ဒေတာအမျိုးအစားပေါ်မူတည်၍ 'flat' သို့မဟုတ် 'non-flat' ဖြစ်နိုင်သည်။ [Euclidean အကွာအဝေးများ](https://wikipedia.org/wiki/Euclidean_distance) သည် အချက်နှစ်ချက်အကြား မှတ်သားထားသော ရှည်လျားသော အိုင်လိုင်းအတိုင်း တိုင်းတာသည်။ [Non-Euclidean အကွာအဝေးများ](https://wikipedia.org/wiki/Non-Euclidean_geometry) သည် ဖိုက်လာများအတိုင်း တိုင်းတာသည်။ သင်၏ဒေတာကို ကိုးကား၍ ကြည့်လျှင် မတည်မှန်ဘဲ ရပ်တည်နေသည်ဟု တွေးပါက သီးခြားသော 알고리즘 အသုံးပြုရမည် ဖြစ်သည်။ > -![Flat vs Nonflat Geometry Infographic](../../../../5-Clustering/1-Visualize/images/flat-nonflat.png) -> Infographic by [Dasani Madipalli](https://twitter.com/dasani_decoded) +![Flat vs Nonflat Geometry Infographic](../../../../translated_images/my/flat-nonflat.d1c8c6e2a96110c1.webp) +> ပုံရိပ်ကို [Dasani Madipalli](https://twitter.com/dasani_decoded) ဖန်တီးသည် > > 🎓 ['Distances'](https://web.stanford.edu/class/cs345a/slides/12-clustering.pdf) > -> Cluster များကို၎င်းတို့၏ distance matrix ဖြင့်သတ်မှတ်သည်၊ ဥပမာ - point များအကြားအကွာအဝေးများ။ ဤအကွာအဝေးကိုအနည်းငယ်နည်းလမ်းများဖြင့်တိုင်းတာနိုင်သည်။ Euclidean cluster များကို point value များ၏ပျမ်းမျှတန်ဖိုးဖြင့်သတ်မှတ်ပြီး၊ 'centroid' သို့မဟုတ် center point ပါရှိသည်။ အကွာအဝေးများကို၎င်း centroid အထိအကွာအဝေးဖြင့်တိုင်းတာသည်။ Non-Euclidean distance များသည် 'clustroid' များကိုရည်ညွှန်းသည်၊ အခြား point များနှင့်အနီးဆုံး point ဖြစ်သည်။ Clustroid များကိုအမျိုးမျိုးသောနည်းလမ်းများဖြင့်သတ်မှတ်နိုင်သည်။ +> cluster များသည် သတ်မှတ်အချက်တစ်ခု၏ အကွာအဝေး matrix ဖြင့် သတ်မှတ်သည်၊ ဥပမာ အချက်များအကြား အကွာအဝေး ဖြစ်သည်။ ဒီအကွာအဝေးကို မတည့်သော နည်းလမ်းအနည်းငယ်ဖြင့် တိုင်းတာနိုင်သည်။ Euclidean cluster များသည် ဖော်ပြသည့်အချက်များ၏ ပျမ်းမျှ တန်ဖိုးဖြင့် သတ်မှတ်သည်။ ဤ cluster များတွင် 'centroid' သို့မဟုတ် ဗဟို အချက်ရှိသည်။ အကွာအဝေးကို အဆိုပါ centroid သို့ မျက်မှောက်တင့် မထားသည်။ Non-Euclidean အကွာအဝေးမှာ 'clustroids' ဖြစ်၍ အခြားအချက်များနှင့်ရင်းနှီးနီးနီးဆုံး အချက်ကို ဆိုလိုသည်။ Clustroids ကို အမျိုးမျိုးသတ်မှတ်နိုင်သည်။ > > 🎓 ['Constrained'](https://wikipedia.org/wiki/Constrained_clustering) > -> [Constrained Clustering](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) သည် unsupervised method တွင် 'semi-supervised' learning ကိုမိတ်ဆက်သည်။ Point များအကြားဆက်နွယ်မှုများကို 'cannot link' သို့မဟုတ် 'must-link' အဖြစ် flag လုပ်ပြီး၊ dataset အပေါ် rule များကိုအတင်းအဓမ္မသတ်မှတ်သည်။ +> [Constrained Clustering](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) သည် unsupervised နည်းလမ်းတွင် 'semi-supervised' သင်ယူမှုကို ဖြည့်စွက်သည်။ အချက်အလက်များအကြား ဆက်နွယ်မှုများကို 'cannot link' သို့မဟုတ် 'must link' အဖြစ် ပြသခြင်းဖြင့် စည်းကမ်းချထားသည်။ > ->ဥပမာ - Algorithm တစ်ခုကို unlabeled သို့မဟုတ် semi-labelled data အပေါ်တွင်လွတ်လပ်စွာအသုံးပြုပါက၊ ဖန်တီးသော cluster များသည်အရည်အသွေးမကောင်းနိုင်သည်။ အထက်ပါဥပမာတွင် cluster များသည် 'round music things' နှင့် 'square music things' နှင့် 'triangular things' နှင့် 'cookies' ကို grouping လုပ်နိုင်သည်။ Constraint များ သို့မဟုတ် rule များ ("item သည် plastic ဖြင့်ပြုလုပ်ထားရမည်"၊ "item သည် music ထုတ်လုပ်နိုင်ရမည်") ပေးခြင်းဖြင့် algorithm ကိုပိုမိုကောင်းမွန်သောရွေးချယ်မှုများလုပ်ဆောင်ရန်အကူအညီပေးနိုင်သည်။ +> ဥပမာ - အာလဂိုရီသမ့်သည် မှတ်တမ်းမထားသော ဒေတာတစ်စု သို့မဟုတ် အချို့မှတ်တမ်းထားသော ဒေတာတွင် လွတ်လပ်စွာ လည်ပတ်ပါက ဖန်တီးသည့် cluster များ သက်ရောက်မှုကျသော မဟုတ်သော ပမာဏဖြစ်နိုင်သည်။ ဥပမာအရ cluster များသည် 'ကမ္ဘာပတ်သံဂါးများ', 'စတုရန်းသံဂါးများ', 'သဘောနည်းသုံးပုံပုံ', 'ခေါက်ဆွဲများ' ဟူ၍ ခွဲခြားထားနိုင်သည်။ စည်းကမ်းတချို့ ("ပစ္စည်းသည် ပလပ်စတစ်မှ ဖြစ်ရမည်", "ပစ္စည်းသည် သံဂါးဖွဲ့နိုင်ရမည်") နှင့်အတူ algorithm သိမ်းဆည်းမှုကို ပိုမိုကောင်းမွန်သော ရွေးချယ်မှုများ ပြုလုပ်ဖို့ ကူညီပေးသည်။ > > 🎓 'Density' > -> 'Noisy' data သည် 'dense' ဟုခေါ်သည်။ Cluster တစ်ခုစီတွင် point များအကြားအကွာအဝေးများသည် ပိုမိုသိပ်သည့် သို့မဟုတ် 'crowded' ဖြစ်နိုင်ပြီး၊ ဤ data ကိုသင့် data nature အပေါ်မူတည်၍ clustering method သင့်လျော်သောနည်းလမ်းဖြင့် analysis လုပ်ရန်လိုအပ်သည်။ [ဤဆောင်းပါး](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) သည် noisy dataset တစ်ခုကို uneven cluster density ဖြင့် K-Means clustering နှင့် HDBSCAN algorithm များကိုအသုံးပြု၍ explore လုပ်ခြင်း၏ကွာခြားချက်ကိုဖော်ပြသည်။ +> "အသံညှိမှား" ဖြစ်သော ဒေတာကို "dense" ဟု သတ်မှတ်သည်။ ၎င်း cluster တစ်ခုလျှင် အချက်များအကြား အကွာအဝေးသည် တော့ ဒေတာသည် ပိုမို သို့မဟုတ် နည်းပါးသည့် density ရှိသည်။ ဒါကြောင့် တိုင်းတာပြီး သင့်တော်သော clustering နည်းစနစ်ဖြင့် စိစစ်ရမည်။ [ဤဆောင်းပါး](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) သည် noisy ဒေတာတွင် cluster density မတည့်မှုများကို ရှာဖွေရေးအတွက် K-Means clustering နှင့် HDBSCAN အသုံးပြုပြီး ကွာခြားချက်ကို ဖော်ပြသည်။ -## Clustering algorithm များ +## clustering 알고리즘 များ -Clustering algorithm များ 100 ကျော်ရှိပြီး၊ ၎င်းတို့၏အသုံးပြုမှုသည် data nature အပေါ်မူတည်သည်။ အဓိက algorithm များအချို့ကိုဆွေးနွေးကြည့်ရအောင်: +clustering 알고리즘 များ ၁၀၀ ကျော်ရှိသည်၊ သုံးစွဲမှုသည် ဖြစ်ပေါ်သော ဒေတာ အမျိုးအစားပေါ် မှီတည်သည်။ အကြီးစား အချို့ကို ဆွေးနွေးကြပါစို့ - -- **Hierarchical clustering**. Object တစ်ခုကိုအနီးဆုံး object နှင့်အကွာအဝေးအပေါ်အခြေခံ၍ classify လုပ်ပါက၊ cluster များကို၎င်းတို့၏အဖွဲ့ဝင်များ၏အကွာအဝေးအပေါ်အခြေခံ၍ဖွဲ့စည်းသည်။ Scikit-learn ၏ agglomerative clustering သည် hierarchical ဖြစ်သည်။ +- **Hierarchical clustering**။ အရာဝတ္ထုတစ်ခုကို အနီးရှိ အရာဝတ္ထုတစ်ခု၏ အကွာအဝေးအပေါ် မူတည်၍ အမျိုးအစားခွဲခြားခြင်း ဖြစ်သည်၊ cluster များသည် အဖွဲ့ဝင်များ၏ အကွာအဝေး ပြန်လည်ချိတ်ဆက်မှုတစ်ခုဖြစ်လာသည်။ Scikit-learn ၏ agglomerative clustering သည် hierarchical ဖြစ်သည်။ - ![Hierarchical clustering Infographic](../../../../5-Clustering/1-Visualize/images/hierarchical.png) - > Infographic by [Dasani Madipalli](https://twitter.com/dasani_decoded) + ![Hierarchical clustering Infographic](../../../../translated_images/my/hierarchical.bf59403aa43c8c47.webp) + > ပုံရိပ်ကို [Dasani Madipalli](https://twitter.com/dasani_decoded) ဖန်တီးသည် -- **Centroid clustering**. ဤလူကြိုက်များ algorithm သည် 'k' သို့မဟုတ် ဖွဲ့စည်းရန် cluster အရေအတွက်ကိုရွေးချယ်ရန်လိုအပ်ပြီး၊ algorithm သည် cluster ၏ center point ကိုသတ်မှတ်ပြီး၊ data ကို၎င်း point အနီးတွင်စုစည်းသည်။ [K-means clustering](https://wikipedia.org/wiki/K-means_clustering) သည် centroid clustering ၏လူကြိုက်များသော version ဖြစ်သည်။ Center ကို nearest mean ဖြင့်သတ်မှတ်ပြီး၊ cluster မှ squared distance ကိုလျှော့ချသည်။ +- **Centroid clustering**။ ဤကျော်ကြားသော 알고리즘 တွင် 'k' ဟူသော cluster အရေအတွက်ကိုရွေးချယ်ပြီးနောက်၊ algorithm သည် cluster ၏ ဗဟိုအချက်ကို ရှာဖွေပြီး အချက်များကို ဤနေရာအနီးတွင် စုစည်းသည်။ [K-means clustering](https://wikipedia.org/wiki/K-means_clustering) သည် centroid clustering ၏ ကြားထဲဖြစ်သည်။ ဗဟိုသည် အနီးဆုံး ပျမ်းမျှတန်ဖိုးမှ သတ်မှတ်သည်။ cluster မှ ကွာရှင်းချက်ကို လျော့နည်းစေသည်။ - ![Centroid clustering Infographic](../../../../5-Clustering/1-Visualize/images/centroid.png) - > Infographic by [Dasani Madipalli](https://twitter.com/dasani_decoded) + ![Centroid clustering Infographic](../../../../translated_images/my/centroid.097fde836cf6c918.webp) + > ပုံရိပ်ကို [Dasani Madipalli](https://twitter.com/dasani_decoded) ဖန်တီးသည် -- **Distribution-based clustering**. Statistical modeling အပေါ်အခြေခံပြီး၊ distribution-based clustering သည် data point တစ်ခုသည် cluster တစ်ခုနှင့်ဆက်စပ်မှုရှိနိုင်သော probability ကိုသတ်မှတ်ပြီး၊ ၎င်းအတိုင်း assign လုပ်သည်။ Gaussian mixture method များသည်ဤအမျိုးအစားတွင်ပါဝင်သည်။ +- **Distribution-based clustering**။ စာရင်းဇယားဖြစ်စဉ်များအပေါ် အခြေခံပြီး၊ ဒေတာအချက်တစ်ခုcluster တွင် ပိုင်ဆိုင်မှုဖြစ်နိုင်ခြေကို ဖော်ထုတ်ရန် ဦးတည်သည်။ Gaussian mixture နည်းလမ်းများသည် ဤအမျိုးအစားတွင် ပါဝင်သည်။ -- **Density-based clustering**. Data point များကို၎င်းတို့၏ density အပေါ်အခြေခံ၍ cluster များအတွင်း assign လုပ်သည်၊ ၎င်းတို့အုပ်စုအနီးတွင်စုစည်းခြင်းဖြစ်သည်။ အုပ်စုမှဝေးသော data point များကို outlier သို့မဟုတ် noise ဟုယူဆသည်။ DBSCAN, Mean-shift နှင့် OPTICS သည်ဤအမျိုးအစားတွင်ပါဝင်သည်။ +- **Density-based clustering**။ ဒေတာအချက်များအား အထက်ပါ cluster ၏ စည်းကမ်းအပေါ် အခြေခံ၍ မြုပ်ကွေးခြင်း၊ သို့မဟုတ် တစ်ဦးနောက်တစ်ဦး စုပေါင်းမှုအပေါ် အခြေခံ၍ ခွဲခြားသည်။ အုပ်စုမှ ဝေးကွာသောအချက်များကို ထွက်ခွာသူများ သို့မဟုတ် ဆူညံ့သံများအဖြစ် သတ်မှတ်သည်။ DBSCAN, Mean-shift နှင့် OPTICS သည် ဤအမျိုးအစားမှာ ပါဝင်သည်။ -- **Grid-based clustering**. Multi-dimensional dataset များအတွက် grid တစ်ခုကိုဖန်တီးပြီး၊ data ကို grid ၏ cell များအတွင်းခွဲခြားခြင်းဖြင့် cluster များဖန်တီးသည်။ +- **Grid-based clustering**။ မျိုးစုံတန်းစားဒေတာများအတွက် grid ဖန်တီးပြီး ဒေတာအား grid ၏ ဆဲလ်များအလိုက် ခွဲခြားခြင်းဖြင့် cluster များတည်ဆောက်သည်။ -## လေ့ကျင့်ခန်း - သင့် data ကို cluster လုပ်ပါ +## လေ့ကျင့်ခန်း - သင်၏ ဒေတာကို cluster ဖွဲ့ပါ -Clustering သည် visualization မှတစ်ဆင့်အလွန်အကောင်းဆုံးအကူအညီရရှိသည်၊ ထို့ကြောင့် သင့် music data ကို visualize လုပ်ခြင်းဖြင့်စတင်ကြည့်ရအောင်။ ဤလေ့ကျင့်ခန်းသည် data nature အပေါ်အခြေခံ၍ clustering method မည်သို့အသုံးပြုရမည်ကိုဆုံးဖြတ်ရန်အကူအညီပေးမည်။ +cluster ဖွဲ့ခြင်းသည် ထိရောက်သော နည်းလမ်းဖြစ်ပြီး သင့်ဒေတာကို ထိရောက်စွာ မြင်သာစေသော ခြုံကြည့်မှုဖြင့် ကူညီပါသည်။ ဒီလေ့ကျင့်ခန်းက သင့် ဒေတာအမျိုးအစားအတွက် အသုံးဝင်သော clustering နည်းလမ်းကို ရွေးချယ်ခြင်းကို ကူညီပါလိမ့်မည်။ -1. [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) ဖိုင်ကို folder အတွင်းဖွင့်ပါ။ +၁။ ယခု ဖိုင်လ်ဒီမှာရှိသော [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) ဖိုင်ကို ဖွင့်ပါ။ -1. Data visualization ကောင်းစွာလုပ်ရန် `Seaborn` package ကို import လုပ်ပါ။ +၁။ သင့်တင့်သော ဒေတာမြင်သာရေးအတွက် `Seaborn` package ကို import လုပ်ပါ။ ```python !pip install seaborn ``` -1. [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv) မှ song -| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 | -| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 | -| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 | +၁။ [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv) မှ သီချင်းဒေတာကို ထည့်သွင်းပါ။ သီချင်းပေါ် ဆိုင်ရာဒေတာနှင့် dataframe တစ်ခု ဖန်တီးပါ။ စတင်စမ်းသပ်ရန် အသုံးပြုရန် library များ import ပြုလုပ်ပြီး ဒေတာကို ပိတ်မပါနှင့် - + + ```python + import matplotlib.pyplot as plt + import pandas as pd + + df = pd.read_csv("../data/nigerian-songs.csv") + df.head() + ``` + + ဒေတာ အစောပိုင်းလိုင်း အနည်းငယ်ကို စစ်ဆေးပါ - + + | | name | album | artist | artist_top_genre | release_date | length | popularity | danceability | acousticness | energy | instrumentalness | liveness | loudness | speechiness | tempo | time_signature | + | --- | ------------------------ | ---------------------------- | ------------------- | ---------------- | ------------ | ------ | ---------- | ------------ | ------------ | ------ | ---------------- | -------- | -------- | ----------- | ------- | -------------- | + | 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 | + | 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 | + | 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 | + | 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 | + | 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 | -1. Dataframe အကြောင်းကို သိရှိရန် `info()` ကိုခေါ်ပါ: +1. dataframe အကြောင်းအရာတွေ ရယူရန် `info()` ကိုခေါ်ဆောင်ပါ။ ```python df.info() ``` - အထွေထွေ output က ဒီလိုပုံစံနဲ့ပါလိမ့်မယ်: + အောက်ပါနမူနာအတိုင်း output ကိုမြင်ရပါမယ်။ ```output @@ -149,13 +163,13 @@ Clustering သည် visualization မှတစ်ဆင့်အလွန်အ memory usage: 66.4+ KB ``` -1. Null values ရှိမရှိ double-check လုပ်ပါ၊ `isnull()` ကိုခေါ်ပြီး sum ကို 0 ဖြစ်ကြောင်းအတည်ပြုပါ: +1. `isnull()` ကိုခေါ်ပြီး null တန်ဖိုးတွေ ရှိမရှိ နှစ်ကြိမ်စစ်ဆေးပါ၊ စုစုပေါင်း 0 ဖြစ်ဖို့ လိုသည်။ ```python df.isnull().sum() ``` - အဆင်ပြေပါတယ်: + အဆင်ပြေပါတယ်။ ```output name 0 @@ -177,7 +191,7 @@ Clustering သည် visualization မှတစ်ဆင့်အလွန်အ dtype: int64 ``` -1. Data ကို ဖော်ပြပါ: +1. ဒေတာအကြောင်းအရာကို ဖော်ပြပါ။ ```python df.describe() @@ -194,11 +208,11 @@ Clustering သည် visualization မှတစ်ဆင့်အလွန်အ | 75% | 2017 | 242098.5 | 31 | 0.8295 | 0.403 | 0.87575 | 0.000234 | 0.164 | -3.331 | 0.177 | 125.03925 | 4 | | max | 2020 | 511738 | 73 | 0.966 | 0.954 | 0.995 | 0.91 | 0.811 | 0.582 | 0.514 | 206.007 | 5 | -> 🤔 Clustering သည် labeled data မလိုအပ်သော unsupervised method ဖြစ်သည့်အတွက် label data ကို ဖော်ပြနေခြင်းက ဘာကြောင့်လဲ? Data exploration အဆင့်တွင် အသုံးဝင်နိုင်သော်လည်း clustering algorithms အတွက် မလိုအပ်ပါ။ Column headers ကို ဖယ်ရှားပြီး column number ဖြင့် data ကို ရည်ညွှန်းနိုင်ပါတယ်။ +> 🤔 cluster ပြုလုပ်ရာတွင် အမှတ်အသားမလိုအပ်တဲ့ unsupervised method တစ်ခုဖြစ်လို့ ဒီ data ကို label တွေနဲ့ပြသတာဘာကြောင့်လဲ? ဒေတာဇာတိစစ်ဆေးရာတွင် အချက်အလက်အတွက် အဆင်ပြေသော်လည်း clustering algorithm များအလုပ်လုပ်ရန်အတွက် label မလိုအပ်ပါ။ ကော်လံခေါင်းစဉ်တွေဖယ်ရှားပြီး ကော်လံနံပါတ်အတိုင်းအချက်အလက်ကို ရည်ညွှန်းနိုင်ပါသည်။ -Data ရဲ့ အထွေထွေတန်ဖိုးတွေကို ကြည့်ပါ။ Popularity က '0' ဖြစ်နိုင်ပြီး အဲဒါက songs တွေ ranking မရှိကြောင်းပြသပါတယ်။ အဲဒါတွေကို ခဏလေးမှာ ဖယ်ရှားလိုက်ပါမယ်။ +ဒေတာရဲ့ပုံမှန်တန်ဖိုးတွေကို ရှုပါ။ popularity က '0' ဖြစ်နိုင်သည်၊ ဒါက ဂီတသီချင်းတွေရဲ့ အဆင့်သတ်မှတ်ချက်မရှိကြောင်းကို ဖော်ပြသည်။ ထိုကွောငျ့ အနည်းငယ်ဖယ်ရှားပါမယ်။ -1. Barplot ကို အသုံးပြုပြီး အများဆုံး popular genres တွေကို ရှာပါ: +1. လူကြိုက်ဆုံးအမျိုးအစားများကို အတန်းလိုက်အကြည့် ရှာဖွေရန် barplot ကိုအသုံးပြုပါ။ ```python import seaborn as sns @@ -210,13 +224,13 @@ Data ရဲ့ အထွေထွေတန်ဖိုးတွေကို က plt.title('Top genres',color = 'blue') ``` - ![most popular](../../../../5-Clustering/1-Visualize/images/popular.png) + ![most popular](../../../../translated_images/my/popular.9c48d84b3386705f.webp) -✅ Top values ပိုများစေချင်ရင် `[:5]` ကို value ပိုကြီးတဲ့အရာနဲ့ ပြောင်းပါ၊ ဒါမှမဟုတ် ဖယ်ရှားပြီး အားလုံးကို ကြည့်ပါ။ +✅ ထိပ်ဆုံးတန်ဖိုးများ ပိုများစွာကြည့်လိုပါက top `[:5]` ကို ပိုကြီးသောတန်ဖိုးသို့ပြောင်းပါ၊ ဒါမှမဟုတ်အားလုံးကြည့်လိုလျှင် ဖယ်ရှားနိုင်သည်။ -Note, top genre ကို 'Missing' လို့ ဖော်ပြထားရင် Spotify က အဲဒါကို classify မလုပ်တာဖြစ်ပါတယ်၊ ဒါကြောင့် ဖယ်ရှားလိုက်ပါ။ +မှတ်ချက်။ အထက်ဆုံး genre ကို 'Missing' ဟုဖော်ပြပါက Spotify မှ အမျိုးအစားအလိုက်ခွဲခြားမှု မရှိသောကြောင့်၊ ထိုအပိုင်းကို ဖယ်ရှားကြပါ။ -1. Missing data ကို ဖယ်ရှားပါ: +1. missing data ကို ဖယ်ရှားရန် စစ်ထုတ်ပါ။ ```python df = df[df['artist_top_genre'] != 'Missing'] @@ -227,11 +241,11 @@ Note, top genre ကို 'Missing' လို့ ဖော်ပြထားရ plt.title('Top genres',color = 'blue') ``` - အခုတော့ genres တွေကို ပြန်စစ်ပါ: + ယခု genre များကို ပြန်စစ်ပါ။ - ![most popular](../../../../5-Clustering/1-Visualize/images/all-genres.png) + ![most popular](../../../../translated_images/my/all-genres.1d56ef06cefbfcd6.webp) -1. Top three genres တွေ dataset ကို အဓိကထားပြီး `afro dancehall`, `afropop`, `nigerian pop` တွေကို စုစည်းပါ၊ Popularity value 0 ဖြစ်တဲ့အရာတွေကို ဖယ်ရှားပါ (အဲဒါက dataset မှာ popularity classification မရှိတာဖြစ်ပြီး noise အဖြစ် သတ်မှတ်နိုင်ပါတယ်): +1. ထို dataset မှာ အထက်ဆုံး သုံးလွှာရှိ genre များမှာ အလွန်ထင်ရှားသည်။ `afro dancehall`၊ `afropop` နှင့် `nigerian pop` တွင်အာရုံစိုက်ပြီး၊ popularity သည် 0 ဖြစ်သော data များကို ဖယ်ရှားပါ (dataset မှာ popularity ခွဲခြားချက် မရှိတဲ့ အချက်အလက် ဖြစ်ပြီး၊ ငယ်နားလည်မှုအတွက် သံသယတစေပါသည်)။ ```python df = df[(df['artist_top_genre'] == 'afro dancehall') | (df['artist_top_genre'] == 'afropop') | (df['artist_top_genre'] == 'nigerian pop')] @@ -243,7 +257,7 @@ Note, top genre ကို 'Missing' လို့ ဖော်ပြထားရ plt.title('Top genres',color = 'blue') ``` -1. Data တွေ correlation ရှိမရှိ စစ်ဆေးပါ: +1. ဒေတာတွင် အားကောင်းသောဆက်စပ်မှု ရှိမရှိ အမြန်စမ်းသပ်ပါ။ ```python corrmat = df.corr(numeric_only=True) @@ -251,21 +265,21 @@ Note, top genre ကို 'Missing' လို့ ဖော်ပြထားရ sns.heatmap(corrmat, vmax=.8, square=True) ``` - ![correlations](../../../../5-Clustering/1-Visualize/images/correlation.png) + ![correlations](../../../../translated_images/my/correlation.a9356bb798f5eea5.webp) - `energy` နဲ့ `loudness` အကြား correlation က အားကောင်းပါတယ်၊ ဒါက အံ့ဩစရာမဟုတ်ပါဘူး၊ အကြမ်း music တွေက အများအားဖြင့် energetic ဖြစ်တတ်ပါတယ်။ အခြား correlation တွေက အားနည်းပါတယ်။ Clustering algorithm က ဒီ data ကို ဘယ်လိုသုံးနိုင်မလဲ စိတ်ဝင်စားစရာပါ။ + တစ်ခုတည်းသောအားကောင်းသောဆက်စပ်မှုမှာ `energy` နှင့် `loudness` ကြား ဖြစ်သည်၊ ဂီတအသံရည်ကြောင်း အချို့အတွက် သာမက လည်း စိတ်မရှုပ်ပါ။ အခြား ဆက်စပ်မှုများမှာ ချောင့်ချင်းနည်းပါးသည်။ clustering algorithm သည် ဒီဒေတာကနေ ဘယ်လိုအကြောင်းအရာ ဆွဲယူနိုင်မလဲ စိတ်ဝင်စားစရာ ဖြစ်ပါသည်။ - > 🎓 Correlation က causation ကို မပြသနိုင်ပါ! Correlation ရှိကြောင်း သက်သေရှိသော်လည်း causation ရှိကြောင်း သက်သေမရှိပါ။ [အလွဲလွဲ correlation တွေ](https://tylervigen.com/spurious-correlations) ကို ဖော်ပြတဲ့ website က ဒီအချက်ကို အထောက်အထားပေးပါတယ်။ + > 🎓 ဆက်စပ်မှုဟာ အသက်မွေးဝမ်းကြောင်းကို သက်သေပြခြင်းမဟုတ်ပါ! ကျွန်ုပ်တို့ဆက်စပ်မှုကိုသာ သက်သေပြထားပြီး causation ကိုနှင့် မသက်သေပြပါ။ [amusing web site](https://tylervigen.com/spurious-correlations) တွင်၎င်းအကြောင်း ဗေဒင်များပြပါသည်။ -Dataset မှာ song popularity နဲ့ danceability အကြား convergence ရှိပါသလား? FacetGrid က genre မရွေး concentric circles တွေ alignment ရှိကြောင်း ပြသပါတယ်။ Nigerian tastes တွေ danceability ရဲ့ အတိအကျတန်းမှာ converge ဖြစ်နိုင်ပါသလား? +ဒီ dataset မှာ သီချင်းရဲ ့ လူကြိုက်မှုနှင့် danceability သဘောဆန်းမှု တည့်တည့်သေသေ ရှိမရှိ ရှာကြည့်ပါ။ FacetGrid မှာ အမျိုးအစားမရွေးဟုဆိုပေမယ့် စက်ဝိုင်းပုံစံများ ရှိသူကို တွေ့နိုင်သည်။ Nigerian လူငယ်များသည် ထိုအမျိုးအစားအတွက် တစ်ခုတည်းသော danceability အဆင့်တွင် အတူညီနေသည်လား? -✅ အခြား datapoints (energy, loudness, speechiness) နဲ့ အခြား genres တွေကို စမ်းကြည့်ပါ။ ဘာတွေ ရှာဖွေနိုင်မလဲ? `df.describe()` table ကို ကြည့်ပြီး data points ရဲ့ general spread ကို သိပါ။ +✅ မတူညီသော ဒေတာချက်များ (energy, loudness, speechiness) နှင့် အမျိုးအစား အမျိုးမျိုး သို့မဟုတ် မတူညီသော ဂီတ styl ဂျန်း များကို စမ်းသပ်ကြည့်ပါ။ ဘာတွေ တွေ့ရှိနိုင်သလဲ စူးစမ်းကြည့်ပါ။ `df.describe()` ဇယားက ဒေတာစု အခြေခံဖြန့်ချိမှုကို ဖော်ပြထားသည်။ -### လေ့ကျင့်ခန်း - data distribution +### အလုပ်လေ့ကျင့်ခန်း - ဒေတာဖြန့်ချိမှု -Top three genres တွေ popularity နဲ့ danceability perception အတွက် significantly ကွဲပြားမှု ရှိပါသလား? +အထက်ပါ သုံးခုအမျိုးအစားများသည် သူတို့၏ popularity အပေါ် မူတည်၍ danceability အား တွေးကြည့်ချက်များမှာ ထူးခြားရွေးချယ်မှုရှိသလား? -1. Top three genres data distribution ကို popularity နဲ့ danceability အတွက် x axis နဲ့ y axis အတူတူကြည့်ပါ: +1. အထက်ဆုံး သုံးမျိုး အမျိုးအစားရှိ popularity နှင့် danceability ကို x နှင့် y axis ပေါ်တွင် စစ်ဆေးပါ။ ```python sns.set_theme(style="ticks") @@ -277,15 +291,15 @@ Top three genres တွေ popularity နဲ့ danceability perception အတ ) ``` - Concentric circles တွေ general point of convergence အနီးမှာ distribution ကို ပြသပါတယ်။ + လူကြိုက်မှုနှင့် danceability တွင် စက်ဝိုင်းပုံစံအားဖြင့် data အနီးအနား ကျယ်ပြန့်နေမှုကို တွေ့ရမည်။ - > 🎓 KDE (Kernel Density Estimate) graph ကို အသုံးပြုထားပြီး continuous probability density curve ဖြင့် data ကို ဖော်ပြထားပါတယ်။ ဒါက multiple distributions တွေကို အဓိကထားပြီး data ကို အဓိပ္ပါယ်ဖော်ပြနိုင်စေပါတယ်။ + > 🎓 ဤနမူနာတွင် KDE (Kernel Density Estimate) ပုံစံကို အသုံးပြုထားပြီး continuous probability density curve ဖြင့် data ကို ကိုယ်စားပြုသည်။ ၎င်းသည် မျိုးစုံဖြန့်ချိမှု များကိုလည်း သဘာဝနှင့်လိုက်ဖက်စွာ ဖော်ပြနိုင်ပါသည်။ - အထွေထွေအားဖြင့် genres သုံးခုက popularity နဲ့ danceability အတွက် loosely alignment ရှိပါတယ်။ Clustering algorithm အတွက် ဒီ alignment data ကို သတ်မှတ်ရမှာ စိန်ခေါ်မှုဖြစ်ပါမယ်: + စုစုပေါင်းနှင့် အထက်ပါသုံးမျိုးကြား popularity နှင့် danceability များသည် အနည်းငယ်သေးငယ်ပြီး ချိန်ညှိမှုရှိသည်ဆိုသော သဘော ရှိသည်။ ဒီလို ချိန်ညှိမှုရှိတဲ့ဒေတာတွေကို cluster ခွဲရာတွင် စိန်ခေါ်မှု ဖြစ်ပါလိမ့်မယ်။ - ![distribution](../../../../5-Clustering/1-Visualize/images/distribution.png) + ![distribution](../../../../translated_images/my/distribution.9be11df42356ca95.webp) -1. Scatter plot တစ်ခု ဖန်တီးပါ: +1. scatter plot တစ်ခု ဖန်တီးပါ။ ```python sns.FacetGrid(df, hue="artist_top_genre", height=5) \ @@ -293,31 +307,33 @@ Top three genres တွေ popularity နဲ့ danceability perception အတ .add_legend() ``` - အတူတူ axis တွေ scatterplot က convergence pattern ကို ပြသပါတယ်။ + တူညီတဲ့ axis များဖြင့် scatterplot ပြသသည့် ပုံစံဟာ တူညီသော ချိန်ညှိမှုပုံစံတစ်ခု လိုက်နာရှိသည်။ - ![Facetgrid](../../../../5-Clustering/1-Visualize/images/facetgrid.png) + ![Facetgrid](../../../../translated_images/my/facetgrid.9b2e65ce707eba1f.webp) -Clustering အတွက် scatterplots ကို အသုံးပြုပြီး data clusters တွေကို ဖော်ပြနိုင်ပါတယ်၊ ဒါကြောင့် visualization အမျိုးအစားကို ကျွမ်းကျင်စွာ အသုံးပြုနိုင်ဖို့ အရေးကြီးပါတယ်။ နောက် lesson မှာ filtered data ကို k-means clustering နဲ့ သုံးပြီး interesting overlap တွေကို ရှာဖွေပါမယ်။ +စုစုပေါင်း cluster ခွဲရာတွင် scatterplot များကို data cluster များကို မြင်မြင်သာသာ ဖော်ပြရန် အသုံးပြုနိုင်ပြီး ဤ visualization ပုံစံကို ကျွမ်းကျင်ခြင်းမှာ အထောက်အကူ ဖြစ်ပါသည်။ နောက်ခန်းမှာ ခွဲထုတ်ထားသော ဒေတာကိုအသုံးပြုပြီး k-means clustering ဖြင့် ဒေတာအုပ်စုများကို ရှာဖွေနိုင်မည်။ --- -## 🚀Challenge +## 🚀စိန်ခေါ်မှု -နောက် lesson အတွက် ပြင်ဆင်ရန်၊ production environment မှာ အသုံးပြုနိုင်တဲ့ clustering algorithms အမျိုးမျိုးအကြောင်း chart တစ်ခု ဖန်တီးပါ။ Clustering က ဘယ်လိုပြဿနာတွေကို ဖြေရှင်းဖို့ ကြိုးစားနေလဲ? +နောက်ခန်းတွင် ပြုလုပ်မည့် ဇယားများအတွက် အမျိုးအစား clustering algorithm များ ရှာဖွေပြီး ထုတ်လုပ်မှုပတ်ဝန်းကျင်တွင် အသုံးပြုနိုင်သော အခြေအနေများ ရေးဆွဲပါ။ Clustering များသည် မည်သည့်ပြဿနာများကို ဖြေရှင်းရန် ကြိုးပမ်းထားပါသနည်း? ## [Post-lecture quiz](https://ff-quizzes.netlify.app/en/ml/) -## Review & Self Study +## ပြန်လည်သုံးသပ်ခြင်းနှင့် ကိုယ်တိုင်လေ့လာမှု -Clustering algorithms ကို အသုံးပြုမီ dataset ရဲ့ nature ကို နားလည်ထားတာ အရေးကြီးပါတယ်။ ဒီအကြောင်းကို [ဒီမှာ](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html) ဖတ်ရှုပါ။ +Clustering algorithm များကို အသုံးပြုခြင်းအားမပြုမီ၊ ဒေတာစု၏ သဘာဝကို နားလည်သည်မှာ အရေးကြီးပါသည်။ ဤအကြောင်းကို [ဤနေရာတွင်](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html) ဖတ်ရှုနိုင်ပါသည်။ -[ဒီ article](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) က clustering algorithms အမျိုးမျိုးရဲ့ behavior ကို data shapes အမျိုးမျိုးနဲ့ ဖော်ပြထားပါတယ်။ +[ဒီအရေးအသား](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) မှ clustering algorithm များ၏ ကွဲပြားမှုများကို ဒေတာပုံစံအမျိုးမျိုးအပေါ် အခြေခံပြီး ရှင်းပြထားသည်။ -## Assignment +## အပ်တိုးမိတ် -[Clustering visualization အခြားအမျိုးအစားတွေကို ရှာဖွေပါ](assignment.md) +[Clustering အတွက် အခြား visualizations များကို သုတေသန လုပ်ရန်](assignment.md) --- -**ဝက်ဘ်ဆိုက်မှတ်ချက်**: -ဤစာရွက်စာတမ်းကို AI ဘာသာပြန်ဝန်ဆောင်မှု [Co-op Translator](https://github.com/Azure/co-op-translator) ကို အသုံးပြု၍ ဘာသာပြန်ထားပါသည်။ ကျွန်ုပ်တို့သည် တိကျမှန်ကန်မှုအတွက် ကြိုးစားနေပါသော်လည်း၊ အလိုအလျောက်ဘာသာပြန်မှုများတွင် အမှားများ သို့မဟုတ် မမှန်ကန်မှုများ ပါဝင်နိုင်သည်ကို ကျေးဇူးပြု၍ သတိပြုပါ။ မူရင်းစာရွက်စာတမ်းကို ၎င်း၏ မူလဘာသာစကားဖြင့် အာဏာတည်သောရင်းမြစ်အဖြစ် သတ်မှတ်ရန် လိုအပ်ပါသည်။ အရေးကြီးသော အချက်အလက်များအတွက် လူကောင်းမွန်သော ပရော်ဖက်ရှင်နယ်ဘာသာပြန်ဝန်ဆောင်မှုကို အကြံပြုပါသည်။ ဤဘာသာပြန်မှုကို အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော နားလည်မှုမှားများ သို့မဟုတ် အဓိပ္ပါယ်မှားများအတွက် ကျွန်ုပ်တို့သည် တာဝန်မယူပါ။ \ No newline at end of file + +**ပြောကြားချက်** +ဤစာတမ်းကို AI ဘာသာပြန်ဝန်ဆောင်မှု [Co-op Translator](https://github.com/Azure/co-op-translator) အသုံးပြု၍ ဘာသာပြန်ထားပါသည်။ ကျွန်ုပ်တို့သည် တိကျမှန်ကန်မှုအတွက် ကြိုးပမ်းနေသော်လည်း၊ စက်ကိရိယာဘာသာပြန်ခြင်းများတွင် အမှားများ သို့မဟုတ် မှားယွင်းချက်များ ပါဝင်နိုင်ကြောင်း သတိပြုပါရန် လိုအပ်ပါသည်။ မူလစာတမ်းကို မူရင်းဘာသာဖြင့်သာ ယုံကြည်စိတ်ချရသော အချက်အလက်အဖြစ် သတ်မှတ်သင့်သည်။ အရေးကြီးသည့် သတင်းအချက်အလက်များအတွက် ပရော်ဖက်ရှင်နယ် လူသားဘာသာပြန်သူဝန်ဆောင်မှုကို အကြံပြုပါသည်။ ဤဘာသာပြန်ချက်ကို အသုံးပြုခြင်းမှ ဖြစ်ပေါ်လာသော နားလည်မှုကွာခြားမှုများ သို့မဟုတ် မမှန်ကန်သော အသုံးပြုမှုများအတွက် ကျွန်ုပ်တို့ တာဝန်မခံပါ။ + \ No newline at end of file diff --git a/translations/uk/.co-op-translator.json b/translations/uk/.co-op-translator.json index 83f45ccef..40c5e9216 100644 --- a/translations/uk/.co-op-translator.json +++ b/translations/uk/.co-op-translator.json @@ -1,7 +1,7 @@ { "1-Introduction/1-intro-to-ML/README.md": { - "original_hash": "69389392fa6346e0dfa30f664b7b6fec", - "translation_date": "2025-09-05T12:48:39+00:00", + "original_hash": "3a6394c6f5ce3f8aee8211e92eaf9ef0", + "translation_date": "2026-05-26T22:49:26+00:00", "source_file": "1-Introduction/1-intro-to-ML/README.md", "language_code": "uk" }, @@ -240,8 +240,8 @@ "language_code": "uk" }, "5-Clustering/1-Visualize/README.md": { - "original_hash": "730225ea274c9174fe688b21d421539d", - "translation_date": "2025-09-05T12:13:16+00:00", + "original_hash": "08b00d9fbffc667a7fe7fc19ac00dfbd", + "translation_date": "2026-05-26T22:48:51+00:00", "source_file": "5-Clustering/1-Visualize/README.md", "language_code": "uk" }, diff --git a/translations/uk/1-Introduction/1-intro-to-ML/README.md b/translations/uk/1-Introduction/1-intro-to-ML/README.md index 7da8014d2..03659fa67 100644 --- a/translations/uk/1-Introduction/1-intro-to-ML/README.md +++ b/translations/uk/1-Introduction/1-intro-to-ML/README.md @@ -1,150 +1,157 @@ # Вступ до машинного навчання -## [Тест перед лекцією](https://ff-quizzes.netlify.app/en/ml/) +## [Попередній тест перед лекцією](https://ff-quizzes.netlify.app/en/ml/) --- [![ML для початківців - Вступ до машинного навчання для початківців](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML для початківців - Вступ до машинного навчання для початківців") -> 🎥 Натисніть на зображення вище, щоб переглянути коротке відео, яке пояснює цей урок. +> 🎥 Натисніть на зображення вище, щоб переглянути коротке відео, що розглядає цей урок. -Ласкаво просимо до курсу класичного машинного навчання для початківців! Незалежно від того, чи ви абсолютно новачок у цій темі, чи досвідчений практик ML, який хоче освіжити знання, ми раді вас бачити! Ми прагнемо створити дружню стартову платформу для вашого навчання ML і будемо раді оцінити, відповісти та врахувати ваші [відгуки](https://github.com/microsoft/ML-For-Beginners/discussions). +Ласкаво просимо на цей курс класичного машинного навчання для початківців! Чи ви повністю новачок у цій темі, чи досвідчений практик машинного навчання, який хоче оновити знання в певній сфері, ми раді вітати вас у нас! Ми хочемо створити дружнє середовище для вашого вивчення ML і будемо раді оцінити, відповісти на та врахувати ваші [відгуки](https://github.com/microsoft/ML-For-Beginners/discussions). [![Вступ до ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Вступ до ML") -> 🎥 Натисніть на зображення вище, щоб переглянути відео: Джон Гуттаг з MIT представляє машинне навчання +> 🎥 Натисніть на зображення вище для відео: Джон Гаттаг з MIT представляє машинне навчання --- ## Початок роботи з машинним навчанням -Перед початком цього курсу вам потрібно налаштувати свій комп'ютер для локального запуску ноутбуків. +Перш ніж почати з цією програмою, вам потрібно налаштувати свій комп’ютер і бути готовим запускати ноутбуки локально. -- **Налаштуйте свій комп'ютер за допомогою цих відео**. Використовуйте наступні посилання, щоб дізнатися [як встановити Python](https://youtu.be/CXZYvNRIAKM) на вашій системі та [налаштувати текстовий редактор](https://youtu.be/EU8eayHWoZg) для розробки. -- **Вивчіть Python**. Також рекомендується мати базове розуміння [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), мови програмування, яка корисна для спеціалістів з даних і яку ми використовуємо в цьому курсі. -- **Вивчіть Node.js та JavaScript**. Ми також кілька разів використовуємо JavaScript у цьому курсі для створення веб-додатків, тому вам потрібно мати встановлені [node](https://nodejs.org) і [npm](https://www.npmjs.com/), а також [Visual Studio Code](https://code.visualstudio.com/) для розробки на Python і JavaScript. -- **Створіть обліковий запис GitHub**. Оскільки ви знайшли нас тут на [GitHub](https://github.com), можливо, у вас вже є обліковий запис, але якщо ні, створіть його, а потім форкніть цей курс для власного використання. (Можете також поставити нам зірочку 😊) -- **Ознайомтеся з Scikit-learn**. Ознайомтеся з [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), набором бібліотек ML, які ми використовуємо в цих уроках. +- **Налаштуйте свій комп’ютер за допомогою цих відео**. Використовуйте посилання для навчання [як встановити Python](https://youtu.be/CXZYvNRIAKM) на вашій системі та [налаштувати текстовий редактор](https://youtu.be/EU8eayHWoZg) для розробки. +- **Вивчіть Python**. Також рекомендується мати базове розуміння [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott) — мови програмування, корисної для науковців із даних і яку ми використовуємо у цьому курсі. +- **Вивчіть Node.js та JavaScript**. У цьому курсі ми також кілька разів використовуємо JavaScript для створення веб-додатків, тому вам потрібно мати встановлені [node](https://nodejs.org) і [npm](https://www.npmjs.com/), а також [Visual Studio Code](https://code.visualstudio.com/) для розробки на Python і JavaScript. +- **Створіть обліковий запис GitHub**. Оскільки ви знайшли нас тут, на [GitHub](https://github.com), можливо, у вас уже є обліковий запис, але якщо ні — створіть його, а потім зробіть форк цієї програми, щоб користуватися нею самостійно. (І не соромтеся поставити нам зірочку, теж 😊) +- **Ознайомтеся зі Scikit-learn**. Познайомтесь із [Scikit-learn](https://scikit-learn.org/stable/user_guide.html) — набором бібліотек для ML, на які ми посилаємося у цих уроках. --- ## Що таке машинне навчання? -Термін "машинне навчання" є одним із найпопулярніших і найчастіше використовуваних термінів сьогодення. Існує значна ймовірність, що ви чули цей термін хоча б раз, якщо маєте певне знайомство з технологіями, незалежно від того, в якій галузі працюєте. Однак механізми машинного навчання залишаються загадкою для більшості людей. Для початківця в машинному навчанні ця тема іноді може здаватися складною. Тому важливо зрозуміти, що таке машинне навчання, і вивчати його поступово, через практичні приклади. +Термін «машинне навчання» — один з найпопулярніших і найчастіше вживаних сьогодні. Існує немаленька ймовірність, що ви хоча б раз чули цей термін, якщо маєте якусь знайомість із технологіями, незалежно від сфери вашої роботи. Проте механізми машинного навчання для більшості залишаються загадкою. Для початківця у сфері ML це іноді може здаватися надто складним. Тому важливо зрозуміти, що таке машинне навчання насправді, і навчатися крок за кроком, на практичних прикладах. --- ## Крива популярності -![крива популярності ML](../../../../1-Introduction/1-intro-to-ML/images/hype.png) +![ml hype curve](../../../../translated_images/uk/hype.07183d711a17aafe.webp) -> Google Trends показує останню "криву популярності" терміну "машинне навчання" +> Google Trends показує останню 'криву популярності' терміну «машинне навчання» --- -## Загадковий всесвіт +## Загадковий Всесвіт -Ми живемо у всесвіті, повному захоплюючих загадок. Великі вчені, такі як Стівен Гокінг, Альберт Ейнштейн та багато інших, присвятили своє життя пошуку значущої інформації, яка розкриває таємниці світу навколо нас. Це людська природа навчання: дитина вчиться новому і рік за роком відкриває структуру свого світу, дорослішаючи. +Ми живемо у Всесвіті, сповненому захопливих таємниць. Великі вчені, такі як Стівен Гокінг, Альберт Ейнштейн і багато інших, присвятили своє життя пошуку значущої інформації, що розкриває загадки світу навколо нас. Це людська сутність навчання: дитина вивчає нове і відкриває структуру свого світу рік за роком, ростучи до дорослого. --- ## Мозок дитини -Мозок і органи чуття дитини сприймають факти про навколишнє середовище і поступово вивчають приховані закономірності життя, які допомагають дитині створювати логічні правила для розпізнавання вивчених шаблонів. Процес навчання людського мозку робить людей найскладнішими живими істотами на цій планеті. Постійне навчання через відкриття прихованих закономірностей і подальше вдосконалення цих закономірностей дозволяє нам ставати кращими протягом усього життя. Ця здатність до навчання та еволюції пов'язана з концепцією, яка називається [пластичність мозку](https://www.simplypsychology.org/brain-plasticity.html). Поверхнево ми можемо провести деякі мотиваційні паралелі між процесом навчання людського мозку і концепціями машинного навчання. +Мозок і органи чуття дитини сприймають факти з навколишнього середовища та поступово вивчають приховані закономірності життя, що допомагають дитині створювати логічні правила для розпізнавання вивчених патернів. Процес навчання людського мозку робить людину найскладнішою живою істотою у цьому світі. Безперервне навчання через відкриття прихованих закономірностей та подальші інновації дають змогу ставати кращими протягом усього життя. Ця здатність навчатися та розвиватися пов’язана з поняттям [пластичності мозку](https://www.simplypsychology.org/brain-plasticity.html). Зовні ми можемо знайти деякі мотиваційні подібності між процесом навчання людського мозку і концепціями машинного навчання. --- ## Людський мозок -[Людський мозок](https://www.livescience.com/29365-human-brain.html) сприймає речі з реального світу, обробляє отриману інформацію, приймає раціональні рішення і виконує певні дії залежно від обставин. Це те, що ми називаємо розумною поведінкою. Коли ми програмуємо імітацію процесу розумної поведінки для машини, це називається штучним інтелектом (AI). +[Людський мозок](https://www.livescience.com/29365-human-brain.html) сприймає речі реального світу, обробляє отриману інформацію, приймає раціональні рішення і виконує певні дії відповідно до обставин. Це те, що ми називаємо інтелігентною поведінкою. Коли ми програмуємо механізм такого інтелектуального процесу для машини, це називається штучним інтелектом (ШІ). --- -## Деяка термінологія +## Декілька термінів -Хоча терміни можуть плутатися, машинне навчання (ML) є важливим підрозділом штучного інтелекту. **ML займається використанням спеціалізованих алгоритмів для виявлення значущої інформації та пошуку прихованих закономірностей у отриманих даних для підтвердження процесу раціонального прийняття рішень**. +Хоча терміни іноді плутають, машинне навчання (ML) є важливою підмножиною штучного інтелекту. **ML займається використанням спеціалізованих алгоритмів для виявлення значущої інформації та прихованих закономірностей у сприйнятих даних, аби підтримати процес раціонального прийняття рішень**. --- -## AI, ML, глибоке навчання +## ШІ, ML, глибинне навчання -![AI, ML, глибоке навчання, наука про дані](../../../../1-Introduction/1-intro-to-ML/images/ai-ml-ds.png) +![AI, ML, deep learning, data science](../../../../translated_images/uk/ai-ml-ds.537ea441b124ebf6.webp) -> Діаграма, що показує взаємозв'язки між AI, ML, глибоким навчанням і наукою про дані. Інфографіка від [Jen Looper](https://twitter.com/jenlooper), натхненна [цією графікою](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining) +> Діаграма, що показує взаємозв’язок між ШІ, ML, глибинним навчанням і наукою про дані. Інфографіка від [Jen Looper](https://twitter.com/jenlooper), натхненна [цією графікою](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining) --- -## Концепції, які ми розглянемо +## Концепції для вивчення -У цьому курсі ми розглянемо лише основні концепції машинного навчання, які повинен знати початківець. Ми зосередимося на тому, що називаємо "класичним машинним навчанням", використовуючи переважно Scikit-learn, чудову бібліотеку, яку багато студентів використовують для вивчення основ. Щоб зрозуміти ширші концепції штучного інтелекту або глибокого навчання, необхідно мати міцні базові знання машинного навчання, і ми прагнемо надати їх тут. +У цій програмі ми розглянемо лише основні концепції машинного навчання, які повинен знати початківець. Ми зосередимося на так званому «класичному машинному навчанні», головним чином використовуючи Scikit-learn, чудову бібліотеку, яку багато студентів використовують для навчання базовим поняттям. Для розуміння ширших концепцій штучного інтелекту або глибинного навчання необхідне міцне фундаментальне знання машинного навчання, і саме його ми хочемо запропонувати тут. --- -## У цьому курсі ви навчитеся: +## На цьому курсі ви навчитеся: -- основним концепціям машинного навчання +- основним поняттям машинного навчання - історії ML -- ML і справедливості -- технікам регресії в ML -- технікам класифікації в ML -- технікам кластеризації в ML -- обробці природної мови в ML -- прогнозуванню часових рядів у ML -- навчанню з підкріпленням -- реальним застосуванням ML +- ML та справедливості +- методам регресії ML +- методам класифікації ML +- методам кластеризації ML +- методам обробки природної мови +- методам прогнозування часових рядів +- підкріпленому навчанню +- практичним застосуванням ML --- -## Що ми не будемо розглядати +## Чого не буде у курсі -- глибоке навчання -- нейронні мережі -- AI +- глибинного навчання +- нейронних мереж +- ШІ -Для кращого навчального досвіду ми уникатимемо складнощів нейронних мереж, "глибокого навчання" - багатошарового моделювання за допомогою нейронних мереж - і AI, які ми розглянемо в іншому курсі. Ми також запропонуємо майбутній курс з науки про дані, щоб зосередитися на цьому аспекті цієї ширшої галузі. +Для кращого досвіду навчання ми уникатимемо складнощів нейронних мереж, «глибинного навчання» — багатошарового моделювання за допомогою нейронних мереж — та ШІ, які обговоримо в іншій програмі. Також ми запропонуємо майбутній курс з науки про дані, щоб зосередитися на цьому аспекті ширшої сфери. --- -## Чому варто вивчати машинне навчання? +## Чому варто вчити машинне навчання? -Машинне навчання, з точки зору систем, визначається як створення автоматизованих систем, які можуть вивчати приховані закономірності з даних для допомоги у прийнятті розумних рішень. +Машинне навчання, з системної точки зору, визначається як створення автоматизованих систем, які можуть навчатися прихованим закономірностям із даних, щоб допомагати у прийнятті інтелектуальних рішень. -Ця мотивація частково натхненна тим, як людський мозок вчиться певним речам на основі даних, які він отримує з навколишнього світу. +Ця мотивація умовно натхненна тим, як людський мозок навчається певним речам на основі даних, які він сприймає з навколишнього світу. -✅ Подумайте хвилину, чому бізнес може захотіти використовувати стратегії машинного навчання замість створення жорстко закодованого механізму на основі правил. +✅ Подумайте хвилину, чому бізнес хотів би використати стратегії машинного навчання замість створення жорстко зашитого рушія на основі правил. + +--- +## Чому якість даних має значення + +Високоякісні дані покращують продуктивність моделей. Погані або зашумлені дані можуть призвести до неточних передбачень, навіть при використанні просунутих алгоритмів машинного навчання. --- ## Застосування машинного навчання -Застосування машинного навчання зараз майже всюди і таке ж поширене, як і дані, які циркулюють у наших суспільствах, створені нашими смартфонами, підключеними пристроями та іншими системами. Враховуючи величезний потенціал сучасних алгоритмів машинного навчання, дослідники досліджують їхню здатність вирішувати багатовимірні та багатопрофільні реальні проблеми з великими позитивними результатами. +Застосування машинного навчання зараз майже всюди і таке ж повсюдне, як і дані, що циркулюють у наших суспільствах, створювані нашими смартфонами, підключеними пристроями та іншими системами. Враховуючи величезний потенціал найсучасніших алгоритмів машинного навчання, дослідники вивчають їх здатність розв’язувати багатовимірні та багатодисциплінарні реальні проблеми з чудовими позитивними результатами. --- ## Приклади застосування ML -**Машинне навчання можна використовувати багатьма способами**: +**Машинне навчання можна застосовувати у багатьох сферах**: -- Для прогнозування ймовірності захворювання на основі медичної історії або звітів пацієнта. -- Для використання даних про погоду для прогнозування погодних явищ. +- Для прогнозування ймовірності захворювання на основі медичної історії чи звітів пацієнта. +- Для використання погодних даних для прогнозування погодних явищ. - Для розуміння настрою тексту. -- Для виявлення фейкових новин, щоб зупинити поширення пропаганди. +- Для виявлення фейкових новин з метою зупинити поширення пропаганди. -Фінанси, економіка, науки про Землю, космічні дослідження, біомедична інженерія, когнітивні науки і навіть гуманітарні галузі адаптували машинне навчання для вирішення складних проблем, пов'язаних з обробкою даних у їхніх сферах. +Фінанси, економіка, наукa про Землю, космічні дослідження, біомедична інженерія, когнітивні науки і навіть гуманітарні дисципліни адаптували машинне навчання для розв’язання складних, інтенсивних у роботі з даними проблем своєї сфери. --- ## Висновок -Машинне навчання автоматизує процес відкриття закономірностей, знаходячи значущі інсайти з реальних або створених даних. Воно довело свою високу цінність у бізнесі, медицині, фінансових додатках та інших сферах. +Машинне навчання автоматизує процес виявлення закономірностей, знаходячи значущі інсайти у реальних або згенерованих даних. Воно довело свою велику цінність у бізнесі, медицині, фінансах та інших галузях. -У найближчому майбутньому розуміння основ машинного навчання стане необхідністю для людей з будь-якої галузі через його широке впровадження. +У найближчому майбутньому розуміння основ машинного навчання стане необхідністю для людей із будь-якої сфери через його широке застосування. --- # 🚀 Виклик -Намалюйте на папері або за допомогою онлайн-додатку, такого як [Excalidraw](https://excalidraw.com/), ваше розуміння відмінностей між AI, ML, глибоким навчанням і наукою про дані. Додайте ідеї проблем, які кожна з цих технік добре вирішує. +Зробіть начерк на папері або в онлайн-додатку на кшталт [Excalidraw](https://excalidraw.com/), що ілюструє ваше розуміння різниці між ШІ, ML, глибинним навчанням і наукою про дані. Додайте кілька ідей про те, які проблеми кожен з цих методів добре розв’язує. # [Тест після лекції](https://ff-quizzes.netlify.app/en/ml/) --- -# Огляд і самостійне навчання +# Огляд і самостійне вивчення -Щоб дізнатися більше про те, як працювати з алгоритмами ML у хмарі, пройдіть цей [навчальний шлях](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott). +Щоб дізнатися більше про роботу з алгоритмами ML у хмарі, пройдіть цей [Навчальний шлях](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott). -Пройдіть [навчальний шлях](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) про основи ML. +Пройдіть курс [Основи машинного навчання](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott). --- -# Завдання +# Домашнє завдання -[Почніть роботу](assignment.md) +[Запустіть роботу](assignment.md) --- -**Відмова від відповідальності**: -Цей документ був перекладений за допомогою сервісу автоматичного перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критичної інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникають внаслідок використання цього перекладу. \ No newline at end of file + +**Відмова від відповідальності**: +Цей документ було перекладено за допомогою сервісу штучного інтелекту для перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ рідною мовою слід вважати авторитетним джерелом. Для критично важливої інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникли внаслідок використання цього перекладу. + \ No newline at end of file diff --git a/translations/uk/5-Clustering/1-Visualize/README.md b/translations/uk/5-Clustering/1-Visualize/README.md index de7436257..ffc7c4b2c 100644 --- a/translations/uk/5-Clustering/1-Visualize/README.md +++ b/translations/uk/5-Clustering/1-Visualize/README.md @@ -1,106 +1,106 @@ # Вступ до кластеризації -Кластеризація — це тип [навчання без учителя](https://wikipedia.org/wiki/Unsupervised_learning), який передбачає, що набір даних не має міток або його вхідні дані не пов’язані з визначеними виходами. Вона використовує різні алгоритми для аналізу немаркованих даних і створення груп на основі виявлених у даних закономірностей. +Кластеризація — це тип [некерованого навчання](https://wikipedia.org/wiki/Unsupervised_learning), яке припускає, що набір даних не має міток або що його вхідні дані не співпадають із заздалегідь визначеними виходами. Вона використовує різні алгоритми для сортування немаркованих даних і формування груп згідно з виявленими в даних шаблонами. [![No One Like You by PSquare](https://img.youtube.com/vi/ty2advRiWJM/0.jpg)](https://youtu.be/ty2advRiWJM "No One Like You by PSquare") -> 🎥 Натисніть на зображення вище, щоб переглянути відео. Поки ви вивчаєте машинне навчання з кластеризацією, насолоджуйтесь нігерійськими танцювальними треками — це високо оцінена пісня 2014 року від PSquare. +> 🎥 Натисніть на зображення вище, щоб переглянути відео. Поки ви вивчаєте машинне навчання з кластеризацією, насолоджуйтеся треками нігерійського Dance Hall — це дуже популярна пісня 2014 року від PSquare. -## [Тест перед лекцією](https://ff-quizzes.netlify.app/en/ml/) +## [Передлекційний тест](https://ff-quizzes.netlify.app/en/ml/) ### Вступ -[Кластеризація](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) дуже корисна для дослідження даних. Давайте подивимося, чи може вона допомогти виявити тенденції та закономірності у способах споживання музики нігерійською аудиторією. +[Кластеризація](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) дуже корисна для дослідження даних. Подивимось, чи може вона допомогти виявити тенденції та закономірності у способах споживання музики нігерійською аудиторією. -✅ Зробіть паузу та подумайте про застосування кластеризації. У реальному житті кластеризація відбувається, коли у вас є купа білизни, і вам потрібно розсортувати одяг членів вашої родини 🧦👕👖🩲. У науці про дані кластеризація відбувається під час аналізу уподобань користувачів або визначення характеристик будь-якого немаркованого набору даних. Кластеризація, певною мірою, допомагає навести лад у хаосі, як у шухляді для шкарпеток. +✅ Приділіть хвилину, щоб подумати про застосування кластеризації. У реальному житті кластеризація трапляється щоразу, коли у вас є купа білизни, і потрібно розсортувати одяг членів родини 🧦👕👖🩲. У науці про дані кластеризація трапляється, коли ви аналізуєте переваги користувача або визначаєте характеристики будь-якого немаркованого набору даних. Кластеризація, у певному сенсі, допомагає навести лад у хаосі, як ящик із шкарпетками. [![Introduction to ML](https://img.youtube.com/vi/esmzYhuFnds/0.jpg)](https://youtu.be/esmzYhuFnds "Introduction to Clustering") -> 🎥 Натисніть на зображення вище, щоб переглянути відео: Джон Гуттаг з MIT представляє кластеризацію. +> 🎥 Натисніть на зображення вище, щоб переглянути відео: Джон Гаттаг із MIT вводить у тему кластеризації -У професійному середовищі кластеризацію можна використовувати для визначення таких речей, як сегментація ринку, наприклад, визначення, які вікові групи купують які товари. Інше застосування — виявлення аномалій, наприклад, для виявлення шахрайства в наборі даних про транзакції кредитних карток. Або ви можете використовувати кластеризацію для визначення пухлин у партії медичних сканів. +У професійному середовищі кластеризацію можна використовувати для визначення таких речей, як сегментування ринку, наприклад, визначення, які вікові групи купують які товари. Ще одним застосуванням є виявлення аномалій, наприклад, для виявлення шахрайства у даних транзакцій по кредитних картках. Або можна застосувати кластеризацію для визначення пухлин на серії медичних сканів. -✅ Подумайте хвилину про те, як ви могли зустрічати кластеризацію «у дикій природі», у банківській, електронній комерції чи бізнес-середовищі. +✅ Подумайте хвилину про те, як ви могли зустрічати кластеризацію «у природі», у банкінгу, електронній комерції або в бізнес-середовищі. -> 🎓 Цікаво, що аналіз кластерів виник у галузях антропології та психології у 1930-х роках. Уявляєте, як його могли використовувати? +> 🎓 Цікаво, що аналіз кластерів виник у галузях антропології та психології у 1930-х роках. Чи уявляєте, як його могли застосовувати? -Альтернативно, кластеризацію можна використовувати для групування результатів пошуку — наприклад, за посиланнями на покупки, зображеннями чи відгуками. Кластеризація корисна, коли у вас є великий набір даних, який ви хочете зменшити та на якому хочете провести більш детальний аналіз, тому цей метод можна використовувати для вивчення даних перед створенням інших моделей. +Також кластеризацію можна використовувати для групування результатів пошуку — наприклад, за посиланнями на покупки, зображеннями чи відгуками. Кластеризація корисна, коли у вас є великий набір даних, який ви хочете зменшити і провести над ним більш детальний аналіз, тому ця техніка може бути використана для вивчення даних до побудови інших моделей. -✅ Коли ваші дані організовані в кластери, ви призначаєте їм ідентифікатор кластеру, і ця техніка може бути корисною для збереження конфіденційності набору даних; замість цього ви можете посилатися на точку даних за її ідентифікатором кластеру, а не за більш розкриваючими даними. Чи можете ви придумати інші причини, чому ви б використовували ідентифікатор кластеру, а не інші елементи кластеру для його ідентифікації? +✅ Коли ваші дані організовані в кластери, ви призначаєте їм ідентифікатор кластеру, і ця техніка може бути корисна для збереження конфіденційності даних; замість того, щоб посилатися на точку даних за більш розкривальною ідентифікаційною інформацією, ви можете посилатися на неї за ідентифікатором кластеру. Чи можете ви назвати інші причини, з яких ви б посилалися на ідентифікатор кластеру замість інших елементів кластеру для його ідентифікації? -Поглибте своє розуміння технік кластеризації в цьому [навчальному модулі](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott). +Поглибте розуміння технік кластеризації у цьому [модулі Learn](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott) ## Початок роботи з кластеризацією -[Scikit-learn пропонує широкий вибір](https://scikit-learn.org/stable/modules/clustering.html) методів для виконання кластеризації. Тип, який ви оберете, залежатиме від вашого випадку використання. Згідно з документацією, кожен метод має різні переваги. Ось спрощена таблиця методів, підтримуваних Scikit-learn, і їх відповідних випадків використання: - -| Назва методу | Випадок використання | -| :--------------------------- | :------------------------------------------------------------------- | -| K-Means | загального призначення, індуктивний | -| Affinity propagation | багато, нерівномірні кластери, індуктивний | -| Mean-shift | багато, нерівномірні кластери, індуктивний | -| Spectral clustering | мало, рівномірні кластери, трансдуктивний | -| Ward hierarchical clustering | багато, обмежені кластери, трансдуктивний | -| Agglomerative clustering | багато, обмежені, неевклідові відстані, трансдуктивний | -| DBSCAN | не плоска геометрія, нерівномірні кластери, трансдуктивний | -| OPTICS | не плоска геометрія, нерівномірні кластери зі змінною щільністю, трансдуктивний | -| Gaussian mixtures | плоска геометрія, індуктивний | -| BIRCH | великий набір даних із викидами, індуктивний | - -> 🎓 Як ми створюємо кластери, багато в чому залежить від того, як ми групуємо точки даних у групи. Давайте розберемо деяку термінологію: +[Scikit-learn пропонує велику низку](https://scikit-learn.org/stable/modules/clustering.html) методів для виконання кластеризації. Обраний вами тип залежатиме від вашого випадку використання. Згідно з документацією, кожен метод має різні переваги. Ось спрощена таблиця методів, підтримуваних Scikit-learn, та їх відповідні сфери застосування: + +| Назва методу | Сфера використання | +| :--------------------------- | :----------------------------------------------------------------- | +| K-Means | загального призначення, індуктивний | +| Affinity propagation | багато, нерівномірні кластери, індуктивний | +| Mean-shift | багато, нерівномірні кластери, індуктивний | +| Spectral clustering | мало, рівні кластери, трансдуктивний | +| Ward hierarchical clustering | багато, обмежені кластери, трансдуктивний | +| Agglomerative clustering | багато, обмежені, неевклідові відстані, трансдуктивний | +| DBSCAN | не плоска геометрія, нерівномірні кластери, трансдуктивний | +| OPTICS | не плоска геометрія, нерівномірні кластери з змінною щільністю, трансдуктивний | +| Gaussian mixtures | плоска геометрія, індуктивний | +| BIRCH | великий набір даних з викидами, індуктивний | + +> 🎓 Як ми створюємо кластери, сильно залежить від того, як ми збираємо точки даних у групи. Давайте розглянемо деяку термінологію: > -> 🎓 ['Трансдуктивний' vs. 'індуктивний'](https://wikipedia.org/wiki/Transduction_(machine_learning)) +> 🎓 ['Трансдуктивний' проти 'індуктивного'](https://wikipedia.org/wiki/Transduction_(machine_learning)) > -> Трансдуктивний висновок базується на спостережуваних навчальних випадках, які відповідають конкретним тестовим випадкам. Індуктивний висновок базується на навчальних випадках, які відповідають загальним правилам, які лише потім застосовуються до тестових випадків. +> Трансдуктивне виведення походить із спостережених навчальних випадків, які кореспондують конкретним тестовим випадкам. Індуктивне виведення походить із навчальних випадків, які формують загальні правила, які потім застосовуються до тестових випадків. > -> Приклад: Уявіть, що у вас є набір даних, який лише частково має мітки. Деякі речі — це «платівки», деякі — «CD», а деякі — порожні. Ваше завдання — надати мітки для порожніх. Якщо ви обираєте індуктивний підхід, ви тренуєте модель, шукаючи «платівки» та «CD», і застосовуєте ці мітки до немаркованих даних. Цей підхід матиме труднощі з класифікацією речей, які насправді є «касетами». Трансдуктивний підхід, з іншого боку, ефективніше працює з невідомими даними, оскільки він групує схожі елементи разом і потім застосовує мітку до групи. У цьому випадку кластери можуть відображати «круглі музичні речі» та «квадратні музичні речі». +> Приклад: уявіть, що у вас є набір даних, позначений лише частково. Деякі елементи — це 'платівки', деякі — 'CD', а деякі — без позначок. Ваше завдання — проставити позначки для пустих записів. Якщо ви оберете індуктивний підхід, ви навчите модель виявляти 'платівки' та 'CD' і застосуєте ці позначки до немаркованих даних. Цей підхід матиме труднощі з класифікацією таких елементів, як 'касети'. Трансдуктивний підхід, навпаки, ефективніше опрацьовує невідомі дані, оскільки групує схожі елементи разом, а потім застосовує позначку до групи. У такому випадку кластери можуть відображати 'круглі музичні речі' та 'квадратні музичні речі'. > -> 🎓 ['Не плоска' vs. 'плоска' геометрія](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering) +> 🎓 ['Не плоска' проти 'плоскої' геометрії](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering) > -> Взято з математичної термінології, не плоска vs. плоска геометрія стосується вимірювання відстаней між точками за допомогою «плоских» ([евклідових](https://wikipedia.org/wiki/Euclidean_geometry)) або «не плоских» (неевклідових) геометричних методів. +> Походить із математичної термінології, не плоска проти плоскої геометрії означає оцінку відстаней між точками або за «плоскими» ([евклідовими](https://wikipedia.org/wiki/Euclidean_geometry)) або за «не плоскими» (неевклідовими) геометричними методами. > ->'Плоска' в цьому контексті стосується евклідової геометрії (частини якої викладаються як «планіметрія»), а не плоска стосується неевклідової геометрії. Що геометрія має спільного з машинним навчанням? Як дві галузі, які базуються на математиці, має бути загальний спосіб вимірювання відстаней між точками в кластерах, і це можна зробити «плоским» або «не плоским» способом, залежно від природи даних. [Евклідові відстані](https://wikipedia.org/wiki/Euclidean_distance) вимірюються як довжина відрізка між двома точками. [Неевклідові відстані](https://wikipedia.org/wiki/Non-Euclidean_geometry) вимірюються вздовж кривої. Якщо ваші дані, візуалізовані, здаються такими, що не існують на площині, вам може знадобитися спеціалізований алгоритм для їх обробки. +> «Плоска» в цьому контексті означає евклідову геометрію (частина якої викладається як «планарна» геометрія), а не плоска — неевклідову геометрію. Яке відношення має геометрія до машинного навчання? Оскільки обидві області базуються на математиці, існує загальний спосіб вимірювання відстаней між точками у кластерах, і це можна робити «плоским» або «не плоским» способом залежно від природи даних. [Евклідові відстані](https://wikipedia.org/wiki/Euclidean_distance) вимірюються як довжина відрізка між двома точками. [Неевклідові відстані](https://wikipedia.org/wiki/Non-Euclidean_geometry) вимірюються вздовж кривої. Якщо ваші дані, візуалізовані, здаються такими, що не лежать на площині, можливо, потрібно використати спеціалізований алгоритм для їх обробки. > -![Flat vs Nonflat Geometry Infographic](../../../../5-Clustering/1-Visualize/images/flat-nonflat.png) +![Flat vs Nonflat Geometry Infographic](../../../../translated_images/uk/flat-nonflat.d1c8c6e2a96110c1.webp) > Інфографіка від [Dasani Madipalli](https://twitter.com/dasani_decoded) > > 🎓 ['Відстані'](https://web.stanford.edu/class/cs345a/slides/12-clustering.pdf) > -> Кластери визначаються їх матрицею відстаней, тобто відстанями між точками. Ця відстань може вимірюватися кількома способами. Евклідові кластери визначаються середнім значенням точок і містять «центроїд» або центральну точку. Відстані вимірюються від центроїда. Неевклідові відстані стосуються «кластроїдів», точки, найближчої до інших точок. Кластроїди, у свою чергу, можуть визначатися різними способами. +> Кластери визначаються за їх матрицею відстаней, напр., відстанями між точками. Цю відстань можна вимірювати кількома способами. Евклідові кластери визначаються середнім значенням точок і мають «центроїд» чи центральну точку. Відстані вимірюються відстанню до центроїда. Неевклідові відстані пов'язані з «кластроїдами» — точками, найближчими до інших точок. Кластроїди, у свою чергу, можуть визначатися різними способами. > > 🎓 ['Обмежені'](https://wikipedia.org/wiki/Constrained_clustering) > -> [Обмежена кластеризація](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) вводить «напівконтрольоване» навчання в цей метод без учителя. Відносини між точками позначаються як «не можна зв’язати» або «потрібно зв’язати», тому деякі правила накладаються на набір даних. +> [Обмежена кластеризація](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) вводить «напівкероване» навчання в цей метод некерованого навчання. Відносини між точками позначаються як «не можна зв’язувати» або «потрібно зв’язувати», щоб накласти деякі правила на набір даних. > ->Приклад: Якщо алгоритм вільно працює з партією немаркованих або частково маркованих даних, кластери, які він створює, можуть бути низької якості. У наведеному вище прикладі кластери можуть групувати «круглі музичні речі», «квадратні музичні речі», «трикутні речі» та «печиво». Якщо надати деякі обмеження або правила, яких слід дотримуватися («елемент має бути виготовлений із пластику», «елемент має бути здатним відтворювати музику»), це може допомогти «обмежити» алгоритм для прийняття кращих рішень. +> Приклад: якщо алгоритм застосувати до набору немаркованих або напівмаркованих даних без обмежень, кластери можуть бути неякісними. У наведеному прикладі кластери можуть утворювати «круглі музичні речі», «квадратні музичні речі», «трикутні речі» і «печиво». Якщо задати деякі обмеження або правила («елемент повинен бути зроблений із пластику», «елемент повинен мати можливість відтворювати музику»), це допоможе «обмежити» алгоритм і зробити кращий вибір. > -> 🎓 'Щільність' +> 🎓 «Щільність» > -> Дані, які є «шумними», вважаються «щільними». Відстані між точками в кожному з його кластерів можуть виявитися, при перевірці, більш-менш щільними або «переповненими», і тому ці дані потрібно аналізувати за допомогою відповідного методу кластеризації. [Ця стаття](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) демонструє різницю між використанням кластеризації K-Means і алгоритмів HDBSCAN для дослідження шумного набору даних із нерівномірною щільністю кластерів. +> Дані, які містять «шум», вважаються «щільними». Відстані між точками в кожному кластері можуть виявитися більш-менш щільними або «заповненими», тому такі дані потрібно аналізувати відповідним методом кластеризації. [Ця стаття](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) демонструє різницю між використанням K-Means і HDBSCAN для дослідження шумного набору даних із нерівномірною щільністю кластерів. ## Алгоритми кластеризації -Існує понад 100 алгоритмів кластеризації, і їх використання залежить від природи даних. Давайте обговоримо деякі основні: +Існує понад 100 алгоритмів кластеризації, і їх використання залежить від природи даних. Розглянемо деякі з основних: -- **Ієрархічна кластеризація**. Якщо об’єкт класифікується за його близькістю до сусіднього об’єкта, а не до більш віддаленого, кластери формуються на основі відстані їх членів до інших об’єктів. Ієрархічна кластеризація Scikit-learn є агломеративною. +- **Ієрархічна кластеризація**. Якщо об’єкт класифікують за близькістю до найближчого об’єкта, а не до більш віддаленого, кластери утворюються на основі відстаней між їхніми членами та іншими об’єктами. Агломеративна кластеризація Scikit-learn є ієрархічною. - ![Hierarchical clustering Infographic](../../../../5-Clustering/1-Visualize/images/hierarchical.png) + ![Hierarchical clustering Infographic](../../../../translated_images/uk/hierarchical.bf59403aa43c8c47.webp) > Інфографіка від [Dasani Madipalli](https://twitter.com/dasani_decoded) -- **Кластеризація за центроїдом**. Цей популярний алгоритм вимагає вибору «k», або кількості кластерів для формування, після чого алгоритм визначає центральну точку кластеру та збирає дані навколо цієї точки. [Кластеризація K-means](https://wikipedia.org/wiki/K-means_clustering) є популярною версією кластеризації за центроїдом. Центр визначається найближчим середнім значенням, звідси й назва. Квадратна відстань від кластеру мінімізується. +- **Центроїдна кластеризація**. Цей популярний алгоритм передбачає вибір 'k', тобто кількості кластерів, після чого алгоритм визначає центральну точку кластера і збирає навколо неї дані. [K-середніх](https://wikipedia.org/wiki/K-means_clustering) — популярна версія центроїдної кластеризації. Центр визначається як найближче середнє, звідси й назва. Мінімізується квадрат відстані від кластера. - ![Centroid clustering Infographic](../../../../5-Clustering/1-Visualize/images/centroid.png) + ![Centroid clustering Infographic](../../../../translated_images/uk/centroid.097fde836cf6c918.webp) > Інфографіка від [Dasani Madipalli](https://twitter.com/dasani_decoded) -- **Кластеризація на основі розподілу**. Заснована на статистичному моделюванні, кластеризація на основі розподілу зосереджена на визначенні ймовірності того, що точка даних належить кластеру, і відповідно її призначення. Методи гаусівської суміші належать до цього типу. +- **Кластеризація на основі розподілу**. Заснована на статистичному моделюванні, вона полягає у визначенні ймовірності приналежності точки даних до кластера та відповідному призначенні. Методи гаусівських сумішей належать до цього типу. -- **Кластеризація на основі щільності**. Точки даних призначаються кластерам на основі їх щільності або групування навколо одна одної. Точки даних, віддалені від групи, вважаються викидами або шумом. DBSCAN, Mean-shift і OPTICS належать до цього типу кластеризації. +- **Кластеризація на основі щільності**. Точки даних відносяться до кластерів на основі їх щільності, або скупчення. Точки далекі від групи вважаються викидами або шумом. DBSCAN, Mean-shift і OPTICS — представники такого типу кластеризації. -- **Кластеризація на основі сітки**. Для багатовимірних наборів даних створюється сітка, і дані розподіляються між комірками сітки, створюючи таким чином кластери. +- **Кластеризація на основі сітки**. Для багатовимірних наборів даних створюється сітка, і дані діляться по комірках сітки, формуючи кластери. -## Вправа — кластеризуйте свої дані +## Завдання — кластеризуйте свої дані -Кластеризація як техніка значно полегшується за допомогою належної візуалізації, тому давайте почнемо з візуалізації наших музичних даних. Ця вправа допоможе нам вирішити, який із методів кластеризації найефективніше використовувати для природи цих даних. +Кластеризацію як техніку значно полегшує правильна візуалізація, тож почнемо з візуалізації наших музичних даних. Це завдання допоможе нам вирішити, який із методів кластеризації найкраще підходить для характеристик цих даних. 1. Відкрийте файл [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) у цій папці. @@ -110,7 +110,7 @@ !pip install seaborn ``` -1. Додайте дані про пісні з [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Завантажте фрейм даних із деякою інформацією про пісні. Підготуйтеся до дослідження цих даних, імпортувавши бібліотеки та вивівши дані: +1. Додайте дані пісень із файлу [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Завантажте датафрейм із деякою інформацією про пісні. Підготуйтеся досліджувати ці дані, імпортувавши бібліотеки і вивівши дані: ```python import matplotlib.pyplot as plt @@ -126,17 +126,17 @@ | --- | ------------------------ | ---------------------------- | ------------------- | ---------------- | ------------ | ------ | ---------- | ------------ | ------------ | ------ | ---------------- | -------- | -------- | ----------- | ------- | -------------- | | 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 | | 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 | -| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 | -| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 | -| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 | + | 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 | + | 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 | + | 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 | -1. Отримайте інформацію про датафрейм, викликавши `info()`: +1. Отримайте деяку інформацію про dataframe, викликавши `info()`: ```python df.info() ``` - Вихідні дані виглядають так: + Вивід виглядає так: ```output @@ -164,13 +164,13 @@ memory usage: 66.4+ KB ``` -1. Перевірте наявність пропущених значень, викликавши `isnull()` і переконавшись, що сума дорівнює 0: +1. Подвійна перевірка на наявність null значень, викликавши `isnull()` і перевіривши, що сума дорівнює 0: ```python df.isnull().sum() ``` - Все добре: + Все виглядає добре: ```output name 0 @@ -192,7 +192,7 @@ dtype: int64 ``` -1. Опишіть дані: +1. Опис статистики даних: ```python df.describe() @@ -209,11 +209,11 @@ | 75% | 2017 | 242098.5 | 31 | 0.8295 | 0.403 | 0.87575 | 0.000234 | 0.164 | -3.331 | 0.177 | 125.03925 | 4 | | max | 2020 | 511738 | 73 | 0.966 | 0.954 | 0.995 | 0.91 | 0.811 | 0.582 | 0.514 | 206.007 | 5 | -> 🤔 Якщо ми працюємо з кластеризацією, методом без нагляду, який не потребує міток даних, чому ми показуємо ці дані з мітками? На етапі дослідження даних вони корисні, але для роботи алгоритмів кластеризації вони не є необхідними. Ви можете просто видалити заголовки стовпців і посилатися на дані за номером стовпця. +> 🤔 Якщо ми працюємо з кластеризацією, методом без нагляду, який не потребує мічених даних, чому ми показуємо ці дані з мітками? Під час фази дослідження даних вони корисні, але не є необхідними для роботи алгоритмів кластеризації. Ви також можете просто видалити заголовки стовпців і звертатися до даних за номером стовпця. -Подивіться на загальні значення даних. Зверніть увагу, що популярність може бути "0", що вказує на пісні без рейтингу. Давайте незабаром видалимо їх. +Погляньте на загальні значення даних. Зверніть увагу, що популярність може бути '0', що означає пісні без рейтингу. Давайте незабаром їх видалимо. -1. Використовуйте стовпчасту діаграму, щоб дізнатися найпопулярніші жанри: +1. Використайте барплот, щоб дізнатися найпопулярніші жанри: ```python import seaborn as sns @@ -225,13 +225,13 @@ plt.title('Top genres',color = 'blue') ``` - ![найпопулярніші](../../../../5-Clustering/1-Visualize/images/popular.png) + ![most popular](../../../../translated_images/uk/popular.9c48d84b3386705f.webp) -✅ Якщо ви хочете побачити більше топових значень, змініть `[:5]` на більше значення або видаліть його, щоб побачити всі. +✅ Якщо хочете побачити більше топ-значень, змініть верхній `[:5]` на більше число, або видаліть його, щоб побачити всі. -Зверніть увагу, коли топовий жанр описується як "Missing", це означає, що Spotify не класифікував його, тому давайте позбудемося його. +Зверніть увагу, що коли топ-жанр описаний як 'Missing', це означає, що Spotify не класифікував його, тому давайте позбудемося його. -1. Видаліть відсутні дані, відфільтрувавши їх: +1. Видаліть відсутні дані, відфільтрувавши їх ```python df = df[df['artist_top_genre'] != 'Missing'] @@ -242,11 +242,11 @@ plt.title('Top genres',color = 'blue') ``` - Тепер перевірте жанри ще раз: + Знову перевірте жанри: - ![усі жанри](../../../../5-Clustering/1-Visualize/images/all-genres.png) + ![most popular](../../../../translated_images/uk/all-genres.1d56ef06cefbfcd6.webp) -1. Три найпопулярніші жанри значно домінують у цьому наборі даних. Зосередимося на `afro dancehall`, `afropop` і `nigerian pop`, додатково відфільтруємо набір даних, щоб видалити все з популярністю 0 (тобто те, що не було класифіковано за популярністю в наборі даних і може вважатися шумом для наших цілей): +1. Найбільше домінують у цьому датасеті три жанри. Зосередьмося на `afro dancehall`, `afropop` та `nigerian pop`, додатково відфільтрувавши датасет, щоб видалити всі записи з популярністю 0 (що означає, що в датасеті їм не було присвоєно рейтинг популярності і їх можна вважати шумом для наших цілей): ```python df = df[(df['artist_top_genre'] == 'afro dancehall') | (df['artist_top_genre'] == 'afropop') | (df['artist_top_genre'] == 'nigerian pop')] @@ -258,7 +258,7 @@ plt.title('Top genres',color = 'blue') ``` -1. Проведіть швидкий тест, щоб перевірити, чи дані мають сильну кореляцію: +1. Проведіть швидкий тест, щоб перевірити, чи є сильна кореляція у даних: ```python corrmat = df.corr(numeric_only=True) @@ -266,21 +266,21 @@ sns.heatmap(corrmat, vmax=.8, square=True) ``` - ![кореляції](../../../../5-Clustering/1-Visualize/images/correlation.png) + ![correlations](../../../../translated_images/uk/correlation.a9356bb798f5eea5.webp) - Єдина сильна кореляція — між `energy` і `loudness`, що не дивно, враховуючи, що гучна музика зазвичай досить енергійна. В іншому випадку кореляції відносно слабкі. Буде цікаво побачити, що алгоритм кластеризації зможе зробити з цими даними. + Єдина сильна кореляція між `energy` та `loudness`, що не дивно, оскільки гучна музика зазвичай досить енергійна. Інші кореляції відносно слабкі. Цікаво буде побачити, що зробить алгоритм кластеризації з цими даними. - > 🎓 Зверніть увагу, що кореляція не означає причинно-наслідковий зв'язок! Ми маємо доказ кореляції, але не маємо доказу причинності. [Цікавий веб-сайт](https://tylervigen.com/spurious-correlations) має візуалізації, які підкреслюють цю думку. + > 🎓 Зверніть увагу, що кореляція не означає причинність! Ми маємо докази кореляції, але нема доказів причинності. [Цікавий веб-сайт](https://tylervigen.com/spurious-correlations) має візуалізації, які це підкреслюють. -Чи є в цьому наборі даних зближення навколо сприйнятої популярності пісні та її танцювальності? FacetGrid показує концентричні кола, які вирівнюються незалежно від жанру. Чи може бути так, що смаки в Нігерії сходяться на певному рівні танцювальності для цього жанру? +Чи є у цьому датасеті збіг навколо сприйнятої популярності пісні і її танцювальності? FacetGrid показує концентричні кола, які вирівнюються незалежно від жанру. Чи може бути, що нігерійські смаки збігаються на певному рівні танцювальності для цього жанру? -✅ Спробуйте різні точки даних (energy, loudness, speechiness) і більше або інші музичні жанри. Що ви можете виявити? Подивіться на таблицю `df.describe()`, щоб побачити загальний розподіл точок даних. +✅ Спробуйте різні точки даних (енергія, гучність, мовленнєвість) та більше або різні музичні жанри. Що ви можете відкрити? Погляньте на таблицю `df.describe()`, щоб побачити загальний розподіл даних. ### Вправа - розподіл даних -Чи значно відрізняються ці три жанри за сприйняттям їхньої танцювальності на основі популярності? +Чи суттєво відрізняються ці три жанри у сприйнятті їх танцювальності, залежно від їх популярності? -1. Дослідіть розподіл даних наших трьох топових жанрів за популярністю та танцювальністю вздовж заданих осей x та y. +1. Проаналізуйте розподіл даних трьох провідних жанрів за популярністю та танцювальністю на заданих осях x та y. ```python sns.set_theme(style="ticks") @@ -292,13 +292,13 @@ ) ``` - Ви можете побачити концентричні кола навколо загальної точки зближення, що показує розподіл точок. + Ви можете побачити концентричні кола навколо загальної точки збігу, що показує розподіл точок. - > 🎓 Зверніть увагу, що в цьому прикладі використовується графік KDE (Kernel Density Estimate), який представляє дані за допомогою безперервної кривої ймовірності. Це дозволяє інтерпретувати дані при роботі з кількома розподілами. + > 🎓 Зверніть увагу, що цей приклад використовує графік KDE (Kernel Density Estimate), який відображає дані за допомогою неперервної кривої густини ймовірності. Це дозволяє інтерпретувати дані при роботі з багатьма розподілами. - Загалом, три жанри приблизно вирівнюються за популярністю та танцювальністю. Визначення кластерів у цих слабо вирівняних даних буде викликом: + В цілому три жанри помірно вирівнюються за популярністю та танцювальністю. Визначення кластерів у таких слабо вирівняних даних буде викликом: - ![розподіл](../../../../5-Clustering/1-Visualize/images/distribution.png) + ![distribution](../../../../translated_images/uk/distribution.9be11df42356ca95.webp) 1. Створіть діаграму розсіювання: @@ -308,25 +308,25 @@ .add_legend() ``` - Діаграма розсіювання для тих самих осей показує схожу картину зближення. + Діаграма розсіювання тих самих осей показує подібний малюнок збігу - ![Facetgrid](../../../../5-Clustering/1-Visualize/images/facetgrid.png) + ![Facetgrid](../../../../translated_images/uk/facetgrid.9b2e65ce707eba1f.webp) -Загалом, для кластеризації ви можете використовувати діаграми розсіювання, щоб показати кластери даних, тому освоєння цього типу візуалізації дуже корисне. У наступному уроці ми візьмемо ці відфільтровані дані та використаємо кластеризацію k-means, щоб виявити групи в цих даних, які, здається, цікаво перекриваються. +В цілому, для кластеризації можна використовувати діаграми розсіювання для візуалізації кластерів даних, тому оволодіння цим типом візуалізації дуже корисне. У наступному уроці ми візьмемо ці відфільтровані дані і використаємо кластеризацію k-середніх, щоб виявити групи у даних, які здаються цікавим чином перетинатися. --- ## 🚀Виклик -У підготовці до наступного уроку створіть діаграму про різні алгоритми кластеризації, які ви можете виявити та використовувати в робочому середовищі. Які проблеми намагається вирішити кластеризація? +Для підготовки до наступного уроку зробіть діаграму різних алгоритмів кластеризації, які ви могли б дослідити та використовувати у виробничому середовищі. Які проблеми прагне розв’язати кластеризація? -## [Післялекційний тест](https://ff-quizzes.netlify.app/en/ml/) +## [Пост-лекційний тест](https://ff-quizzes.netlify.app/en/ml/) -## Огляд і самостійне навчання +## Огляд та самостійне вивчення -Перед тим як застосовувати алгоритми кластеризації, як ми дізналися, важливо зрозуміти природу вашого набору даних. Читайте більше на цю тему [тут](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html) +Перед застосуванням алгоритмів кластеризації, як ми навчилися, корисно зрозуміти природу вашого датасету. Докладніше про це читайте [тут](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html) -[Ця корисна стаття](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) пояснює різні способи поведінки алгоритмів кластеризації залежно від форми даних. +[Ця корисна стаття](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) проведе вас різними способами поведінки алгоритмів кластеризації, залежно від форми даних. ## Завдання @@ -334,5 +334,7 @@ --- -**Відмова від відповідальності**: -Цей документ було перекладено за допомогою сервісу автоматичного перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, зверніть увагу, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ мовою оригіналу слід вважати авторитетним джерелом. Для критично важливої інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникли внаслідок використання цього перекладу. \ No newline at end of file + +**Відмова від відповідальності**: +Цей документ було перекладено за допомогою сервісу штучного інтелекту для перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ рідною мовою слід вважати авторитетним джерелом. Для критично важливої інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникли внаслідок використання цього перекладу. + \ No newline at end of file