Retenção de Talentos com Data Science
Métodos de Machine Learning aplicados a departamentos de Recursos Humanos
Retenção de talentos é um dos maiores desafios de qualquer departamento de Recursos Humanos. Colaboradores dedicados e inteligentes sabem bem do seu potencial e não hesitam em procurar novas oportunidades quando não estão satisfeitos com a sua carreira em uma determinada organização.
Baixos salários, falta de oportunidades de crescimento, curvas de aprendizado saturadas e desentendimentos com pares e superiores são algumas das causas de insatisfação no trabalho e profissionais de RH estão sempre buscando prevenir, prever e tratar esses problemas, mantendo os funcionários unidos e satisfeitos. A Ciência de Dados tem participado cada vez mais deste processo, permitindo com que líderes detectem padrões de comportamento de pessoas insatisfeitas e ajam antes que seja tarde demais.
Recentemente eu realizei uma análise de dados de RH de uma companhia com mais de 15 mil funcionários espalhados em diversos escritórios e um problema sério em termos de satisfação dos colaboradores. Por questões de confidencialidade os dados dessa análise não podem ser compartilhados mas apliquei as mesmas estratégias e metodologias utilizando dados fictícios de RH criados pela IBM neste notebook.
Vou realizar uma análise exploratória dos dados e criar dois modelos de Machine Learning a partir deles, um de Classificação e um de Agrupamento ou Clusterização. Meu objetivo é mostrar algumas das aplicações de Ciência de Dados nesta área de business que ainda é tida por muitos como uma das mais subjetivas que existem.
Neste artigo irei focar nos resultados obtidos e nas conclusões. Você encontra uma versão completa deste artigo com o código utilizado no meu GitHub. Fique a vontade para entrar em contato via Medium ou LinkedIn para saber mais sobre este e outros projetos que realizo.
Fonte dos Dados
Os dados analisados contém resultados de performance e de uma pesquisa de clima aplicada aos colaboradores, assim como dados demográficos em geral (informações pessoais de funcionários). Esse material é fictício e foi criado pela IBM no Kaggle para que cientistas de dados explorem e discutam as diversas possibilidades de análise que podem ser realizadas. As variáveis relevantes do problema serão mencionadas conforme elas aparecem no artigo.
O dataset possui bastante informação sobre cada funcionário, mas não possui dados temporais, o que traz algumas limitações. Não é possível entender como as variáveis mudaram ao longo do tempo, por exemplo como o salário de um funcionário mudou ao longo dos anos, ou qual foi o feedback dele na pesquisa de clima do ano anterior.
Em termos práticos é possível visualizar uma “foto” da situação atual dos colaboradores, mas não é possível ver o “filme” que conta a história dele dentro da empresa, o que seria muito útil na tomada de decisões.
O principal objetivo será analisar as variáveis de atrito e satisfação profissional e identificar padrões de funcionários que estão satisfeitos/insatisfeitos com a empresa. Baseada nesses padrões a empresa pode desenvolver teorias de causalidade e estratégias para melhorar os índices de satisfação, evitando a fuga de talentos e problemas de performance.
Análise Prática dos Dados
A análise prática é o primeiro passo em qualquer estudo e é importante para entender se os dados disponíveis fazem sentido de uma perspectiva prática. Muitos problemas podem ser resolvidos usando métodos e visualizações simples na análise prática, e os resultados obtidos nela são fundamentais para alimentar as etapas posteriores.
A principal variável analisada foi Attrition
que informa se o funcionário teve desentendimentos com seus pares ou superiores recentemente. Outras variáveis de satisfação com o trabalho também foram analisadas no trabalho completo.
Diversos padrões interessantes foram encontrados nas visualizações, entre eles:
- Idade: Existe uma pequena diferença entre a distribuição dos funcionários que tiveram atritos dos que não os tiveram em termos de idade. Uma possível teoria é de que pessoas mais jovens possuem uma tendência maior a terem desentendimentos. As causas podem ser falta de experiência na atividade, salários baixos, dificuldade de se adaptar ao ambiente de uma empresa, maior disposição a aceitar riscos, entre outras. Porém a idade não parece ser um fator influente nos resultados de satisfação com o trabalho, uma vez que as distribuições são similares.
- Salário Mensal: Os resultados de salário mensal e atrito possuem alguma relação aparente. Mas a questão principal é, se existe causalidade, quem é a causa e quem é a consequência? Pessoas com baixos salários acabam tendo mais desentendimentos ou pessoas que acabam tendo desentendimentos encontram dificuldades em chegar a posições mais bem pagas? Esse é o tipo de informação que poderia ser obtida caso houvesse um registro temporal dos dados. Falando de satisfação no trabalho, o salário não teve efeitos significativos (um resultado que é bastante relevante, se pensarmos com calma).
- Anos na Empresa: Aparentemente quanto mais tempo um colaborador permanece na empresa, na mesma posição e com o mesmo líder, menores as chances de ele possuir um desentendimento. Todas essas variáveis podem ser traduzidas por uma estabilidade no trabalho, o que é visto como bom de uma perspectiva de redução de conflitos.
- Total de atritos: Menos de 20% dos funcionários tiveram desentendimentos recentemente. Se isso é um resultado bom ou ruim depende muito do que a empresa está classificando como atrito, mas definitivamente existe margem para melhora nos números.
- Posição na Empresa: Existe um número bastante significativo de chefes e diretores comparado ao número total de colaboradores. Isso reforça a teoria de que nem todos os funcionários responderam à pesquisa, ou houve uma seleção de uma parte dos funcionários na hora da coleta de dados.
Modelo de Classificação
Esta seção é dedicada à aplicação de um modelo de classificação ao problema. Esse modelo é alimentado com dados da pesquisa de clima, para identificar padrões dos funcionários que tiveram conflitos recentemente. Assim quando o modelo recebe novos dados ele consegue identificar padrões similares e estimar a probabilidade que determinado funcionário tem de ter um conflito.
As etapas aplicadas na criação foram:
- Seleção das variáveis relevantes para o problema
- Transformação das variáveis categóricas
- Separação dos dados de treino e teste
- Normalização
- Balanceamento artificial dos dados
- Seleção do modelo classificador
- Ajuste de hiperparâmetros
- Validação do modelo
Os primeiros resultados obtidos com o modelo na validação seguem abaixo
Apesar dos resultados satisfatórios de recall, o report de classificação mostra uma precisão de 0.36 para a classe 1. Mas o que isso significa?
- Precisão — Uma precisão de 0.36 significa que quando o modelo prevê que um funcionário terá um conflito, em apenas 36% das vezes ele estará certo e em 64% dos casos isso será um falso positivo.
- Recall — Um recall de 0.75 significa que o modelo vai conseguir identificar 75% de todos os casos de atrito que acontecerão, e 25% deles não serão previamente identificados.
A diferença entre esses conceitos pode ser um pouco confusa portanto sugiro que leia novamente com calma caso não tenha compreendido.
Um valor de precisão tão pequeno vai gerar muitos falsos positivos que irão custar muitas horas e custas de projetos do time de RH. Portanto é necessário melhorar esse resultado e a melhor maneira de fazer isso é analisando a curva de precisão e recall.
Analisando a imagem vemos que é possível equilibrar melhor os resultados com diferentes probabilidades de referência, mas antes de fazê-lo decidi também verificar os resultados para o conjunto de dados original (desbalanceado).
Apesar de o conjunto de dados original apresentar resultados desbalanceados para os casos de desentendimento, a validação do modelo mostrou que a perda de informação ao trabalhar com os dados artificialmente balanceados penalizava os resultados em comparação com o conjunto original para alguns valores de precisão acima de 60%. Utilizando as curvas de Precision-Recall também é possível determinar qual o valor de probabilidade de referência que otimizava os resultados de precisão e recall, e assim obter mais assertividade nas previsões. O modelo final selecionado foi então novamente testado.
A partir dos dados demográficos e das respostas da pesquisa de clima, o modelo consegue prever 60% dos casos de atritos de funcionários, com uma precisão de 66%. Colocando em números práticos, em uma empresa que possui uma média de 100 casos de desentendimento em um ano, o modelo preveria 60 desses casos, e teria aproximadamente 30 alarmes falsos. Desta forma o time de RH consegue agir para entender quais as dificuldades que um colaborador está enfrentando e fazer as melhorias necessárias para que aquele conflito iminente não se torne realidade. Ainda que o número de falsos positivos não seja ótimo, os funcionários que fazem parte deste grupo com certeza não estão satisfeitos com sua situação na empresa. Mesmo que eles não fossem ter desentendimentos uma análise mais cuidadosa do time de RH é bastante relevante para melhorar a satisfação do colaborador, aumentar sua produtividade e melhorar a retenção de talentos da empresa.
Modelo de Agrupamento (ou Clusterização)
Com o modelo de classificação conseguimos prever casos de atritos e agir antes que eles aconteçam para melhorar as relações e união dos times dentro da empresa. Porém isso não é a resposta para todos os problemas. Existem questões que esse modelo não consegue responder, como por exemplo:
- O que fazer com funcionários que tiveram conflitos?
- Quem são as referências da empresa em bons relacionamentos e quais as diferenças que esses grupos possuem?
- Existe alguma forma de proteger os melhores talentos e a alta liderança de problemas críticos de relacionamento?
Para desenvolver estratégias mais assertivas para cada colaborador é possível criar grupos baseados nesses perfis, identificando diferenças significativas entre eles e estabelecendo diferentes estratégias para lidar com a carreira de cada um. Para isso criei um modelo K-Means utilizando como entrada somente as variáveis de performance e as respostas da pesquisa de clima. Esse modelamento se dividiu nas seguintes etapas:
- Seleção das variáveis
- Redução de Dimensionalidade
- Ajuste de parâmetros do modelo
- Análise dos agrupamentos
Foram criados quatro grupos de colaboradores a partir das semelhanças que eles apresentaram em performance e respostas. O próximo passo é identificar quais foram as variáveis que mais impactaram no modelo e assim identificar os perfis dos funcionários de cada agrupamento. Um dos métodos para isso se chama análise de categorias paralelas e permite que vejamos um resumo do comportamento desses agrupamentos em diversas variáveis.
Nesses gráficos a altura da barra de cada cor representa quanto do total de uma determinada resposta é composto por pessoas de um mesmo grupo. Ou seja, quando vemos abaixo a maior parte da categoria Yes
na cor laranja em Attrition
significa que a maior parte dos funcionários que tiveram conflitos pertencem ao agrupamento da cor laranja (identificado pelo número 2 em Clusters
).
Podemos ver a partir dos dados que existem diferenças bastante claras entre os grupos:
- O grupo 2 (laranja) é composto principalmente por pessoas que tiveram desentendimentos recentemente. Esses são os colaboradores que o RH deve atingir com medidas de redução de danos, para resolver os conflitos. Nenhum dos funcionários deste grupo deu um score máximo para envolvimento com o trabalho, o que pode ser um indício que eles estão desconectados com a empresa, e não vêem muito propósito em suas atividades, ou simplesmente estão desmotivados.
- O grupo 3 (amarelo) é o grupo dos funcionários de alta performance. Estes podem ser considerados os verdadeiros talentos da companhia, aqueles que ela não deseja perder sob nenhuma circunstância. No gráfico é possível perceber que uma pequena parte das pessoas deste grupo teve conflitos recentemente e não estão satisfeitos com seus relacionamentos no trabalho. Portanto é necessário que um trabalho mais dedicado seja realizado para resolver esses impasses e mantê-los engajados e motivados. Mudança de cargos e mediação de conflitos são algumas das opções.
- O grupo 0 (azul) é composto pelos funcionários que possuem bom relacionamento na empresa. Eles não tiveram atritos recentemente e deram scores altos para sua percepção dos relacionamentos na empresa. Naturalmente existem outros pontos de insatisfação que podem ser melhorados, mas como o objetivo da análise é em relacionamentos não entraremos em detalhes. Este grupo também pode ser estudado para que a empresa entenda o que o torna diferente dos demais, e assim gerar ideias de soluções para os outros grupos.
- O grupo 1 (roxo) é a zona de atenção. Esses funcionários não tiveram conflitos recentemente mas deram scores baixos em sua percepção de relacionamentos na companhia. Isso significa que estão desconfortáveis com suas relações e provavelmente terão atritos se nada for feito para ajudá-los.
Para resumir, o grupo 0 é a referência, onde os relacionamentos estão indo bem. O grupo 1 é a zona de atenção, onde um bom trabalho da equipe de RH vai realmente reduzir as taxas de conflitos. O grupo 3 é o grupo de alta performance, que em geral está bem em termos de relacionamentos, mas alguns casos específicos precisam ser tratados para evitar que os conflitos que ocorreram sejam causadores de um desligamento indesejado. E o grupo 2 é o grupo dos funcionários que mais tiveram desentendimentos recentemente. Esse é o grupo no qual uma estratégia de minimização de danos pode ser aplicada para melhorar a performance e o bem estar desses colaboradores.
É importante mencionar que as características de cada grupo vão ser uma consequência dos dados que são fornecidos ao modelo. Utilizando diferentes variáveis de entrada teríamos outro tipo de agrupamento, o que dá flexibilidade ao estudo. Agora que os perfis estão bem definidos podemos investigar as informações mais gerais dos funcionários e ver se existem padrões interessantes detectados nos grupos.
Em geral os grupos estão bem distribuídos em termos de dados demográficos, mas algumas observações são pertinentes:
- O grupo de alta performance teve um claramente um aumento mais significativo de salário (
PercentSalaryHike
), o que mostra que a companhia baseia seus aumentos em performance. Também é possível perceber que os funcionários que tiveram mais conflitos tiveram os aumentos mais baixos. Seriam os aumentos mais baixos a causa de uma insatisfação que culminou em um desentendimento? Ou os conflitos foram de certa maneira repreendidos com um aumento mais baixo? - A maior parte dos colaboradores de posições hierárquicas mais altas (diretores e chefes) não tiveram muitos atritos recentemente, mas muitos deles estão no grupo de atenção. Isso é um alerta que precisa ser levado em consideração.
Para concluir essa seção, todos os funcionários foram devidamente agrupados e o time de RH possui bastante informação sobre cada um deles para desenvolver estratégias por grupo de pessoas. Algumas ideias seriam:
- Desenvolver reuniões de acompanhamento mensais com os grupos mais insatisfeitos
- Analisar as sugestões de melhoria e feedbacks dos colaboradores desses grupos, para ver se a insatisfação possui um motivo em comum, entre outras possibilidades.
Conclusão
Neste notebook realizei a análise de dados fictícios de RH criados pela IBM e criei dois modelos de Machine Learning a partir deles.
Bastante informação sobre os padrões de comportamento dos funcionários foi capturada já na etapa de análise exploratória. O modelo classificador criado prevê com acurácia razoável quando um conflito irá acontecer. O modelo de clusterização agrupou os funcionários a partir de seus perfis ou de seus sentimentos com relação à empresa neste momento.
Esta análise é o ponto de partida para diferentes estratégias e projetos dentro de uma companhia, dependendo de quais objetivos se deseja atingir. É importante ressaltar que os dados utilizados não são difíceis de obter. Departamentos de RH já possuem informações básicas sobre seus funcionários e muitos deles aplicam pesquisas de clima para monitorar o engajamento dos colaboradores. Então não existe esforço adicional em termos de coleta de dados, que é a etapa normalmente mais cara e demorada de um projeto. Basta que os dados sejam preparados e analisados de maneira adequada para que mais informação seja agregada ao estudo e os resultados de retenção de talentos e de satisfação no trabalho sejam melhorados.
Obrigado!
Obrigado por ler este artigo, espero que a informação compartilhada seja útil de alguma maneira. Você encontra uma versão completa deste artigo com o código utilizado no meu GitHub. Fique a vontade para entrar em contato via Medium ou LinkedIn para saber mais sobre este e outros projetos que realizo.