Ji bo ku hûn ferhengên ji bo trênê û komên ceribandinê di çarçoweya sepandina algorîtmaya K-ya cîranên xwe yên nêzîk (KNN) de di fêrbûna makîneyê de bi karanîna Python-ê de bicîh bikin, pêdivî ye ku em rêgezek birêkûpêk bişopînin. Ev pêvajo di veguheztina daneyên me de di nav formatek maqûl de ku dikare ji hêla algorîtmaya KNN ve were bikar anîn veguhezîne.
Pêşîn, bila em têgeha bingehîn a ferhengan di Python de fam bikin. Ferheng berhevokek ne rêzkirî ya cotên key-nirx e, ku her kilîtek yekta ye. Di çarçoweya fêrbûna makîneyê de, ferheng bi gelemperî têne bikar anîn ku danûstendinên danûstendinê nîşan bidin, ku kilît bi taybetmendî an taybetmendiyan re têkildar in, û nirx xalên daneya têkildar temsîl dikin.
Ji bo berhevkirina ferhengên ji bo trên û komên ceribandinê, divê em gavên jêrîn bicîh bînin:
1. Amadekirina Daneyê: Bi berhevkirin û amadekirina daneyan ji bo peywira meya fêrbûna makîneyê dest pê bikin. Ev bi gelemperî paqijkirina daneyan, hilgirtina nirxên winda, û veguheztina daneyan di nav formatek maqûl de vedihewîne. Piştrast bikin ku dane bi rêkûpêk hatine nîşankirin an kategorîzekirin, ji ber ku ev ji bo karên fêrbûna çavdêrîkirî pêdivî ye.
2. Parçekirina Dataset: Paşê, pêdivî ye ku em databasa xwe bikin du beş: koma trênê û koma ceribandinê. Koma trênê dê ji bo perwerdekirina algorîtmaya meya KNN-ê were bikar anîn, dema ku koma testê dê ji bo nirxandina performansa wê were bikar anîn. Ev parçebûn ji me re dibe alîkar ku em binirxînin ka algorîtmaya me çiqasî bi daneyên nedîtî re gelemperî dike.
3. Derxistina taybetmendiyê: Dema ku databas were dabeş kirin, pêdivî ye ku em taybetmendiyên têkildar ji daneyan derxînin û wan di ferhengên xwe de wekî kilît bi cih bikin. Taybetmendî dikarin hejmarî an kategorî bin, li gorî cewhera daneyên me. Mînakî, heke em bi danehevek wêneyan re dixebitin, dibe ku em taybetmendiyên wekî histogramên rengîn an ravekerên tevnvîsê derxînin.
4. Destnîşankirina Nirx: Piştî derxistina taybetmendiyan, divê em di ferhengên xwe de ji her keyek re nirxan veqetînin. Van nirxan xalên daneya rastîn an mînakên di databasa me de destnîşan dikin. Divê her nimûne bi nirxên taybetmendiya xwe ya têkildar re têkildar be.
5. Ferhenga Set Trênê: Ji bo temsîlkirina setê trênê ferhengek çêbikin. Bişkojên vê ferhengê dê taybetmendî bin, û nirx dê lîste an rêzikên ku ji bo her mînakek di koma trênê de nirxên taybetmendiyê yên têkildar dihewîne bin. Mînakî, heke me databasek bi du taybetmendî (temen û dahat) û sê mînak hebin, dibe ku ferhengoka set trênê bi vî rengî xuya bike:
train_set = {'temen': [25, 30, 35], 'hatin': [50000, 60000, 70000]}
6. Ferhenga Set Testê: Bi heman awayî, ferhengek ji bo nûnertiya koma testê çêbike. Bişkojkên vê ferhengê dê heman taybetmendî bin ku di koma trênê de ne, û nirx dê lîste an rêzikên ku ji bo her mînakek di koma ceribandinê de nirxên taybetmendiyê yên têkildar dihewîne bin. Mînakî, heke me komek ceribandinek bi du mînakan re hebe, ferhengoka koma testê dibe ku bi vî rengî xuya bike:
test_set = {'temen': [40, 45], 'hatin': [80000, 90000]}
7. Bikaranîna Ferhengan: Dema ku ferhengên ji bo trênê û setên testê hatin tije kirin, em dikarin wan wekî têketina algorîtmaya xweya KNN-ê bikar bînin. Algorîtm dê nirxên taybetmendiyê ji koma trênê bikar bîne da ku ji bo nimûneyên di koma testê de pêşbîn an dabeşkirinê bike.
Bi şopandina van gavan, em dikarin di çarçoweya sepandina algorîtmaya xweya KNN-ê ya di fêrbûna makîneyê de bi karanîna Python-ê de ferhengên ji bo trênê û komên ceribandinê bi bandor tijî bikin. Van ferhengan ji bo perwerdekirin û nirxandina performansa algorîtmaya me wekî bingehek xizmet dikin.
Ji bo tijîkirina ferhengên ji bo trên û komên testê, divê em databasê amade bikin û perçe bikin, taybetmendiyên têkildar derxînin, nirxên taybetmendiyê li bişkojkên têkildar ên di ferhengan de bidin hev, û van ferhengan di algorîtmaya xweya KNN-ê de bikar bînin.
Pirs û bersivên din ên vê dawiyê di derbarê Serlêdana xweya algorîtmaya cîranên herî nêz K:
- Em çawa rastbûna algorîtmaya K cîranên xwe yên nêzîk hesab dikin?
- Girîngiya hêmana paşîn a di her navnîşê de ku pola di trên û komên ceribandinê de temsîl dike çi ye?
- Armanc ji tevlihevkirina databasê berî ku ew li komên perwerdehî û ceribandinê veqetîne çi ye?
- Çima girîng e ku berî sepandina algorîtmaya K cîranên herî nêzîk paqijkirina databasê were paqij kirin?