Importeren vanuit gegevensfeedproviders

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.

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 module Gegevens importeren in Machine Learning Studio (klassiek) gebruikt om gegevens in de OData-indeling te importeren in een machine learning experiment.

Notitie

Van toepassing op: Machine Learning Studio (klassiek)

Vergelijkbare modules met slepen en neerzetten zijn beschikbaar in Azure Machine Learning designer.

Het maken van een OData-eindpunt voor een gegevensset is één manier om een gegevensmodel beschikbaar te maken voor gebruik via URL. U kunt ook opgeven welke OData-bewerkingen door het eindpunt worden ondersteund. Zie OData Odata v4 (ASP.NET) voor meer informatie over het maken van eindpunten.

Gegevens importeren uit een feed

We raden u ten zeerste aan uw gegevens te profileren voordat u importeert, om ervoor te zorgen dat het schema is zoals verwacht. Tijdens het importproces wordt een aantal hoofdrijen gescand om het schema te bepalen, maar latere rijen bevatten mogelijk extra kolommen of gegevens die fouten veroorzaken.

De wizard Gegevens importeren gebruiken

De module bevat een nieuwe wizard om u te helpen bij het kiezen van een opslagoptie. Gebruik de wizard om een selectie te maken uit bestaande abonnementen en accounts en snel alle opties te configureren.

  1. Voeg de module Gegevens importeren toe aan uw experiment. U vindt de module in Studio (klassiek) in de categorie Gegevensinvoer en Uitvoer.

  2. Klik op Wizard Gegevens importeren starten en volg de aanwijzingen.

  3. Wanneer de configuratie is voltooid, kopieert u de gegevens daadwerkelijk naar uw experiment door met de rechtermuisknop op de module te klikken en Geselecteerde uitvoeren te selecteren.

Als u een bestaande gegevensverbinding wilt bewerken, laadt de wizard alle eerdere configuratiegegevens, zodat u niet opnieuw hoeft te beginnen.

Handmatig eigenschappen instellen in de module Gegevens importeren

U kunt de importbron ook handmatig configureren.

  1. Voeg de module Gegevens importeren toe aan uw experiment. U vindt deze module in Studio (klassiek) in de categorie Gegevensinvoer en Uitvoer.

  2. Bij Gegevensbron selecteert u Gegevensfeedprovider.

  3. Selecteer bij Gegevensinhoudstype het type feed. Momenteel worden alleen OData-eindpunten ondersteund.

  4. Plak bij Bron-URL de URL van een site die gegevens levert in de vereiste indeling.

    Met de volgende instructie haalt u bijvoorbeeld de lijst met producten op uit de voorbeelddatabase northwind:

    https://services.odata.org/northwind/northwind.svc/Products

    Zie OData-syntaxis voor meer informatie.

  5. Selecteer de optie In cache opgeslagen resultaten gebruiken als u de gegevens na de eerste keer niet opnieuw hoeft te laden. Dit is een goede optie als niet wordt verwacht dat de gegevens veranderen tussen de runs van het experiment.

    Als er geen andere wijzigingen in moduleparameters zijn, laadt het experiment de gegevens de eerste keer dat de module wordt uitgevoerd en gebruikt vervolgens een versie van de gegevensset in de cache.

    Als u de gegevens regelmatig wilt vernieuwen, moet u deze optie uitschakelen.

  6. Voer het experiment uit.

Resultaten

Wanneer u klaar bent, klikt u op de uitvoergegevensset en selecteert u Visualiseren om te zien of de gegevens zijn geïmporteerd.

Wanneer met Gegevens importeren de feedgegevens in Studio (klassiek) worden geladen, wordt het gegevenstype van elke kolom afleiden op basis van de waarden die deze bevat, numeriek of categorisch.

  • Als er een header aanwezig is, wordt de header gebruikt om de kolommen van de uitvoerset een naam te geven.

  • Als er geen bestaande kolomkoppen in de gegevens staan, worden nieuwe kolomnamen gegenereerd met behulp van de indeling col1, col2,… ,coln.

Technische opmerkingen

Deze sectie bevat implementatiedetails, tips en antwoorden op veelgestelde vragen.

OData-syntaxis

De query moet een platte tabel retourneren. Het plat maken van geneste OData-records wordt niet ondersteund.

Sommige kolommen in OData-feeds bevatten mogelijk gegevenstypen die niet worden ondersteund in Studio (klassiek), zoals decimalen. U kunt de gegevens opnemen als tekenreeksen en deze later converteren met behulp van de modules R-script uitvoeren of Metagegevenseditor .

Zie Odata.org - URI-conventies voor meer informatie over OData-syntaxis en URL's

Veelgestelde vragen

Kan ik gegevens filteren terwijl deze uit de bron worden gelezen?

De module Gegevens importeren biedt over het algemeen geen ondersteuning voor filteren wanneer gegevens worden gelezen. U kunt echter een filtervoorwaarde opgeven als onderdeel van de resource-URL van de feed.

Als u gegevens uit de feed wilt filteren, gebruikt u instructies die worden ondersteund door het OData-protocol. Deze URL gebruikt bijvoorbeeld de expressie $filter om alleen de orders op te halen die betrekking hebben op de werknemer met een id die gelijk is aan 1.

https://services.odata.org/Northwind/Northwind.svc/Orders?$filter=Employee/EmployeeID eq 1

Zie Using Filter Expressions in OData URIs (Filterexpressie gebruiken in OData-URI's) voor meer voorbeelden van filtersyntaxis.

U kunt ook alle gegevens op halen en filteren nadat deze in Machine Learning Studio (klassiek) zijn geladen:

  • Gebruik een aangepast R-script om alleen de gepersonaliseerde gegevens op te halen.

  • Gebruik de module Split Data (Gegevens splitsen) met een relatieve expressie of een reguliere expressie om de persoonsgegevens te isoleren en sla deze vervolgens op als een gegevensset.

Notitie

Als u meer gegevens hebt geladen dan nodig is, kunt u de gegevensset in de cache overschrijven door een nieuwe gegevensset te lezen en deze op te slaan met dezelfde naam als de oudere, grotere gegevens.

Ik krijg de foutmelding Referenties zijn vereist om verbinding te maken met de OData-bron. Vernieuw en geef referenties op om door te gaan. Hoe kan ik referenties verstrekken?**

De module Gegevens importeren ondersteunt alleen OData-eindpunten met anonieme toegang. Als de OData-service referenties vereist, kunt u de optie OData niet gebruiken om de gegevens op te halen.

Als de service zich echter in hetzelfde domein, kan verificatie soms automatisch plaatsvinden zonder invoer van de gebruiker.

Als tijdelijke oplossing kunt u PowerQuery of PowerPivot gebruiken om feedgegevens te lezen en de gegevens vervolgens op te halen uit Excel.

Hoe voorkom ik dat dezelfde gegevens onnodig opnieuw worden geladen?

Als uw brongegevens veranderen, kunt u de gegevensset vernieuwen en nieuwe gegevens toevoegen door Gegevens importeren opnieuw uit te voeren. Als u de bron echter niet telkens opnieuw wilt lezen wanneer u het experiment uit te voeren, selecteert u de optie In cache opgeslagen resultaten gebruiken op TRUE. Wanneer deze optie is ingesteld op TRUE, controleert de module of het experiment eerder is uitgevoerd met behulp van dezelfde bron en dezelfde invoeropties. Als er een eerdere run wordt gevonden, worden de gegevens in de cache gebruikt in plaats van de gegevens opnieuw te laden uit de bron.

Waarom krijg ik het foutbericht 'Type decimaal wordt niet ondersteund'?

Het decimal gegevenstype wordt niet ondersteund in Machine Learning. De reden hiervoor is dat Import Data niet automatisch conversies kan uitvoeren die zouden leiden tot verlies van precisie.

Zie Modulegegevenstypen voor meer informatie over ondersteunde gegevenstypen.

Als tijdelijke oplossing kunt u de gegevens lezen als een tekenreeksgegevenstype en vervolgens Metagegevens bewerken gebruiken om de decimalen te converteren naar een ondersteunde gegevens voordat u de gegevens leest.

Waarom worden sommige tekens in de feed niet correct weergegeven?

Machine Learning ondersteunt UTF-8-codering. Als uw bron een ander type codering gebruikt, worden de tekens mogelijk niet correct geïmporteerd.

Als tijdelijke oplossing kunt u de gegevens opslaan in een CSV-bestand in Azure Table Storage of Azure Blob Storage. Gebruik vervolgens de optie CSV met codering om parameters op te geven voor aangepaste scheidingstekens, de codepagina, enzovoort.

Moduleparameters

Name Bereik Type Standaard Beschrijving
Gegevensbron Lijst Gegevensbron of sink Azure Blob Storage De gegevensbron kan HTTP, FTP, anonieme HTTPS of FTPS zijn, een bestand in Azure BLOB Storage, een Azure-tabel, een Azure SQL Database, een on-premises SQL Server-database, een Hive-tabel of een OData-eindpunt.
Gegevensinhoudstype Lijst (subset) URL-inhoud OData Gegevensindelingstype
Bron-URL alle Tekenreeks URL voor Power Query gegevensbron
Resultaten in cache gebruiken TRUE/FALSE Booleaans FALSE beschrijving

Uitvoerwaarden

Naam Type Description
Gegevensset met resultaten Gegevenstabel Gegevensset met gedownloade gegevens

Uitzonderingen

Uitzondering Description
Fout 0003 Er treedt een uitzondering op als een of meer invoer null of leeg zijn.
Fout 0029 Er treedt een uitzondering op wanneer een ongeldige URI wordt doorgegeven.
Fout 0030 Er treedt een uitzondering op wanneer het niet mogelijk is om een bestand te downloaden.
Fout 0002 Er treedt een uitzondering op als een of meer parameters niet kunnen worden geparseerd of geconverteerd van het opgegeven type naar het type dat is vereist voor de doelmethode.

Zie Foutcodes voor een lijst met fouten die specifiek zijn Machine Learning voor Studio-modules (klassiek).

Zie Foutcodes voor een lijst Machine Learning REST API API-uitzonderingen.

Zie ook

Gegevens importeren
Gegevens exporteren
Importeren vanuit een web-URL via HTTP
Importeren vanuit Hive-query
Importeren vanuit een Azure SQL Database
Importeren uit Azure Table
Importeren vanuit Azure Blob Storage
Importeren vanuit on-premises SQL Server database