FileDataset Klasa

Reprezentuje kolekcję odwołań do plików w magazynach danych lub publicznych adresach URL do użycia w usłudze Azure Machine Learning.

Element FileDataset definiuje serię niezmienianych, niezmiennych operacji ładowania danych ze źródła danych do strumieni plików. Dane nie są ładowane ze źródła, dopóki zestaw FileDataset nie zostanie poproszony o dostarczenie danych.

Zestaw FileDataset jest tworzony przy użyciu from_files metody klasy FileDatasetFactory.

Aby uzyskać więcej informacji, zobacz artykuł Dodawanie & rejestrowania zestawów danych. Aby rozpocząć pracę z zestawem danych plików, zobacz https://aka.ms/filedataset-samplenotebook.

Zainicjuj obiekt FileDataset.

Ten konstruktor nie powinien być wywoływany bezpośrednio. Zestaw danych ma zostać utworzony przy użyciu FileDatasetFactory klasy.

Dziedziczenie
FileDataset

Konstruktor

FileDataset()

Uwagi

PlikDataset może służyć jako dane wejściowe przebiegu eksperymentu. Można ją również zarejestrować w obszarze roboczym o określonej nazwie i pobrać ją później.

Zestaw fileDataset można podzestawować, wywołując różne metody podsettingu dostępne w tej klasie. Wynik podsettingu jest zawsze nowym zestawem FileDataset.

Rzeczywiste ładowanie danych odbywa się, gdy zostanie wyświetlony monit o dostarczenie danych do innego mechanizmu magazynu (np. plików pobranych lub zainstalowanych do ścieżki lokalnej).

Metody

as_cache

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Utwórz element DatacacheConsumptionConfig zamapowany na datacache_store i zestaw danych.

as_download

Utwórz element DatasetConsumptionConfig z ustawionym trybem do pobrania.

W przesłanym przebiegu pliki w zestawie danych zostaną pobrane do ścieżki lokalnej w docelowym obiekcie obliczeniowym. Lokalizację pobierania można pobrać z wartości argumentów i pola input_datasets kontekstu przebiegu. Automatycznie wygenerujemy nazwę wejściową. Jeśli chcesz określić niestandardową nazwę danych wejściowych, wywołaj metodę as_named_input.


   # Given a run submitted with dataset input like this:
   dataset_input = dataset.as_download()
   experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))


   # Following are sample codes running in context of the submitted run:

   # The download location can be retrieved from argument values
   import sys
   download_location = sys.argv[1]

   # The download location can also be retrieved from input_datasets of the run context.
   from azureml.core import Run
   download_location = Run.get_context().input_datasets['input_1']
as_hdfs

Ustaw tryb na hdfs.

W przesłanym przebiegu synapse pliki w zestawach danych zostaną przekonwertowane na ścieżkę lokalną w obiekcie docelowym obliczeń. Ścieżkę hdfs można pobrać z wartości argumentów i zmiennych środowiskowych systemu operacyjnego.


   # Given a run submitted with dataset input like this:
   dataset_input = dataset.as_hdfs()
   experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))


   # Following are sample codes running in context of the submitted run:

   # The hdfs path can be retrieved from argument values
   import sys
   hdfs_path = sys.argv[1]

   # The hdfs path can also be retrieved from input_datasets of the run context.
   import os
   hdfs_path = os.environ['input_<hash>']
as_mount

Utwórz element DatasetConsumptionConfig z ustawionym trybem instalacji.

W przesłanym przebiegu pliki w zestawach danych zostaną zainstalowane do ścieżki lokalnej na docelowym obiekcie obliczeniowym. Punkt instalacji można pobrać z wartości argumentów i pola input_datasets kontekstu uruchomienia. Automatycznie wygenerujemy nazwę wejściową. Jeśli chcesz określić niestandardową nazwę danych wejściowych, wywołaj metodę as_named_input.


   # Given a run submitted with dataset input like this:
   dataset_input = dataset.as_mount()
   experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))


   # Following are sample codes running in context of the submitted run:

   # The mount point can be retrieved from argument values
   import sys
   mount_point = sys.argv[1]

   # The mount point can also be retrieved from input_datasets of the run context.
   from azureml.core import Run
   mount_point = Run.get_context().input_datasets['input_1']
download

Pobierz strumienie plików zdefiniowane przez zestaw danych jako pliki lokalne.

file_metadata

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Pobierz wyrażenie metadanych pliku, określając nazwę kolumny metadanych.

Obsługiwane kolumny metadanych pliku to Rozmiar, LastModifiedTime, CreationTime, Extension i CanSeek

filter

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Przefiltruj dane, pozostawiając tylko rekordy zgodne z określonym wyrażeniem.

hydrate

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Nawodnienie zestawu danych do żądanych replik określonych w datacache_store.

mount

Utwórz menedżera kontekstu do instalowania strumieni plików zdefiniowanych przez zestaw danych jako pliki lokalne.

random_split

Podziel strumienie plików w zestawie danych na dwie części losowo i w przybliżeniu według określonej wartości procentowej.

Zwrócony pierwszy zestaw danych zawiera około percentage całkowitej liczby odwołań do plików, a drugi zestaw danych zawiera pozostałe odwołania do plików.

skip

Pomiń strumienie plików z góry zestawu danych według określonej liczby.

take

Weź przykład strumieni plików z góry zestawu danych według określonej liczby.

take_sample

Weź losową próbkę strumieni plików w zestawie danych w przybliżeniu według określonego prawdopodobieństwa.

to_path

Pobierz listę ścieżek plików dla każdego strumienia plików zdefiniowanego przez zestaw danych.

as_cache

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Utwórz element DatacacheConsumptionConfig zamapowany na datacache_store i zestaw danych.

as_cache(datacache_store)

Parametry

datacache_store
DatacacheStore
Wymagane

Magazyn usługi datacache używany do nawodnienia.

Zwraca

Obiekt konfiguracji opisujący sposób materializacji pamięci podręcznej danych w przebiegu.

Typ zwracany

as_download

Utwórz element DatasetConsumptionConfig z ustawionym trybem do pobrania.

W przesłanym przebiegu pliki w zestawie danych zostaną pobrane do ścieżki lokalnej w docelowym obiekcie obliczeniowym. Lokalizację pobierania można pobrać z wartości argumentów i pola input_datasets kontekstu przebiegu. Automatycznie wygenerujemy nazwę wejściową. Jeśli chcesz określić niestandardową nazwę danych wejściowych, wywołaj metodę as_named_input.


   # Given a run submitted with dataset input like this:
   dataset_input = dataset.as_download()
   experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))


   # Following are sample codes running in context of the submitted run:

   # The download location can be retrieved from argument values
   import sys
   download_location = sys.argv[1]

   # The download location can also be retrieved from input_datasets of the run context.
   from azureml.core import Run
   download_location = Run.get_context().input_datasets['input_1']
as_download(path_on_compute=None)

Parametry

path_on_compute
str
wartość domyślna: None

Ścieżka docelowa w obliczeniach w celu udostępnienia danych.

Uwagi

Po utworzeniu zestawu danych na podstawie ścieżki pojedynczego pliku lokalizacja pobierania będzie ścieżką pojedynczego pobranego pliku. W przeciwnym razie lokalizacja pobierania będzie ścieżką otaczającego folderu dla wszystkich pobranych plików.

Jeśli path_on_compute zaczyna się od /, będzie traktowana jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowana jako ścieżka względna względem katalogu roboczego. Jeśli określono ścieżkę bezwzględną, upewnij się, że zadanie ma uprawnienia do zapisu w tym katalogu.

as_hdfs

Ustaw tryb na hdfs.

W przesłanym przebiegu synapse pliki w zestawach danych zostaną przekonwertowane na ścieżkę lokalną w obiekcie docelowym obliczeń. Ścieżkę hdfs można pobrać z wartości argumentów i zmiennych środowiskowych systemu operacyjnego.


   # Given a run submitted with dataset input like this:
   dataset_input = dataset.as_hdfs()
   experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))


   # Following are sample codes running in context of the submitted run:

   # The hdfs path can be retrieved from argument values
   import sys
   hdfs_path = sys.argv[1]

   # The hdfs path can also be retrieved from input_datasets of the run context.
   import os
   hdfs_path = os.environ['input_<hash>']
as_hdfs()

Uwagi

Po utworzeniu zestawu danych na podstawie ścieżki pojedynczego pliku ścieżka hdfs będzie ścieżką pojedynczego pliku. W przeciwnym razie ścieżka hdfs będzie ścieżką otaczającego folderu dla wszystkich zainstalowanych plików.

as_mount

Utwórz element DatasetConsumptionConfig z ustawionym trybem instalacji.

W przesłanym przebiegu pliki w zestawach danych zostaną zainstalowane do ścieżki lokalnej na docelowym obiekcie obliczeniowym. Punkt instalacji można pobrać z wartości argumentów i pola input_datasets kontekstu uruchomienia. Automatycznie wygenerujemy nazwę wejściową. Jeśli chcesz określić niestandardową nazwę danych wejściowych, wywołaj metodę as_named_input.


   # Given a run submitted with dataset input like this:
   dataset_input = dataset.as_mount()
   experiment.submit(ScriptRunConfig(source_directory, arguments=[dataset_input]))


   # Following are sample codes running in context of the submitted run:

   # The mount point can be retrieved from argument values
   import sys
   mount_point = sys.argv[1]

   # The mount point can also be retrieved from input_datasets of the run context.
   from azureml.core import Run
   mount_point = Run.get_context().input_datasets['input_1']
as_mount(path_on_compute=None)

Parametry

path_on_compute
str
wartość domyślna: None

Ścieżka docelowa w obliczeniach w celu udostępnienia danych.

Uwagi

Po utworzeniu zestawu danych na podstawie ścieżki pojedynczego pliku punkt instalacji będzie ścieżką pojedynczego zainstalowanego pliku. W przeciwnym razie punkt instalacji będzie ścieżką otaczającego folderu dla wszystkich zainstalowanych plików.

Jeśli path_on_compute zaczyna się od /, będzie traktowana jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowana jako ścieżka względna względem katalogu roboczego. Jeśli określono ścieżkę bezwzględną, upewnij się, że zadanie ma uprawnienia do zapisu w tym katalogu.

download

Pobierz strumienie plików zdefiniowane przez zestaw danych jako pliki lokalne.

download(target_path=None, overwrite=False, ignore_not_found=False)

Parametry

target_path
str
Wymagane

Katalog lokalny do pobrania plików. Jeśli brak, dane zostaną pobrane do katalogu tymczasowego.

overwrite
bool
Wymagane

Wskazuje, czy zastąpić istniejące pliki. Wartość domyślna to False. Istniejące pliki zostaną zastąpione, jeśli zastąpienie ma wartość True; w przeciwnym razie zostanie zgłoszony wyjątek.

ignore_not_found
bool
Wymagane

Wskazuje, czy pobieranie nie powiodło się, jeśli nie można odnaleźć niektórych plików wskazywanych przez zestaw danych. Wartość domyślna to False. Pobieranie zakończy się niepowodzeniem, jeśli jakiekolwiek pobieranie pliku zakończy się niepowodzeniem z jakiegokolwiek powodu, jeśli ignore_not_found ma wartość False; W przeciwnym razie waring zostanie zarejestrowany z powodu nieznajdujących się błędów, a dowload zakończy się powodzeniem, o ile nie zostaną napotkane żadne inne typy błędów.

Zwraca

Zwraca tablicę ścieżek plików dla każdego pobranego pliku.

Typ zwracany

Uwagi

Jeśli target_path zaczyna się od /, będzie traktowana jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowana jako ścieżka względna względem bieżącego katalogu roboczego.

file_metadata

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Pobierz wyrażenie metadanych pliku, określając nazwę kolumny metadanych.

Obsługiwane kolumny metadanych pliku to Rozmiar, LastModifiedTime, CreationTime, Extension i CanSeek

file_metadata(col)

Parametry

col
str
Wymagane

Nazwa kolumny

Zwraca

Zwraca wyrażenie, które pobiera wartość w określonej kolumnie.

Typ zwracany

<xref:azureml.dataprep.api.expression.RecordFieldExpression>

filter

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Przefiltruj dane, pozostawiając tylko rekordy zgodne z określonym wyrażeniem.

filter(expression)

Parametry

expression
<xref:azureml.dataprep.api.expression.Expression>
Wymagane

Wyrażenie do obliczenia.

Zwraca

Zmodyfikowany zestaw danych (niezarejestrowany).

Typ zwracany

Uwagi

Wyrażenia są uruchamiane przez indeksowanie zestawu danych z nazwą kolumny. Obsługują one różne funkcje i operatory i można je łączyć przy użyciu operatorów logicznych. Wynikowe wyrażenie zostanie z opóźnieniem obliczone dla każdego rekordu, gdy nastąpi ściąganie danych, a nie miejsce jego definiowania.


   (dataset.file_metadata('Size') > 10000) & (dataset.file_metadata('CanSeek') == True)
   dataset.file_metadata('Extension').starts_with('j')

hydrate

Uwaga

Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/azuremlexperimental.

Nawodnienie zestawu danych do żądanych replik określonych w datacache_store.

hydrate(datacache_store, replica_count=None)

Parametry

datacache_store
DatacacheStore
Wymagane

Magazyn usługi datacache używany do nawodnienia.

replica_count
<xref:Int>, <xref:optional>
Wymagane

Liczba replik do nawodnienia.

Zwraca

Obiekt konfiguracji opisujący sposób materializacji pamięci podręcznej danych w przebiegu.

Typ zwracany

mount

Utwórz menedżera kontekstu do instalowania strumieni plików zdefiniowanych przez zestaw danych jako pliki lokalne.

mount(mount_point=None, **kwargs)

Parametry

mount_point
str
Wymagane

Katalog lokalny do zainstalowania plików. Jeśli brak, dane zostaną zainstalowane w katalogu tymczasowym, który można znaleźć, wywołując metodę wystąpienia MountContext.mount_point .

Zwraca

Zwraca menedżera kontekstu do zarządzania cyklem życia instalacji.

Typ zwracany

<xref:<xref:MountContext: the context manager. Upon entering the context manager>, <xref:the dataflow will bemounted to the mount_point. Upon exit>, <xref:it will remove the mount point and clean up the daemon processused to mount the dataflow.>>

Uwagi

Na potrzeby zarządzania cyklem życia instalacji zostanie zwrócony menedżer kontekstu. Aby zainstalować, musisz wprowadzić menedżera kontekstu i odinstalować, zamknąć menedżera kontekstu.

Instalacja jest obsługiwana tylko w systemach operacyjnych Unix i podobnych do Unix z zainstalowanym pakietem natywnym libfuse. Jeśli korzystasz z kontenera platformy Docker, kontener platformy Docker musi zostać uruchomiony z flagą –privileged lub uruchomiony z funkcją –cap-add SYS_ADMIN –device /dev/fuse.


   datastore = Datastore.get(workspace, 'workspaceblobstore')
   dataset = Dataset.File.from_files((datastore, 'animals/dog/year-*/*.jpg'))

   with dataset.mount() as mount_context:
       # list top level mounted files and folders in the dataset
       os.listdir(mount_context.mount_point)

   # You can also use the start and stop methods
   mount_context = dataset.mount()
   mount_context.start()  # this will mount the file streams
   mount_context.stop()  # this will unmount the file streams

Jeśli target_path zaczyna się od /, będzie traktowana jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowana jako ścieżka względna względem bieżącego katalogu roboczego.

random_split

Podziel strumienie plików w zestawie danych na dwie części losowo i w przybliżeniu według określonej wartości procentowej.

Zwrócony pierwszy zestaw danych zawiera około percentage całkowitej liczby odwołań do plików, a drugi zestaw danych zawiera pozostałe odwołania do plików.

random_split(percentage, seed=None)

Parametry

percentage
float
Wymagane

Przybliżona wartość procentowa dzielenia zestawu danych według. Musi to być liczba z zakresu od 0.0 do 1.0.

seed
int
Wymagane

Opcjonalny nasion do użycia dla generatora losowego.

Zwraca

Zwraca krotkę nowych obiektów FileDataset reprezentujących dwa zestawy danych po podziale.

Typ zwracany

skip

Pomiń strumienie plików z góry zestawu danych według określonej liczby.

skip(count)

Parametry

count
int
Wymagane

Liczba strumieni plików do pominięcia.

Zwraca

Zwraca nowy obiekt FileDataset reprezentujący zestaw danych ze strumieniami plików pominiętymi.

Typ zwracany

take

Weź przykład strumieni plików z góry zestawu danych według określonej liczby.

take(count)

Parametry

count
int
Wymagane

Liczba strumieni plików do wykonania.

Zwraca

Zwraca nowy obiekt FileDataset reprezentujący przykładowy zestaw danych.

Typ zwracany

take_sample

Weź losową próbkę strumieni plików w zestawie danych w przybliżeniu według określonego prawdopodobieństwa.

take_sample(probability, seed=None)

Parametry

probability
float
Wymagane

Prawdopodobieństwo dołączenia strumienia plików do próbki.

seed
int
Wymagane

Opcjonalny nasion do użycia dla generatora losowego.

Zwraca

Zwraca nowy obiekt FileDataset reprezentujący przykładowy zestaw danych.

Typ zwracany

to_path

Pobierz listę ścieżek plików dla każdego strumienia plików zdefiniowanego przez zestaw danych.

to_path()

Zwraca

Zwraca tablicę ścieżek plików.

Typ zwracany

Uwagi

Ścieżki plików są ścieżkami względnymi dla plików lokalnych, gdy strumienie plików są pobierane lub instalowane.

Wspólny prefiks zostanie usunięty ze ścieżek plików na podstawie sposobu określenia źródła danych w celu utworzenia zestawu danych. Na przykład:


   datastore = Datastore.get(workspace, 'workspaceblobstore')
   dataset = Dataset.File.from_files((datastore, 'animals/dog/year-*/*.jpg'))
   print(dataset.to_path())

   # ['year-2018/1.jpg'
   #  'year-2018/2.jpg'
   #  'year-2019/1.jpg']

   dataset = Dataset.File.from_files('https://dprepdata.blob.core.windows.net/demo/green-small/*.csv')

   print(dataset.to_path())
   # ['/green_tripdata_2013-08.csv']