Considere a seguinte descrição de um algoritmo para aprendizado não supervisionado: “Primeiramente, escolha um número de classes ou agrupamentos !$ K !$. Em seguida, coloque aleatoriamente no espaço de observações !$ K !$ vetores denominados de centroides !$ C_K !$. Agora, calcule a distância euclidiana de cada observação !$ x !$, a ser agrupada, para cada centroide !$ C_K !$ definido no passo anterior. Com isso, rotule as observações !$ x !$ que estão mais próximas de cada um dos centroides !$ C_K !$ para criar agrupamentos em torno deles. Agora, para cada agrupamento, calcule o vetor médio das observações e defina esses vetores médios como os novos centroides. Finalmente, recalcule a distância de cada observação para cada novo centroide, modificando os rótulos se necessário e repetindo o procedimento até que os rótulos não mais se alterem após a posição dos centroides serem recalculadas.”
O algoritmo descrito é conhecido como