9 keskeistä koneoppimisalgoritmia selitettynä tavallisella englanniksi

Koneoppiminen muuttaa maailmaa. Google ehdottaa käyttäjille hakutuloksia koneoppimisen avulla. Netflix käyttää sitä suosittelemaan elokuvia katseluun. Facebook ehdottaa koneoppimista ihmisille, jotka saatat tuntea.

Koneoppiminen ei ole koskaan ollut tärkeämpää. Samanaikaisesti koneoppimisen ymmärtäminen on vaikeaa. Kenttä on täynnä ammattikieltä. Ja erilaisten ML-algoritmien määrä kasvaa vuosittain.

Tässä artikkelissa esitellään koneoppimisen peruskäsitteet. Tarkemmin sanottuna keskustelemme nykyisen 9 tärkeimmän koneoppimisalgoritmin taustalla olevista peruskäsitteistä.

Suositusjärjestelmät

Mitä ovat suositusjärjestelmät?

Suositusjärjestelmiä käytetään vastaavien merkintöjen löytämiseen tietojoukosta.

Ehkä yleisin todellinen esimerkki suosituksesta on Netflixissä. Tarkemmin sanottuna sen videon suoratoistopalvelu suosittelee elokuvien ja TV-ohjelmien ehdotuksia jo katsomasi sisällön perusteella.

Toinen suositusjärjestelmä on Facebookin "Ihmiset, joita saatat tuntea" -ominaisuus, joka ehdottaa sinulle mahdollisia ystäviä olemassa olevan ystäväluettelosi perusteella.

Täysin kehitetyt ja käyttöönotetut suositusjärjestelmät ovat erittäin kehittyneitä. Ne ovat myös erittäin resursseja kuluttavia.

Suositusjärjestelmät ja lineaarinen algebra

Täysimittaiset suositusjärjestelmät edellyttävät syvää lineaarisen algebran taustaa rakentamaan tyhjästä.

Tästä syystä tässä osassa voi olla käsitteitä, joita et ymmärrä, jos et ole koskaan opiskellut lineaarista algebraa aiemmin.

Älä huoli - scikit-learn Python -kirjasto tekee suositusjärjestelmien rakentamisesta erittäin helppoa. S0 et tarvitse paljon lineaarista algebra-taustaa reaalimaailman suositusjärjestelmien rakentamiseen.

Kuinka suositusjärjestelmät toimivat?

Suositusjärjestelmiä on kahta päätyyppiä:

  • Sisältöpohjaiset suositusjärjestelmät
  • Yhteistoiminnalliset suodatussuositusjärjestelmät

Sisältöpohjaiset suositusjärjestelmät antavat sinulle suosituksia, jotka perustuvat tuotteiden jo samankaltaisiin kohteisiin, joita olet jo käyttänyt. He käyttäytyvät täsmälleen samalla tavalla kuin odotat suositusjärjestelmän käyttäytyvän.

Yhteistoiminnalliset suodatussuositussysteemit tuottavat suosituksia, jotka perustuvat tietoon käyttäjän vuorovaikutuksesta esineiden kanssa. Toisin sanoen he käyttävät väkijoukkojen viisautta. (Tästä syystä nimessä "yhteisöllinen".)

Todellisessa maailmassa yhteistyösuodatussuositusjärjestelmät ovat paljon yleisempiä kuin sisältöpohjaiset järjestelmät. Tämä johtuu pääasiassa siitä, että ne antavat yleensä parempia tuloksia. Jotkut harjoittajat pitävät myös yhteistyösuodatussuositusjärjestelmiä helpommin ymmärrettävinä.

Yhteistoiminnallisilla suodatussuositussysteemeillä on myös ainutlaatuinen ominaisuus, että sisältöpohjaiset järjestelmät puuttuvat. Heillä on nimittäin kyky oppia ominaisuuksia yksin.

Tämä tarkoittaa, että he voivat jopa alkaa tunnistaa kohteiden välisiä yhtäläisyyksiä ominaisuuksien perusteella, joita et ole edes käskenyt heidän harkita.

Yhteistyösuodatuksessa on kaksi alaluokkaa:

  • Muistipohjainen yhteistyösuodatus
  • Mallipohjainen yhteistyösuodatus

Sinun ei tarvitse tietää eroja näiden kahden yhteistyösuodatussuositusjärjestelmän välillä, jotta koneoppiminen onnistuu. Riittää, kun tunnustetaan, että on olemassa useita tyyppejä.

Leikkaus

Tässä on lyhyt yhteenveto siitä, mistä keskustelimme suositusjärjestelmistä tässä opetusohjelmassa:

  • Esimerkkejä todellisen maailman suositusjärjestelmistä
  • Erilaiset suositusjärjestelmät ja se, miten yhteistyösuodatusjärjestelmiä käytetään yleisemmin kuin sisältöpohjaiset suositusjärjestelmät
  • Suositusjärjestelmien ja lineaarisen algebran suhde

Lineaarinen regressio

Lineaarista regressiota käytetään ennustamaan joitain yarvoja toisen arvojoukon xarvon perusteella.

Lineaarisen regression historia

Lineaarisen regressio luotiin 1800-luvulla Francis Galton.

Galton oli tutkija, joka tutki vanhempien ja lasten suhdetta. Tarkemmin sanottuna Galton tutki isien ja heidän poikiensa korkeuksien suhdetta.

Galtonin ensimmäinen löytö oli, että pojat olivat yleensä suunnilleen yhtä pitkiä kuin heidän isänsä. Tämä ei ole yllättävää.

Myöhemmin Galton löysi jotain paljon mielenkiintoisempaa. Pojan pituus oli yleensä lähempänä kaikkien ihmisten keskimääräistä keskipituutta kuin hänen isänsä .

Galton antoi tälle ilmiölle nimen regressio . Erityisesti hän sanoi: "Isän pojan korkeudella on taipumus taantua (tai ajautua kohti) keskimääräistä (keskimääräistä) korkeutta".

Tämä johti koko tilastojen ja koneoppimisen alaan, jota kutsutaan regressioksi.

Lineaarisen regressioiden matematiikka

Regressiomallia luodessamme yritämme vain piirtää viivan, joka on mahdollisimman lähellä tietojoukon kutakin pistettä.

Tyypillinen esimerkki tästä on "pienimmän neliösumman menetelmä" lineaarisesta regressiosta, joka laskee vain viivan läheisyyden ylös- ja alaspäin.

Tässä on esimerkki tämän havainnollistamiseksi:

Esimerkki matematiikan pienimmän neliösumman regressiosta

Kun luot regressiomallin, lopputuotteesi on yhtälö, jonka avulla voit ennustaa x-arvon y-arvon tietämättä itse asiassa y-arvoa etukäteen.

Logistinen regressio

Logistinen regressio on samanlainen kuin lineaarinen regressio, paitsi että yse arvioi numeerisen arvon laskemisen sijasta, mihin luokkaan datapiste kuuluu.

Mikä on logistinen regressio?

Logistinen regressio on koneoppimismalli, jota käytetään luokitusongelmien ratkaisemiseen.

Tässä on muutama esimerkki koneoppimisen luokitusongelmista:

  • Roskapostiviestit (roskaposti vai ei roskapostia?)
  • Autovakuutuskorvaukset (poistot tai korjaukset?)
  • Taudin diagnoosi

Jokaisella luokitteluongelmalla on täsmälleen kaksi luokkaa, mikä tekee niistä esimerkkejä binääriluokittelun ongelmista.

Logistinen regressio soveltuu hyvin binääriluokitteluongelmien ratkaisemiseen - annamme vain luokille arvon 0ja 1vastaavasti.

Miksi tarvitsemme logistista regressiota? Koska et voi käyttää lineaarista regressiomallia binääriluokituksen ennustamiseen. Se ei johtaisi hyvään sovitukseen, koska yrität sovittaa suoran viivan tietojoukon läpi, jossa on vain kaksi mahdollista arvoa.

Tämä kuva voi auttaa sinua ymmärtämään, miksi lineaariset regressiomallit soveltuvat huonosti binääriluokitteluongelmiin:

Lineaarinen regressioluokitus

Tässä kuvassa y-axisedustaa todennäköisyyttä, että kasvain on pahanlaatuinen. Kääntäen arvo 1-yedustaa todennäköisyyttä, että kasvain ei ole pahanlaatuinen. Kuten näette, lineaarinen regressiomalli tekee huonon työn tämän todennäköisyyden ennustamiseksi useimmille tietojoukon havainnoille.

Siksi logistiset regressiomallit ovat hyödyllisiä. Heillä on taipumus parhaaseen linjaansa, mikä tekee niistä paljon paremmin ennustamaan kategorisia tietoja.

Tässä on esimerkki, jossa verrataan lineaarista regressiomallia logistiseen regressiomalliin käyttäen samoja harjoitustietoja:

Lineaarinen regressio vs logistinen regressio

Sigmoid-toiminto

Syy, miksi logistisen regressiomallin käyrä on taipunut, johtuu siitä, että sitä ei lasketa lineaarisen yhtälön avulla. Sen sijaan logistiset regressiomallit rakennetaan käyttämällä Sigmoid-funktiota (jota kutsutaan myös logistiseksi funktioksi, koska sitä käytetään logistisessa regressiossa).

Sinun ei tarvitse muistaa Sigmoid-toimintoa menestyäksesi koneoppimisessa. Tästä huolimatta on hyödyllistä ymmärtää sen ulkonäköä.

Yhtälö on esitetty alla:

Sigmoid-yhtälö

Ymmärtämisen arvoisen Sigmoid-funktion pääominaisuus on tämä: riippumatta siitä, minkä arvon välität siihen, se tuottaa aina ulostulon jonnekin välillä 0 ja 1.

Logististen regressiomallien käyttäminen ennusteiden tekemiseen

Lineaarisen regressiomallin käyttämiseksi ennusteiden tekemiseen on yleensä määritettävä raja-arvo. Tämä raja-arvo on tyypillisesti 0.5.

Käytetään syövän diagnosointiesimerkkiä edellisestä kuvastamme nähdäksesi tämän periaatteen käytännössä. Jos logistinen regressiomalli tuottaa arvon alle 0,5, datapiste luokitellaan ei-pahanlaatuiseksi kasvaimeksi. Vastaavasti, jos Sigmoid-funktio tuottaa arvon yli 0,5, tuumori luokitellaan pahanlaatuiseksi.

Sekaannusmatriisin käyttäminen logistisen regressio-suorituskyvyn mittaamiseen

Sekaannusmatriisia voidaan käyttää työkaluna todellisten positiivisten, todellisten negatiivisten, väärien positiivisten ja väärien negatiivien vertaamiseen koneoppimisessa.

Sekoitusmatriisit ovat erityisen hyödyllisiä, kun niitä käytetään logististen regressiomallien suorituskyvyn mittaamiseen. Tässä on esimerkki siitä, miten voisimme käyttää sekaannusmatriisia:

Esimerkki sekaannusmatriisista

Sekaannusmatriisi on hyödyllinen arvioitaessa, onko mallisi erityisen heikko sekaannusmatriisin tietyssä kvadrantissa. Esimerkiksi siinä voi olla epätavallisen suuri määrä vääriä positiivisia.

Siitä voi olla hyötyä myös tietyissä sovelluksissa sen varmistamiseksi, että mallisi toimii hyvin sekaannusmatriisin erityisen vaarallisella alueella.

Esimerkiksi tässä syövän esimerkissä haluat olla varma siitä, että mallissasi ei ole kovin suurta määrää vääriä negatiiveja, koska tämä osoittaisi, että jollakin on pahanlaatuinen kasvain, jonka luokitit väärin ei-pahanlaatuiseksi.

Leikkaus

Tässä osassa sinulla oli ensimmäinen altistuminen logistiselle regressiokoneen oppimismalleille.

Tässä on lyhyt yhteenveto siitä, mitä olet oppinut logistisesta regressiosta:

  • Luokitteluongelmien tyypit, jotka sopivat ratkaistaviksi logistisen regressiomallin avulla
  • Että logistinen toiminto (jota kutsutaan myös Sigmoid-funktioksi) tuottaa aina arvon välillä 0 ja 1
  • Kuinka käyttää raja-arvoja ennusteiden tekemiseen logistisen regressio-koneoppimismallin avulla
  • Miksi sekaannusmatriisit ovat hyödyllisiä mittaamaan logististen regressiomallien suorituskykyä

K-Lähimmät naapurit

K-lähimpien naapureiden algoritmi voi auttaa sinua ratkaisemaan luokitusongelmat, kun luokkia on enemmän kuin kaksi.

Mikä on K-lähimpien naapureiden algoritmi?

K-lähimpien naapureiden algoritmi on luokittelualgoritmi, joka perustuu yksinkertaiseen periaatteeseen. Itse asiassa periaate on niin yksinkertainen, että se ymmärretään parhaiten esimerkin avulla.

Kuvittele, että sinulla on tietoja jalkapalloilijoiden ja koripalloilijoiden pituudesta ja painosta. K-lähimpien naapureiden algoritmia voidaan käyttää ennustamaan, onko uusi urheilija joko jalkapalloilija vai koripalloilija.

Tätä varten K-lähimpien naapureiden algoritmi tunnistaa Kdatapisteet, jotka ovat lähinnä uutta havaintoa.

Seuraava kuva visualisoi tämän K-arvolla 3:

Visualisointi k lähimmästä naapurista

Tässä kuvassa jalkapalloilijat on merkitty sinisiksi datapisteiksi ja koripallopelaajat oransseiksi pisteiksi. Datapiste, jota yritämme luokitella, on merkitty vihreäksi.

Koska suurin osa (2/3) kaappien datapisteistä uusiin datapisteisiin on sinisiä jalkapalloilijoita, K-lähimpien naapureiden algoritmi ennustaa, että uusi datapiste on myös jalkapalloilija.

K-lähimpien naapureiden algoritmin rakentamisen vaiheet

K-lähimpien naapureiden algoritmin rakentamisen yleiset vaiheet ovat:

  1. Tallenna kaikki tiedot
  2. Laske euklidinen etäisyys uudesta datapisteestä xkaikkiin muihin tietojoukon pisteisiin
  3. Lajittele tietojoukon pisteet etäisyyden kasvamisen järjestyksessä x
  4. Ennusta käyttämällä samaa luokkaa kuin suurin osa Klähimmistä datapisteistäx

K: n merkitys K-lähimpien naapureiden algoritmissa

Vaikka se ei ehkä ole ilmeistä alusta alkaen, KK-lähimpien naapureiden algoritmin arvon muuttaminen muuttaa, mihin luokkaan uusi piste on osoitettu.

Tarkemmin sanottuna erittäin alhainen Karvo saa mallisi ennustamaan täydellisesti harjoitustiedot ja huonosti ennustamaan testitiedot. Vastaavasti liian suuri Karvo tekee mallistasi tarpeettoman monimutkaisen.

Seuraava visualisointi tekee erinomaisen työn tämän havainnollistamiseksi:

K-arvo ja virhetasot

K-lähimpien naapureiden algoritmin hyvät ja huonot puolet

Lopuksi tämän johdannon K-lähimpien naapureiden algoritmiin halusin keskustella lyhyesti tämän mallin käytöstä.

Tässä on joitain tärkeimpiä etuja K-lähimpien naapureiden algoritmille:

  • Algoritmi on yksinkertainen ja helppo ymmärtää
  • On triviaalia kouluttaa mallia uusille harjoitustiedoille
  • Se toimii minkä tahansa luokan luokitusongelman luokkien kanssa
  • Lisää tietoa on helppo lisätä tietojoukkoon
  • Malli hyväksyy vain kaksi parametria: Kja haluamasi etäisyysmittarin (yleensä euklidisen etäisyyden)

Vastaavasti tässä on muutamia algoritmin päähaittoja:

  • Ennusteiden tekeminen maksaa paljon, koska sinun on lajiteltava koko tietojoukko
  • Se ei toimi hyvin kategoristen ominaisuuksien kanssa

Leikkaus

Tässä on lyhyt yhteenveto siitä, mitä olet juuri oppinut k-lähimpien naapureiden algoritmista:

  • Esimerkki luokitusongelmasta (jalkapalloilijat vs. koripalloilijat), jonka K-lähimpien naapureiden algoritmi voisi ratkaista
  • Kuinka K-lähimmät naapurit käyttävät naapuripisteiden euklidista etäisyyttä ennustamaan, mihin luokkaan uusi datapiste kuuluu
  • Miksi Kennusteiden tekemisen merkityksellä on merkitystä
  • K-lähimpien naapureiden algoritmin käytön edut ja haitat

Päätöspuut ja satunnaiset metsät

Päätöspuut ja satunnaiset metsät ovat molemmat esimerkkejä puumenetelmistä.

Tarkemmin sanottuna päätöspuut ovat koneoppimismalleja, joita käytetään ennusteiden tekemiseen selaamalla tietojoukon kaikkia ominaisuuksia yksi kerrallaan. Satunnaiset metsät ovat päätöksentekopuiden yhdistelmiä, jotka käyttivät tietojoukkojen ominaisuuksien satunnaisia ​​järjestyksiä.

Mitä ovat puumenetelmät?

Ennen kuin perehdymme puumenetelmien teoreettisiin perusteisiin koneoppimisessa, on hyödyllistä aloittaa esimerkillä.

Kuvittele, että pelaat koripalloa joka maanantai. Lisäksi kutsut aina saman ystävän tulemaan pelaamaan kanssasi.

Joskus ystävä todella tulee. Joskus he eivät.

Päätös saapumisesta riippuu lukuisista tekijöistä, kuten sää, lämpötila, tuuli ja väsymys. Alat huomata nämä ominaisuudet ja alkaa seurata niitä yhdessä ystäväsi päätöksen kanssa pelaamisesta vai ei.

Voit käyttää näitä tietoja ennustaaksesi, ilmestyykö ystäväsi pelaamaan koripalloa vai ei. Yksi tekniikka, jota voit käyttää, on päätöksentekopuu. Tältä miltä tämä päätöspuu näyttää:

Esimerkki päätöksentekopuusta

Jokaisella päätöspuulla on kahden tyyppisiä elementtejä:

  • Nodes: paikat, joissa puu jakautuu jonkin attribuutin arvon mukaan
  • Edges: jakautumisen tulos seuraavaan solmuun

Näet yllä olevassa kuvassa, että on olemassa solmuja outlook, humidityja windy. Jokaisen attribuutin kullekin potentiaaliselle arvolle on olemassa reuna.

Tässä on kaksi muuta päätepuun terminologiaa, jotka sinun tulisi ymmärtää ennen kuin jatkat:

  • Root: solmu, joka suorittaa ensimmäisen jaon
  • Leaves: päätelaitteet, jotka ennustavat lopputuloksen

Sinulla on nyt perustiedot siitä, mitä päätöksentekopuut ovat. Seuraavassa osassa kerrotaan, miten päätöspuita rakennetaan tyhjästä.

Kuinka rakentaa päätöspuita naarmuilta

Päätöspuiden rakentaminen on vaikeampi kuin luulisi. Tämä johtuu siitä, että päättää, mitkä ominaisuudet jakavat tietosi (mikä on aihe, joka kuuluu Entropian ja tiedonsaannin kenttiin), on matemaattisesti monimutkainen ongelma.

Tämän ratkaisemiseksi koneoppimisen harjoittajat käyttävät tyypillisesti monia päätöksentekopuita käyttämällä satunnaisnäytettä jakoiksi valituista ominaisuuksista.

Toisin sanoen uusi satunnainen otos ominaisuuksista valitaan jokaiselle yksittäiselle puulle jokaisessa osassa. Tätä tekniikkaa kutsutaan satunnaisiksi metsiksi .

Yleensä lääkärit valitsivat tyypillisesti ominaisuuksien satunnaisotoksen (merkitty m) koon neliöjuureksi tietojoukon kokonaisominaisuuksien lukumäärästä (merkitty p). Ollakseen ytimekäs mon neliöjuuri pja sitten valitaan satunnaisesti tietty ominaisuus m.

Jos tällä ei ole mitään järkeä juuri nyt, älä huoli. Se on selvempi, kun lopulta rakennat ensimmäisen satunnaisen metsämallisi.

Satunnaisten metsien käytön edut

Kuvittele, että työskentelet tietojoukon kanssa, jolla on yksi erittäin vahva ominaisuus. Toisin sanoen tietojoukolla on yksi ominaisuus, joka ennustaa paljon enemmän lopputulosta kuin muut joukko datajoukkoa.

Jos rakennat päätöspuita manuaalisesti, on järkevää käyttää tätä ominaisuutta päätöksentekopuun yläosana. Tämä tarkoittaa, että sinulla on useita puita, joiden ennusteet korreloivat voimakkaasti.

Haluamme välttää tämän, koska voimakkaasti korreloivien muuttujien keskiarvon ottaminen ei vähennä varianssia merkittävästi. Valitsemalla satunnaisen metsän jokaiselle puulle ominaisuudet satunnaisesti, puut dekorreloituvat ja tuloksena olevan mallin varianssi pienenee. Tämä korrelaatio on satunnaisten metsien käytön tärkein etu käsintehtyihin päätöspuihin verrattuna

Leikkaus

Tässä on lyhyt yhteenveto siitä, mitä opit päätöksentekopuista ja satunnaisista metsistä tässä artikkelissa:

  • Esimerkki ongelmasta, jonka voit ennustaa päätöksentekopuiden avulla
  • Elementit päätöksentekokaavion: nodes, edges, roots, jaleaves
  • Kuinka satunnaisotosten ottaminen päätöksentekopuun ominaisuuksista antaa meille mahdollisuuden rakentaa satunnainen metsä
  • Miksi satunnaismetsien käyttäminen muuttujien dekorrelointiin voi olla hyödyllistä lopullisen mallin varianssin vähentämisessä

Tuki vektorikoneille

Tukivektorikoneet ovat luokittelualgoritmeja (tosin teknisesti ottaen niitä voitaisiin käyttää myös regressio-ongelmien ratkaisemiseen), jotka jakavat tietojoukon luokkiin perustuen viipaloimalla luokkien välisen suurimman aukon. Tämä käsite tehdään selvemmäksi visualisointien avulla hetkessä.

Mitkä ovat tukivektorikoneet?

Tukivektorikoneet - tai lyhyesti SVM: t - ovat valvottuja koneoppimismalleja, joihin liittyy oppimisalgoritmeja, jotka analysoivat tietoja ja tunnistavat mallit.

Tukivektorikoneita voidaan käyttää sekä luokittelu- että regressio-ongelmiin. Tässä artikkelissa tarkastelemme erityisesti tukivektorikoneiden käyttöä luokitusongelmien ratkaisemiseen.

Kuinka vektori-koneiden tuki toimii?

Kaivetaanpa, miten tukivektorikoneet todella toimivat.

Annettu joukko koulutusesimerkkejä - joista kukin on merkitty kuuluvaksi kahteen luokkaan - tukivektorikoneen koulutusalgoritmi rakentaa mallin. Tämä malli määrittää uudet esimerkit toiseen ryhmään. Tämä tekee tukivektorikoneesta epätodennäköisen binäärisen lineaarisen luokittelijan.

SVM käyttää geometriaa kategoristen ennusteiden tekemiseen.

Tarkemmin sanottuna SVM-malli kartoittaa datapisteet avaruuspisteinä ja jakaa erilliset luokat siten, että ne jaetaan mahdollisimman leveällä avoimella aukolla. Uusien datapisteiden ennustetaan kuuluvan luokkaan sen mukaan, mihin puoleen aukkoa ne kuuluvat.

Tässä on esimerkki visualisoinnista, joka voi auttaa sinua ymmärtämään tukivektorikoneiden taustalla olevaa intuitiota:

Kuten näette, jos uusi datapiste putoaa vihreän viivan vasemmalle puolelle, se merkitään punaisella kategorialla. Vastaavasti, jos uusi datapiste putoaa vihreän viivan oikealle puolelle, se merkitään siniseen luokkaan kuuluvaksi.

Tätä vihreää viivaa kutsutaan hypertasoksi , joka on tärkeä sanasto tukivektorikoneiden algoritmeille.

Katsotaanpa erilaista visuaalista esitystä tukivektorikoneesta:

Tässä kaaviossa hypertaso on merkitty optimaaliseksi hypertasoksi . Tukivektorikoneen teoria määrittelee optimaalisen hypertason sellaiseksi, joka maksimoi marginaalin kunkin luokan lähimpien datapisteiden välillä.

Kuten näette, reunaviiva koskettaa tosiasiallisesti kolmea datapistettä - kaksi punaisesta ja yksi sinisestä. Nämä datapisteet jotka koskettavat upporajoja kutsutaan tukea vektorit ja ovat missä tukivektorikoneet saavat nimensä.

Leikkaus

Tässä on lyhyt yhteenveto siitä, mitä olet juuri oppinut tukivektorikoneista:

  • Että tukivektorikoneet ovat esimerkki valvotusta koneoppimisalgoritmista
  • Tätä tukivektorikoneita voidaan käyttää sekä luokittelu- että regressio-ongelmien ratkaisemiseen
  • Kuinka tukivektorikoneet luokittelevat datapisteet hypertasolla, joka maksimoi tietojoukon luokkien välisen marginaalin
  • Että datapisteiden kosketus upporajoja vuonna tukivektorikonetekniikkaa kutsutaan tukea vektoreita . Nämä datapisteet ovat paikka, josta tukivektorikoneet saavat nimensä.

K-tarkoittaa klusterointia

K-tarkoittaa klusterointia on koneoppimisalgoritmi, jonka avulla voit tunnistaa vastaavan datan segmentit tietojoukossa.

Mikä on K-Means Clustering?

K-tarkoittaa klusterointia on valvomaton koneoppimisalgoritmi.

Tämä tarkoittaa, että se ottaa merkitsemättömiä tietoja ja yrittää ryhmitellä samanlaiset havaintoryhmät yhteen tietoihisi.

K-tarkoittaa klusterointialgoritmeja on erittäin hyödyllistä reaalimaailman ongelmien ratkaisemisessa. Tässä on muutamia tämän koneoppimismallin käyttötapauksia:

  • Asiakasryhmittely markkinointitiimeille
  • Asiakirjojen luokittelu
  • Toimitusreitin optimointi yrityksille, kuten Amazon, UPS tai FedEx
  • Rikostekniikoiden tunnistaminen ja niihin reagoiminen kaupungin sisällä
  • Ammattimainen urheiluanalyysi
  • Verkkorikollisuuden ennustaminen ja estäminen

K: n ensisijainen tavoite on klusterointialgoritmin jakaminen tietojoukko erillisiin ryhmiin siten, että havainnot kunkin ryhmän sisällä ovat samanlaisia ​​toistensa kanssa.

Tässä on visuaalinen kuvaus siitä, miltä tämä näyttää käytännössä:

K: n visualisointi tarkoittaa klusterointialgoritmia

Tutkimme tämän opetusohjelman seuraavassa osassa matematiikkaa, joka on K-tarkoittaa klusterin takana.

Kuinka K-keinot klusterointialgoritmit toimivat?

Ensimmäinen vaihe K-tarkoittaa klusterointialgoritmia suoritettaessa on valita klustereiden määrä, johon haluat jakaa tietosi. Tämä klustereiden lukumäärä on Karvo, johon algoritmin nimi viittaa.

KArvon valinta K-tarkoittaa klusterointialgoritmia on tärkeä valinta. Puhumme tarkemmin siitä, kuinka valita oikea arvo Kmyöhemmin tässä artikkelissa.

Seuraavaksi sinun on määritettävä kaikki tietojoukon pisteet satunnaisesti satunnaiselle klusterille. Tämä antaa alkuperäisen tehtävämme, jonka jälkeen suoritat seuraavan iteroinnin, kunnes klusterit lakkaavat muuttumasta:

  • Laske kunkin klusterin sentroidi ottamalla kyseisen klusterin pisteiden keskivektori
  • Määritä kukin datapiste uudelleen klusterille, jolla on lähin sentroidi

Tässä on animaatio siitä, miten tämä toimii käytännössä K-tarkoittaa klusterointialgoritmia, jonka Karvo on 3. Näet jokaisen klusterin sentroidin, jota edustaa musta +merkki.

K: n visualisointi tarkoittaa klusterointialgoritmia

Kuten näette, tämä iterointi jatkuu, kunnes klusterit lakkaavat muuttumasta - eli datapisteitä ei enää osoiteta uusille klustereille.

Oikean K-arvon valitseminen K: lle tarkoittaa klusterointialgoritmeja

Oikean Karvon valitseminen K-tarkoittaa klusterointialgoritmia on todella vaikeaa. Parhaan Karvon valitsemiselle ei ole oikeaa vastausta .

Yksi menetelmä, jota koneoppimisen harjoittajat usein käyttävät, kutsutaan kyynärpäämenetelmäksi .

Käyttääksesi kyynärpäämenetelmää, sinun on ensin laskettava neliövirheiden summa (SSE) sinulle K-tarkoittaa klusterointialgoritmia arvoryhmälle K. SSE K: ssa tarkoittaa, että klusterointialgoritmi määritetään klusterin kunkin datapisteen ja kyseisen klusterin keskiön välisen neliön välisen etäisyyden summana.

Esimerkkinä tässä vaiheessa, saatat laskea SSE varten Karvoja 2, 4, 6, 8, ja 10.

Seuraavaksi haluat luoda SSE-käyrän näitä eri Karvoja vastaan. Näet, että virhe pienenee Karvon kasvaessa.

Tämä on järkevää - mitä enemmän luokkia luot tietojoukossa, sitä todennäköisempää on, että jokainen datapiste on lähellä tietyn klusterinsa keskustaa.

Tämän sanottuaan kyynärpäämenetelmän takana on valita arvo, Kjolla SSE hidastaa laskuaan äkillisesti. Tämä äkillinen lasku tuottaa elbowkaavion.

Esimerkkinä tässä on kaavio SSE: stä K. Tässä tapauksessa kyynärpäämenetelmä ehdottaisi Knoin arvon käyttämistä 6.

K: n visualisointi tarkoittaa klusterointialgoritmia

Tärkeää on, että se 6on vain arvio hyvästä käyttöarvosta K. KK-tarkoittaa klusterointialgoritmissa ei koskaan ole “parasta” arvoa. Kuten monien asioiden kohdalla koneoppimisen alalla, tämäkin on hyvin tilanteesta riippuvainen päätös.

Leikkaus

Tässä on lyhyt yhteenveto oppimastasi tässä artikkelissa:

  • Esimerkkejä valvomattomista koneoppimisongelmista, jotka K-tarkoittaa klusterointialgoritmi pystyy ratkaisemaan
  • K-ryhmän klusterointialgoritmin perusperiaatteet
  • Kuinka K-tarkoittaa klusterointialgoritmia toimii
  • Kuinka käyttää kyynärpäätapamenetelmää sopivan arvon valitsemiseksi KK-tarkoittaa klusterointimallia

Pääkomponenttianalyysi

Pääkomponenttianalyysiä käytetään monien ominaisuuksien muuntamiseen muunnetuksi tietojoukoksi, jossa on vähemmän ominaisuuksia, joissa jokainen uusi ominaisuus on lineaarinen yhdistelmä olemassa olevista ominaisuuksista. Tämän muunnetun tietojoukon tarkoituksena on selittää suurin osa alkuperäisen aineiston varianssista paljon yksinkertaisemmin.

Mikä on pääkomponenttianalyysi?

Pääkomponenttianalyysi on koneoppimistekniikka, jota käytetään muuttujasarjojen välisten suhteiden tutkimiseen.

Toisin sanoen pääkomponenttianalyysi tutkii muuttujasarjoja näiden muuttujien taustalla olevan rakenteen tunnistamiseksi.

Pääkomponenttianalyysiä kutsutaan joskus tekijäanalyysiksi .

Tämän kuvauksen perusteella saatat ajatella, että pääkomponenttianalyysi on melko samanlainen kuin lineaarinen regressio.

Siitä ei ole kysymys. Itse asiassa näillä kahdella tekniikalla on joitain tärkeitä eroja.

Erot lineaarisen regression ja pääkomponenttianalyysin välillä

Lineaarinen regressio määrittää parhaiten sopivan linjan tietojoukon kautta. Pääkomponenttianalyysi määrittää useita ortogonaalisia viivoja, jotka parhaiten sopivat tietojoukkoon.

Jos et tunne termiä ortogonaalinen , se tarkoittaa vain sitä, että viivat ovat suorassa kulmassa (90 astetta) toisiinsa nähden - kuten pohjoinen, itä, etelä ja länsi ovat kartalla.

Tarkastellaan esimerkkiä, joka auttaa sinua ymmärtämään tämän paremmin.

Pääkomponenttianalyysi

Katso tämän kuvan akselitarrat.

Tässä kuvassa x-akselin pääkomponentti esimerkkejä 73% tietojoukon varianssista. Y-akselin pääkomponentti selittää noin 23% tietojoukon varianssista.

Tämä tarkoittaa, että 4% tietojoukon varianssista on selittämätön. Voit vähentää tätä määrää edelleen lisäämällä analyysiisi lisää pääkomponentteja.

Leikkaus

Tässä on lyhyt yhteenveto siitä, mitä olet oppinut tämän opetusohjelman pääkomponenttianalyysistä:

  • Tuo pääkomponenttianalyysi yrittää löytää ortogonaalisia tekijöitä, jotka määräävät muuttujan tietojoukossa
  • Erot pääkomponenttianalyysin ja lineaarisen regressioon välillä
  • Mitä ortogonaaliset pääkomponentit näyttävät, kun ne visualisoidaan tietojoukon sisällä
  • Se, että lisäät pääkomponentteja, voi auttaa sinua selittämään enemmän tietojoukon varianssia