Quando fazemos classificação e regressão, geralmente definimos conjuntos de teste e treinamento para nos ajudar a construir e aprimorar modelos.
No entanto, quando fazemos cluster, também precisamos definir conjuntos de teste e treinamento? Por quê?
Respostas:
Sim, porque o armazenamento em cluster também pode sofrer um problema de ajuste excessivo. Por exemplo, o número crescente de clusters sempre "aumenta o desempenho".
Aqui está uma demonstração usando o cluster K-Means:
A função objetivo do K-means é (detalhes da notação podem ser encontrados aqui )
Com esse objetivo, o inferior significa modelo "melhor".J
Suponha que tenhamos os seguintes dados (dados da íris), escolher o número do cluster como será sempre "melhor" do que escolher o número do cluster como . A escolha de clusters será melhor que clusters. Podemos continuar nessa trilha e acabar com o custo : basta tornar o número do cluster igual ao número dos pontos de dados e colocar todo o centro do cluster nos pontos correspondentes.4 3 5 4 J=0
Se adiarmos os dados para teste, isso nos impedirá de ajustar demais. O mesmo exemplo, suponha que estamos escolhendo grupos de números grandes e colocando todos os centros de cluster nos pontos de dados de treinamento. O erro de teste será grande, porque os pontos de dados de teste não se sobrepõem aos dados de treinamento.
fonte
Não, isso geralmente não será possível.
Existem muito poucos agrupamentos que você pode usar como um classificador. Somente com k-means, PAM etc., você pode avaliar a "generalização", mas o cluster tornou-se muito mais diversificado (e interessante) desde então. E, de fato, mesmo o antigo cluster hierárquico não generaliza bem para dados 'novos'. Clustering não é classificação. Muitos métodos de classificação não se transferem bem para cluster; incluindo otimização de hiperparâmetros.
Se você tiver apenas dados parcialmente rotulados, poderá usar esses rótulos para otimizar parâmetros. Mas o cenário geral de armazenamento em cluster será que você deseja aprender mais sobre seu conjunto de dados; para executar o clustering várias vezes, investigue os clusters interessantes (porque geralmente alguns clusters são muito pequenos ou grandes demais para serem interessantes!) e anote algumas das idéias que você obteve. O clustering é uma ferramenta para ajudar o ser humano a explorar um conjunto de dados , não uma coisa automática. Mas você não "implantará" um cluster. Eles não são muito confiáveis e um único agrupamento nunca "conta toda a história".
fonte
Não. Você não usa treinamento e testes em aprendizado não supervisionado. Não existe função objetiva no aprendizado não supervisionado para testar o desempenho do algoritmo.
fonte