9 ključnih algoritama strojnog učenja objašnjenih običnim engleskim jezikom

Strojno učenje mijenja svijet. Google koristi strojno učenje kako bi korisnicima predložio rezultate pretraživanja. Netflix ga koristi da bi vam preporučio filmove za gledanje. Facebook koristi strojno učenje kako bi predložio ljude koje možda poznajete.

Strojno učenje nikada nije bilo važnije. Istodobno je teško razumjeti strojno učenje. Polje je puno žargona. I broj različitih algoritama ML raste svake godine.

Ovaj će vas članak upoznati s temeljnim konceptima na polju strojnog učenja. Točnije, razgovarat ćemo o osnovnim konceptima koji stoje iza 9 najvažnijih algoritama strojnog učenja danas.

Sustavi preporuka

Što su sustavi preporuka?

Sustavi preporuka koriste se za pronalaženje sličnih unosa u skupu podataka.

Možda najčešći stvarni primjer preporuke postoji unutar Netflixa. Točnije, njegova usluga streaminga videa preporučit će predložene filmove i TV emisije na temelju sadržaja koji ste već gledali.

Drugi sustav preporuka je Facebookova značajka "Ljudi koje možda poznajete", koja vam predlaže moguće prijatelje na temelju vašeg postojećeg popisa prijatelja.

Potpuno razvijeni i implementirani sustavi preporuka izuzetno su sofisticirani. Također su vrlo resursno zahtjevni.

Sustavi preporuka i linearna algebra

Potpuno razvijeni sustavi preporuka zahtijevaju duboku pozadinu linearne algebre za izgradnju od nule.

Zbog toga u ovom odjeljku mogu postojati koncepti koje ne razumijete ako nikada prije niste proučavali linearnu algebru.

Ne brinite se - scikit-learn Python knjižnica olakšava izgradnju sustava preporuka. S0, za izgradnju sustava preporuka u stvarnom svijetu ne treba vam puno pozadine linearne algebre.

Kako funkcioniraju sustavi preporuka?

Dvije su glavne vrste sustava preporuka:

  • Sustavi preporuka temeljeni na sadržaju
  • Sustavi preporuke za filtriranje u suradnji

Sustavi preporuka temeljeni na sadržaju daju vam preporuke na temelju sličnosti predmeta koje ste već koristili. Ponašaju se točno onako kako biste očekivali da se ponaša sustav preporuka.

Sustavi preporuka za filtriranje u suradnji daju preporuke na temelju znanja o interakciji korisnika s predmetima. Rečeno drugačije, oni koriste mudrost svjetine. (Otuda i naziv "suradnik" u njegovom imenu.)

U stvarnom su svijetu sustavi preporuka za filtriranje mnogo češći od sustava temeljenih na sadržaju. To je prije svega zato što obično daju bolje rezultate. Neki praktičari također smatraju da su sustavi preporuka za zajedničko filtriranje lakše razumljivi.

Sustavi preporuka za filtriranje u suradnji također imaju jedinstvenu značajku koja nedostaje sustavima temeljenim na sadržaju. Oni, naime, imaju mogućnost samostalno naučiti značajke.

To znači da čak mogu početi prepoznavati sličnosti između predmeta na temelju atributa za koje im niste ni rekli da razmotre.

Postoje dvije potkategorije unutar suradničkog filtriranja:

  • Zajedničko filtriranje zasnovano na memoriji
  • Suradničko filtriranje temeljeno na modelu

Ne morate znati razlike između ove dvije vrste suradničkih sustava za filtriranje da biste bili uspješni u strojnom učenju. Dovoljno je prepoznati da postoji više vrsta.

Završetak odjeljka

Evo kratkog sažetka onoga što smo raspravljali o sustavima preporuka u ovom vodiču:

  • Primjeri sustava preporuka u stvarnom svijetu
  • Različite vrste sustava za preporuke i kako se sustavi za zajedničko filtriranje češće koriste od sustava za preporuke na temelju sadržaja
  • Povezanost sustava preporuka i linearne algebre

Linearna regresija

Linearna regresija koristi se za predviđanje nekih yvrijednosti na temelju vrijednosti drugog skupa xvrijednosti.

Povijest linearne regresije

Linearnu regresiju stvorio je Francis Galton 1800-ih.

Galton je bio znanstvenik koji je proučavao odnos roditelja i djece. Točnije, Galton je istraživao odnos između visine očeva i visine njihovih sinova.

Galtonovo prvo otkriće bilo je da su sinovi uglavnom bili otprilike visoki kao i njihovi očevi. To nije iznenađujuće.

Kasnije je Galton otkrio nešto puno zanimljivije. Visina sina obično je bila bliža ukupnoj prosječnoj visini svih ljudi nego njegovom vlastitom ocu .

Galton je ovom fenomenu dao ime: regresija . Preciznije, rekao je "Visina očeva sina ima tendenciju nazadovanja (ili skretanja) prema srednjoj (prosječnoj) visini".

To je dovelo do čitavog polja u statistici i strojnom učenju koje se naziva regresija.

Matematika linearne regresije

Kada stvaramo regresijski model, sve što pokušavamo učiniti je povući crtu koja je što bliža svakoj točki u skupu podataka.

Tipičan primjer toga je "metoda najmanjih kvadrata" linearne regresije, koja izračunava samo blizinu crte u smjeru gore-dolje.

Evo primjera koji će vam to ilustrirati:

Primjer matematike iza regresije najmanje kvadrata

Kada kreirate regresijski model, vaš je krajnji proizvod jednadžba pomoću koje možete predvidjeti y-vrijednost x-vrijednosti, a da zapravo unaprijed ne znate y-vrijednost.

Logistička regresija

Logistička regresija slična je linearnoj regresiji, osim što umjesto izračuna numeričke yvrijednosti procjenjuje kojoj kategoriji pripada točka podataka.

Što je logistička regresija?

Logistička regresija model je strojnog učenja koji se koristi za rješavanje problema klasifikacije.

Evo nekoliko primjera problema klasifikacije strojnog učenja:

  • Neželjena e-pošta (neželjena ili neželjena?)
  • Zahtjevi za osiguranje automobila (otpis ili popravak?)
  • Dijagnoza bolesti

Svaki od klasifikacijskih problema ima točno dvije kategorije, što ih čini primjerima binarnih klasifikacijskih problema.

Logistička regresija dobro je pogodna za rješavanje binarnih klasifikacijskih problema - različitim kategorijama dodijelimo vrijednost 0i 1odnosno.

Zašto nam je potrebna logistička regresija? Budući da ne možete koristiti linearni regresijski model za izradu binarnih klasifikacija. To ne bi dovelo do dobrog uklapanja, jer pokušavate uklopiti ravnu liniju kroz skup podataka sa samo dvije moguće vrijednosti.

Ova vam slika može pomoći da shvatite zašto su modeli linearne regresije slabo prikladni za probleme binarne klasifikacije:

Klasifikacija linearne regresije

Na ovoj slici y-axispredstavlja vjerojatnost da je tumor zloćudan. Suprotno tome, vrijednost 1-ypredstavlja vjerojatnost da tumor nije zloćudan. Kao što vidite, model linearne regresije slabo predvidja ovu vjerojatnost za većinu promatranja u skupu podataka.

Zbog toga su logistički modeli regresije korisni. Imaju zavoj na svojoj liniji koja najbolje odgovara, što ih čini mnogo pogodnijima za predviđanje kategoričnih podataka.

Evo primjera koji uspoređuje linearni regresijski model s logističkim regresijskim modelom koristeći iste podatke o treningu:

Linearna regresija vs logistička regresija

Sigmoidna funkcija

Razlog zašto logistički regresijski model ima zavoj u krivulji je taj što se ne izračunava pomoću linearne jednadžbe. Umjesto toga, modeli logističke regresije grade se pomoću Sigmoidne funkcije (koja se također naziva Logistička funkcija zbog upotrebe u logističkoj regresiji).

Nećete morati pamtiti Sigmoidnu funkciju da biste bili uspješni u strojnom učenju. Uz sve to, korisno je imati malo razumijevanja za njegov izgled.

Jednadžba je prikazana u nastavku:

Jednačina sigmoida

Glavna karakteristika sigmoidne funkcije koju vrijedi razumjeti je sljedeća: bez obzira koju vrijednost u nju unesete, ona će uvijek generirati izlaz između 0 i 1.

Korištenje modela logističke regresije za izradu predviđanja

Da biste koristili model linearne regresije za izradu predviđanja, općenito trebate odrediti graničnu točku. Ova granična točka je tipično 0.5.

Upotrijebimo naš primjer dijagnoze raka s naše ranije slike da bismo vidjeli ovo načelo u praksi. Ako logistički regresijski model daje vrijednost ispod 0,5, tada je podatkovna točka kategorizirana kao nemaligni tumor. Slično tome, ako Sigmoidna funkcija daje vrijednost iznad 0,5, tada bi se tumor klasificirao kao maligni.

Korištenje matrice zbrke za mjerenje izvedbe logističke regresije

Matrica zbrke može se koristiti kao alat za usporedbu istinskih pozitivnih, istinskih negativnih, lažno pozitivnih i lažno negativnih rezultata u strojnom učenju.

Matrice zbrke posebno su korisne kada se koriste za mjerenje performansi modela logističke regresije. Evo primjera kako bismo mogli koristiti matricu zabune:

Primjer matrice zbrke

Matrica zbrke korisna je za procjenu je li vaš model posebno slab u određenom kvadrantu matrice zbrke. Kao primjer, mogao bi imati neobično velik broj lažno pozitivnih rezultata.

Također može biti korisno u određenim aplikacijama kako biste bili sigurni da vaš model dobro funkcionira u posebno opasnoj zoni matrice zbrke.

Na primjer, u ovom primjeru karcinoma trebali biste biti vrlo sigurni da vaš model nema vrlo visoku stopu lažnih negativa, jer bi to značilo da netko ima zloćudni tumor koji ste pogrešno klasificirali kao nemaligni.

Završetak odjeljka

U ovom ste odjeljku prvi put bili izloženi modelima logističkog regresijskog strojnog učenja.

Evo kratkog sažetka onoga što ste naučili o logističkoj regresiji:

  • Vrste klasifikacijskih problema koje je prikladno riješiti uporabom modela logističke regresije
  • Da logistička funkcija (koja se naziva i Sigmoidna funkcija) uvijek daje vrijednost između 0 i 1
  • Kako koristiti granične točke za predviđanje pomoću modela strojnog učenja logističke regresije
  • Zašto su matrice zbrke korisne za mjerenje izvedbe modela logističke regresije

K-Najbliži susjedi

Algoritam K-najbližih susjeda može vam pomoći u rješavanju problema klasifikacije gdje postoji više od dvije kategorije.

Što je K-Najbliži susjedi algoritam?

Algoritam K-najbližih susjeda algoritam je klasifikacije koji se temelji na jednostavnom principu. Zapravo je načelo toliko jednostavno da ga je najbolje razumjeti na primjeru.

Zamislite da ste imali podatke o visini i težini nogometaša i košarkaša. Algoritam K-najbližih susjeda može se koristiti za predviđanje je li novi sportaš ili nogometaš ili košarkaš.

Da bi to učinio, algoritam K-najbližih susjeda identificira Kpodatkovne točke koje su najbliže novom promatranju.

Sljedeća slika to vizualizira s K vrijednošću 3:

Vizualizacija k najbližih susjeda

Na ovoj su slici nogometaši označeni plavim točkama podataka, a košarkaši narančastim točkama. Točka podataka koju pokušavamo klasificirati označena je zelenom.

Budući da su većina (2 od 3) podatkovnih točaka ormara prema novim podatkovnim točkama plavi nogometaši, tada će algoritam K-najbližih susjeda predvidjeti da je nova podatkovna točka također nogometaš.

Koraci za izgradnju algoritma K-najbližih susjeda

Opći koraci za izgradnju algoritma najbližih susjeda K su:

  1. Pohranite sve podatke
  2. Izračunajte euklidsku udaljenost od nove podatkovne točke xdo svih ostalih točaka u skupu podataka
  3. Poredajte točke u skupu podataka po redoslijedu povećanja udaljenosti od x
  4. Predvidite upotrebu iste kategorije kao i većina Knajbližih podatakax

Važnost K u algoritmu K-najbližih susjeda

Iako to možda nije očito od početka, promjena vrijednosti Kalgoritma najbližih susjeda K promijenit će kategoriji kojoj je dodijeljena nova točka.

Točnije, ako imate vrlo malu Kvrijednost, vaš će model savršeno predvidjeti vaše podatke o treningu i loše predvidjeti vaše testne podatke. Slično tome, previsoka Kvrijednost učinit će vaš model nepotrebno složenim.

Sljedeća vizualizacija izvrsno ilustrira ovo:

K vrijednost i stope pogrešaka

Prednosti i nedostaci algoritma K-Najbliži susjedi

Da bih zaključio ovaj uvod u algoritam K-najbližih susjeda, želio sam ukratko raspraviti neke prednosti i nedostatke korištenja ovog modela.

Evo nekoliko glavnih prednosti algoritma K-najbližih susjeda:

  • Algoritam je jednostavan i lako razumljiv
  • Trivijalno je trenirati model na novim podacima o treningu
  • Radi s bilo kojim brojem kategorija u problemu klasifikacije
  • Lako je dodati više podataka u skup podataka
  • Model prihvaća samo dva parametra: Ki metriku udaljenosti koju želite koristiti (obično euklidska udaljenost)

Slično tome, evo nekoliko glavnih nedostataka algoritma:

  • Izračun predviđanja velik je računski trošak jer morate razvrstati cjelokupni skup podataka
  • Ne funkcionira dobro s kategorijskim značajkama

Završetak odjeljka

Evo kratkog sažetka onoga što ste upravo saznali o algoritmu k-najbližih susjeda:

  • Primjer problema s klasifikacijom (nogometaši protiv košarkaša) koji bi algoritam najbližih susjeda mogao riješiti
  • Kako K-najbliži susjedi koriste euklidsku udaljenost susjednih podatkovnih točaka za predviđanje kojoj kategoriji pripada nova podatkovna točka
  • Zašto vrijednost Kpitanja za predviđanje
  • Prednosti i nedostaci upotrebe algoritma K-najbližih susjeda

Stabla odlučivanja i slučajne šume

Stabla odlučivanja i šume slučajnih vrsta su primjeri metoda drveća.

Preciznije, stabla odlučivanja modeli su strojnog učenja koji se koriste za predviđanje, prolazeći kroz svaku značajku u skupu podataka, pojedinačno. Slučajne šume ansambli su stabala odlučivanja koja su koristila slučajne redoslijede obilježja u skupovima podataka.

Što su metode drveća?

Prije nego što istražimo teoretske osnove metoda stabla u strojnom učenju, korisno je započeti s primjerom.

Zamislite da svaki ponedjeljak igrate košarku. Štoviše, uvijek pozovete istog prijatelja da se dođe igrati s vama.

Ponekad prijatelj zapravo dođe. Ponekad nemaju.

Odluka hoće li doći ili ne ovisi o brojnim čimbenicima, poput vremena, temperature, vjetra i umora. Počinjete primjećivati ​​ove značajke i počinjete ih pratiti zajedno s odlukom vašeg prijatelja hoće li igrati ili ne.

Pomoću ovih podataka možete predvidjeti hoće li se vaš prijatelj pojaviti ili neće igrati košarku. Jedna od tehnika koju biste mogli koristiti je stablo odluke. Evo kako bi izgledalo ovo stablo odluka:

Primjer stabla odluke

Svako stablo odluke ima dvije vrste elemenata:

  • Nodes: mjesta na kojima se stablo dijeli prema vrijednosti nekog atributa
  • Edges: ishod podjele na sljedeći čvor

Možete vidjeti na slici iznad da postoje čvorovi za outlook, humidityi windy. Postoji prednost za svaku potencijalnu vrijednost svakog od tih atributa.

Evo još dva dijela terminologije stabla odluka koje biste trebali razumjeti prije nego što nastavite:

  • Root: čvor koji izvodi prvo dijeljenje
  • Leaves: terminalni čvorovi koji predviđaju konačni ishod

Sada imate osnovno razumijevanje što su stabla odlučivanja. O tome kako graditi stabla odlučivanja od nule naučit ćemo u sljedećem odjeljku.

Kako izraditi stabla za odlučivanje od nule

Graditi stabla za donošenje odluka teže je nego što biste mogli zamisliti. To je zato što je odlučivanje o značajkama na kojima ćete podijeliti podatke (što je tema koja pripada poljima Entropija i Dobitak informacija) matematički složen problem.

Da bi se pozabavili tim problemom, praktičari strojnog učenja obično koriste mnoga stabla odlučivanja koristeći slučajni uzorak značajki odabranih kao split.

Rečeno drugačije, novi slučajni uzorak značajki odabire se za svako pojedino stablo pri svakom pojedinačnom dijeljenju. Ova se tehnika naziva slučajnim šumama .

Općenito, praktičari obično odabiru veličinu slučajnog uzorka obilježja (označeno m) da bude kvadratni korijen broja ukupnih obilježja u skupu podataka (označeno p). Da bude jezgrovit, mkvadratni je korijen p, a zatim se slučajnim odabirom određuje određena značajka m.

Ako ovo trenutno nema potpunog smisla, ne brinite. Bit će jasnije kad na kraju izgradite svoj prvi slučajni model šume.

Blagodati korištenja slučajnih šuma

Zamislite da radite sa skupom podataka koji ima jednu vrlo jaku značajku. Rečeno drugačije, skup podataka ima jednu značajku koja mnogo više predviđa konačni ishod od ostalih značajki u skupu podataka.

Ako ručno izrađujete stabla odluka, ima smisla koristiti ovu značajku kao gornji dio stabla odluka. To znači da ćete imati više stabala čija su predviđanja visoko povezana.

To želimo izbjeći jer uzimanje prosjeka visoko koreliranih varijabli ne značajno smanjuje varijancu. Slučajnim odabirom značajki za svako stablo u slučajnoj šumi, stabla postaju dekorelirana i odstupanje rezultirajućeg modela smanjuje se. Ova dekorelacija glavna je prednost korištenja slučajnih šuma u odnosu na ručno izrađena stabla odlučivanja

Završetak odjeljka

Evo kratkog sažetka onoga što ste naučili o stablima odlučivanja i slučajnim šumama u ovom članku:

  • Primjer problema koji biste mogli predvidjeti pomoću stabala odlučivanja
  • Elementi stabla odlučivanja: nodes, edges, roots, ileaves
  • Kako uzimanje slučajnih uzoraka značajki stabla odlučivanja omogućuje nam izgradnju slučajne šume
  • Zašto korištenje slučajnih šuma za dekoraciju varijabli može biti korisno za smanjenje varijance vašeg konačnog modela

Podrška vektorskih strojeva

Strojevi s vektorskom potporom algoritmi su za klasifikaciju (iako bi se, tehnički gledano, mogli koristiti i za rješavanje problema regresije) koji skup podataka dijele u kategorije na temelju rezanja kroz najširi jaz između kategorija. Ovaj će koncept za trenutak biti jasniji kroz vizualizacije.

Što su strojevi za vektorsku podršku?

Strojevi s vektorskom potporom - ili skraćeno SVM - su nadzirani modeli strojnog učenja s pripadajućim algoritmima učenja koji analiziraju podatke i prepoznaju obrasce.

Strojevi s vektorima potpore mogu se koristiti i za probleme klasifikacije i za probleme regresije. U ovom ćemo članku posebno razmotriti upotrebu strojeva vektora potpore za rješavanje problema klasifikacije.

Kako djeluju vektorski strojevi?

Istražimo kako stvarno rade vektorski strojevi.

S obzirom na niz primjera treninga - od kojih je svaki označen da pripada jednoj od dvije kategorije - algoritam strojnog treninga vektora potpore gradi model. Ovaj model nove primjere svrstava u jednu od dvije kategorije. To čini stroj vektora potpore ne-vjerojatnim binarnim linearnim klasifikatorom.

SVM koristi geometriju za kategorička predviđanja.

Točnije, SVM model preslikava podatkovne točke kao točke u prostoru i dijeli odvojene kategorije tako da ih dijeli što širi otvoreni jaz. Predviđa se da će nove podatkovne točke pripadati kategoriji na temelju toga kojoj strani jaza pripadaju.

Evo primjera vizualizacije koja vam može pomoći da razumijete intuiciju iza vektorskih strojeva:

Kao što vidite, ako nova podatkovna točka padne na lijevu stranu zelene crte, bit će označena crvenom kategorijom. Slično tome, ako nova podatkovna točka padne na desnu stranu zelene crte, bit će označena kao da pripada plavoj kategoriji.

Ova se zelena linija naziva hiperravan , što je važan dio rječnika za algoritme vektorskih strojeva za podršku.

Pogledajmo drugačiji vizualni prikaz stroja s vektorima potpore:

Na ovom dijagramu hiperravan je označen kao optimalni hiperravan . Teorija strojeva vektora potpore definira optimalnu hiperravninu kao onu koja maksimizira marginu između najbližih podatkovnih točaka iz svake kategorije.

Kao što vidite, linija margine zapravo dotiče tri točke podataka - dvije iz crvene kategorije i jednu iz plave kategorije. Te podatkovne točke koje dodiruju crte margina nazivaju se vektori potpore i odatle potječu vektorski strojevi potpore.

Završetak odjeljka

Evo kratkog sažetka onoga što ste upravo saznali o vektorskim strojevima za podršku:

  • Da su vektorski strojevi potpore primjer nadziranog algoritma strojnog učenja
  • Takvi strojevi vektora potpore mogu se koristiti za rješavanje problema klasifikacije i regresije
  • Kako vektorski strojevi podrške kategoriziraju podatkovne točke pomoću hiperravnine koja maksimizira marginu između kategorija u skupu podataka
  • Da se točke podataka koje dodiruju crte margina u stroju s vektorima potpore nazivaju vektorima potpore . Iz ovih podatkovnih točaka potječu njihovi strojevi s vektorskim potporama.

K-znači klasteriranje

K-znači klasterizacija algoritam je strojnog učenja koji vam omogućuje prepoznavanje segmenata sličnih podataka unutar skupa podataka.

Što je K-Means klasteriranje?

K-znači klasteriranje je nenadgledani algoritam strojnog učenja.

To znači da uzima neoznačene podatke i pokušat će grupirati slične skupine opažanja unutar vaših podataka.

K-znači algoritmi klasteriranja vrlo su korisni za rješavanje problema iz stvarnog svijeta. Evo nekoliko slučajeva korištenja ovog modela strojnog učenja:

  • Segmentacija kupaca za marketinške timove
  • Klasifikacija dokumenata
  • Optimizacija rute isporuke za tvrtke poput Amazona, UPS-a ili FedExa
  • Identificiranje i reagiranje na zločinačka središta u gradu
  • Profesionalna sportska analitika
  • Predviđanje i sprečavanje cyber kriminala

Primarni cilj K znači algoritam klasteriranja je podijeliti skup podataka u zasebne skupine tako da su opažanja unutar svake skupine međusobno slična.

Evo vizualnog prikaza kako to izgleda u praksi:

Vizualizacija K znači algoritam klastera

Istražit ćemo matematiku iza klasteriranja K-sredstava u sljedećem odjeljku ovog vodiča.

Kako funkcioniraju algoritmi klasteriranja K-znakova?

Prvi korak u izvođenju algoritma klasteriranja K-znači je odabir broja klastera u koje želite podijeliti svoje podatke. Ovaj broj klastera Kvrijednost je na koju se navodi ime algoritma.

Odabir Kvrijednosti unutar algoritma klasteriranja K-znači važan je izbor. O tome kako odabrati odgovarajuću vrijednost razgovarat ćemo Kkasnije u ovom članku.

Dalje, svaku točku u svom skupu podataka morate nasumično dodijeliti slučajnom klasteru. To daje naš početni zadatak na kojem zatim izvodite sljedeću iteraciju dok se klasteri ne prestanu mijenjati:

  • Izračunajte centroid svakog klastera uzimajući srednji vektor točaka unutar tog klastera
  • Ponovno dodijelite svaku podatkovnu točku klasteru koji ima najbliži centroid

Evo animacije kako ovo u praksi funkcionira za algoritam klasteriranja K-značenja s Kvrijednošću 3. Možete vidjeti težište svake nakupine predstavljeno crnim +znakom.

Vizualizacija K znači algoritam klastera

Kao što vidite, ova se iteracija nastavlja sve dok se klasteri ne prestanu mijenjati - što znači da se podatkovne točke više ne dodjeljuju novim klasterima.

Odabir odgovarajuće vrijednosti K za K znači algoritme klasteriranja

Odabir odgovarajuće Kvrijednosti za algoritam klasteriranja K-znači zapravo je prilično teško. Ne postoji "pravi" odgovor za odabir "najbolje" Kvrijednosti.

Jedna metoda koju stručnjaci strojnog učenja često koriste naziva se metoda lakta .

Da biste koristili metodu lakta, prvo što trebate je izračunati zbroj kvadrata pogrešaka (SSE) za vaš algoritam klasteriranja K-znači za grupu Kvrijednosti. SSE u K znači da je algoritam klasteriranja definiran kao zbroj kvadratne udaljenosti između svake podatkovne točke u klasteru i težišta te klastera.

Kao primjer ovog koraka, možda ćete izračunati jugoistočne za Kvrijednosti 2, 4, 6, 8, i 10.

Dalje ćete htjeti generirati grafikon SSE prema tim različitim Kvrijednostima. Vidjet ćete da se pogreška smanjuje kako se Kvrijednost povećava.

To ima smisla - što više kategorija stvorite unutar skupa podataka, to je vjerojatnije da je svaka podatkovna točka blizu središta svog specifičnog klastera.

S tim u vezi, ideja iza metode lakta je odabrati vrijednost Kpri kojoj SSE naglo usporava stopu pada. Ovo naglo smanjenje stvara elbowgrafikon.

Kao primjer, ovdje je grafikon SSE protiv K. U ovom slučaju, metoda lakta predlaže upotrebu Kvrijednosti približno 6.

Vizualizacija K znači algoritam klastera

Ono što 6je najvažnije, samo je procjena dobre vrijednosti Kupotrebe. U Kalgoritmu klasteriranja K-znači nikad ne postoji "najbolja" vrijednost. Kao i kod mnogih stvari na polju strojnog učenja, ovo je odluka koja ovisi o situaciji u velikoj mjeri.

Završetak odjeljka

Evo kratkog sažetka onoga što ste naučili u ovom članku:

  • Primjeri nenadziranih problema strojnog učenja koje je algoritam grupiranja K-znači sposoban riješiti
  • Osnovni principi što je algoritam klasteriranja K-znači
  • Kako funkcionira algoritam klasteriranja K-znači
  • Kako koristiti metodu lakta za odabir odgovarajuće vrijednosti Ku modelu grupiranja K-značenja

Analiza glavne komponente

Analiza glavnih komponenata koristi se za pretvaranje skupa podataka s više značajki u transformirani skup podataka s manje značajki, pri čemu je svaka nova značajka linearna kombinacija već postojećih značajki. Ovaj transformirani skup podataka želi s puno više jednostavnosti objasniti većinu varijance izvornog skupa podataka.

Što je analiza glavnih komponenata?

Analiza glavnih komponenata tehnika je strojnog učenja koja se koristi za ispitivanje međusobnih odnosa skupova varijabli.

Rečeno drugačije, analiza glavnih komponenata proučava skupove varijabli kako bi se identificirala temeljna struktura tih varijabli.

Analiza glavnih komponenata ponekad se naziva i faktorska analiza .

Na temelju ovog opisa možda mislite da je analiza glavnih komponenata prilično slična linearnoj regresiji.

To nije slučaj. Zapravo, ove dvije tehnike imaju neke važne razlike.

Razlike između linearne regresije i analize glavnih komponenata

Linearna regresija određuje liniju koja najbolje odgovara skupu podataka. Analiza glavne komponente određuje nekoliko ortogonalnih linija koje najbolje odgovaraju skupu podataka.

Ako vam nije poznat pojam pravokutni , to samo znači da su crte pod pravim kutom (90 stupnjeva) jedna na drugu - poput Sjevera, Istoka, Juga i Zapada na karti.

Razmotrimo primjer koji će vam pomoći da ovo bolje razumijete.

Analiza glavne komponente

Pogledajte oznake osi na ovoj slici.

Na ovoj je slici glavna komponenta x osi primjera 73% varijance u skupu podataka. Glavna komponenta osi y objašnjava oko 23% varijance u skupu podataka.

To znači da 4% varijance u skupu podataka ostaje neobjašnjeno. Taj biste broj mogli dodatno smanjiti dodavanjem više glavnih komponenata u svoju analizu.

Završetak odjeljka

Evo kratkog sažetka onoga što ste naučili o analizi glavnih komponenata u ovom vodiču:

  • Analiza glavne komponente pokušava pronaći ortogonalne čimbenike koji određuju varijabilnost u skupu podataka
  • Razlike između analize glavnih komponenata i linearne regresije
  • Kako izgledaju ortogonalne glavne komponente kad se vizualiziraju unutar skupa podataka
  • To dodavanje više glavnih komponenti može vam pomoći da objasnite više odstupanja u skupu podataka