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.
Zestaw 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 do momentu, gdy zostanie wyświetlony monit o dostarczenie danych.
Zestaw FileDataset jest tworzony przy użyciu from_files metody klasy FileDatasetFactory.
Aby uzyskać więcej informacji, zobacz artykuł Dodawanie i rejestrowanie 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 .
Konstruktor
FileDataset()
Uwagi
FileDataset może służyć jako dane wejściowe przebiegu eksperymentu. Można go również zarejestrować w obszarze roboczym o określonej nazwie i później pobrać według tej nazwy.
Zestaw FileDataset można podzestawować, wywołując różne metody podsettingu dostępne w tej klasie. Wynik podsettingu jest zawsze nowym zestawem danych 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/acr/connected-registry. 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 na docelowym obiekcie obliczeniowym. Lokalizację pobierania można pobrać z wartości argumentów i pola input_datasets kontekstu przebiegu. Automatycznie wygenerujemy nazwę danych wejściowych. Jeśli chcesz określić niestandardową nazwę danych wejściowych, wywołaj metodę as_named_input.
|
| as_hdfs |
Ustaw tryb na hdfs. W przesłanym uruchomieniu usługi Synapse pliki w zestawach danych zostaną przekonwertowane na ścieżkę lokalną w docelowym obiekcie obliczeniowym. Ścieżkę hdfs można pobrać z wartości argumentów i zmiennych środowiskowych systemu operacyjnego.
|
| 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 przebiegu. Automatycznie wygenerujemy nazwę danych wejściowych. Jeśli chcesz określić niestandardową nazwę danych wejściowych, wywołaj metodę as_named_input.
|
| 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/acr/connected-registry. 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/acr/connected-registry. 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/acr/connected-registry. 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 |
| 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/acr/connected-registry.
Utwórz element DatacacheConsumptionConfig zamapowany na datacache_store i zestaw danych.
as_cache(datacache_store)
Parametry
| Nazwa | Opis |
|---|---|
|
datacache_store
Wymagane
|
Magazyn danych, który ma być używany do nawilżania. |
Zwraca
| Typ | Opis |
|---|---|
|
Obiekt konfiguracji opisujący sposób materializacji pamięci podręcznej danych w przebiegu. |
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 na docelowym obiekcie obliczeniowym. Lokalizację pobierania można pobrać z wartości argumentów i pola input_datasets kontekstu przebiegu. Automatycznie wygenerujemy nazwę danych wejściowych. 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
| Nazwa | Opis |
|---|---|
|
path_on_compute
|
Ścieżka docelowa w obliczeniach w celu udostępnienia danych. Domyślna wartość: None
|
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 traktowany jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowany 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 uruchomieniu usługi Synapse pliki w zestawach danych zostaną przekonwertowane na ścieżkę lokalną w docelowym obiekcie obliczeniowym. Ś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 przebiegu. Automatycznie wygenerujemy nazwę danych wejściowych. 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
| Nazwa | Opis |
|---|---|
|
path_on_compute
|
Ścieżka docelowa w obliczeniach w celu udostępnienia danych. Domyślna wartość: None
|
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 traktowany jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowany 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
| Nazwa | Opis |
|---|---|
|
target_path
Wymagane
|
Katalog lokalny do pobrania plików. Jeśli brak, dane zostaną pobrane do katalogu tymczasowego. |
|
overwrite
Wymagane
|
Wskazuje, czy zastąpić istniejące pliki. Wartość domyślna to False. Istniejące pliki zostaną zastąpione w przypadku ustawienia zastąpienia na wartość True; w przeciwnym razie zostanie zgłoszony wyjątek. |
|
ignore_not_found
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 jest ustawiona na wartość False; W przeciwnym razie waring zostanie zarejestrowany w przypadku błędów, których nie znaleziono, a ładowanie zakończy się powodzeniem, o ile nie zostaną napotkane żadne inne typy błędów. |
Zwraca
| Typ | Opis |
|---|---|
|
Zwraca tablicę ścieżek plików dla każdego pobranego pliku. |
Uwagi
Jeśli target_path zaczyna się od /, będzie traktowany jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowany 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/acr/connected-registry.
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
| Nazwa | Opis |
|---|---|
|
col
Wymagane
|
Nazwa kolumny |
Zwraca
| Typ | Opis |
|---|---|
|
<xref:azureml.dataprep.api.expression.RecordFieldExpression>
|
Zwraca wyrażenie, które pobiera wartość w określonej kolumnie. |
filter
Uwaga
Jest to metoda eksperymentalna i może ulec zmianie w dowolnym momencie. Aby uzyskać więcej informacji, zobacz https://aka.ms/acr/connected-registry.
Przefiltruj dane, pozostawiając tylko rekordy zgodne z określonym wyrażeniem.
filter(expression)
Parametry
| Nazwa | Opis |
|---|---|
|
expression
Wymagane
|
<xref:azureml.dataprep.api.expression.Expression>
Wyrażenie do oceny. |
Zwraca
| Typ | Opis |
|---|---|
|
Zmodyfikowany zestaw danych (niezarejestrowany). |
Uwagi
Wyrażenia są uruchamiane przez indeksowanie zestawu danych z nazwą kolumny. Obsługują one różne funkcje i operatory i mogą być łączone 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 tam, gdzie jest definiowana.
(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/acr/connected-registry.
Nawodnienie zestawu danych do żądanych replik określonych w datacache_store.
hydrate(datacache_store, replica_count=None)
Parametry
| Nazwa | Opis |
|---|---|
|
datacache_store
Wymagane
|
Magazyn danych, który ma być używany do nawilżania. |
|
replica_count
Wymagane
|
<xref:Int>, <xref:optional>
Liczba replik do nawodnienia. |
Zwraca
| Typ | Opis |
|---|---|
|
Obiekt konfiguracji opisujący sposób materializacji pamięci podręcznej danych w przebiegu. |
mount
Utwórz menedżera kontekstu do instalowania strumieni plików zdefiniowanych przez zestaw danych jako pliki lokalne.
mount(mount_point=None, **kwargs)
Parametry
| Nazwa | Opis |
|---|---|
|
mount_point
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
| Typ | Opis |
|---|---|
|
<xref:MountContext>: <xref:the> <xref:context> <xref:manager.> <xref:Upon> <xref:entering> <xref:the> <xref:context> <xref:manager>, <xref:the> <xref:dataflow> <xref:will> <xref:be> <xref:mounted> <xref:to> <xref:the> <xref:mount_point.> <xref:Upon> exit, <xref:it> <xref:will> <xref:remove> <xref:the> mount <xref:point> <xref:and> clean <xref:up> <xref:the> <xref:daemon> <xref:process> <xref:used> <xref:to> mount <xref:the> <xref:dataflow.>
|
Zwraca menedżera kontekstu do zarządzania cyklem życia instalacji. |
Uwagi
Na potrzeby zarządzania cyklem życia instalacji zostanie zwrócony menedżer kontekstu. Aby zainstalować, musisz wprowadzić menedżera kontekstu i odinstalować go, 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, należy uruchomić kontener platformy Docker z flagą –privileged lub uruchomić polecenie –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 traktowany jako ścieżka bezwzględna. Jeśli nie zaczyna się od /, będzie traktowany 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
| Nazwa | Opis |
|---|---|
|
percentage
Wymagane
|
Przybliżona wartość procentowa dzielenia zestawu danych według. Musi to być liczba z zakresu od 0.0 do 1.0. |
|
seed
Wymagane
|
Opcjonalne inicjatory do użycia dla generatora losowego. |
Zwraca
| Typ | Opis |
|---|---|
|
Zwraca krotkę nowych obiektów FileDataset reprezentujących dwa zestawy danych po podziale. |
skip
Pomiń strumienie plików z góry zestawu danych według określonej liczby.
skip(count)
Parametry
| Nazwa | Opis |
|---|---|
|
count
Wymagane
|
Liczba strumieni plików do pominięcia. |
Zwraca
| Typ | Opis |
|---|---|
|
Zwraca nowy obiekt FileDataset reprezentujący zestaw danych ze strumieniami plików pominiętymi. |
take
Weź przykład strumieni plików z góry zestawu danych według określonej liczby.
take(count)
Parametry
| Nazwa | Opis |
|---|---|
|
count
Wymagane
|
Liczba strumieni plików do podjęcia. |
Zwraca
| Typ | Opis |
|---|---|
|
Zwraca nowy obiekt FileDataset reprezentujący przykładowy zestaw danych. |
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
| Nazwa | Opis |
|---|---|
|
probability
Wymagane
|
Prawdopodobieństwo dołączenia strumienia plików do próbki. |
|
seed
Wymagane
|
Opcjonalne inicjatory do użycia dla generatora losowego. |
Zwraca
| Typ | Opis |
|---|---|
|
Zwraca nowy obiekt FileDataset reprezentujący przykładowy zestaw danych. |
to_path
Pobierz listę ścieżek plików dla każdego strumienia plików zdefiniowanego przez zestaw danych.
to_path()
Zwraca
| Typ | Opis |
|---|---|
|
Zwraca tablicę ścieżek plików. |
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']