Norėdami užpildyti traukinių ir bandymų rinkinių žodynus, taikydami savo K artimiausių kaimynų (KNN) algoritmą mašininiam mokymuisi naudojant Python, turime laikytis sisteminio požiūrio. Šis procesas apima mūsų duomenų konvertavimą į tinkamą formatą, kurį gali naudoti KNN algoritmas.
Pirmiausia supraskime pagrindinę Python žodynų sąvoką. Žodynas yra netvarkingas raktų ir reikšmių porų rinkinys, kuriame kiekvienas raktas yra unikalus. Mašininio mokymosi kontekste žodynai dažniausiai naudojami duomenų rinkiniams pavaizduoti, kur raktai atitinka funkcijas arba atributus, o reikšmės – atitinkamus duomenų taškus.
Norėdami užpildyti traukinių ir bandymų rinkinių žodynus, turime atlikti šiuos veiksmus:
1. Duomenų paruošimas: pradėkite rinkdami ir paruošdami duomenis mūsų mašininio mokymosi užduočiai. Paprastai tai apima duomenų valymą, trūkstamų verčių tvarkymą ir duomenų pavertimą tinkamu formatu. Įsitikinkite, kad duomenys yra tinkamai pažymėti arba suskirstyti į kategorijas, nes tai būtina atliekant prižiūrimas mokymosi užduotis.
2. Duomenų rinkinio padalijimas: toliau turime padalyti duomenų rinkinį į dvi dalis: traukinio rinkinį ir bandomąjį rinkinį. Traukinių rinkinys bus naudojamas mūsų KNN algoritmui mokyti, o bandymų rinkinys bus naudojamas jo veikimui įvertinti. Šis padalijimas padeda mums įvertinti, kaip gerai mūsų algoritmas apibendrina nematomus duomenis.
3. Funkcijų išskyrimas: kai duomenų rinkinys yra padalintas, turime iš duomenų išskirti atitinkamas funkcijas ir priskirti jas kaip raktus mūsų žodynuose. Funkcijos gali būti skaitinės arba kategoriškos, atsižvelgiant į mūsų duomenų pobūdį. Pavyzdžiui, jei dirbame su vaizdų duomenų rinkiniu, galime išskirti tokias funkcijas kaip spalvų histogramos arba tekstūros aprašai.
4. Reikšmių priskyrimas: Išskleidę funkcijas, kiekvienam mūsų žodyno raktui turime priskirti atitinkamas reikšmes. Šios reikšmės rodo tikruosius duomenų taškus arba egzempliorius mūsų duomenų rinkinyje. Kiekvienas egzempliorius turi būti susietas su atitinkamomis funkcijų reikšmėmis.
5. Traukinio sąstato žodynas: sukurkite traukinio sąstato žodyną. Šio žodyno raktai bus ypatybės, o reikšmės – sąrašai arba masyvai, kuriuose yra atitinkamos kiekvieno traukinio rinkinio egzemplioriaus savybių reikšmės. Pavyzdžiui, jei turime duomenų rinkinį su dviem funkcijomis (amžiu ir pajamomis) ir trimis atvejais, traukinių rinkinio žodynas gali atrodyti taip:
train_set = {'amžius': [25, 30, 35], 'pajamos': [50000, 60000, 70000]}
6. Bandymų rinkinio žodynas: taip pat sukurkite žodyną, kuriame būtų nurodytas bandymo rinkinys. Šio žodyno raktai bus tokie patys kaip ir traukinių rinkinyje, o reikšmės bus sąrašai arba masyvai, kuriuose bus atitinkamos kiekvieno bandomojo rinkinio egzemplioriaus funkcijų reikšmės. Pavyzdžiui, jei turime testų rinkinį su dviem egzemplioriais, testų rinkinio žodynas gali atrodyti taip:
test_set = {'amžius': [40, 45], 'pajamos': [80000, 90000]}
7. Žodynų naudojimas: užpildę traukinių ir bandymų rinkinių žodynus, galime juos naudoti kaip savo KNN algoritmo įvestis. Algoritmas naudos savybių reikšmes iš traukinių rinkinio, kad numatytų arba klasifikuotų testo rinkinio atvejus.
Atlikdami šiuos veiksmus, galime efektyviai užpildyti traukinių ir bandymų rinkinių žodynus, taikydami savo KNN algoritmą mašininiam mokymuisi naudojant Python. Šie žodynai yra mūsų algoritmo mokymo ir įvertinimo pagrindas.
Norėdami užpildyti traukinių ir bandymų rinkinių žodynus, turime paruošti ir padalinti duomenų rinkinį, išskirti atitinkamas funkcijas, priskirti funkcijų reikšmes atitinkamiems raktams žodynuose ir panaudoti šiuos žodynus savo KNN algoritme.
Kiti naujausi klausimai ir atsakymai apie Taikant savo K artimiausių kaimynų algoritmą:
- Kaip apskaičiuoti savo K artimiausių kaimynų algoritmo tikslumą?
- Kokią reikšmę turi paskutinis kiekvieno sąrašo elementas, atspindintis klasę traukinio ir bandymų rinkiniuose?
- Koks yra duomenų rinkinio maišymo tikslas prieš skaidant jį į mokymo ir bandymo rinkinius?
- Kodėl svarbu išvalyti duomenų rinkinį prieš taikant K artimiausių kaimynų algoritmą?