FileDataset Classe

Representa uma coleção de referências de arquivo em repositórios de armazenamento ou URLs públicas a serem usadas no Azure Machine Learning.

Um filedataset define uma série de operações imutáveis avaliadas lentamente para carregar dados da fonte de dados em fluxos de arquivos. Os dados não são carregados da origem até que filedataset seja solicitado a entregar dados.

Um filedataset é criado usando o from_files método da classe FileDatasetFactory.

Para obter mais informações, consulte o artigo adicionar & registrar conjuntosde dados. Para começar a trabalhar com um conjunto de um arquivo, consulte https://aka.ms/filedataset-samplenotebook .

Herança
FileDataset

Construtor

FileDataset()

Comentários

Filedataset pode ser usado como entrada de uma execução de experimento. Ele também pode ser registrado no espaço de trabalho com um nome especificado e ser recuperado por esse nome posteriormente.

Filedataset pode ser subdividida invocando-se métodos de subconfiguração diferentes disponíveis nessa classe. O resultado da subconfiguração é sempre um novo filedataset.

O carregamento de dados real ocorre quando filedataset é solicitado a entregar os dados em outro mecanismo de armazenamento (por exemplo, arquivos baixados ou montados no caminho local).

Métodos

as_download

Crie um DatasetConsumptionConfig com o modo definido para baixar.

Na execução enviada, os arquivos no conjunto de um serão baixados para o caminho local no destino de computação. O local de download pode ser recuperado dos valores de argumento e do campo input_datasets do contexto de execução. Geraremos automaticamente um nome de entrada. Se você quiser especificar um nome de entrada personalizado, chame o método 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

De definir o modo como hdfs.

Na executar o synapse enviado, os arquivos nos conjuntos de dados serão convertidos em caminho local no destino de computação. O caminho hdfs pode ser recuperado dos valores de argumento e das variáveis de ambiente do sistema operacional.


   # 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

Crie um DatasetConsumptionConfig com o modo definido para montagem.

Na executar enviada, os arquivos nos conjuntos de dados serão montados no caminho local no destino de computação. O ponto de montagem pode ser recuperado de valores de argumento e input_datasets campo do contexto de run. Geraremos automaticamente um nome de entrada. Se você quiser especificar um nome de entrada personalizado, chame o as_named_input método .


   # 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

Baixe fluxos de arquivos definidos pelo conjuntos de dados como arquivos locais.

file_metadata

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Obtenha a expressão de metadados do arquivo especificando o nome da coluna de metadados.

As colunas de metadados de arquivo com suporte são tamanho, LastModifiedtime, CreationTime, extensão e CanSeek

filter

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Filtre os dados, deixando apenas os registros que correspondam à expressão especificada.

mount

Crie um Gerenciador de contexto para montar fluxos de arquivos definidos pelo conjunto de um como arquivos locais.

random_split

Dividir fluxos de arquivos no conjuntos de dados em duas partes aleatoriamente e aproximadamente pelo percentual especificado.

O primeiro conjuntos de dados retornado contém aproximadamente o número total de referências de arquivo e o segundo conjuntos de dados percentage contém as referências de arquivo restantes.

skip

Ignore os fluxos de arquivos da parte superior do conjuntos de dados pela contagem especificada.

take

Pegue um exemplo de fluxos de arquivos da parte superior do conjuntos de dados pela contagem especificada.

take_sample

Faça um exemplo aleatório de fluxos de arquivo no conjunto de um aproximadamente pela probabilidade especificada.

to_path

Obtenha uma lista de caminhos de arquivo para cada fluxo de arquivo definido pelo conjunto de um.

as_download

Crie um DatasetConsumptionConfig com o modo definido para baixar.

Na execução enviada, os arquivos no conjunto de um serão baixados para o caminho local no destino de computação. O local de download pode ser recuperado dos valores de argumento e do campo input_datasets do contexto de execução. Geraremos automaticamente um nome de entrada. Se você quiser especificar um nome de entrada personalizado, chame o método 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)

Parâmetros

path_on_compute
<xref:str>
valor padrão: None

O caminho de destino na computação para disponibilizar os dados em.

Comentários

Quando o conjunto de criação é criado a partir do caminho de um único arquivo, o local de download será o caminho do único arquivo baixado. Caso contrário, o local de download será o caminho da pasta de circunscrição para todos os arquivos baixados.

Se path_on_compute começar com um/, ele será tratado como um caminho absoluto. Se ele não começar com um /, ele será tratado como um caminho relativo em relação ao diretório de trabalho. Se você tiver especificado um caminho absoluto, verifique se o trabalho tem permissão para gravar nesse diretório.

as_hdfs

De definir o modo como hdfs.

Na executar o synapse enviado, os arquivos nos conjuntos de dados serão convertidos em caminho local no destino de computação. O caminho hdfs pode ser recuperado dos valores de argumento e das variáveis de ambiente do sistema operacional.


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

Comentários

Quando o conjuntos de dados é criado a partir do caminho de um único arquivo, o caminho do hdfs será o caminho do único arquivo. Caso contrário, o caminho hdfs será o caminho da pasta delimitador para todos os arquivos montados.

as_mount

Crie um DatasetConsumptionConfig com o modo definido para montagem.

Na executar enviada, os arquivos nos conjuntos de dados serão montados no caminho local no destino de computação. O ponto de montagem pode ser recuperado de valores de argumento e input_datasets campo do contexto de run. Geraremos automaticamente um nome de entrada. Se você quiser especificar um nome de entrada personalizado, chame o as_named_input método .


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

Parâmetros

path_on_compute
<xref:str>
valor padrão: None

O caminho de destino na computação para disponibilizar os dados.

Comentários

Quando o conjuntos de dados é criado do caminho de um único arquivo, o ponto de montagem será o caminho do único arquivo montado. Caso contrário, o ponto de montagem será o caminho da pasta delimitador para todos os arquivos montados.

Se path_on_compute começar com um /, ele será tratado como um caminho absoluto. Se ele não começar com um /, ele será tratado como um caminho relativo em relação ao diretório de trabalho. Se você tiver especificado um caminho absoluto, verifique se o trabalho tem permissão para gravar nesse diretório.

download

Baixe fluxos de arquivos definidos pelo conjuntos de dados como arquivos locais.

download(target_path=None, overwrite=False)

Parâmetros

target_path
<xref:str>

O diretório local para o qual baixar os arquivos. Se nenhum, os dados serão baixados em um diretório temporário.

overwrite
<xref:bool>

Indica se os arquivos existentes devem ser substituídos. O padrão é False. Os arquivos existentes serão substituídos se substituir for definido como true; caso contrário, uma exceção será gerada.

Retornos

Retorna uma matriz de caminhos de arquivo para cada arquivo baixado.

Tipo de retorno

list(<xref:str>)

Comentários

Se target_path começar com um/, ele será tratado como um caminho absoluto. Se ele não começar com um/, ele será tratado como um caminho relativo relativo ao diretório de trabalho atual.

file_metadata

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Obtenha a expressão de metadados do arquivo especificando o nome da coluna de metadados.

As colunas de metadados de arquivo com suporte são tamanho, LastModifiedtime, CreationTime, extensão e CanSeek

file_metadata(col)

Parâmetros

col
<xref:str>

Nome da coluna

Retornos

Retorna uma expressão que recupera o valor na coluna especificada.

Tipo de retorno

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

filter

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Filtre os dados, deixando apenas os registros que correspondam à expressão especificada.

filter(expression)

Parâmetros

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

A expressão a ser avaliada.

Retornos

O DataSet modificado (não registrado).

Tipo de retorno

Comentários

As expressões são iniciadas indexando o conjunto de um com o nome de uma coluna. Eles dão suporte a uma variedade de funções e operadores e podem ser combinados usando operadores lógicos. A expressão resultante será avaliada lentamente para cada registro quando ocorrer um pull de dados e não para onde ele está definido.


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

mount

Crie um Gerenciador de contexto para montar fluxos de arquivos definidos pelo conjunto de um como arquivos locais.

mount(mount_point=None, **kwargs)

Parâmetros

mount_point
<xref:str>

O diretório local no qual montar os arquivos. Se Nenhum, os dados serão montados em um diretório temporário, que você pode encontrar chamando o método MountContext.mount_point instância.

Retornos

Retorna um gerenciador de contexto para gerenciar o ciclo de vida da montagem.

Tipo de retorno

Comentários

Um gerenciador de contexto será retornado para gerenciar o ciclo de vida da montagem. Para montar, você precisará inserir o gerenciador de contexto e desmontar, sair do gerenciador de contexto.

A montagem só tem suporte em sistemas operacionais unix ou unix com o pacote nativo libfuse instalado. Se você estiver executando dentro de um contêiner do Docker, o contêiner do docker deverá ser iniciado com o sinalizador --privileged ou iniciado com --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 começa com um /, ele será tratado como um caminho absoluto. Se ele não começar com um /, ele será tratado como um caminho relativo em relação ao diretório de trabalho atual.

random_split

Dividir fluxos de arquivos no conjuntos de dados em duas partes aleatoriamente e aproximadamente pelo percentual especificado.

O primeiro conjuntos de dados retornado contém aproximadamente o número total de referências de arquivo e o segundo conjuntos de dados percentage contém as referências de arquivo restantes.

random_split(percentage, seed=None)

Parâmetros

percentage
<xref:float>

O percentual aproximado pelo o que dividir o conjuntos de dados. Esse deve ser um número entre 0,0 e 1,0.

seed
<xref:int>

Uma semente opcional a ser usada para o gerador aleatório.

Retornos

Retorna uma tupla de novos objetos FileDataset que representam os dois conjuntos de dados após a divisão.

Tipo de retorno

skip

Ignore os fluxos de arquivos da parte superior do conjuntos de dados pela contagem especificada.

skip(count)

Parâmetros

count
<xref:int>

O número de fluxos de arquivos a ignorar.

Retornos

Retorna um novo objeto FileDataset que representa um conjuntos de dados com fluxos de arquivos ignorados.

Tipo de retorno

take

Pegue um exemplo de fluxos de arquivos da parte superior do conjuntos de dados pela contagem especificada.

take(count)

Parâmetros

count
<xref:int>

O número de fluxos de arquivos a levar.

Retornos

Retorna um novo objeto filedataset que representa o conjunto de dados de amostra.

Tipo de retorno

take_sample

Faça um exemplo aleatório de fluxos de arquivo no conjunto de um aproximadamente pela probabilidade especificada.

take_sample(probability, seed=None)

Parâmetros

probability
<xref:float>

A probabilidade de um fluxo de arquivo ser incluído no exemplo.

seed
<xref:int>

Uma semente opcional a ser usada para o gerador aleatório.

Retornos

Retorna um novo objeto filedataset que representa o conjunto de dados de amostra.

Tipo de retorno

to_path

Obtenha uma lista de caminhos de arquivo para cada fluxo de arquivo definido pelo conjunto de um.

to_path()

Retornos

Retorna uma matriz de caminhos de arquivo.

Tipo de retorno

list(<xref:str>)

Comentários

Os caminhos de arquivo são caminhos relativos para arquivos locais quando os fluxos de arquivo são baixados ou montados.

Um prefixo comum será removido dos caminhos de arquivo com base em como a fonte de dados foi especificada para criar o DataSet. Por exemplo:


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