logo

Algoritmi strojnega učenja

Algoritmi strojnega učenja so računalniški modeli, ki računalnikom omogočajo razumevanje vzorcev in napovedovanje ali presojo na podlagi podatkov brez potrebe po eksplicitnem programiranju. Ti algoritmi so temelj sodobne umetne inteligence in se uporabljajo v številnih aplikacijah, vključno s prepoznavanjem slike in govora, obdelavo naravnega jezika, sistemi priporočil, odkrivanjem goljufij, avtonomnimi avtomobili itd.

to Algoritmi strojnega učenja članek bo zajemal vse bistvene algoritme strojnega učenja, kot je Podporni vektorski stroj, odločanje, logistična regresija, naivni bayeesov klasifikator, naključni gozd, združevanje k-povprečij, učenje z okrepitvijo, vektor, hierarhično združevanje, xgboost, adaboost, logistika itd.



niz java

Vrste algoritmov strojnega učenja

Obstajajo tri vrste algoritmov strojnega učenja.

  1. Nadzorovano učenje
    • Regresija
    • Razvrstitev
  2. Učenje brez nadzora
  3. Okrepitveno učenje

Vrste algoritmov strojnega učenja

1. Algoritem nadzorovanega učenja

Učenje pod nadzorom je vrsta algoritmov strojnega učenja, kjer smo uporabili označen nabor podatkov za usposabljanje modela ali algoritmov. Cilj algoritma je naučiti se preslikave vhodnih podatkov v izhodne oznake, kar mu omogoča napovedovanje ali klasifikacijo novih, še nevidenih podatkov.

Nadzorovani algoritmi strojnega učenja

  1. Linearni model:
    • Regresija
      • Navadna regresija najmanjših kvadratov
      • Preprosta linearna regresija
      • Večkratna linearna regresija
      • Polinomska regresija
      • Ortogonalno ujemanje zasledovanja (OMP)
      • Bayesova regresija
      • Kvantilna regresija
      • Izotonična regresija
      • Postopna regresija
      • Regresija najmanjšega kota (LARS)
    • Razvrstitev:
    • Regulacija :
      • Laso (regularizacija L1)
      • Greben (regularizacija L2)
        • Regresija grebena
        • Grebenski klasifikator
      • Elastična mreža
      • LARS Laso
  2. K-najbližji sosedje (KNN):
    • Algoritmi surove sile
    • Algoritmi Ball Tree in KD Tree
    • Klasifikator K-najbližjih sosedov (KNN).
    • Regresor K-najbližjih sosedov (KNN).
  3. Podporni vektorski stroji:
    • Regresor podpornih vektorskih strojev
    • Različne funkcije jedra v SVM
  4. Stohastični gradientni spust
    • Klasifikator s stohastičnim gradientnim spuščanjem
    • Stohastični gradientni regresor
    • Različne funkcije izgube v SGD
  5. Drevo odločanja:
    • Algoritmi drevesa odločanja
      • Algoritmi iterativnega dihotomizerja 3 (ID3).
      • C5. Algoritmi
      • Algoritmi za klasifikacijo in regresijska drevesa
    • Klasifikator drevesa odločitev
    • Regresor odločitvenega drevesa
  6. Učenje ansambla:
    • Pakiranje v vreče (združevanje Bootstrap)
    • Spodbujanje
      • AdaBoost
      • XGBoost
      • CatBoost
      • Stroji za povečanje gradienta (GBM)
      • LightGBM
    • Zlaganje
  7. Generativni model
    • Naivni Bayes
      • Gaussov naivni Bayes
      • Multinomski naivni Bayes
      • Bernoullijev naivni Bayes
    • Gaussovi procesi
      • Regresija Gaussovega procesa (GPR)
      • Gaussova klasifikacija procesov (GPC)
    • Gaussova diskriminantna analiza
      • Linearna diskriminantna analiza (LDA)
      • Kvadratna diskriminantna analiza (QDA)
    • Bayesova omrežja prepričanj
    • Skriti Markovljevi modeli (HMM)
  8. Napovedovanje časovnih vrst:
    • Vizualizacija in analiza časovnih vrst:
      • Komponente časovne vrste: trend, sezonskost in šum
      • Tehnike dekompozicije časovnih vrst
      • Desezoniranje in razlike
      • Avtokorelacija in delne avtokorelacijske funkcije
      • Razširjeni Dickey-Fullerjev test
      • Sezonska razčlenitev časovnih vrst (razčlenitev STL)
      • Box-Jenkinsova metodologija za modele ARIMA
    • Algoritmi za napovedovanje časovnih vrst:
      • Drseče povprečje (MA) in tehtano drseče povprečje
      • Metode eksponentnega glajenja (enostavne, dvojne in trojne)
      • Avtoregresivni (AR) modeli
      • Modeli drsečega povprečja (MA).
      • Avtoregresivni modeli integriranega drsečega povprečja (ARIMA).
      • Sezonska razčlenitev časovnih vrst po Loessu (STL)
      • Sezonski avtoregresivni modeli integriranega drsečega povprečja (SARIMA).
      • Modela ARIMAX in SARIMAX
  9. Tehnika nadzorovanega zmanjševanja razsežnosti:
    • Linearna diskriminantna analiza (LDA)

Nekatere od nadzorovanih algoritmov strojnega učenja je mogoče uporabiti tako za klasifikacijo kot za regresijo z malo modifikacije

  • Večrazredni in večizhodni algoritmi:
    • Večrazredna klasifikacija
      • Klasifikator OneVsRest
    • Klasifikacija z več oznakami
    • Regresija z več izhodi

Meritve za klasifikacijske in regresijske algoritme:

  • Regresijska metrika:
    • Povprečna kvadratna napaka (MSE)
    • Korenska povprečna kvadratna napaka (RMSE)
    • Povprečna absolutna napaka (MAE)
    • R-kvadrat
    • Prilagojeni R-kvadrat
  • Meritve klasifikacije:
  • Kalibracija verjetnosti
    • Umeritvene krivulje
    • Umerjanje klasifikatorja

Tehnika navzkrižne validacije:

  • K-kratna navzkrižna validacija
  • Stratificirana k-kratna navzkrižna validacija
  • Izpusti eno-ven navzkrižno preverjanje
  • Shuffle Split Navzkrižno preverjanje
  • Navzkrižno preverjanje časovnih vrst

Tehnika optimizacije:

  • Gradientni spust
    • Stohastični gradientni spust
    • Mini-serija Gradient Descent
    • Gradientni spust na podlagi zagona
  • Optimizacijske tehnike na osnovi Newtona
    • Newtonov algoritem
    • Kvazi-Newtonove metode (BFGS, L-BFGS)
    • Konjugirani gradient
  • Tehnike optimizacije lokalnega iskanja
    • Plezanje v hrib
    • Tabu Iskanje

2. Algoritem nenadzorovanega učenja

Učenje brez nadzora je vrsta algoritmov strojnega učenja, pri katerih se algoritmi uporabljajo za iskanje vzorcev, strukture ali razmerja znotraj nabora podatkov z uporabo neoznačenega nabora podatkov. Raziskuje inherentno strukturo podatkov brez vnaprej določenih kategorij ali oznak.

Nenadzorovani algoritmi strojnega učenja

  • Grozdenje
    • Centroidne metode
    • Metode, ki temeljijo na distribuciji
    • Metode, ki temeljijo na povezovanju
      • Hierarhično združevanje v gruče
        • Aglomerativno združevanje
        • Razdeljujoče grozdenje
      • Razmnoževanje afinitete
    • Metode, ki temeljijo na gostoti
      • DBSCAN (prostorsko združevanje aplikacij s šumom na podlagi gostote)
      • OPTIKA (naročanje točk za prepoznavanje strukture združevanja)
  • Pravilo združenja Rudarstvo
    • Apriorni algoritem
    • FP-rast (Frequent Pattern-Growth)
    • ECLAT (združevanje enakovrednih razredov in prehod mreže od spodaj navzgor)
  • Odkrivanje nepravilnosti:
    • Z-rezultat
    • Lokalni izstopajoči faktor (LOF)
    • Izolacijski gozd
  • Tehnika zmanjšanja dimenzionalnosti:
    • Analiza glavnih komponent (PCA)
    • t-razdeljeno stohastično vgrajevanje sosedov (t-SNE)
    • Nenegativna matrična faktorizacija (NMF)
    • Neodvisna analiza komponent (ICA)
    • Faktorska analiza
    • Latentna Dirichletova porazdelitev (LDA)
    • Izomap
    • Lokalno linearna vdelava (LLE)
    • Latentna semantična analiza (LSA)

3. Okrepljeno učenje

Okrepitveno učenje je vrsta algoritmov strojnega učenja, kjer se agent nauči sprejemati zaporedne odločitve z interakcijo s svojo okolico. Agent prejme povratne informacije v obliki spodbud ali kazni na podlagi svojih dejanj. Namen agenta je s poskusi in napakami odkriti optimalno taktiko, ki poveča kumulativne nagrade skozi čas. Okrepitveno učenje se pogosto uporablja v scenarijih, v katerih se mora agent naučiti krmariti po okolju, igrati igre, upravljati robote ali presojati v negotovih situacijah.

Okrepitveno učenje

  • Metode, ki temeljijo na modelu:
    • Markovski procesi odločanja (MDP)
    • Bellmanova enačba
    • Algoritem ponavljanja vrednosti
    • Monte Carlo Tree Iskanje
  • Metode brez modela:
    • Metode na podlagi vrednosti:
      • Q-učenje
      • OMAKA
      • Metode Monte Carlo
    • Metode, ki temeljijo na pravilniku:
      • Algoritem REINFORCE
      • Algoritem igralec-kritik
    • Igralsko-kritične metode
      • Asynchronous Advantage Actor-Critic (A3C)

Seznam priljubljenih algoritmov strojnega učenja

Tukaj je seznam 10 najbolj priljubljenih algoritmov strojnega učenja.

1. Linearna regresija

Linearna regresija je preprost algoritem, ki se uporablja za preslikavo linearnega razmerja med vhodnimi značilnostmi in neprekinjeno ciljno spremenljivko. Deluje tako, da podatkom prilagodi črto in jo nato uporabi za predvidevanje novih vrednosti.

2. Logistična regresija

Logistična regresija je razširitev linearne regresije, ki se uporablja za naloge klasifikacije za oceno verjetnosti, da primerek pripada določenemu razredu.

3. SVM (podporni vektorski stroj)

SVM so nadzorovani učni algoritmi, ki lahko izvajajo naloge klasifikacije in regresije. Najde hiperravnino, ki najbolje ločuje razrede v prostoru funkcij.

4. KNN (K-najbližji sosed)

KNN je neparametrična tehnika, ki se lahko uporablja za klasifikacijo in regresijo. Deluje tako, da identificira k najbolj podobnih podatkovnih točk novi podatkovni točki in nato predvidi oznako nove podatkovne točke z uporabo oznak teh podatkovnih točk.

5. Odločitveno drevo

Odločitvena drevesa so vrsta tehnike nadzorovanega učenja, ki se lahko uporablja za klasifikacijo in regresijo. Deluje tako, da podatke segmentira v vse manjše skupine, dokler ni mogoče vsako skupino razvrstiti ali predvideti z visoko stopnjo natančnosti.

6. Naključni gozd

Naključni gozdovi so vrsta učne metode ansambla, ki uporablja nabor odločitvenih dreves za napovedovanje z združevanjem napovedi iz posameznih dreves. Izboljša natančnost in odpornost enojnih odločitvenih dreves. Uporablja se lahko za naloge klasifikacije in regresije.

7. Naivni Bayes

Naive Bayes je verjetnostni klasifikator, ki temelji na Bayesovem izreku in se uporablja za klasifikacijske naloge. Deluje ob predpostavki, da so značilnosti podatkovne točke neodvisne druga od druge.

8. PCA (analiza glavnih komponent)

PCA je tehnika zmanjševanja razsežnosti, ki se uporablja za pretvorbo podatkov v prostor z nižjo razsežnostjo ob ohranjanju čim večje variance. Deluje tako, da v podatkih poišče navodila, ki vsebujejo največ variacij, in nato projicira podatke na ta navodila.

9. Apriorni algoritmi

Apriorni algoritem je tradicionalna tehnika podatkovnega rudarjenja za rudarjenje asociacijskih pravil v transakcijskih zbirkah podatkov ali naborih podatkov. Zasnovan je za odkrivanje povezav in vzorcev med stvarmi, ki se redno pojavljajo sočasno v transakcijah. Apriori zazna pogoste nabore postavk, ki so skupine postavk, ki se pojavljajo skupaj v transakcijah z dano minimalno ravnjo podpore.

10. K-povprečje združevanja v gruče

Gručenje K-Means je nenadzorovan učni pristop, ki ga je mogoče uporabiti za združevanje podatkovnih točk. Deluje tako, da v podatkih najde k gruč, tako da so si podatkovne točke v vsaki gruči med seboj čim bolj podobne, hkrati pa se čim bolj razlikujejo od podatkovnih točk v drugih gručih.

Odkrijte temeljne koncepte, ki poganjajo strojno učenje, tako da se naučite 10 najboljših algoritmov , kot so linearna regresija, odločitvena drevesa in nevronske mreže.

Algoritem strojnega učenja – pogosta vprašanja

1. Kaj je algoritem v strojnem učenju?

Algoritmi strojnega učenja so tehnike, ki temeljijo na statističnih konceptih in omogočajo računalnikom učenje iz podatkov, odkrivanje vzorcev, napovedovanje ali dokončanje nalog brez potrebe po izrecnem programiranju. Ti algoritmi so na splošno razvrščeni v tri vrste, tj. nadzorovano učenje, nenadzorovano učenje in učenje s krepitvijo.

2. Katere so vrste strojnega učenja?

Obstajajo predvsem tri vrste strojnega učenja:

razlika med array in arraylist
  • Nadzorovani algoritem
  • Nenadzorovan algoritem
  • Algoritem ojačitve

3. Kateri algoritem ML je najboljši za napovedovanje?

Idealno metodo strojnega učenja za napovedovanje določa a število kriterijev , vključno z naravo težave, vrsto podatkov in edinstvenimi zahtevami. Pristopi podpornih vektorskih strojev, naključnih gozdov in gradientnega povečanja so priljubljeni za predvidevanje delovnih obremenitev. Po drugi strani pa mora izbira algoritma temeljiti na testiranju in vrednotenju določenega problema in nabora podatkov.

4. Katerih je 10 priljubljenih algoritmov za strojno učenje?‌

Spodaj je seznam 10 najbolj pogosto uporabljenih algoritmov strojnega učenja (ML):

  1. Linearna regresija
  2. Logistična regresija
  3. SVM (podporni vektorski stroj)
  4. KNN (K-najbližji sosed)
  5. Drevo odločitev
  6. Naključni gozd
  7. Naivni Bayes
  8. PCA (analiza glavnih komponent)
  9. Apriorni algoritmi
  10. K-pomeni združevanje v gruče