Sdílet prostřednictvím


FileDataset Třída

Představuje kolekci odkazů na soubory v úložištích dat nebo veřejných adresÁCH URL, které se mají použít ve službě Azure Machine Learning.

FileDataset definuje řadu lazily vyhodnocených neměnných operací pro načtení dat ze zdroje dat do datových proudů souborů. Data se nenačtou ze zdroje, dokud se nezobrazí výzva k doručení dat FileDataset.

FileDataset je vytvořen pomocí from_files metody FileDatasetFactory třídy.

Další informace najdete v článku Přidání a registrace datových sad. Pokud chcete začít pracovat se souborovou datovou sadou, přečtěte si téma https://aka.ms/filedataset-samplenotebook.

Inicializace FileDataset objektu.

Tento konstruktor by neměl být vyvolán přímo. Datová sada je určená k vytvoření pomocí FileDatasetFactory třídy.

Konstruktor

FileDataset()

Poznámky

FileDataset lze použít jako vstup spuštění experimentu. Můžete ho také zaregistrovat do pracovního prostoru se zadaným názvem a později ho načíst.

FileDataset může být subsetted vyvoláním různých metod subsetting dostupných v této třídě. Výsledkem podnastavení je vždy nová sada FileDataset.

Skutečné načítání dat nastane, když se fileDataset požádá o doručení dat do jiného mechanismu úložiště (např. soubory stažené nebo připojené k místní cestě).

Metody

as_cache

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Vytvořte datacacheConsumptionConfig namapovanou na datacache_store a datovou sadu.

as_download

Vytvořte DatasetConsumptionConfig s režimem nastaveným ke stažení.

Při odeslaném spuštění se soubory v datové sadě stáhnou do místní cesty v cílovém výpočetním objektu. Umístění stahování lze načíst z hodnot argumentů a pole input_datasets kontextu spuštění. Automaticky vygenerujeme vstupní název. Pokud chcete zadat vlastní název vstupu, zavolejte metodu 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

Nastavte režim na hdfs.

Při odeslaném spuštění synapse se soubory v datových sadách převedou na místní cestu v cílovém výpočetním objektu. Cestu hdfs je možné načíst z hodnot argumentů a proměnných prostředí operačního systému.


   # 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

Vytvořte DatasetConsumptionConfig s režimem nastaveným na připojení.

Při odeslaném spuštění se soubory v datových sadách připojí k místní cestě v cílovém výpočetním objektu. Přípojný bod lze načíst z hodnot argumentů a pole input_datasets kontextu spuštění. Automaticky vygenerujeme vstupní název. Pokud chcete zadat vlastní název vstupu, zavolejte metodu 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

Stáhněte si streamy souborů definované datovou sadou jako místní soubory.

file_metadata

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Získejte výraz metadat souboru zadáním názvu sloupce metadat.

Podporované sloupce metadat souborů jsou Velikost, LastModifiedTime, CreationTime, Extension a CanSeek.

filter

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Vyfiltrujte data a ponechte jenom záznamy, které odpovídají zadanému výrazu.

hydrate

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Hydratujte datovou sadu do požadovaných replik zadaných v datacache_store.

mount

Vytvořte správce kontextu pro připojení datových proudů souborů definovaných datovou sadou jako místní soubory.

random_split

Rozdělte datové proudy v datové sadě na dvě části náhodně a přibližně podle zadaného procenta.

První vrácená datová sada obsahuje přibližně percentage celkový počet odkazů na soubor a druhá datová sada obsahuje zbývající odkazy na soubory.

skip

Přeskočte streamy souborů z horní části datové sady podle zadaného počtu.

take

Vezměte ukázku datových proudů souborů z horní části datové sady podle zadaného počtu.

take_sample

Vezměte náhodný vzorek datových proudů souborů v datové sadě přibližně podle zadané pravděpodobnosti.

to_path

Získejte seznam cest k souborům pro každý datový proud definovaný datovou sadou.

as_cache

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Vytvořte datacacheConsumptionConfig namapovanou na datacache_store a datovou sadu.

as_cache(datacache_store)

Parametry

Name Description
datacache_store
Vyžadováno

Úložiště dat, které se má použít k hydrataci.

Návraty

Typ Description

Objekt konfigurace popisující, jak má být datacache materializována při spuštění.

as_download

Vytvořte DatasetConsumptionConfig s režimem nastaveným ke stažení.

Při odeslaném spuštění se soubory v datové sadě stáhnou do místní cesty v cílovém výpočetním objektu. Umístění stahování lze načíst z hodnot argumentů a pole input_datasets kontextu spuštění. Automaticky vygenerujeme vstupní název. Pokud chcete zadat vlastní název vstupu, zavolejte metodu 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

Name Description
path_on_compute
str

Cílová cesta na výpočetních prostředcích, aby byla data k dispozici na adrese.

Default value: None

Poznámky

Když se datová sada vytvoří z cesty jednoho souboru, umístění pro stažení bude cesta jednoho staženého souboru. V opačném případě bude umístění pro stahování cesta k ohraničující složce pro všechny stažené soubory.

Pokud path_on_compute začíná řetězcem /, bude považován za absolutní cestu. Pokud nezačíná na /, bude se považovat za relativní cestu relativní vzhledem k pracovnímu adresáři. Pokud jste zadali absolutní cestu, ujistěte se, že má úloha oprávnění k zápisu do daného adresáře.

as_hdfs

Nastavte režim na hdfs.

Při odeslaném spuštění synapse se soubory v datových sadách převedou na místní cestu v cílovém výpočetním objektu. Cestu hdfs je možné načíst z hodnot argumentů a proměnných prostředí operačního systému.


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

Poznámky

Když se datová sada vytvoří z cesty jednoho souboru, cesta hdfs bude cesta jednoho souboru. Jinak cesta hdfs bude cesta k nadřazené složce pro všechny připojené soubory.

as_mount

Vytvořte DatasetConsumptionConfig s režimem nastaveným na připojení.

Při odeslaném spuštění se soubory v datových sadách připojí k místní cestě v cílovém výpočetním objektu. Přípojný bod lze načíst z hodnot argumentů a pole input_datasets kontextu spuštění. Automaticky vygenerujeme vstupní název. Pokud chcete zadat vlastní název vstupu, zavolejte metodu 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

Name Description
path_on_compute
str

Cílová cesta na výpočetních prostředcích, aby byla data k dispozici na adrese.

Default value: None

Poznámky

Když se datová sada vytvoří z cesty jednoho souboru, přípojný bod bude cesta k jednomu připojenému souboru. Jinak bude přípojný bod cesta k nadřazené složce pro všechny připojené soubory.

Pokud path_on_compute začíná řetězcem /, bude považován za absolutní cestu. Pokud nezačíná na /, bude se považovat za relativní cestu relativní vzhledem k pracovnímu adresáři. Pokud jste zadali absolutní cestu, ujistěte se, že má úloha oprávnění k zápisu do daného adresáře.

download

Stáhněte si streamy souborů definované datovou sadou jako místní soubory.

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

Parametry

Name Description
target_path
Vyžadováno
str

Místní adresář pro stažení souborů do. Pokud žádná, data se stáhnou do dočasného adresáře.

overwrite
Vyžadováno

Určuje, zda chcete přepsat existující soubory. Výchozí hodnota je False. Existující soubory budou přepsány, pokud je přepsání nastaveno na Hodnotu True; jinak bude vyvolána výjimka.

ignore_not_found
Vyžadováno

Označuje, jestli se nepodaří stáhnout některé soubory odkazované na datovou sadu. Výchozí hodnota je False. Stahování selže, pokud se z nějakého důvodu nepodaří stáhnout nějaký soubor, pokud je ignore_not_found nastavena na False; jinak bude zaprotokolován waring pro nenalezené chyby a dowload bude úspěšný, pokud nebudou zjištěny žádné jiné typy chyb.

Návraty

Typ Description

Vrátí pole cest k souborům pro každý stažený soubor.

Poznámky

Pokud target_path začíná řetězcem /, bude považován za absolutní cestu. Pokud nezačíná na /, bude považován za relativní cestu vzhledem k aktuálnímu pracovnímu adresáři.

file_metadata

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Získejte výraz metadat souboru zadáním názvu sloupce metadat.

Podporované sloupce metadat souborů jsou Velikost, LastModifiedTime, CreationTime, Extension a CanSeek.

file_metadata(col)

Parametry

Name Description
col
Vyžadováno
str

Název sloupce

Návraty

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

Vrátí výraz, který načte hodnotu v zadaném sloupci.

filter

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Vyfiltrujte data a ponechte jenom záznamy, které odpovídají zadanému výrazu.

filter(expression)

Parametry

Name Description
expression
Vyžadováno
<xref:azureml.dataprep.api.expression.Expression>

Výraz, který se má vyhodnotit.

Návraty

Typ Description

Upravená datová sada (zrušená registrace)

Poznámky

Výrazy se spouští indexováním datové sady s názvem sloupce. Podporují různé funkce a operátory a lze je kombinovat pomocí logických operátorů. Výsledný výraz se bude líně vyhodnocovat pro každý záznam, když dojde k načtení dat, a ne tam, kde je definován.


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

hydrate

Poznámka:

Jedná se o experimentální metodu a může se kdykoli změnit. Další informace najdete tady: https://aka.ms/acr/connected-registry.

Hydratujte datovou sadu do požadovaných replik zadaných v datacache_store.

hydrate(datacache_store, replica_count=None)

Parametry

Name Description
datacache_store
Vyžadováno

Úložiště dat, které se má použít k hydrataci.

replica_count
Vyžadováno
<xref:Int>, <xref:optional>

Počet replik na hydrataci.

Návraty

Typ Description

Objekt konfigurace popisující, jak má být datacache materializována při spuštění.

mount

Vytvořte správce kontextu pro připojení datových proudů souborů definovaných datovou sadou jako místní soubory.

mount(mount_point=None, **kwargs)

Parametry

Name Description
mount_point
Vyžadováno
str

Místní adresář pro připojení souborů. Pokud none, data budou připojena do dočasného adresáře, který můžete najít voláním MountContext.mount_point instance metoda.

Návraty

Typ Description
<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.>

Vrátí správce kontextu pro správu životního cyklu připojení.

Poznámky

Vrátí se správce kontextu umožňující spravovat životní cyklus připojení. Pokud chcete připojení připojit, budete muset zadat správce kontextu a odpojit ho, ukončit ho od správce kontextu.

Připojení se podporuje pouze v operačních systémech Unix nebo na bázi systému Unix s nainstalovaným nativním balíčkem libfuse. Pokud běžíte uvnitř kontejneru Dockeru, musí být kontejner Dockeru spuštěný pomocí příznaku -privileged nebo spuštěním příkazu –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

Pokud target_path začíná řetězcem /, bude považován za absolutní cestu. Pokud nezačíná na /, bude považován za relativní cestu vzhledem k aktuálnímu pracovnímu adresáři.

random_split

Rozdělte datové proudy v datové sadě na dvě části náhodně a přibližně podle zadaného procenta.

První vrácená datová sada obsahuje přibližně percentage celkový počet odkazů na soubor a druhá datová sada obsahuje zbývající odkazy na soubory.

random_split(percentage, seed=None)

Parametry

Name Description
percentage
Vyžadováno

Přibližné procento rozdělení datové sady podle. Musí to být číslo od 0,0 do 1,0.

seed
Vyžadováno
int

Volitelná počáteční hodnota, která se použije pro náhodný generátor.

Návraty

Typ Description

Vrátí řazenou kolekci nových objektů FileDataset představujících dvě datové sady po rozdělení.

skip

Přeskočte streamy souborů z horní části datové sady podle zadaného počtu.

skip(count)

Parametry

Name Description
count
Vyžadováno
int

Počet datových proudů souborů, které chcete přeskočit.

Návraty

Typ Description

Vrátí nový objekt FileDataset představující datovou sadu s přeskočenými datovými proudy souborů.

take

Vezměte ukázku datových proudů souborů z horní části datové sady podle zadaného počtu.

take(count)

Parametry

Name Description
count
Vyžadováno
int

Počet datových proudů souborů, které se mají vzít.

Návraty

Typ Description

Vrátí nový objekt FileDataset představující ukázkovou datovou sadu.

take_sample

Vezměte náhodný vzorek datových proudů souborů v datové sadě přibližně podle zadané pravděpodobnosti.

take_sample(probability, seed=None)

Parametry

Name Description
probability
Vyžadováno

Pravděpodobnost, že se do vzorku zahrne datový proud souboru.

seed
Vyžadováno
int

Volitelná počáteční hodnota, která se použije pro náhodný generátor.

Návraty

Typ Description

Vrátí nový objekt FileDataset představující ukázkovou datovou sadu.

to_path

Získejte seznam cest k souborům pro každý datový proud definovaný datovou sadou.

to_path()

Návraty

Typ Description

Vrátí pole cest k souborům.

Poznámky

Cesty k souborům jsou relativní cesty pro místní soubory při stahování nebo připojení datových proudů souborů.

Z cest k souborům se odebere běžná předpona na základě způsobu zadání zdroje dat pro vytvoření datové sady. Například:


   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']