FileDataset Classe

Rappresenta una raccolta di riferimenti ai file negli archivi dati o negli URL pubblici da usare in Azure Machine Learning.

Un FileDataset definisce una serie di operazioni valutate in modo non modificabile per caricare i dati dall'origine dati nei flussi di file. I dati non vengono caricati dall'origine finché Non viene richiesto a FileDataset di recapitare i dati.

Viene creato un FileDataset usando il from_files metodo della classe FileDatasetFactory.

Per altre informazioni, vedere l'articolo Aggiungere set di dati di registrazione &. Per iniziare a usare un set di dati di file, vedere https://aka.ms/filedataset-samplenotebook.

Inizializzare l'oggetto FileDataset.

Questo costruttore non dovrebbe essere richiamato direttamente. Il set di dati deve essere creato usando FileDatasetFactory la classe .

Ereditarietà
FileDataset

Costruttore

FileDataset()

Commenti

FileDataset può essere usato come input di un'esecuzione dell'esperimento. Può anche essere registrato nell'area di lavoro con un nome specificato e essere recuperato in seguito da tale nome.

FileDataset può essere sottoinsieme richiamando diversi metodi di sottoinsieme disponibili in questa classe. Il risultato della sottoinsieme è sempre un nuovo FileDataset.

Il caricamento effettivo dei dati si verifica quando viene richiesto a FileDataset di distribuire i dati in un altro meccanismo di archiviazione(ad esempio i file scaricati o montati nel percorso locale).

Metodi

as_cache

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Creare un oggetto DatacacheConsumptionConfig mappato a un datacache_store e a un set di dati.

as_download

Creare un oggetto DatasetConsumptionConfig con la modalità impostata per il download.

Nell'esecuzione inviata i file nel set di dati verranno scaricati nel percorso locale nella destinazione di calcolo. Il percorso di download può essere recuperato dai valori degli argomenti e dal campo input_datasets del contesto di esecuzione. Verrà generato automaticamente un nome di input. Se si desidera specificare un nome di input personalizzato, chiamare il metodo 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

Impostare la modalità su hdfs.

Nell'esecuzione di synapse inviata i file nei set di dati verranno convertiti nel percorso locale nella destinazione di calcolo. Il percorso hdfs può essere recuperato dai valori degli argomenti e dalle variabili di ambiente del sistema operativo.


   # 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

Creare un oggetto DatasetConsumptionConfig con la modalità impostata per il montaggio.

Nell'esecuzione inviata i file nei set di dati verranno montati nel percorso locale nella destinazione di calcolo. Il punto di montaggio può essere recuperato dai valori degli argomenti e dal campo input_datasets del contesto di esecuzione. Verrà generato automaticamente un nome di input. Se si desidera specificare un nome di input personalizzato, chiamare il metodo 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

Scaricare i flussi di file definiti dal set di dati come file locali.

file_metadata

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Ottenere l'espressione dei metadati del file specificando il nome della colonna dei metadati.

Le colonne dei metadati dei file supportate sono Size, LastModifiedTime, CreationTime, Extension e CanSeek

filter

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Filtrare i dati, lasciando solo i record che corrispondono all'espressione specificata.

hydrate

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Idratare il set di dati nelle repliche richieste specificate in datacache_store.

mount

Creare una gestione contesto per il montaggio di flussi di file definiti dal set di dati come file locali.

random_split

Suddividere i flussi di file nel set di dati in due parti in modo casuale e approssimativamente in base alla percentuale specificata.

Il primo set di dati restituito contiene circa percentage il numero totale di riferimenti al file e il secondo set di dati contiene i riferimenti ai file rimanenti.

skip

Ignorare i flussi di file dall'inizio del set di dati dal conteggio specificato.

take

Eseguire un esempio di flussi di file dall'inizio del set di dati dal conteggio specificato.

take_sample

Eseguire un esempio casuale di flussi di file nel set di dati approssimativamente in base alla probabilità specificata.

to_path

Ottenere un elenco di percorsi di file per ogni flusso di file definito dal set di dati.

as_cache

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Creare un oggetto DatacacheConsumptionConfig mappato a un datacache_store e a un set di dati.

as_cache(datacache_store)

Parametri

datacache_store
DatacacheStore
Necessario

Datacachestore da usare per idratare.

Restituisce

Oggetto di configurazione che descrive la modalità di materializzazione della datacache nell'esecuzione.

Tipo restituito

as_download

Creare un oggetto DatasetConsumptionConfig con la modalità impostata per il download.

Nell'esecuzione inviata i file nel set di dati verranno scaricati nel percorso locale nella destinazione di calcolo. Il percorso di download può essere recuperato dai valori degli argomenti e dal campo input_datasets del contesto di esecuzione. Verrà generato automaticamente un nome di input. Se si desidera specificare un nome di input personalizzato, chiamare il metodo 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)

Parametri

path_on_compute
str
valore predefinito: None

Percorso di destinazione nel calcolo in cui rendere disponibili i dati.

Commenti

Quando il set di dati viene creato dal percorso di un singolo file, il percorso di download sarà il percorso del singolo file scaricato. In caso contrario, il percorso di download sarà il percorso della cartella di inclusione per tutti i file scaricati.

Se path_on_compute inizia con un oggetto /, verrà considerato come un percorso assoluto. Se non inizia con un oggetto /, verrà considerato come un percorso relativo rispetto alla directory di lavoro. Se è stato specificato un percorso assoluto, assicurarsi che il processo disponga dell'autorizzazione per la scrittura in tale directory.

as_hdfs

Impostare la modalità su hdfs.

Nell'esecuzione di synapse inviata i file nei set di dati verranno convertiti nel percorso locale nella destinazione di calcolo. Il percorso hdfs può essere recuperato dai valori degli argomenti e dalle variabili di ambiente del sistema operativo.


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

Commenti

Quando il set di dati viene creato dal percorso di un singolo file, il percorso hdfs sarà il percorso del singolo file. In caso contrario, il percorso hdfs sarà il percorso della cartella di inclusione per tutti i file montati.

as_mount

Creare un oggetto DatasetConsumptionConfig con la modalità impostata per il montaggio.

Nell'esecuzione inviata i file nei set di dati verranno montati nel percorso locale nella destinazione di calcolo. Il punto di montaggio può essere recuperato dai valori degli argomenti e dal campo input_datasets del contesto di esecuzione. Verrà generato automaticamente un nome di input. Se si desidera specificare un nome di input personalizzato, chiamare il metodo 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)

Parametri

path_on_compute
str
valore predefinito: None

Percorso di destinazione nel calcolo in cui rendere disponibili i dati.

Commenti

Quando il set di dati viene creato dal percorso di un singolo file, il punto di montaggio sarà il percorso del singolo file montato. In caso contrario, il punto di montaggio sarà il percorso della cartella di inclusione per tutti i file montati.

Se path_on_compute inizia con un oggetto /, verrà considerato come un percorso assoluto. Se non inizia con un oggetto /, verrà considerato come un percorso relativo rispetto alla directory di lavoro. Se è stato specificato un percorso assoluto, assicurarsi che il processo disponga dell'autorizzazione per la scrittura in tale directory.

download

Scaricare i flussi di file definiti dal set di dati come file locali.

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

Parametri

target_path
str
Necessario

Directory locale in cui scaricare i file. Se Nessuno, i dati verranno scaricati in una directory temporanea.

overwrite
bool
Necessario

Indica se sovrascrivere i file esistenti. Il valore predefinito è False. I file esistenti verranno sovrascritti se la sovrascrittura è impostata su True; in caso contrario, verrà generata un'eccezione.

ignore_not_found
bool
Necessario

Indica se il download non riesce se alcuni file a cui punta il set di dati non vengono trovati. Il valore predefinito è False. Il download avrà esito negativo se il download di file non riesce per qualsiasi motivo se ignore_not_found è impostato su False; in caso contrario, verrà registrata una waring per errori non trovati e il dowload avrà esito positivo finché non vengono rilevati altri tipi di errore.

Restituisce

Restituisce una matrice di percorsi di file per ogni file scaricato.

Tipo restituito

Commenti

Se target_path inizia con un oggetto /, verrà considerato come un percorso assoluto. Se non inizia con un oggetto /, verrà considerato come un percorso relativo rispetto alla directory di lavoro corrente.

file_metadata

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Ottenere l'espressione dei metadati del file specificando il nome della colonna dei metadati.

Le colonne dei metadati dei file supportate sono Size, LastModifiedTime, CreationTime, Extension e CanSeek

file_metadata(col)

Parametri

col
str
Necessario

Nome della colonna

Restituisce

Restituisce un'espressione che recupera il valore nella colonna specificata.

Tipo restituito

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

filter

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Filtrare i dati, lasciando solo i record che corrispondono all'espressione specificata.

filter(expression)

Parametri

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

Espressione da valutare.

Restituisce

Set di dati modificato (non registrato).

Tipo restituito

Commenti

Le espressioni vengono avviate indicizzando il set di dati con il nome di una colonna. Supportano un'ampia gamma di funzioni e operatori e possono essere combinati usando operatori logici. L'espressione risultante verrà valutata in modo differito per ogni record quando si verifica un pull dei dati e non la posizione in cui è definita.


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

hydrate

Nota

Si tratta di un metodo sperimentale e può cambiare in qualsiasi momento. Per altre informazioni, vedere https://aka.ms/azuremlexperimental.

Idratare il set di dati nelle repliche richieste specificate in datacache_store.

hydrate(datacache_store, replica_count=None)

Parametri

datacache_store
DatacacheStore
Necessario

Datacachestore da usare per idratare.

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

Numero di repliche da idratare.

Restituisce

Oggetto di configurazione che descrive la modalità di materializzazione della datacache nell'esecuzione.

Tipo restituito

mount

Creare una gestione contesto per il montaggio di flussi di file definiti dal set di dati come file locali.

mount(mount_point=None, **kwargs)

Parametri

mount_point
str
Necessario

Directory locale in cui montare i file. Se Nessuno, i dati verranno montati in una directory temporanea, che è possibile trovare chiamando il metodo di istanza di MountContext.mount_point .

Restituisce

Restituisce un gestore del contesto per la gestione del ciclo di vita del montaggio.

Tipo restituito

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

Commenti

Verrà restituita una gestione contesto per gestire il ciclo di vita del montaggio. Per montare, sarà necessario immettere gestione contesto e smontare, uscire dalla gestione contesto.

Il montaggio è supportato solo nei sistemi operativi Unix o equivalenti con il pacchetto nativo libfuse installato. Se si esegue all'interno di un contenitore docker, il contenitore docker deve essere avviato con il flag con privilegi o avviato con –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

Se target_path inizia con un oggetto /, verrà considerato come un percorso assoluto. Se non inizia con un oggetto /, verrà considerato come percorso relativo rispetto alla directory di lavoro corrente.

random_split

Suddividere i flussi di file nel set di dati in due parti in modo casuale e approssimativamente in base alla percentuale specificata.

Il primo set di dati restituito contiene circa percentage il numero totale di riferimenti al file e il secondo set di dati contiene i riferimenti ai file rimanenti.

random_split(percentage, seed=None)

Parametri

percentage
float
Necessario

Percentuale approssimativa per dividere il set di dati. Questo deve essere un numero compreso tra 0,0 e 1,0.

seed
int
Necessario

Inizializzazione facoltativa da usare per il generatore casuale.

Restituisce

Restituisce una tupla di nuovi oggetti FileDataset che rappresentano i due set di dati dopo la suddivisione.

Tipo restituito

skip

Ignorare i flussi di file dall'inizio del set di dati dal conteggio specificato.

skip(count)

Parametri

count
int
Necessario

Numero di flussi di file da ignorare.

Restituisce

Restituisce un nuovo oggetto FileDataset che rappresenta un set di dati con flussi di file ignorati.

Tipo restituito

take

Eseguire un esempio di flussi di file dall'inizio del set di dati dal conteggio specificato.

take(count)

Parametri

count
int
Necessario

Numero di flussi di file da eseguire.

Restituisce

Restituisce un nuovo oggetto FileDataset che rappresenta il set di dati di esempio.

Tipo restituito

take_sample

Eseguire un esempio casuale di flussi di file nel set di dati approssimativamente in base alla probabilità specificata.

take_sample(probability, seed=None)

Parametri

probability
float
Necessario

Probabilità di un flusso di file incluso nell'esempio.

seed
int
Necessario

Inizializzazione facoltativa da usare per il generatore casuale.

Restituisce

Restituisce un nuovo oggetto FileDataset che rappresenta il set di dati di esempio.

Tipo restituito

to_path

Ottenere un elenco di percorsi di file per ogni flusso di file definito dal set di dati.

to_path()

Restituisce

Restituisce una matrice di percorsi di file.

Tipo restituito

Commenti

I percorsi dei file sono percorsi relativi per i file locali quando i flussi di file vengono scaricati o montati.

Un prefisso comune verrà rimosso dai percorsi dei file in base al modo in cui è stata specificata l'origine dati per creare il set di dati. Ad esempio:


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