R-taalmodules

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 vindt u de modules in Machine Learning Studio (klassiek) die ondersteuning bieden voor het uitvoeren van R-code. Deze modules maken het gemakkelijker om R-modellen in productie te publiceren en de ervaring van de R-taal community te gebruiken om echte problemen op te lossen.

Notitie

Van toepassing op: Machine Learning Studio (klassiek)

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

In dit artikel worden ook enkele algemene vereisten beschreven voor het gebruik van R in Machine Language Studio (klassiek) en worden bekende problemen en tips beschreven.

Lijst met modules

De categorie R-taalmodules bevat de volgende modules:

  • R-script uitvoeren: hiermee wordt een R-script uitgevoerd vanuit Machine Learning experiment.
  • R-model maken: hiermee maakt u een R-model met behulp van aangepaste resources.

Vereisten bij het gebruik van R

Voordat u R-script in Machine Learning Studio (klassiek) gebruikt, moet u aan de volgende vereisten voldoen:

  • Als u gegevens hebt geïmporteerd die CSV of andere indelingen gebruiken, kunt u de gegevens niet rechtstreeks in CSV-indeling lezen vanuit uw R-code. Gebruik in plaats daarvan Converteren naar gegevensset om de gegevens voor te bereiden voordat u deze als invoer voor een R-module gebruikt.

  • Wanneer u een Machine Learning gegevensset als invoer aan een R-module koppelt, wordt de gegevensset automatisch als gegevensframe in de R-werkruimte geladen, met de gegevensset met de naam van de variabele.

    U kunt echter aanvullende gegevensframes definiëren of de naam van de standaardgegevenssetvariabele in uw R-script wijzigen.

  • De R-modules worden uitgevoerd in een beveiligde en geïsoleerde omgeving binnen uw privéwerkruimte. In uw werkruimte kunt u gegevensframes en variabelen maken voor gebruik door meerdere modules.

    U kunt echter geen R-gegevensframes laden vanuit een andere werkruimte of variabelen lezen die in een andere werkruimte zijn gemaakt, zelfs niet als die werkruimte is geopend in een Azure-sessie. U kunt ook geen modules gebruiken die een Java-afhankelijkheid hebben of waarvoor directe netwerktoegang is vereist.

Optimalisatie voor R-scoring-taken

De implementatie van R in de Machine Learning Studio (klassiek) en werkruimte-omgeving bevat twee hoofdonderdelen. Het ene onderdeel coördineert de uitvoering van scripts en het andere biedt snelle toegang tot gegevens en scoren. Het scoring-onderdeel is geoptimaliseerd om de schaalbaarheid en prestaties te verbeteren.

Daarom ondersteunen R-werkruimten in Machine Learning Studio (klassiek) ook twee soorten scoring-taken, die elk zijn geoptimaliseerd voor verschillende vereisten. Normaal gesproken gebruikt u scoren per bestand wanneer u een experiment bouwt. Doorgaans gebruikt u de aanvraagreactieservice (RRS) voor zeer snelle scores wanneer u s scoren als onderdeel van een webservice.

Ondersteuning voor R-pakket en versie

Machine Learning Studio (klassiek) bevat meer dan 500 van de populairste R-pakketten. De R-pakketten waaruit u kunt kiezen, zijn afhankelijk van de R-versie die u voor uw experiment selecteert:

  • CRAN R
  • Microsoft R Open (MRO 3.2.2 of MRO 3.4.4)

Wanneer u een experiment maakt, moet u één R-versie kiezen om op uit te voeren, voor alle modules in uw experiment.

Lijst met pakketten per versie

Zie R Packages Supported by Machine Learning (R-pakketten die worden ondersteund door Machine Learning) voor een lijst met de pakketten die momenteel worden ondersteund in Machine Learning.

U kunt ook de volgende code toevoegen aan een execute R Script-module in uw experiment en deze uitvoeren om een gegevensset met pakketnamen en -versies op te halen. Zorg ervoor dat u de R-versie in de module-eigenschappen in stelt om de juiste lijst voor uw beoogde omgeving te genereren.

data.set <- data.frame(installed.packages())
maml.mapOutputPort("data.set")

Belangrijk

De pakketten die worden ondersteund in Machine Language Studio (klassiek) worden regelmatig gewijzigd. Als u twijfelt of een R-pakket wordt ondersteund, gebruikt u het R-codevoorbeeld om de volledige lijst met pakketten in de huidige omgeving op te halen.

Experimenten uitbreiden met behulp van de R-taal

Er zijn veel manieren waarop u uw experiment kunt uitbreiden met behulp van aangepast R-script of door R-pakketten toe te voegen. Hier zijn enkele ideeën om u op weg te helpen:

  • R-code gebruiken om aangepaste wiskundige bewerkingen uit te voeren. Er zijn bijvoorbeeld R-pakketten om differentiële vergelijkingen op te lossen, willekeurige getallen te genereren of Monte Carlo-simulaties uit te voeren.

  • Pas aangepaste transformaties toe op gegevens. U kunt bijvoorbeeld een R-pakket gebruiken om interpolatie uit te voeren op tijdreeksgegevens of taalkundige analyse uit te voeren.

  • Werken met verschillende gegevensbronnen. De R-scriptmodules ondersteunen een extra set invoer, die gegevensbestanden kan bevatten, in een ingepakte indeling. U kunt ingepakte gegevensbestanden gebruiken, samen met R-pakketten die zijn ontworpen voor dergelijke gegevensbronnen, om hiërarchische gegevens af te vlakken in een platte gegevenstabel. U kunt deze ook gebruiken om gegevens te lezen uit Excel en andere bestandsindelingen.

  • Aangepaste metrische gegevens gebruiken voor evaluatie. In plaats van de functies in Evalueren te gebruiken, kunt u bijvoorbeeld een R-pakket importeren en vervolgens de metrische gegevens toepassen.

In het volgende voorbeeld ziet u het algemene proces voor het installeren van nieuwe pakketten en het gebruik van aangepaste R-code in uw experiment.

Kolommen splitsen met R

Soms moeten de gegevens uitgebreid worden gemanipuleerd om functies te extraheren. Stel dat u een tekstbestand hebt met een id gevolgd door waarden en notities, gescheiden door spaties. Of stel dat uw tekstbestand tekens bevat die niet worden ondersteund door Machine Language Studio (klassiek).

Er zijn verschillende R-pakketten die gespecialiseerde functies voor dergelijke taken bieden. Het bibliotheekpakket splitstackshape bevat verschillende nuttige functies voor het splitsen van meerdere kolommen, zelfs als elke kolom een ander scheidingsteken heeft.

In het volgende voorbeeld ziet u hoe u de benodigde pakketten installeert en kolommen splitst. U voegt deze code toe aan de module Execute R Script .

#install dependent packages  
install.packages("src/concat.split.multiple/data.table_1.9.2.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.data.table <- library("data.table", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
install.packages("src/concat.split.multiple/plyr_1.8.1.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.plyr <- library("plyr", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
install.packages("src/concat.split.multiple/Rcpp_0.11.2.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.Rcpp <- library("Rcpp", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
install.packages("src/concat.split.multiple/reshape2_1.4.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.reshape2 <- library("reshape2", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
#install actual packages  
install.packages("src/concat.split.multiple/splitstackshape_1.2.0.zip", lib=".", repos = NULL, verbose = TRUE)  
(success.splitstackshape <- library("splitstackshape", lib.loc = ".", logical.return = TRUE, verbose = TRUE))  
  
#Load installed library  
library(splitstackshape)  
  
#Use library method to split & concat  
data <- concat.split.multiple(maml.mapInputPort(1), c("TermsAcceptedUserClientIPAddress", "EmailAddress"), c(".", "@"))  
  
#Print column names to console  
colnames(data)  
  
#Redirect data to output port  
maml.mapOutputPort("data")  

Aanvullende resources

Begin met deze zelfstudie die beschrijft hoe u een aangepaste R-module bouwt:

In dit artikel worden de verschillen tussen de twee score-engines in detail besproken en wordt uitgelegd hoe u een scoring-methode kunt kiezen wanneer u uw experiment als een webservice implementeert:

Dit experiment in de Azure AI Gallery laat zien hoe u een aangepaste R-module kunt maken voor het trainen, scoren en evalueren:

In dit artikel, gepubliceerd op R-Termijn, wordt gedemonstreerd hoe u uw eigen evaluatiemethode kunt maken in Machine Learning:

Meer hulp bij R

Deze site biedt een gecategoriseerde lijst met pakketten die u kunt zoeken op trefwoorden:

Zie de volgende bronnen voor aanvullende R-codevoorbeelden en hulp bij R en de toepassingen:

Zie ook