Eu tenho vários perfis de clientes armazenados em um cluster de pesquisa elástica . Esses perfis agora são usados para a criação de grupos-alvo para nossas assinaturas de email.
Os grupos-alvo agora são formados manualmente, usando os recursos de pesquisa elástica da pesquisa elástica (como obter todos os clientes do sexo masculino com 23 anos de idade com um carro e 3 filhos).
Como eu poderia procurar grupos interessantes automaticamente - usando ciência de dados, aprendizado de máquina, clustering ou algo mais?
A linguagem de programação parece ser uma boa ferramenta para esta tarefa, mas não consigo formar uma metodologia para essa pesquisa de grupo. Uma solução é encontrar, de alguma forma, os maiores grupos de clientes e usá-los como grupos-alvo; portanto, a pergunta é:
Como posso escolher automaticamente os maiores grupos de clientes semelhantes (semelhante por parâmetros que não conheço no momento)?
Por exemplo: meu programa se conectará à pesquisa elástica, transferirá os dados do cliente para CSV e, usando o script da linguagem R, descobrirá que grande parte dos clientes é do sexo masculino sem filhos e outra grande parte dos clientes tem carro e a cor dos olhos é marrom.
fonte
Respostas:
Um algoritmo que pode ser usado para isso é o algoritmo de agrupamento k-means .
Basicamente:
"Até convergência":
É uma boa prática repetir esse algoritmo várias vezes e escolher o resultado que minimiza as distâncias entre os pontos de cada cluster ie o centro m_i.
Claro, você precisa saber k para começar aqui; você pode usar a validação cruzada para escolher esse parâmetro.
fonte