Inleiding tot methoden voor machinaal leren

Het volgende artikel, Machine Learning Methods, geeft een overzicht van de meest gebruikte methoden in machine learning. Machine learning is een techniek waarmee een computer dingen zelfstandig kan 'leren'. De algoritmen verbeteren hun prestaties adaptief naarmate de beschikbare gegevens voor leren toenemen. Dat is meer de gegevens, hoe nauwkeuriger ons model zou zijn.

Hoe leren machines?

Er zijn verschillende methoden om dat te doen. Welke methode volledig moet worden gevolgd, hangt af van de probleemstelling. Afhankelijk van de dataset en ons probleem zijn er twee verschillende manieren om dieper te gaan. De ene is begeleid leren en de andere is leren zonder toezicht. In de volgende tabel wordt de verdere classificatie van methoden voor machinaal leren uitgelegd. We zullen ze een voor een bespreken.

Bekijk de volgende tabel!

Laten we begrijpen wat Supervised Learning betekent.

Leren onder toezicht

Zoals de naam al doet vermoeden, stel je een leraar of supervisor voor die je helpt te leren. Hetzelfde geldt voor machines. We trainen of onderwijzen de machine met behulp van gegevens die zijn gelabeld.

Enkele van de coolste applicaties voor leren met toezicht zijn:

  • Sentimentanalyse (Twitter, Facebook, Netflix, YouTube, enz.)
  • Natuurlijke taalverwerking
  • Afbeeldingsclassificatie
  • Voorspellende analyse
  • Patroonherkenning
  • Spam detectie
  • Spraak- / reeksverwerking

Nu wordt begeleid leren verder onderverdeeld in classificatie en regressie. Laten we dit begrijpen.

Classificatie

Classificatie is het vinden van een model dat helpt de gegevens in verschillende categorische klassen te scheiden. In dit proces worden gegevens gecategoriseerd onder verschillende labels volgens enkele parameters die bij invoer worden gegeven en vervolgens worden de labels voorspeld voor de gegevens. Categorisch betekent dat de uitvoervariabele een categorie is, dwz rood of zwart, spam of geen spam, diabetisch of niet-diabetisch, enz.

Classificatiemodellen zijn onder andere Support vector machine (SVM), K-dichtstbijzijnde buurman (KNN), Naive Bayes etc.

a) Ondersteuning vector machine classifier (SVM)

SVM is een begeleide leermethode die naar de gegevens kijkt en deze in een van twee categorieën sorteert. Ik gebruik een hyperplane om de gegevens te categoriseren. Een lineaire discriminerende classificator probeert een rechte lijn te trekken tussen de twee gegevenssets en daarmee een model voor classificatie te creëren. Het probeert eenvoudig een lijn of curve (in twee dimensies) of een spruitstuk (in meerdere dimensies) te vinden die de klassen van elkaar scheidt.

Opmerking : voor classificatie van meerdere klassen maakt SVM gebruik van 'one vs rest', wat betekent dat voor elke klasse een andere SVM wordt berekend.

b) K-dichtstbijzijnde buurclassificatie (KNN)

  • Als u aandachtig leest, suggereert de naam zelf wat het algoritme doet. KNN beschouwt de datapunten die dichter bij elkaar liggen, qua eigenschappen veel meer op elkaar lijken en dus waarschijnlijk tot dezelfde klasse behoren als de buurman. Voor elk nieuw gegevenspunt wordt de afstand tot alle andere gegevenspunten berekend en wordt de klasse bepaald op basis van K dichtstbijzijnde buren. Ja, het klinkt misschien saai, maar voor een deel van de classificatie werkt het als alles.
  • Een gegevenspunt wordt geclassificeerd door het maximale aantal stemmen van zijn buren, vervolgens wordt het gegevenspunt toegewezen aan de klasse die het dichtst bij zijn k-buren is.
  • In KNN is het leren van het model niet vereist en gebeurt al het werk op het moment dat een voorspelling wordt gevraagd. Daarom wordt KNN vaak een lui algoritme genoemd.

c) Naïeve Bayes-classificator

  • Naïve Bayes is een machine learning-algoritme dat ten zeerste wordt aanbevolen voor problemen met tekstclassificatie. Het is gebaseerd op de waarschijnlijkheidsstelling van Bayes. Deze classificaties worden naïef genoemd omdat ze aannemen dat variabelen van kenmerken onafhankelijk van elkaar zijn. Dat betekent dat we bijvoorbeeld een volledige zin voor invoer hebben, waarna Naïve Bayes ervan uitgaat dat elk woord in een zin onafhankelijk is van de andere. En classificeer ze dan dienovereenkomstig. Ik weet het, het ziet er vrij naïef uit, maar het is een geweldige keuze voor tekstclassificatieproblemen en het is een populaire keuze voor spam-e-mailclassificatie.
  • Het biedt verschillende soorten Naive Bayes-algoritmen zoals BernoulliNB, GaussianNB, MultinomialNB.
  • Het beschouwt alle functies als niet-gerelateerd, dus het kan de relatie tussen functies niet leren. Laten we zeggen dat Varun graag hamburgers eet, hij eet ook graag frietjes met cola. Maar hij houdt niet van een hamburger en een combinatie van patat met cola samen. Hier kan Naïve Bayes de relatie tussen twee functies niet leren, maar leert alleen het belang van individuele functies.

Laten we nu naar de andere kant van onze begeleide leermethode gaan, wat een regressie is.

regressie

Regressie is het vinden van een model dat helpt de gegevens te differentiëren met behulp van continue waarden. Hierin is de aard van de voorspelde gegevens geordend. Enkele van de meest gebruikte regressiemodellen zijn lineaire regressie, willekeurig bos (beslissingsbomen), neurale netwerken.

Lineaire regressie

  • Een van de eenvoudigste benaderingen in begeleid leren, wat handig is bij het voorspellen van de kwantitatieve respons.
  • Lineaire regressie omvat het vinden van de best passende rechte lijn door de punten. De best passende lijn wordt een regressielijn genoemd. De best passende lijn passeert niet precies alle gegevenspunten, maar probeert in plaats daarvan het beste in de buurt te komen.
  • Het is het veelgebruikte algoritme voor continue gegevens. Het richt zich echter alleen op het gemiddelde van de afhankelijke variabele en beperkt zich tot een lineaire relatie.
  • Lineaire regressie kan worden gebruikt voor tijdreeksen, trendvoorspelling. Het kan toekomstige verkopen voorspellen, op basis van de vorige gegevens.

Leren zonder toezicht

  • Leren zonder toezicht is gebaseerd op de benadering die kan worden gezien als de afwezigheid van een leraar en dus van absolute foutmaten. Het is handig wanneer het nodig is om elementen te clusteren of te groeperen. Elementen kunnen worden gegroepeerd (geclusterd) op basis van hun overeenkomst.
  • Bij onbewaakt leren worden gegevens niet geëtiketteerd, niet gecategoriseerd en werken de algoritmen van het systeem zonder voorafgaande training op de gegevens. Niet-begeleide leeralgoritmen kunnen complexere taken uitvoeren dan begeleide leeralgoritmen.
  • Niet-gecontroleerd leren omvat clustering, wat kan worden gedaan met behulp van K betekent clustering, hiërarchisch, Gaussiaans mengsel, verborgen Markov-model.

Toepassingen zonder toezicht leren zijn:

  1. Overeenstemmingsdetectie
  2. Automatisch labelen
  3. Objectsegmentatie (zoals Persoon, Dier, Films)

clustering

  • Clustering is een niet-begeleide leertechniek die op veel gebieden wordt gebruikt voor data-analyse. Het clusteringalgoritme is handig wanneer we gedetailleerde inzichten over onze gegevens willen verkrijgen.
  • Een echt voorbeeld van clustering zijn de genreclusters van Netflix, die zijn verdeeld voor verschillende doelklanten, waaronder interesses, demografie, levensstijl, enz. Nu kunt u nadenken over hoe nuttig clustering is wanneer bedrijven hun klantenbestand willen begrijpen en zich richten op nieuw potentieel klanten.

a) K betekent Clustering

  • K betekent clustering-algoritme dat probeert de gegeven onbekende gegevens in clusters te verdelen. Het selecteert willekeurig 'k' clusters zwaartepunt, berekent de afstand tussen datapunten en clusters zwaartepunt en wijst uiteindelijk het datapunt toe aan cluster zwaartepunt waarvan de afstand minimaal is voor alle clusterzwaartepunten.
  • In k-middelen worden groepen gedefinieerd door de dichtstbijzijnde centroid voor elke groep. Deze centroid fungeert als 'Brain' van het algoritme, ze verwerven de datapunten die zich het dichtst bij hen bevinden en voegen ze vervolgens toe aan de clusters.

b) Hiërarchische clustering

Hiërarchische clustering lijkt bijna op die van normale clustering, tenzij u een hiërarchie van clusters wilt bouwen. Dit kan handig zijn als u het aantal clusters wilt bepalen. Stel bijvoorbeeld dat u groepen verschillende items maakt in de online supermarkt. Op de voorste startpagina wilt u een paar brede items en zodra u op een van de items klikt, specifieke categorieën, worden er meer specifieke clusters geopend.

Dimensionaliteitsreductie

Dimensionaliteitsreductie kan worden beschouwd als compressie van een bestand. Het betekent het verwijderen van de informatie die niet relevant is. Het vermindert de complexiteit van gegevens en probeert de zinvolle gegevens te behouden. Bij beeldcompressie verminderen we bijvoorbeeld de dimensionaliteit van de ruimte waarin het beeld blijft zoals het is zonder al te veel betekenisvolle inhoud in het beeld te vernietigen.

PCA voor datavisualisatie

Principal component analysis (PCA) is een dimensiereductiemethode die nuttig kan zijn om uw gegevens te visualiseren. PCA wordt gebruikt om hoger-dimensionale gegevens te comprimeren naar lager-dimensionale gegevens, dat wil zeggen dat we PCA kunnen gebruiken om vier-dimensionale gegevens in drie of twee dimensies te reduceren, zodat we de gegevens kunnen visualiseren en beter kunnen begrijpen.

Aanbevolen artikelen

Dit is een handleiding voor methoden voor machinaal leren. Hier hebben we een introductie besproken, hoe leren machines? classificaties van machine learning en een stroomdiagram samen met een gedetailleerde uitleg. U kunt ook onze andere voorgestelde artikelen doornemen voor meer informatie -

  1. Machine Learning-architectuur
  2. Machine Learning Frameworks
  3. Hulpmiddelen voor machine leren
  4. Technieken voor machinaal leren
  5. Machine leren van hyperparameter
  6. Hiërarchisch clusteringalgoritme
  7. Hiërarchische clustering | Agglomerative & Divisive Clustering

Categorie: