Varrer Clustering

Importante

O suporte para o Estúdio de ML (clássico) terminará a 31 de agosto de 2024. Recomendamos a transição para o Azure Machine Learning até essa data.

A partir de 1 de dezembro de 2021, não poderá criar novos recursos do Estúdio de ML (clássico). Até 31 de agosto de 2024, pode continuar a utilizar os recursos existentes do Estúdio de ML (clássico).

A documentação do Estúdio de ML (clássico) está a ser descontinuada e poderá não ser atualizada no futuro.

Executa uma varredura de parâmetros para determinar as configurações ideais para um modelo de agrupamento

Categoria: Machine Learning / Comboio

Nota

Aplica-se a: Machine Learning Studio (clássico) apenas

Módulos semelhantes de arrasto e queda estão disponíveis em Azure Machine Learning designer.

Visão geral do módulo

Este artigo descreve como usar o módulo sweep clustering em Machine Learning Studio (clássico), para treinar um modelo usando uma varredura de parâmetros. Uma varredura de parâmetros é uma forma de encontrar os melhores hiperparímetros para um modelo, dado um conjunto de dados.

O módulo sweep clustering foi concebido especificamente para modelos de agrupamento. Fornece um modelo de agrupamento como entrada, juntamente com um conjunto de dados. O módulo itera sobre um conjunto de parâmetros que especifica, constrói e testa modelos com diferentes parâmetros, até encontrar o modelo com o melhor conjunto de clusters. Calcula automaticamente a melhor configuração e, em seguida, treina um modelo usando essa configuração.

Também devolve um conjunto de métricas descrevendo os modelos que foram testados, e um conjunto de atribuições de cluster com base no melhor modelo.

Como configurar o Clustering de Varredura

  1. Adicione o módulo de Clustering Sweep à sua experiência no Studio (clássico). Pode encontrar este módulo em Machine Learning, na categoria Comboio.

  2. Adicione o módulo de clustering K-Significa e o seu conjunto de dados de treino à experiência, e conecte-os ambos ao módulo de Agrupamento de Varreduras .

  3. Configure o módulo de agrupamento K-Significa para utilizar uma varredura de parâmetros da seguinte forma:

    1. Definir Crie o modo de treinador para a gama de parâmetros.

    2. Utilize o Range Builder (ou escreva manualmente vários valores) para cada parâmetro para definir a gama de valores para iterar.

    3. Inicialização para varredura: Especifique como o algoritmo K-significa deve encontrar os centrosids de cluster inicial. Vários algoritmos são fornecidos para inicializar aleatoriamente e, em seguida, testar centrosids.

      Se o conjunto de dados de treino contiver uma coluna de etiqueta, mesmo com valores parciais, pode utilizar esses valores para centrosids. Utilize a opção 'Classificar' para indicar como os valores da etiqueta são utilizados.

      Dica

      A coluna da etiqueta deve ser marcada como tal com antecedência. Se tiver um erro, tente utilizar metadados para identificar a coluna que contém etiquetas.

    4. Número de sementes para varrer: Indicar quantas sementes de partida aleatórias diferentes para tentar ao fazer a varredura do parâmetro.

    5. Escolha a métrica para usar ao medir a semelhança do cluster. Para mais informações, consulte o tópico de Agrupamento K-Means .

    6. Iterações: Especificar o número total de iterações que o algoritmo K-significa deve executar. Estas iterações são usadas para otimizar a seleção dos centrosids cluster.

    7. Se estiver a utilizar uma coluna de etiqueta para rubricar a varredura, utilize a opção 'Classificar', para especificar como os valores na coluna da etiqueta devem ser manuseados.

      • Preencha os valores em falta: Se a coluna da etiqueta contiver alguns valores em falta, utilize esta opção para imputar categorias com base no cluster a que o ponto de dados é atribuído.

      • Substitui-se do mais próximo ao centro: Gera valores de etiqueta para todos os pontos de dados atribuídos a um cluster, utilizando o rótulo do ponto mais próximo do centro do cluster.

      • Ignore a coluna da etiqueta: Selecione esta opção se não quiser efetuar nenhuma das operações acima.

  4. No módulo de agrupamento de varreduras , utilize a opção, Para medir o resultado do agrupamento, para especificar o método matemático a utilizar ao estimar o ajuste do modelo de agrupamento treinado:

    • Silhueta simplificada: Esta métrica captura a estanqueidade dos pontos de dados dentro de cada cluster. É calculado como uma combinação da semelhança de cada linha com o seu cluster e a sua semelhança com o próximo cluster mais próximo. Se o cluster tiver apenas 1 linha, a distância prolorrada para o centroid mais próximo é calculada em vez disso, para evitar obter 0 como resultado. "Simplificado" refere-se ao facto de que a distância ao cluster centroid é usada como uma simples medida de semelhança. Em geral, uma pontuação mais alta é melhor. O valor médio sobre o conjunto de dados indica o quão bem os dados foram agrupados. Se houver muitos ou poucos aglomerados, alguns aglomerados terão valores de silhueta mais baixos do que os restantes. Para mais informações, consulte este artigo da Wikipédia.

    • Davies-Bouldin: Esta métrica visa identificar o menor conjunto de aglomerados com menos dispersão. Como a métrica é definida como uma relação de dispersão dentro de cada cluster sobre a separação do cluster, um valor mais baixo significa que o agrupamento é melhor. O melhor modelo de agrupamento minimiza esta métrica. Para calcular a métrica Davies-Bouldin, a linha média para a distância centroid é calculada por cluster. Para cada par de aglomerados, a soma dessas médias é dividida pela distância entre os centrosids. O valor máximo sobre todos os outros clusters é selecionado para cada cluster e mediado em todos os clusters. Para mais informações, consulte este artigo da Wikipédia.

    • Esta métrica visa identificar o menor conjunto da maioria dos aglomerados compactos. Geralmente, um valor mais elevado para esta métrica indica um melhor agrupamento. Para calcular a métrica Dunn, a distância mínima centroídica-centroid é dividida pela distância máxima de cada ponto de dados para o seu centro de cluster. Para mais informações, consulte este artigo da Wikipédia.

    • Desvio médio: Esta métrica é calculada tomando a distância média de cada ponto de dados para o seu centro de cluster. O valor diminui à medida que o número de centrosids aumenta; portanto, não é útil quando se varre para encontrar o número de centrosids. Esta métrica é recomendada para utilização quando estiver a escolher a melhor semente de inicialização centroide.

  5. Especificar o modo de varrimento de parâmetros: Selecione uma opção que defina as combinações de valores que são utilizados durante o treino e como são escolhidos:

    • Grelha inteira: Todos os valores dentro do intervalo são experimentados e avaliados. Esta opção é geralmente mais computacionalmente cara.

    • Varredura aleatória: Utilize esta opção para limitar o número de execuções. O modelo de agrupamento é construído e avaliado utilizando uma combinação de valores escolhidos aleatoriamente a partir da gama permitida de valores de parâmetros.

  6. Número máximo de execuções em varredura aleatória: Desacorra esta opção se escolher a opção de varrimento Aleatório . Digite um valor para limitar o número máximo de iterações ao testar conjuntos de parâmetros escolhidos aleatoriamente.

    Aviso

    Os parâmetros de Iterations do módulo de Agrupamento K-Significa têm um propósito diferente e não são afetados por esta definição: limita o número de passes sobre os dados feitos para melhorar os clusters, minimizando a distância média de cada ponto de dados para os seus centrosids de cluster. Em contraste, as iterações definidas pelo parâmetro do módulo de agrupamento de varredura são realizadas de modo a experimentar diferentes inicializações centástais aleatórias. Este problema de minimização é conhecido por ser difícil de fazer nP; portanto, experimentar várias sementes aleatórias poderia produzir melhores resultados.

    Se selecionar uma varredura aleatória, utilize a opção de semente Aleatória para especificar os valores iniciais de sementes aleatórias, sobre os quais começará a criar os centrosids. Uma vantagem de usar uma varredura de parâmetros para criar um modelo de agrupamento é que você pode facilmente testar vários valores de sementes para mitigar a sensibilidade conhecida dos modelos de agrupamento ao valor inicial de sementes.

  7. Clique em Conjunto de Colunas e escolha as colunas a utilizar ao construir os clusters. Por predefinição, todas as colunas de características são utilizadas ao construir e testar o modelo de agrupamento.

    Pode incluir uma coluna de etiqueta, se estiver presente no seu conjunto de dados. Se estiver presente uma etiqueta, pode usá-la para orientar a seleção de centrosids, utilizar a etiqueta como recurso ou ignorar o rótulo. Descreva estas opções para o manuseamento do módulo de agrupamento kmeans , conforme descrito no passo 3 acima.

  8. Verifique se o Apêndice ou o Uncheck apenas para resultados: Utilize esta opção para controlar quais colunas são devolvidas nos resultados.

    Por predefinição, o módulo devolve as colunas originais do conjunto de dados de treino juntamente com os resultados. Se desmarcar esta opção. apenas as atribuições de cluster são devolvidas.

  9. Adicione o módulo Deatribuição de Dados a Clusters à sua experiência.

  10. Ligação a saída rotulada de Melhor Modelo Treinado para a entrada do Modelo Treinado de Atribuir Dados aos Clusters.

  11. Adicione o conjunto de dados destinado à avaliação e conecte-o à porta dataset do módulo 'Atribuir Dados aos Clusters '.

  12. Adicione o módulo Modelo de Avaliação e conecte-o a atribuir dados aos clusters. Opcionalmente, pode ligar um conjunto de dados de avaliação.

  13. Execute a experimentação.

Resultados

O módulo de agrupamento sweep produz três resultados diferentes:

  • Melhor Modelo Treinado. Um modelo treinado que pode usar para pontuar e avaliar. Clique com o botão direito e selecione Save as TrainEd Model para capturar o modelo de clustering otimizado e usá-lo para marcar.

  • Conjunto de dados de resultados. Um conjunto de atribuições de cluster, baseadas no modelo otimizado.

    Nome da coluna Description
    Atribuições Este valor indica o cluster ao qual cada ponto de dados foi atribuído. Os clusters do modelo treinado são rotulados com índices de 0 base.
    DistânciasToClusterCenter no.1

    DistânciasToClusterCenter no.n
    Este valor indica a proximidade do ponto de dados ao centro de cada cluster.

    Uma coluna é criada para cada cluster criado no modelo otimizado.

    Pode limitar o número de aglomerados utilizando a opção Número de centrosids .

    Por predefinição, pode retornar as colunas do conjunto de dados de treino juntamente com os resultados, para facilitar a revisão e interpretação das atribuições do cluster.

  • Varra os resultados. Um conjunto de dados contendo as seguintes métricas de avaliação para os clusters:

    Nome da coluna Description
    Métrica de cluster Um valor que indica a qualidade média do cluster para esta corrida. As corridas são ordenadas pela melhor pontuação.
    Número de centrosídeos O número de aglomerados que foram criados nesta iteração particular da varredura
    Índice de execução Um identificador para cada iteração

    Dica

    Os valores devolvidos para a métrica do cluster devem ser interpretados de forma diferente, dependendo da métrica que escolheu quando configurar a varredura. Para a métrica padrão, silhueta simplificada, uma pontuação mais alta é melhor. Para Davies-Bouldin, uma pontuação mais baixa é melhor.

Exemplos

Para ver exemplos de uma varredura de parâmetros com agrupamento de meios K, consulte a Galeria Azure AI:

Notas técnicas

Esta secção contém dicas e detalhes de implementação.

Otimização de modelos de clustering

A qualidade e precisão dos modelos de agrupamento podem ser fortemente afetadas pela escolha dos parâmetros iniciais, como o número de centrosids e o valor de sementes utilizados para inicializar o cluster. Para atenuar esta sensibilidade aos parâmetros iniciais, o módulo de Agrupamento de Varreduras ajuda-o a encontrar a melhor combinação de parâmetros. Especifica uma gama de parâmetros para testar e o módulo constrói e testa automaticamente vários modelos e, finalmente, seleciona o número ideal de clusters.

Para criar uma varredura de parâmetros, também deve configurar o módulo de agrupamento K-Significa para utilizar uma varredura de parâmetros. Pode especificar que o iterato de varredura sobre todas as combinações possíveis de parâmetros, ou usar uma combinação aleatória de parâmetros. Também pode escolher uma de várias métricas padrão para medir a precisão dos centrosids durante o processo de construção e teste do modelo iterativo. Após o número especificado de iterações concluídas, o módulo seleciona o melhor número de clusters, com base na métrica selecionada, e relatórios de saídas que pode utilizar para avaliar os resultados.

Dicas de utilização

  • Em alguns casos, pode já saber quantos aglomerados espera encontrar. Por exemplo, os seus dados podem ter etiquetas de classe que podem ser usadas para orientar a seleção dos centrosids. Nesse caso, pode configurar o módulo de agrupamento K-Means para utilizar a coluna de etiquetas para orientar a seleção dos centrosids iniciais.

  • Se conhece alguns dos clusters esperados, mas não sabe quantos clusters são ótimos, coloque o número de centrosids num número superior ao número de valores conhecidos da etiqueta. O módulo de Agrupamento sweep cria clusters para os pontos de dados conhecidos e, em seguida, determina o número ideal de clusters extra para os restantes pontos de dados.

Manuseamento de valores em falta na coluna do rótulo

Existem várias formas de lidar com valores em falta na sua coluna de etiquetas. Por exemplo, suponha que tem uma tarefa de classificação de imagem e apenas algumas das imagens foram rotuladas.

Pode utilizar a coluna de etiquetas para orientar a seleção dos centrosids, mas especificar que quaisquer etiquetas em falta sejam preenchidas utilizando as atribuições de cluster. Por outras palavras, os valores dos rótulos existentes não são alterados, mas as etiquetas em falta são preenchidas.

Em alternativa, para todos os pontos de dados atribuídos a um cluster, pode substituir até as etiquetas existentes, utilizando uma única etiqueta que melhor represente o cluster. Para entender como esta opção é útil, imagine que está a usar dados de imagem com rótulos muito detalhados, como diferentes raças de cães. Utilizando esta opção, pode substituir todas as etiquetas detalhadas por uma única categoria, "cão".

Valores de sementes no log

O ficheiro de registo gerado pelo módulo Modelo de Clustering de Comboio parece indicar que a mesma semente é usada para todas as iterações do algoritmo de agrupamento de meios K, independentemente da semente fornecida na propriedade Random Seed .

De facto, a implementação utiliza a semente fornecida pelo utilizador para gerar uma sequência de números aleatórios que são diferentes para cada execução. Assim, apenas uma semente é necessária para criar todos os números gerados aleatoriamente.

A intenção do registo é indicar qual a semente que o módulo utiliza quando o utilizador não especifica uma semente no painel de propriedades .

Entradas esperadas

Nome Tipo Description
Modelo destreinado Interface ICluster Modelo de agrupamento não treinado
Conjunto de dados Tabela de Dados Fonte de dados de entrada

Parâmetros do módulo

Nome Tipo Valores Opcional Predefinição Description
Métrica para medir o resultado do agrupamento Métrica do Cluster Silhueta Simplificada, Davies-Bouldin, Dunn, Desvio Médio Necessário Silhueta simplificada Selecione a métrica utilizada para avaliar modelos de regressão
Especifique o modo de varrimento do parâmetro Métodos de varrimento Grelha inteira ou varredura aleatória Necessário Varredura aleatória Varra toda a grelha no espaço dos parâmetros, ou varra com um número limitado de amostras
Conjunto de colunas Seleção de Colunas Necessário Padrão de seleção de colunas
Número máximo de corridas em varredura aleatória Número inteiro [1;10000] Disponível apenas quando o SweepingMode estiver definido para a varredura aleatória 5 Definir o número máximo de corridas para executar ao usar varrimento aleatório
Sementes aleatórias Número inteiro Disponível apenas quando o SweepingMode estiver definido para a varredura aleatória 0 Fornecer um valor para semear o gerador de número aleatório para varredura aleatória
Verifique se o Apêndice ou o Uncheck apenas para resultados Booleano Necessário Verdadeiro Selecione para indicar que o conjunto de dados de saída deve conter conjunto de dados de entrada com a coluna de atribuições anexada. Desmarcar para indicar que apenas a coluna de atribuições deve ser a saída.

Saídas

Nome Tipo Description
Melhor modelo treinado Interface ICluster Modelo de agrupamento treinado
Conjunto de dados de resultados Tabela de Dados Conjunto de dados de entrada anexado por coluna de dados de atribuições ou coluna de atribuições
Varrer os resultados Tabela de Dados Registo métrico resultante para varredura de clusters corre

Exceções

Exceção Description
Erro 0003 A exceção ocorre se uma ou mais entradas forem nulas ou vazias.

Para obter uma lista de erros específicos dos módulos Studio (clássicos), consulte Machine Learning Códigos de Erro.

Para obter uma lista de exceções da API, consulte Machine Learning CÓDIGOs de Erro da API REST.

Ver também

Clustering K-Means
Assign Data to Clusters (Atribuir Dados a Clusters)
Machine Learning / Comboio
Machine Learning / Modelo inicializante / Clustering