Gegevens splitsen met Recommender Split
Belangrijk
De ondersteuning voor Azure Machine Learning-studio (klassiek) eindigt op 31 augustus 2024. U wordt aangeraden om vóór die datum over te stappen naar Azure Machine Learning.
Vanaf 1 december 2021 kunt u geen nieuwe resources voor Azure Machine Learning-studio (klassiek) meer maken. Tot en met 31 augustus 2024 kunt u de bestaande resources van Azure Machine Learning-studio (klassiek) blijven gebruiken.
- Zie informatie over het verplaatsen machine learning van ML Studio (klassiek) naar Azure Machine Learning.
- Meer informatie over Azure Machine Learning.
De documentatie van ML-studio (klassiek) wordt buiten gebruik gesteld en wordt in de toekomst mogelijk niet meer bijgewerkt.
In dit artikel wordt beschreven hoe u de optie Recommender Split gebruikt in de module Split Data van Machine Learning Studio (klassiek). Deze optie is handig wanneer u trainings- en testsets moet voorbereiden voor gebruik met een aanbevelingsmodel. Deze modellen vereisen niet alleen een specifieke indeling, maar het kan ook heel moeilijk zijn om classificaties, gebruikers en items op een evenwichtige manier te verdelen zonder speciale hulpprogramma's.
Notitie
Van toepassing op: Machine Learning Studio (klassiek)
Vergelijkbare modules voor slepen en neerzetten zijn beschikbaar in Azure Machine Learning designer.
Met de optie Aanbevelingssplitsing wordt dit proces eenvoudiger door te vragen naar het type aanbevelingsmodel dat u gebruikt: bijvoorbeeld: adviseert u items, stelt u een beoordeling voor of gaat u gerelateerde gebruikers zoeken? Vervolgens wordt de gegevensset verdeeld door criteria die u opgeeft, zoals het verwerken van koude gebruikers of koude items.
Wanneer u de gegevenssets splitst, retourneert de module twee gegevenssets, een voor training en een voor test- of modelevaluatie. Als de invoergegevensset extra gegevens per exemplaar (zoals beoordelingen) bevat, blijft deze behouden in de uitvoer.
Zie voor algemene informatie over gegevenspartities voor machine learning experimenten
Gerelateerde taken
Andere opties in de module Split Data ondersteunen verschillende manieren om de gegevens te delen:
Gegevens splitsen met reguliere expressies: Pas een reguliere expressie toe op één tekstkolom en deel de gegevensset op basis van de resultaten
Split recommender-gegevenssets: gegevenssets delen t+ Gegevens splitsen met behulp van relatieve expressies: Een expressie toepassen op numerieke gegevens.
Een gegevensset delen die wordt gebruikt door een aanbevelingsmodel
De optie Aanbevelingssplitsing wordt specifiek opgegeven voor gegevens die worden gebruikt om aanbevelingssystemen te trainen.
Voordat u deze optie gebruikt, moet u ervoor zorgen dat uw gegevens een compatibele indeling hebben. De splitser van de aanbevelingsdeler werkt in de veronderstelling dat de gegevensset alleen bestaat uit gebruikersitemparen of drie keer dezelfde gebruikersitemclassificatie . Zie Vereisten voor invoergegevens in dit artikel voor meer informatie.
Voeg de module Split Data toe aan uw experiment en verbind deze als invoer met de gegevensset die u wilt splitsen.
Selecteer voor Splitsmodus de optie Aanbevelingssplitsing.
Stel de volgende opties in om te bepalen hoe waarden worden verdeeld. Geef een percentage op dat wordt weergegeven als een getal tussen 0 en 1.
Fractie van alleen gebruikers voor training: geef het gedeelte van de gebruikers op dat alleen aan de set met trainingsgegevens mag worden toegewezen. Dit betekent dat de rijen nooit worden gebruikt om het model te testen.
Fractie van de beoordelingen van testgebruikers voor training: geef op dat een deel van de gebruikersbeoordelingen die u hebt verzameld, kan worden gebruikt voor de training.
Fractie van niet-koude gebruikers: koude gebruikers zijn gebruikers die het systeem nog niet eerder heeft aangetroffen. Omdat het systeem geen informatie over deze gebruikers heeft, zijn ze doorgaans waardevol voor training, maar kunnen voorspellingen minder nauwkeurig zijn.
Fractie van koude items: Koude items zijn items die het systeem niet eerder heeft aangetroffen. Omdat het systeem geen informatie over deze items heeft, zijn ze waardevol voor training, maar kunnen voorspellingen minder nauwkeurig zijn.
Fractie van genegeerde gebruikers: met deze optie kan de aanbevelingsgroep sommige gebruikers negeren, zodat u het model kunt trainen op een subset met gegevens. Dit kan nuttig zijn om prestatieredenen. U geeft het percentage gebruikers op dat moet worden genegeerd.
Fractie van genegeerde items: De splitser van de aanbevelingsdeler kan sommige items negeren en het model trainen op een subset met gegevens. Dit kan nuttig zijn om prestatieredenen. U geeft het percentage items op dat moet worden genegeerd.
Af en toe geproduceerde koude items verwijderen: Deze optie is doorgaans ingesteld op nul om ervoor te zorgen dat alle entiteiten in de testset zijn opgenomen in de trainingsset.
Een item wordt 'af en toe koud' genoemd als het alleen wordt gedekt door de testset en het niet expliciet als koud is gekozen. Dergelijke items kunnen worden geproduceerd door stappen (4) en (6) in het algoritme dat wordt beschreven in de sectie Hoe aanbevelingsgegevens worden gesplitst .
Willekeurige seed voor aanbeveling: geef een seed-waarde op als u de gegevens elke keer op dezelfde manier wilt splitsen. Anders worden de invoergegevens standaard willekeurig gesplitst, met behulp van een systeemklokwaarde als de seed.
Voer het experiment uit.
Voorbeelden
Voor voorbeelden van het delen van een set classificaties en functies die worden gebruikt voor het trainen of testen van een aanbevelingsmodel, raden we u aan de walkthrough van dit voorbeeldexperiment te bekijken in de Azure AI Gallery: Filmaanbeveling
Technische opmerkingen
Deze sectie bevat implementatiedetails, tips en antwoorden op veelgestelde vragen.
Vereisten voor invoergegevens
De splitser van de aanbevelingsdeler werkt in de veronderstelling dat de gegevensset alleen bestaat uit gebruikersitemparen of drie keer dezelfde gebruikersitemclassificatie. Daarom kan de module Split Data niet werken op gegevenssets met meer dan drie kolommen, om verwarring met gegevens van het type functie te voorkomen.
Als uw gegevensset te veel kolommen bevat, krijgt u mogelijk deze foutmelding:
Fout 0022: Het aantal geselecteerde kolommen in de invoerset is niet gelijk aan x
Als tijdelijke oplossing kunt u Kolommen in gegevensset selecteren gebruiken om enkele kolommen te verwijderen. U kunt de kolommen later altijd weer toevoegen met behulp van de module Kolommen toevoegen.
Als uw gegevensset veel functies heeft die u in het model wilt gebruiken, verdeelt u de gegevensset met een andere optie en traint u het model met Train Model in plaats van Train Matchbox Recommender.
Gebruikstips
Er t doet zich een fout voor als de gegevensset niet ten minste twee rijen bevat.
Als u een getal opgeeft als een percentage of als u een tekenreeks gebruikt die het teken %bevat, wordt de waarde geïnterpreteerd als een percentage.
Alle percentagewaarden moeten binnen het bereik (0, 100) zijn, met inbegrip van de waarden 0 en 100.
Als u een getal of percentage opgeeft dat een drijvende-puntnummer kleiner is dan één en u het procentsymbool (%) niet gebruikt, wordt het getal geïnterpreteerd als een evenredige waarde.
Implementatiegegevens
Het volgende algoritme wordt gebruikt bij het splitsen van gegevens in trainings- en testsets voor gebruik met een aanbevelingsmodel:
De aangevraagde fractie van genegeerde items wordt verwijderd met alle bijbehorende waarnemingen.
De aangevraagde breuk van koude items wordt verplaatst naar de testset met alle bijbehorende waarnemingen.
De aangevraagde fractie van genegeerde gebruikers die na de eerste twee stappen achterblijven, wordt verwijderd met alle bijbehorende waarnemingen.
De aangevraagde fractie van koude gebruikers die achterblijven na de eerste twee stappen, wordt verplaatst naar de testset met alle bijbehorende waarnemingen.
Het aangevraagde deel van de trainingsgebruikers die achterblijven na de eerste twee stappen, wordt verplaatst naar de trainingsset met alle bijbehorende waarnemingen.
Voor elke gebruiker die na alle vorige stappen achterblijft, wordt de aangevraagde fractie van de beoordelingen van testgebruikers voor training verplaatst naar de trainingsset en wordt de rest verplaatst naar de testset.
Ten minste één waarneming wordt altijd verplaatst naar de trainingsset voor elke gebruiker.
Indien aangevraagd, kunnen exemplaren die zijn gekoppeld aan de soms geproduceerde koude items uit de testset worden verwijderd.
Van een item wordt gezegd dat het 'af en toe koud' is als het alleen wordt gedekt door de testset en het niet expliciet als koud is gekozen. Dergelijke items kunnen worden geproduceerd met stappen (4) en (6).
Het verwachte gebruik van deze optie is dat het aangevraagde aantal koude gebruikers en items is ingesteld op nul. Dit zorgt ervoor dat alle entiteiten in de testset worden opgenomen in de trainingsset.