Skapa ett innehållsbaserat rekommendationssystem

Azure Databricks
Azure Machine Learning

Lösningsidéer

Den här artikeln är en lösningsidé. Om du vill att vi ska utöka innehållet med mer information, till exempel potentiella användningsfall, alternativa tjänster, implementeringsöverväganden eller prisvägledning, kan du meddela oss genom att ge GitHub-feedback.

Rekommendationer är en viktig intäktsdrivande faktor för många företag och används i olika typer av branscher, inklusive detaljhandel, nyheter och media. Med tillgång till stora mängder data om kundaktivitet kan du ge mycket relevanta rekommendationer med hjälp av maskininlärning.

Arkitektur

Architectural diagram that shows training, evaluation, and development of a machine learning model for content-based personalization that uses Azure Databricks.

Ladda ned en PowerPoint-fil med den här arkitekturen.

Dataflöde

  1. Lagra. Azure Data Lake Storage lagrar stora mängder data om användar- och konsumentbeteende.

  2. Läsa. Azure Databricks ansluter till och läser från Azure Data Lake Storage. Inmatning till Databricks möjliggör förbearbetning och träning för att registrera modellen.

  3. Förbearbeta. Förbearbetning av data rensar, transformerar och förbereder data som ska matas till systemmodellen för rekommendationer.

  4. Tåg. Utbildningen består av två steg: funktionsutveckling och modellträning. Under modellträningen använder Azure Databricks den förbearbetade datamängden för att träna och förklara beteendet för den bästa rekommendationsmodellen.

  5. Efterbearbetning. Efterbearbetning omfattar modellutvärdering och urval baserat på vilken modell som presterar bäst.

  6. Deploy (Distribuera). Azure Databricks underhåller modellen. Batchhanterade slutpunkter distribuerar modellen för exponering för klientdelsvisning. När modellen distribueras är de nya data tillgängliga via nya slutpunkter. Batch- och nära realtidsrekommendationer stöds.

  7. Skriva. Användargränssnitt, till exempel webbprogram, kan använda de lagrade modellresultaten. Resultaten skrivs till och registreras i Azure Synapse. Modellen körs som batchinferens och lagrar resultatet i respektive datalager.

Komponenter

Den här arkitekturen använder följande komponenter:

  • Azure Data Lake Storage är en uppsättning lagringsfunktioner som är dedikerade till stordataanalys och som tillhandahåller filsystemssemantik, säkerhet på filnivå och skalning.

  • Azure Databricks är ett hanterat Apache Spark-kluster för modellträning och utvärdering.

  • Azure Synapse Analytics är det snabba, flexibla och betrodda molndatalagret som gör att du kan skala, beräkna och lagra elastiskt och oberoende, med en massivt parallell bearbetningsarkitektur.

Information om scenario

Metoden som beskrivs i den här artikeln fokuserar på att skapa ett innehållsbaserat rekommendationssystem. Mer information om metodtipsen för att skapa rekommendationssystem finns i dokumentationen och exemplen för rekommenderare på GitHub.

Det här exempelscenariot visar hur du kan använda maskininlärning för att automatisera innehållsbaserad anpassning för dina kunder. Lösningen använder Azure Databricks för att träna en modell som förutsäger sannolikheten för att en användare är intresserad av ett objekt. batchhanterade hanterade slutpunkter distribuerar modellen som en förutsägelsetjänst. Du kan använda den här tjänsten för att skapa anpassade rekommendationer genom att rangordna objekt baserat på det innehåll som en användare troligen är intresserad av.

Potentiella användningsfall

Den här lösningen är perfekt för detaljhandeln. Det är relevant för följande användningsfall:

  • Innehållsrekommendationer för webbplatser och mobilappar
  • Produktrekommendationer för e-handelswebbplatser
  • Visade annonsrekommendationer för webbplatser

Typer av rekommendationssystem

Det finns tre huvudsakliga typer av rekommendationssystem:

  • Samarbetsfiltrering. Samarbetsfiltrering identifierar liknande mönster i kundens beteende och rekommenderar objekt som andra liknande kunder har interagerat med. En fördel med samarbetsfiltrering är hur enkelt det är att generera data – användarna skapar data samtidigt som de interagerar med listor över objekt och produkter. Dessutom kan kunder upptäcka nya artiklar och produkter som inte är utvalda från deras historiska interaktioner. Nackdelen med samarbetsfiltrering är dock problemet med kallstart : eftersom det finns brist på interaktioner mellan användare och nya erbjudanden rekommenderas inte nyligen tillagda objekt av en algoritm som är helt beroende av kundinteraktioner.

  • Innehållsbaserad. Innehållsbaserad rekommendation använder information om objekten för att lära sig kundpreferenser och rekommenderar objekt som delar egenskaper med objekt som en kund tidigare har interagerat med. Innehållsbaserade rekommendationssystem hindras inte av kallstartsproblemet och kan anpassas till introduktionen av nya objekt. Rekommendationerna är dock begränsade till funktionerna i det ursprungliga objektet som en kund interagerade med.

  • Hybridmetod. En annan metod för att skapa rekommendationssystem är att blanda innehållsbaserad och samarbetsbaserad filtrering. Det här systemet rekommenderar objekt baserat på användarklassificeringar och information om objekt. Hybridmetoden har fördelarna med både samarbetsfiltrering och innehållsbaserad rekommendation.

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudförfattare:

Annan deltagare:

  • Andrew Ajaluwa | Programhanteraren
  • Gary Moore | Programmerare/skrivare

Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.

Nästa steg