stomp Bou 'n aanbevelingstelsel deur masjienleer te gebruik - Unite.AI
Verbinding met ons

Kunsmatige Intelligensie

Bou 'n aanbevelingstelsel deur masjienleer te gebruik

mm
Opgedateer on
'n Prent wat Netflix-logo op 'n skerm bevat met 'n hand wat 'n afstandbeheerder vashou.

Die generering van wêreldwye kliëntedata neem teen 'n ongekende tempo toe. Maatskappye gebruik KI en masjienleer om hierdie data op innoverende maniere te gebruik. 'n ML-aangedrewe aanbevelingstelsel kan klantdata effektief gebruik om gebruikerservaring te verpersoonlik, betrokkenheid en behoud te verhoog, en uiteindelik groter verkope te dryf.

Byvoorbeeld, in 2021, Netflix berig dat sy aanbevelingstelsel gehelp het om inkomste met $1 miljard per jaar te verhoog. Amazon is nog 'n maatskappy wat baat by die verskaffing van persoonlike aanbevelings aan sy kliënt. In 2021, Amazon berig dat sy aanbevelingstelsel gehelp het om verkope met 35% te verhoog.

In hierdie artikel sal ons aanbevelingstelsels in detail ondersoek en 'n stap-vir-stap-proses verskaf om 'n aanbevelingstelsel te bou deur masjienleer te gebruik.

Wat is 'n aanbevelingstelsel?

'n Aanbevelingstelsel is 'n algoritme wat data-analise en masjienleertegnieke gebruik om relevante inligting (flieks, video's, items) aan gebruikers voor te stel wat hulle dalk interessant sal vind. 

Hierdie stelsels ontleed groot hoeveelhede data oor gebruikers se vorige gedrag, voorkeure en belangstellings deur gebruik te maak machine learning algoritmes soos groepering, samewerkende filtering en diep neurale netwerke om gepersonaliseerde aanbevelings te genereer.

Netflix, Amazon en Spotify is bekende voorbeelde van robuuste aanbevelingstelsels. Netflix gee persoonlike fliekvoorstelle, Amazon stel produkte voor gebaseer op vorige aankope en blaaigeskiedenis, en Spotify verskaf gepersonaliseerde snitlyste en liedjievoorstelle gebaseer op luistergeskiedenis en voorkeure.

Stap-vir-stap proses om 'n aanbevelingstelsel te bou deur masjienleer te gebruik

1. Probleemidentifikasie & Doelwitformulering

Die eerste stap is om die probleem wat die aanbevelingstelsel sal oplos, duidelik te definieer. Ons wil byvoorbeeld 'n Amazon-agtige aanbevelingstelsel bou wat produkte aan kliënte voorstel op grond van hul vorige aankope en blaaigeskiedenis.

'n Goed gedefinieerde doelwit help met die bepaling van die data wat benodig word, die keuse van die toepaslike masjienleermodelle en die evaluering van die werkverrigting van die aanbevelerstelsel.

2. Data-insameling en -voorverwerking

Die volgende stap is om data oor klantgedrag in te samel, soos hul vorige aankope, blaaigeskiedenis, resensies en graderings. Om groot hoeveelhede besigheidsdata te verwerk, kan ons gebruik Apache Hadoop en Apache Spark.

Na data-insameling, voorafverwerk en ontleed die data-ingenieurs hierdie data. Hierdie stap behels die skoonmaak van die data, die verwydering van duplikate en die hantering van ontbrekende waardes. Die data-ingenieurs omskep ook hierdie data in 'n formaat wat geskik is vir masjienleeralgoritmes.

Hier is 'n paar gewilde Python-gebaseerde datavoorverwerkingsbiblioteke:

  • pandas: Verskaf metodes vir datamanipulasie, transformasie en analise
  • Numpy: Verskaf kragtige numeriese berekeninge vir skikkings en matrikse.

3. Verkennende data-analise

Verkennende data-analise (EDA) help om die dataverspreiding en verwantskappe tussen veranderlikes te verstaan ​​wat gebruik kan word om beter aanbevelings te genereer.

U kan byvoorbeeld visualiseer watter items die meeste in die laaste kwartaal verkoop is. Of watter items word meer verkoop wanneer die klante 'n spesifieke item koop, soos eiers word meer met brood en botter verkoop.

Hier is 'n paar gewilde Python-biblioteke om verkennende data-analise uit te voer:

  • matplotlib: Verskaf datavisualiseringsmetodes om verskillende plotte soos histogramme, spreidingsdiagramme, sirkeldiagramme, ens.
  • Seebaard: Verskaf metodes om meer gevorderde visualiserings soos hittekaarte en paar plotte te skep.
  • Pandas-profilering: Genereer 'n verslag met beskrywende statistieke en visualiserings vir elke veranderlike in 'n datastel.

4. Feature Engineering

Funksie-ingenieurswese behels die keuse van die mees geskikte kenmerke om jou masjienleermodel op te lei. Hierdie stap behels die skep van nuwe kenmerke of die transformasie van bestaande om dit meer geskik te maak vir die aanbevelingstelsel.

Byvoorbeeld, binne klantdata is kenmerke soos produkgraderings, aankoopfrekwensie en klantdemografie meer relevant vir die bou van 'n akkurate aanbevelingstelsel.

Hier is 'n paar gewilde Python-biblioteke vir die uitvoering van kenmerk-ingenieurswese:

  • Scikit-leer: Sluit instrumente in vir kenmerkkeuse en kenmerkonttrekking, soos Hoofkomponentanalise (PCA) en Eienskapagglomerasie.
  • Kategorie-enkodeerders: Verskaf metodes vir die enkodering van kategoriese veranderlikes, dws die omskakeling van kategoriese veranderlikes in numeriese kenmerke.

5. Modelkeuse

Die doel van modelkeuse is om die beste masjienleeralgoritme te kies wat die produkte wat 'n kliënt waarskynlik sal koop of 'n fliek wat hulle waarskynlik sal kyk akkuraat kan voorspel op grond van hul vorige gedrag.

Sommige van hierdie algoritmes is:

i. Samewerkende filtering

Samewerkende filtering is 'n gewilde aanbevelingstegniek, wat aanvaar dat gebruikers wat soortgelyke voorkeure deel heel waarskynlik soortgelyke produkte sal koop, of produkte wat soortgelyke kenmerke deel, sal heel waarskynlik deur die klante gekoop word.

ii. Inhoud-gebaseerde filtering

Hierdie benadering behels die ontleding van die eienskappe van produkte, soos die handelsmerk, kategorie of prys, en die aanbeveling van produkte wat by 'n gebruiker se voorkeure pas.

iii. Hibriede filtering

Hibriedfiltrering kombineer samewerkende filter- en inhoudgebaseerde filtertegnieke om hul beperkings te oorkom deur hul sterkpunte te benut om meer akkurate aanbevelings te verskaf.

6. Modelopleiding

Hierdie stap behels die verdeling van die data in opleiding en toets stelle en die gebruik van die mees geskikte algoritme om trein die aanbevelingsmodel. Sommige van die gewilde opleidingsalgoritmes vir aanbevelingstelsels sluit in:

i. Matriksfaktorisering

Hierdie tegniek voorspel ontbrekende waardes in 'n yl matriks. In die konteks van aanbevelingstelsels voorspel Matrix Factorization die graderings van produkte wat 'n gebruiker nog nie gekoop of gegradeer het nie.

ii. Diep leer

Hierdie tegniek behels die opleiding van neurale netwerke om komplekse patrone en verwantskappe in die data te leer. In aanbevelingstelsels kan diep leer die faktore leer wat 'n gebruiker se voorkeur of gedrag beïnvloed.

iii. Vereniging Reël Mynbou

Dit is 'n data-ontginningstegniek wat patrone en verwantskappe tussen items in 'n datastel kan ontdek. In aanbevelingstelsels kan Association Rule Mining groepe produkte identifiseer wat gereeld saam gekoop word en hierdie produkte aan gebruikers aanbeveel.

Hierdie algoritmes kan effektief geïmplementeer word met behulp van biblioteke soos Surprise, Scikit-leer, TensorFlow en PyTorch.

7. Hiperparameter-instelling

Om die werkverrigting van die aanbevelingstelsel te optimaliseer, word hiperparameters, soos die leertempo, regulariseringssterkte en aantal versteekte lae in 'n neurale netwerk ingestel. Hierdie tegniek behels die toets van verskillende kombinasies van hiperparameters en die keuse van die kombinasie wat die beste prestasie lewer.

8. Model Evaluering

Model-evaluering is van kritieke belang om te verseker dat die aanbevelingstelsel akkuraat en doeltreffend is om aanbevelings te genereer. Evalueringsmetrieke soos akkuraatheid, herroeping en F1-telling kan die akkuraatheid en doeltreffendheid van die stelsel meet.

9. Model-ontplooiing

Sodra die aanbevelingstelsel ontwikkel en geëvalueer is, is die laaste stap om dit in 'n produksie-omgewing te ontplooi en aan kliënte beskikbaar te stel.

Ontplooiing kan gedoen word deur gebruik te maak van interne bedieners of wolkgebaseerde platforms soos Amazon Web Services (AWS), Microsoft Azure en Google Cloud.

AWS verskaf byvoorbeeld verskeie dienste soos Amazon S3, Amazon EC2, en Amazon Masjienleer, wat gebruik kan word om die aanbevelingstelsel te ontplooi en te skaal. Gereelde instandhouding en opdaterings moet ook uitgevoer word op grond van die jongste klantdata om te verseker dat die stelsel mettertyd steeds doeltreffend werk.

Vir meer insigte rakende KI en masjienleer, verken verenig.ai.