Een aanbevelingssysteem op basis van inhoud bouwen

Azure Databricks
Azure Machine Learning

Oplossingsideeën

Dit artikel is een oplossingsidee. Als u wilt dat we de inhoud uitbreiden met meer informatie, zoals mogelijke use cases, alternatieve services, implementatieoverwegingen of prijsrichtlijnen, laat het ons dan weten door GitHub-feedback te geven.

Aanbevelingen zijn een belangrijke driver voor omzet voor veel bedrijven en worden gebruikt in verschillende soorten branches, waaronder detailhandel, nieuws en media. Met de beschikbaarheid van grote hoeveelheden gegevens over klantactiviteit kunt u zeer relevante aanbevelingen doen met behulp van machine learning.

Architectuur

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

Download een PowerPoint-bestand van deze architectuur.

Gegevensstroom

  1. opslaan. Azure Data Lake Storage slaat grote hoeveelheden gegevens op over gebruikers- en consumentengedrag.

  2. Lezen. Azure Databricks maakt verbinding met en leest vanuit Azure Data Lake Storage. Opname in Databricks maakt voorverwerking en training mogelijk om het model te registreren.

  3. Voorverwerking. Gegevensvoorverwerking schoont, transformeert en bereidt gegevens voor die moeten worden ingevoerd in het aanbevelingensysteemmodel.

  4. Trein. Training bestaat uit twee stappen: functie-engineering en modeltraining. Tijdens modeltraining gebruikt Azure Databricks de vooraf verwerkte gegevensset om het gedrag van het beste aanbevelingsmodel te trainen en uit te leggen.

  5. Postprocess. Naverwerking omvat modelevaluatie en selectie op basis van welk model het beste presteert.

  6. Implementeren. Azure Databricks onderhoudt het model. Door Batch beheerde eindpunten implementeren het model voor blootstelling aan front-endweergave. Wanneer het model wordt geïmplementeerd, zijn de nieuwe gegevens toegankelijk via nieuwe eindpunten. Aanbevelingen voor Batch en bijna realtime worden ondersteund.

  7. Schrijven. Gebruikersinterfaces, zoals webtoepassingen, kunnen de opgeslagen modelresultaten gebruiken. De resultaten worden geschreven naar en vastgelegd in Azure Synapse. Het model wordt uitgevoerd als batchdeductie en slaat de resultaten op in het respectieve gegevensarchief.

Onderdelen

Deze architectuur maakt gebruik van de volgende onderdelen:

  • Azure Data Lake Storage is een set opslagmogelijkheden die zijn toegewezen aan big data-analyses en die semantiek van het bestandssysteem, beveiliging op bestandsniveau en schalen bieden.

  • Azure Databricks is een beheerd Apache Spark-cluster voor modeltraining en -evaluatie.

  • Azure Synapse Analytics is het snelle, flexibele en vertrouwde clouddatawarehouse waarmee u elastisch en onafhankelijk kunt schalen, berekenen en opslaan met een zeer parallelle verwerkingsarchitectuur.

Scenariodetails

De aanpak die in dit artikel wordt beschreven, is gericht op het bouwen van een op inhoud gebaseerd aanbevelingssysteem. Zie de documentatie en voorbeelden voor Aanbevelingssystemen op GitHub voor meer informatie over de best practices voor het bouwen van aanbevelingssystemen.

In dit voorbeeldscenario ziet u hoe u machine learning kunt gebruiken om persoonlijke instellingen op basis van inhoud voor uw klanten te automatiseren. De oplossing maakt gebruik van Azure Databricks om een model te trainen dat de waarschijnlijkheid voorspelt dat een gebruiker geïnteresseerd is in een item. Beheerde eindpunten in batches implementeren dat model als een voorspellingsservice. U kunt deze service gebruiken om persoonlijke aanbevelingen te maken door items te rangschikkingen op basis van de inhoud waarin een gebruiker waarschijnlijk geïnteresseerd is.

Potentiële gebruikscases

Deze oplossing is ideaal voor de detailhandel. Dit is relevant voor de volgende gebruiksvoorbeelden:

  • Aanbevelingen voor inhoud voor websites en mobiele apps
  • Productaanbeveling voor e-commercesites
  • Weergegeven aanbevelingen voor advertenties voor websites

Typen aanbevelingssystemen

Er zijn drie hoofdtypen aanbevelingssystemen:

  • Gezamenlijke filtering. Gezamenlijke filtering identificeert vergelijkbare patronen in het gedrag van klanten en raadt items aan waarmee andere vergelijkbare klanten interactie hebben gehad. Een voordeel van het filteren op samenwerking is het gemak van het genereren van gegevens: gebruikers maken gegevens terwijl ze werken met vermeldingen van items en producten. Bovendien kunnen klanten nieuwe items en producten ontdekken die anders zijn dan producten die zijn samengesteld op basis van hun historische interacties. Het nadeel van het filteren op samenwerking is echter het probleem met de koude start : omdat er weinig interacties zijn tussen gebruikers en nieuwe aanbiedingen, worden nieuwe toegevoegde items niet aanbevolen door een algoritme dat volledig afhankelijk is van klantinteracties.

  • Op inhoud gebaseerd. Aanbeveling op basis van inhoud maakt gebruik van informatie over de items om klantvoorkeuren te leren en beveelt items aan die eigenschappen delen met items waarmee een klant eerder interactie heeft gehad. Aanbevelingssystemen op basis van inhoud worden niet belemmerd door het koude-startprobleem en kunnen zich aanpassen aan de introductie van nieuwe items. De aanbevelingen zijn echter beperkt tot de functies van het oorspronkelijke item waarmee een klant interactie heeft gehad.

  • Hybride methode. Een andere benadering voor het bouwen van aanbevelingssystemen is het combineren van filters op basis van inhoud en samenwerking. Dit systeem raadt items aan op basis van gebruikersbeoordelingen en informatie over items. De hybride benadering heeft de voordelen van zowel gezamenlijke filtering als aanbevelingen op basis van inhoud.

Bijdragers

Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.

Hoofdauteur:

Andere inzender:

  • Andrew Ajaljaljal | Program Manager
  • Gary Moore | Programmeur/schrijver

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen