Udostępnij za pośrednictwem


Moduły języka R

Ważne

Obsługa programu Machine Learning Studio (wersja klasyczna) zakończy się 31 sierpnia 2024 r. Zalecamy przejście do usługi Azure Machine Learning przed tym terminem.

Od 1 grudnia 2021 r. nie będzie można tworzyć nowych zasobów programu Machine Learning Studio (wersja klasyczna). Do 31 sierpnia 2024 r. można będzie nadal korzystać z istniejących zasobów programu Machine Learning Studio (wersja klasyczna).

Dokumentacja programu ML Studio (wersja klasyczna) jest wycofywana i może nie być aktualizowana w przyszłości.

W tym artykule wymieniono moduły w programie Machine Learning Studio (wersja klasyczna), które obsługują uruchamianie kodu R. Te moduły ułatwiają publikowanie modeli języka R w środowisku produkcyjnym i korzystanie ze środowiska społeczności języka R w celu rozwiązywania rzeczywistych problemów.

Uwaga

Dotyczy: tylko Machine Learning Studio (klasyczne)

Podobne moduły przeciągania i upuszczania są dostępne w Azure Machine Learning projektanta.

W tym artykule opisano również niektóre ogólne wymagania dotyczące używania języka R w programie Machine Language Studio (wersja klasyczna) oraz wymieniono znane problemy i porady.

Lista modułów

Kategoria Moduły języka R obejmuje następujące moduły:

Wymagania dotyczące korzystania z R

Przed użyciem skryptu R w programie Machine Learning Studio (wersja klasyczna) należy spełnić następujące wymagania:

  • Jeśli zaimportowano dane, które używa formatu CSV lub innego, nie można odczytać danych bezpośrednio w formacie CSV z kodu r. Zamiast tego użyj funkcji Konwertuj na zestaw danych , aby przygotować dane przed użyciem ich jako danych wejściowych w module R.

  • Po dołączeniu dowolnego Machine Learning jako danych wejściowych do modułu R zestaw danych jest automatycznie ładowany do obszaru roboczego R jako ramka danych ze zmienną nazwą zestawu danych.

    Można jednak zdefiniować dodatkowe ramki danych lub zmienić nazwę domyślnej zmiennej zestawu danych w skrypcie R.

  • Moduły R działają w chronionym i izolowanym środowisku w prywatnym obszarze roboczym. W obszarze roboczym można tworzyć ramki danych i zmienne do użycia przez wiele modułów.

    Nie można jednak załadować ramek danych języka R z innego obszaru roboczego ani odczytać zmiennych utworzonych w innym obszarze roboczym, nawet jeśli ten obszar roboczy jest otwarty w sesji platformy Azure. Ponadto nie można używać modułów, które są zależne od języka Java lub wymagają bezpośredniego dostępu do sieci.

Optymalizacja zadań oceniania kodu R

Implementacja środowiska R w programie Machine Learning Studio (wersja klasyczna) i środowisku obszaru roboczego obejmuje dwa główne składniki. Jeden składnik koordynuje wykonywanie skryptów, a drugi zapewnia szybki dostęp do danych i ocenianie. Składnik oceniania jest zoptymalizowany pod kątem zwiększenia skalowalności i wydajności.

Dlatego obszary robocze języka R w programie Machine Learning Studio (wersja klasyczna) obsługują również dwa rodzaje zadań oceniania, z których każde jest zoptymalizowane pod kątem różnych wymagań. Ocenianie jest zwykle używane w przypadku budowania eksperymentu dla obydwego pliku. Usługa odpowiedzi na żądanie (RRS) jest zwykle używana do bardzo szybkiego oceniania podczas oceniania w ramach usługi internetowej.

Obsługa pakietów i wersji w języku R

Machine Learning Studio (klasyczne) zawiera ponad 500 najpopularniejszych pakietów R. Pakiety R, które można wybrać, zależą od wersji R wybranej dla eksperymentu:

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

Za każdym razem, gdy tworzysz eksperyment, musisz wybrać pojedynczą wersję R do uruchomienia dla wszystkich modułów w eksperymencie.

Lista pakietów na wersję

Aby uzyskać listę pakietów, które są obecnie obsługiwane w programie Machine Learning, zobacz R Packages Supported by Machine Learning (Pakiety R obsługiwane przez program Machine Learning).

Możesz również dodać następujący kod do modułu Execute R Script (Wykonywanie skryptu R) w eksperymencie i uruchomić go w celu uzyskania zestawu danych zawierającego nazwy i wersje pakietów. Pamiętaj, aby ustawić wersję R we właściwościach modułu, aby wygenerować poprawną listę dla odpowiedniego środowiska.

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

Ważne

Pakiety obsługiwane w programie Machine Language Studio (wersja klasyczna) często się zmieniają. Jeśli masz wątpliwości co do tego, czy pakiet R jest obsługiwany, użyj dostarczonego przykładu kodu R, aby uzyskać pełną listę pakietów w bieżącym środowisku.

Rozszerzanie eksperymentów przy użyciu języka R

Istnieje wiele sposobów rozszerzania eksperymentu przy użyciu niestandardowego skryptu R lub przez dodanie pakietów R. Oto kilka pomysłów na początek:

  • Wykonywanie niestandardowych operacji matematycznych za pomocą kodu w języku R. Na przykład istnieją pakiety R do rozwiązywania równań różnicowych, generowania liczb losowych lub uruchamiania symulacji Monte Carlo.

  • Stosowanie niestandardowych przekształceń dla danych. Na przykład można użyć pakietu języka R do wykonania interpolacji danych szeregów czasowych lub przeprowadzenia analizy językowej.

  • Praca z różnymi źródłami danych. Moduły skryptów w języku R obsługują dodatkowy zestaw danych wejściowych, który może zawierać pliki danych, w formacie mapowanych. Możesz użyć plików danych mapowanych wraz z pakietami R zaprojektowanymi dla takich źródeł danych, aby spłaszczyć dane hierarchiczne do płaskiej tabeli danych. Można ich również używać do odczytywania danych z Excel i innych formatów plików.

  • Użyj metryk niestandardowych do oceny. Na przykład zamiast używać funkcji podanych w funkcji Evaluate(Ocena), możesz zaimportować pakiet R, a następnie zastosować jego metryki.

W poniższym przykładzie przedstawiono ogólny proces instalowania nowych pakietów i używania niestandardowego kodu R w eksperymencie.

Dzielenie kolumn przy użyciu R

Czasami wyodrębnianie cech wymaga rozległych manipulacji. Załóżmy, że masz plik tekstowy, który zawiera identyfikator, po którym następuje wartości i notatki, a wszystkie są rozdzielone spacjami. Załóżmy też, że plik tekstowy zawiera znaki, które nie są obsługiwane przez program Machine Language Studio (wersja klasyczna).

Istnieje kilka pakietów R, które zapewniają wyspecjalizowane funkcje dla takich zadań. Pakiet biblioteki splitstackshape zawiera kilka przydatnych funkcji do dzielenia wielu kolumn, nawet jeśli każda kolumna ma inny ogranicznik.

Poniższy przykład ilustruje sposób instalowania wymaganych pakietów i dzielenia kolumn. Ten kod należy dodać do modułu Execute R Script (Wykonywanie skryptu R ).

#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")  

Dodatkowe zasoby

Zacznij od tego samouczka, który opisuje sposób tworzenia niestandardowego modułu R:

W tym artykule szczegółowo omówiono różnice między dwoma aparatami oceniania oraz wyjaśniono, jak wybrać metodę oceniania podczas wdrażania eksperymentu jako usługi internetowej:

Ten eksperyment w Azure AI Gallery pokazuje, jak można utworzyć niestandardowy moduł R, który będzie trenował, oceniał i oceniał:

W tym artykule opublikowanym w języku R-Blogs pokazano, jak utworzyć własną metodę oceny w Machine Learning:

Więcej pomocy na temat R

Ta witryna zawiera listę skategoryzowanych pakietów, które można wyszukiwać według słów kluczowych:

Aby uzyskać dodatkowe przykłady kodu r i pomoc w pracy z kodem R i jego aplikacjami, zobacz następujące zasoby:

Zobacz też