Componente Partição e Amostra
Este artigo descreve um componente no designer do Azure Machine Learning.
Use o componente Partição e Exemplo para executar a amostragem em um conjunto de dados ou para criar partições a partir do seu conjunto de dados.
A amostragem é uma ferramenta importante no aprendizado de máquina porque permite reduzir o tamanho de um conjunto de dados, mantendo a mesma proporção de valores. Este componente suporta várias tarefas relacionadas que são importantes no aprendizado de máquina:
Dividir seus dados em várias subseções do mesmo tamanho.
Você pode usar as partições para validação cruzada ou para atribuir casos a grupos aleatórios.
Separar dados em grupos e, em seguida, trabalhar com dados de um grupo específico.
Depois de atribuir casos aleatoriamente a grupos diferentes, talvez seja necessário modificar os recursos associados a apenas um grupo.
Amostragem.
Você pode extrair uma porcentagem dos dados, aplicar amostragem aleatória ou escolher uma coluna para usar para equilibrar o conjunto de dados e executar amostragem estratificada em seus valores.
Criação de um conjunto de dados menor para teste.
Se você tiver muitos dados, convém usar apenas as primeiras n linhas durante a configuração do pipeline e, em seguida, alternar para usar o conjunto de dados completo ao criar seu modelo. Você também pode usar a amostragem para criar um conjunto de dados menor para uso no desenvolvimento.
Configurar o componente
Este componente suporta os seguintes métodos para dividir seus dados em partições ou para amostragem. Escolha o método primeiro e, em seguida, defina opções adicionais que o método requer.
- Head
- Amostragem
- Atribuir a dobras
- Dobra de escolha
Obter TOP N linhas de um conjunto de dados
Use este modo para obter apenas as primeiras n linhas. Essa opção é útil se você quiser testar um pipeline em um pequeno número de linhas e não precisar que os dados sejam balanceados ou amostrados de forma alguma.
Adicione o componente Partição e Exemplo ao pipeline na interface e conecte o conjunto de dados.
Modo de partição ou exemplo: defina esta opção como Cabeçalho.
Número de linhas a selecionar: introduza o número de linhas a devolver.
O número de linhas deve ser um número inteiro não negativo. Se o número de linhas selecionadas for maior do que o número de linhas no conjunto de dados, todo o conjunto de dados será retornado.
Envie o pipeline.
O componente gera um único conjunto de dados que contém apenas o número especificado de linhas. As linhas são sempre lidas a partir da parte superior do conjunto de dados.
Criar uma amostra de dados
Esta opção suporta amostragem aleatória simples ou amostragem aleatória estratificada. É útil se você quiser criar um conjunto de dados de amostra representativo menor para teste.
Adicione o componente Partição e Amostra ao pipeline e conecte o conjunto de dados.
Modo de partição ou exemplo: defina esta opção como Amostragem.
Taxa de amostragem: insira um valor entre 0 e 1. Esse valor especifica a porcentagem de linhas do conjunto de dados de origem que devem ser incluídas no conjunto de dados de saída.
Por exemplo, se você quiser apenas metade do conjunto de dados original, insira
0.5
para indicar que a taxa de amostragem deve ser de 50%.As linhas do conjunto de dados de entrada são embaralhadas e colocadas seletivamente no conjunto de dados de saída, de acordo com a proporção especificada.
Semente aleatória para amostragem: Opcionalmente, insira um inteiro para usar como valor de semente.
Esta opção é importante se pretender que as linhas sejam sempre divididas da mesma forma. O valor padrão é 0, o que significa que uma semente inicial é gerada com base no relógio do sistema. Esse valor pode levar a resultados ligeiramente diferentes cada vez que você executa o pipeline.
Divisão estratificada para amostragem: selecione esta opção se for importante que as linhas no conjunto de dados sejam divididas uniformemente por alguma coluna de chave antes da amostragem.
Em Coluna de chave de estratificação para amostragem, selecione uma única coluna de estratos a ser usada ao dividir o conjunto de dados. As linhas no conjunto de dados são então divididas da seguinte forma:
Todas as linhas de entrada são agrupadas (estratificadas) pelos valores na coluna de estratos especificada.
As linhas são embaralhadas dentro de cada grupo.
Cada grupo é adicionado seletivamente ao conjunto de dados de saída para atender à proporção especificada.
Envie o pipeline.
Com essa opção, o componente produz um único conjunto de dados que contém uma amostra representativa dos dados. A parte restante e não amostrada do conjunto de dados não é saída.
Dividir dados em partições
Use esta opção quando quiser dividir o conjunto de dados em subconjuntos dos dados. Essa opção também é útil quando você deseja criar um número personalizado de dobras para validação cruzada ou dividir linhas em vários grupos.
Adicione o componente Partição e Amostra ao pipeline e conecte o conjunto de dados.
Para o modo de partição ou exemplo, selecione Atribuir a dobras.
Usar substituição no particionamento: Selecione esta opção se quiser que a linha de amostra seja colocada de volta no pool de linhas para possível reutilização. Como resultado, a mesma linha pode ser atribuída a várias dobras.
Se você não usar a substituição (a opção padrão), a linha de amostra não será colocada novamente no pool de linhas para possível reutilização. Como resultado, cada linha pode ser atribuída a apenas uma dobra.
Divisão aleatória: selecione esta opção se quiser que as linhas sejam atribuídas aleatoriamente a dobras.
Se você não selecionar essa opção, as linhas serão atribuídas a dobras por meio do método round-robin.
Semente aleatória: Opcionalmente, insira um inteiro para usar como valor de semente. Esta opção é importante se pretender que as linhas sejam sempre divididas da mesma forma. Caso contrário, o valor padrão de 0 significa que uma semente inicial aleatória será usada.
Especifique o método do particionador: Indique como você deseja que os dados sejam distribuídos para cada partição, usando estas opções:
Partição uniforme: use esta opção para colocar um número igual de linhas em cada partição. Para especificar o número de partições de saída, insira um número inteiro na caixa Especificar número de dobras para dividir uniformemente .
Partição com proporções personalizadas: use esta opção para especificar o tamanho de cada partição como uma lista separada por vírgula.
Por exemplo, suponha que você deseja criar três partições. A primeira partição conterá 50% dos dados. As duas partições restantes conterão, cada uma, 25% dos dados. Na caixa Lista de proporções separadas por vírgula, insira estes números: .5, .25, .25.
A soma de todos os tamanhos de partição deve somar exatamente 1.
Se introduzir números que somem menos de 1, é criada uma partição extra para guardar as linhas restantes. Por exemplo, se você inserir os valores .2 e .3, uma terceira partição será criada para armazenar os 50% restantes de todas as linhas.
Se você inserir números que somam mais de 1, um erro será gerado quando você executar o pipeline.
Divisão estratificada: selecione esta opção se quiser que as linhas sejam estratificadas quando divididas e, em seguida, escolha a coluna estratos.
Envie o pipeline.
Com essa opção, o componente gera vários conjuntos de dados. Os conjuntos de dados são particionados de acordo com as regras especificadas.
Usar dados de uma partição predefinida
Use esta opção quando tiver dividido um conjunto de dados em várias partições e agora quiser carregar cada partição por sua vez para análise ou processamento posterior.
Adicione o componente Partição e Amostra ao pipeline.
Conecte o componente à saída de uma instância anterior de Partition e Sample. Essa instância deve ter usado a opção Atribuir a dobras para gerar algum número de partições.
Modo de partição ou exemplo: Selecione Escolher dobrar.
Especifique de qual dobra será amostrada: Selecione uma partição a ser usada inserindo seu índice. Os índices de partição são baseados em 1. Por exemplo, se você dividisse o conjunto de dados em três partes, as partições teriam os índices 1, 2 e 3.
Se você inserir um valor de índice inválido, um erro em tempo de design será gerado: "Erro 0018: o conjunto de dados contém dados inválidos".
Além de agrupar o conjunto de dados por dobras, você pode separá-lo em dois grupos: uma dobra de destino e tudo o mais. Para fazer isso, insira o índice de uma única dobra e, em seguida, selecione a opção Escolher complemento da dobra selecionada para obter tudo, exceto os dados na dobra especificada.
Se você estiver trabalhando com várias partições, deverá adicionar mais instâncias do componente Partição e Amostra para lidar com cada partição.
Por exemplo, o componente Partição e Amostra na segunda linha é definido como Atribuir a Dobras e o componente na terceira linha é definido como Selecionar Dobra.
Envie o pipeline.
Com essa opção, o componente gera um único conjunto de dados que contém apenas as linhas atribuídas a essa dobra.
Nota
Não é possível visualizar as designações de dobras diretamente. Eles estão presentes apenas nos metadados.
Próximos passos
Consulte o conjunto de componentes disponíveis para o Azure Machine Learning.