aprendizado de máquina habilidades práticas praticar K-means clustering algoritmo

Nota do editor: O escritor é analista de dados US Bilal Mahmood, ele foi um dos fundadores os dados do usuário plataforma de análise Bolt. Aqui, ele introduz algoritmo chamado K-Means Clustering (K-means clustering), incluindo como medir o efeito do algoritmo, e como determinar o número que você precisa para gerar um conjunto de segmentos de dados. rede de Lei Feng compilado organizar, desenvolver mais artigos técnicos AI, AI atenção Yanxishe (Micro sinal: okweiwu).

Bilal Mahmood: Uma das análises mais comum que fazemos é extrair padrões nos dados. Por exemplo, clientes de uma empresa pode ser dividida em segmentos que mercado? Como é que vamos encontrar aglomerados de grupos específicos na rede do cliente?

A título de aprendizado de máquina, podemos obter respostas a estas perguntas. Mesmo quando não sabemos que determinada peça de dados que você precisa para encontrar, ou que os nossos dados é o formato de dados não estruturados, para que possamos ter um meio técnico, no algoritmo, analisar os dados no modelo lógico de dados, o segmento de dados apropriado e resultados da classificação.

Neste artigo, vamos explicar em pormenor um algoritmo, K-means (K-means agrupamento), incluindo a forma de medir o efeito, e como determinar o número de segmentos para gerar nosso conjunto de dados.

Supervisão VS Aprendizagem não supervisionada

No campo da classificação de dados, há dois aprendizagem eficaz máquina.

Por aprendizagem supervisionada, se você descobrir qual a entrada que pode ser mapeado para um segmento de dados discretos, você pode fazer previsões sobre os resultados da classificação. Mas em muitos casos, de fato, não tem estes etiqueta pré-definido, e os dados só não estruturados - segmento de dados não definido. Neste ponto, você pode precisar da ajuda de aprendizagem não supervisionada, raciocínio dados não marcados no segmento-alvo.

Para maior clareza, temos de tamanho classificar T-shirt, por exemplo

Se tivermos o conjunto de dados mostrado na Figura 1A, temos uma largura definida (X1) e do comprimento (X2) da entrada, e o tamanho de T-shirt (S (azul) G (verde)), correspondentes a eles. Neste caso, podemos, através de técnicas de aprendizado supervisionado, como regressão logística, decisão de desenhar uma fronteira clara, e separar os vários tipos de T-shirts.

Mas se obter um conjunto de dados, como mostrado na FIG. 1B, obtém-se uma largura definida (X1) e do comprimento (X2) da entrada, mas não correspondente tamanho T-shirt de etiqueta. Neste caso, precisamos usar K-means clustering e outras técnicas de aprendizagem não supervisionada para encontrar camisetas semelhantes, e agregados em classes pequenas (círculos azuis) e grande (círculo verde) em.

Em muitas aplicações do mundo real, você terá de enfrentar a situação mostrada na Figura 2A, e, portanto, entender completamente como extrair a partir de dados não estruturados na estrutura, será muito útil.

K-means agrupamento

K-means agrupamento de aprendizagem supervisionada máquina fornece uma aplicação muito intuitivo, resumidos na estrutura de dados não estruturados,

K-means, como o seu nome sugere, os dados irão ser observações semelhantes, atribuídos ao mesmo grupo de clusters. É constituída por quatro passos simples repetidos iterativamente os valores de distância aglomerados têm recentemente avaliadas (média) para cada observação. Assim, se um conjunto de observações como próximos uns dos outros, que podem pertencer a um grupo de aglomerados.

Vamos passo a passo cuidadosamente entender o algoritmo. O primeiro passo, um conjunto de agrupamento centros inicialização aleatório (X na FIG. 2A anterior), ou, no centro de cada grupo de aglomerados. Antes de começar, você pode usar esses centros cluster de conjunto em qualquer lugar, mas recomendamos que, quando você inicializa-lo com suas observações conjunto corresponde ao ponto aleatório. Você, por sua vez usar esses centros de classes, para agrupar seus observações, a distância média do centro do grupo mais próximo a essas observações (círculos azuis e verdes na Fig. 2B) para determinar a propriedade de um cluster.

A etapa de inicialização de dados irá agrupar em grupos, a sua agregação de dados e centro de agrupamento observações mais próximos juntos. Mas esses agrupamentos de dados após a primeira atribuição, não pode ser bastante apropriado. Então, o próximo passo, você vai colocar o seu bom movimento agrupamento agrupamento de dados mais perto de um local mais adequado. Isto é, para encontrar o seu valor médio foi observada em cada um dos respectivos cluster de corrente existente, em seguida, se move para a posição central do cluster (FIG. 2C). Em seguida, um novo centro cluster como uma referência para encontrar o valor médio da observação mais próxima, e associá-la a um novo conjunto (Fig. 2D)

Você pode repetir esse processo: Distribuição Cluster - Localizar a distância média - mover os centros de fragmentação até a convergência seja alcançado. Depois de encontrar um grupo de clusters, e no qual todas as observações podem ser encontrados no centro da mais próximo cluster, não há necessidade de continuar a avaliar a mais recente e a distância média percorrida. Aqueles valor de observação do pacote serão agrupados juntos, para que eles possam compartilhar similaridade (eles são feitos dos mesmos centros de cluster exibidos por tal proximidade) na entrada, você pode encontrar um conjunto de dados adequados para você método de agrupamento.

Quanto você usar o grupo de cluster?

K-means clusters é uma maneira eficaz para encontrar uma boa maneira de agrupar seus dados. Mas ainda há um problema, como você decidir como muito para começar um grupo de clusters de usar?

Quando você não sabe o marcador ou classificação de conjuntos de dados não estruturados, precisamos estilos de aprendizagem não supervisionada (tais como K-means clustering) para ajudar. Portanto, os dados em si não irá dizer-lhe o número correto (ou rótulo) é o número de clusters.

Então, como você mede quantos conjuntos de dados próprios clusters com isso? A maneira mais fácil é a clusters de medição de uso de erro, como segue:

A distância entre esta função através da comparação do valor observado (X) e os centros de agrupamento especificadas ([mu]) para avaliar o erro de aglomerados. Se cada correspondentes centros dos grupos mostraram uma distância mínima, ou o menor erro global mais baixa, então os resultados aglomeração desses aglomerados e centros de dados é a melhor correspondência.

Voltando ao exemplo do nosso tamanho T-shirt, como usamos a função de erro para determinar o número correto de clusters? Um método é a "regra cotovelo", como mostrado na Figura 3. Ao traçar os dados relativos ao número de clusters de inicializar erro, você pode achar que a taxa de erro da mudança dos pontos mais nítidas. Figura 3 parece estar em lugar dois grupos, sugerindo que provavelmente deve ir para pequenas e grandes dois tipos.

rede de alerta Lei, o método requer Nota: erro geralmente não significativa em sua curva de inflexão. Portanto, é impossível usar sempre cotovelos lei para determinar o número apropriado de clusters.

Neste caso, o contexto é recomendado que confiar em sua intuição ou questões não resolvidas. Por exemplo, no caso de tamanho T-shirt, você pode querer saber como vai ser dividido em 5 tamanhos T-shirt - ultra-pequeno, pequeno, médio, grande e muito grande. Mas este não é o de dados para lhe dar dicas claras, mas com base em sua intuição, você pode inicializar o número cinco agrupamentos, e obter o cluster direita.

Em resumo, para um problema de clustering, agrupamento K-means e proporcionar um algoritmo iterativo eficiente para descobrir a estrutura de dados.

rede de Lei Feng Nota: Este blog é baseado em Andrew Ng na Coursera Cursos de aprendizagem de máquina O conceito de professor.

kdnuggets via

De frente para a indústria da Internet, Tencent para o "Tiger" Ponto | media profundidade de titânio
Anterior
Não dúvida, este é o assédio sexual!
Próximo