fbpx
Sigmoidal
No Result
View All Result
  • Home
  • Data Science
    Data Science no exterior - como fazer uma Cover Letter

    Como escrever uma Cover Letter poderosa para Data Science

    GESTÃO DE DADOS: aprenda Data Science ou pague o preço de uma decisão errada | PrimoCast com Thiago Nigro

    Aprenda Data Science ou pague o preço de uma decisão errada

    Como a França usou Inteligência Artificial para detectar 20 mil piscinas

    Como a França usou Inteligência Artificial para detectar 20 mil piscinas

    ChatGPT: A Inteligência Artificial que vai escrever seus códigos

    ChatGPT: A Inteligência Artificial que vai escrever seus códigos

    7 livros essenciais para aprender Data Science em 2023

    7 livros essenciais para aprender Data Science em 2023

    Como a banda Metallica usa Data Science

    Como a banda Metallica usa Data Science

    Entrevista com Rodrigo Gianotto, CTO do Grupo Primo

    Entrevista com Rodrigo Gianotto, CTO do Grupo Primo

    Use a estratégia da Apollo 13 para conseguir uma vaga no mercado

    Use a estratégia da Apollo 13 para conseguir uma vaga no mercado

    Python para análise de ações e investimentos

    Python para análise de ações e investimentos

    Trending Tags

    • Python
      Como usar o DALL-E 2 para gerar imagens a partir de textos

      Como usar o DALL-E 2 para gerar imagens a partir de textos

      aprenda python do zero - curso gratuito

      Projeto Python: um plano à prova de desculpas

      Entrevista com Rodrigo Gianotto, CTO do Grupo Primo

      Entrevista com Rodrigo Gianotto, CTO do Grupo Primo

      Projeto Python do Zero: evento 100% gratuito

      Projeto Python do Zero: evento 100% gratuito

      Aprenda Python e se destaque no mercado

      Aprenda Python e se destaque no mercado

      Python para análise de ações e investimentos

      Python para análise de ações e investimentos

      Como fazer gráficos rotulados em Python

      Como fazer gráficos rotulados em Python

      Trabalhando com Dados Desbalanceados

      Trabalhando com Dados Desbalanceados

      Detector de Fadiga usando Python

      Detector de Fadiga usando Python

      Trending Tags

      • Tutoriais
        Crie um sistema de vigilância com drones e Deep Learning

        Crie um sistema de vigilância com drones e Deep Learning

        Detector de Fadiga usando Python

        Detector de Fadiga usando Python

        Reduzindo Turnover Com Machine Learning

        Reduzindo Turnover Com Machine Learning

        Séries Temporais (Time Series) com Python

        Séries Temporais (Time Series) com Python

        Como Analisar Ações da Bolsa com Python

        Como Analisar Ações da Bolsa com Python

        Como criar gráficos interativos usando Plotly e Python

        Como criar gráficos interativos usando Plotly e Python

        Como salvar seu modelo de Machine Learning

        Como salvar seu modelo de Machine Learning

        Como lidar com dados desbalanceados?

        Como lidar com dados desbalanceados?

        Big Data: Como instalar o PySpark no Google Colab

        Big Data: Como instalar o PySpark no Google Colab

        Trending Tags

        • Vídeos
          Como usar o DALL-E 2 para gerar imagens a partir de textos

          Como usar o DALL-E 2 para gerar imagens a partir de textos

          ChatGPT: A Inteligência Artificial que vai escrever seus códigos

          ChatGPT: A Inteligência Artificial que vai escrever seus códigos

          7 livros essenciais para aprender Data Science em 2023

          7 livros essenciais para aprender Data Science em 2023

          Entrevista com Rodrigo Gianotto, CTO do Grupo Primo

          Entrevista com Rodrigo Gianotto, CTO do Grupo Primo

          Crie um sistema de vigilância com drones e Deep Learning

          Crie um sistema de vigilância com drones e Deep Learning

          Python para análise de ações e investimentos

          Python para análise de ações e investimentos

          7 Livros de Data Science em 2021

          7 Livros de Data Science em 2021

          Detector de Fadiga usando Python

          Detector de Fadiga usando Python

          Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

          Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

          Trending Tags

          No Result
          View All Result
          Sigmoidal
          No Result
          View All Result

          Reduzindo Turnover Com Machine Learning

          rafael by rafael
          junho 7, 2022
          in Blog, Data Science, Machine Learning, Python, Tutoriais
          0
          Home Blog
          10
          SHARES
          325
          VIEWS
          Publicar no LinkedInCompartilhar no FacebookCompartilhar no Whatsapp

          Como unir Machine Learning com Recursos Humanos para reduzir o Turnover?

          Com o imenso volume de dados sendo criado atualmente, é vital que as empresas saibam coletar e utilizar dados que possam dar a elas vantagens competitivas no mercado.

          Reduzindo Turnover Com Data Science e Machine Learning

          Além de casos mais comuns como Sistemas de Recomendação, outras áreas e outros tipos de empresas também podem se beneficiar da Ciência de Dados.

          O objetivo deste projeto é analisar os dados disponíveis e buscar soluções para diminuir o Turnover, e aumentar a retenção de bons profissionais nas empresas.

          Utilizando dados disponibilizados no Kaggle, construiremos um modelo de Machine Learning capaz de nos ajudar a prever possíveis atritos, que podem ajudar empresas a tomarem decisões afim de minimizar esses efeitos, aumentar a qualidade de vida no ambiente de trabalho, e reter os bons profissionais da empresa.

          Você pode encontrar o projeto completo com todas as análises neste link.

          Análise De Dados sobre Turnover

          O primeiro passo, é entendermos nossos dados. Utilizando Python, e a biblioteca Pandas, conseguimos tirar insights interessantes.

          A variável Attrition (“Atrito”), indica se o funcionário possui atrito, problema, no ambiente de trabalho. Usaremos ela como variável alvo do nosso modelo de Machine Learning.

          No nosso dataset, ela seria a categoria mais marcante de motivo para que o profissional saia da empresa e aumente o Turnover. Por isso focamos nela.

          Com acesso a mais dados, poderíamos usar outros indicadores, ou criar novas features que representem melhor a chance de um funcionário deixar a empresa.

          Variáveis Numéricas

          Primeiro, vamos analisar a distribuição estatística das variáveis numéricas:

          • A média de idade na empresa é de quase 37 anos de idade.
          • A maioria dos funcionários possui Ensino Superior.
          • Como se trata de um conjunto de dados oriundo dos Estados Unidos, consideramos os valores monetários como Dólar. Neste caso, o salário médio mensal da empresa é de US$6502.93.

          Variáveis Categóricas

          Quanto às variáveis categóricas, conseguimos as seguintes informações:

          • A maior parte dos funcionários nâo apresenta atritos.
          • O departamento com mais funcionários na empresa é Pesquisa e Desenvolvimento.
          • Homens são maioria na empresa.
          • O emprego mais comum na empresa é de Executivo de Vendas.
          • A maioria dos funcionários é casado.
          • A grande maioria dos funcionários não faz hora extra.

          Igualdade de Gênero

          É muito importante estar atento a um tema como Igualdade de Gênero.

          Igualdade de Gênero e turnover

          Tendo acesso aos dados de salário e educação dos funcionários, é possível ver como se comparam os salários entre homens e mulheres.

          Distribuição Estatística da Variável Educação por gênero — Quanto maior o número, maior o nível de educação.

          Comparando funcionários dos dois gêneros, percebemos que as mulheres tem educação marginalmente melhor, estatísticamente falando. Para essa variável, quando maior o número, maior o nível de educação.

          Comparação Salarial em Dólares Americanos

          Na empresa em questão, igualdade de gênero é uma realidade, com as mulheres, que estão em um nível educacional marginalmente acima, com média de salário mensal superior à média dos homens.

          Não só isso, mas em todos os percentis, temos que os salários das mulheres são mais altos, com excessão apenas para Max, que mostra que o funcionário mais bem pago da empresa é um homem.

          Gráfico de Densidade

          Gráficos de Densidade são ferramentas visuais poderosas, que podem nos ajudar a ter insights valiosos.

          Nosso principal objetivo aqui é analisar a distribuição das variáveis para as duas possibilidades do nosso problema de classificação.

          Ao analisarmos as diferenças de distribuição das variáveis para cada classe, podemos identificar variáveis mais relevantes para o nosso problema.

          Gráfico de densidade para modelo de machine learning e turnover
          Distribuição das Variáveis entre as Classes.

          A representação amarela é para funcionários que apresentam atritos e a representação azul para funcionários que não apresentam atrito.

          O que buscamos aqui são diferenças nas distribuições para podermos encontrar pontos chave para previsão de atrito entre os funcionários.

          No geral, as distribuições são bastante parecidas, não havendo grande discrepância. Por isso, destacarei aqui somente as discrepâncias entre as categorias.

          Entre os principais insights obtidos, podemos destacar:

          • Na variável Age (Idade), percebemos que quanto mais jovem, mais propensão a atrito há.
          • Em relação à distância de casa (DistanceFromHome), percebemos que quanto maior a distância, mais propenso o funcionário está a atrito.
          • Na variável JobInvolvement (Envolvimento no Trabalho), podemos perceber que indivíduos menos envolvidos tendem a ter mais atrito.
          • JobLevel (Nível no Emprego) mostra que funcionários em níveis mais baixos tendem a ter mais atrito. O mesmo acontece para as variáveis JobSatisfaction e MonthlyIncome, (Satisfação no Trabalho e Renda Mensal, respectivamente).
          • StockOptionLevel (ESOs) e TotalWorkingYears (Total de Anos Trabalhando), também demonstram diminuição nos atritos conforme os números aumentam.
          • YearsAtCompany (Anos na Empresa), YearsInCurrentRole (Anos na Posição Atual), YearsSinceLastPromotion (Anos Desde a Última Promoção), YearsWithCurrManager (Anos Com o Mesmo Gerente) apresentam maior atrito nos menores períodos de tempo, e evolução ao longo do tempo. Isso pode sugerir dificuldades de adaptação, pois quanto menor o tempo, maior o atrito.

          Balanceamento de Dados

          Felizmente, funcionários que apresentam atritos ou problemas são minoria. Para a empresa, isso é bom, mas para nosso modelo preditivo este não é o cenário ideal.

          Para melhorar a performance, e obtermos melhores resultados, se faz necessário o Balanceamento dos Dados.

          De forma simples e resumida, isso basicamente significa que vamos transformar noso conjunto de dados, para que as duas classes (Com e Sem Atrito) estejam balanceadas, proporcionalmente distribuídas.

          Dados Desbalanceados — 0 = Sem Atrito / 1 = Com Atrito

          Para isso, utilizaremos o Random Under Sampler, pois desejamos preservar a classe minoritária (Com Atrito). Após balancearmos os dados, temos o seguinte resultado:

          Dados Balanceados.

          Pré-Processamento De Dados

          Para inserir nossos dados em um modelo de Machine Learning precisamos trabalhá-los. Ao fazer o pré-processamento dos dados, vamos passar por duas etapas:

          • Transformação de variáveis categóricas: Utilizaremos o Label Encoder, que transforma Strings em números representando categorias.
          • Transformação de variáveis numéricas: Uitlizaremos MinMaxScaler. De forma simples, ele coloca os números das entradas em uma escala de 0 a 1. Esse processo também nos ajuda com Outliers, por isso não havíamos tratado eles anteriormente.
          Demonstração das variáveis após a etapa de pré-processamento.

          Modelo de Machine Learning para Turnover

          Prevendo atrito e prevenindo Turnover. Após entendermos melhor nossos dados, e a realidade da empresa, e prepararmos nossos dados, é hora de utilizarmos Machine Learning para fazer previsões.

          Essa etapa irá contribuir para nos ajudar na prevenção de atritos/conflitos na empresa, e, consequentemente, diminuirmos o Turnover. Para isso, utilizaremos dois modelos diferentes de algoritmos:

          Regressão Logística

          • Random Forest
          • Regressão Logística

          Regressão Logística

          De acordo com o Portal Action, “o modelo de regressão logística é semelhante ao modelo de regressão linear. No entanto, no modelo logístico a variável resposta $ Y_i $ é binária. Uma variável binária assume dois valores, como por exemplo, $ Y_i=0 $ e $ Y_i=1, $ denominados “fracasso” e “sucesso”, respectivamente. Neste caso, “sucesso” é o evento de interesse.”

          Para nós, “Sucesso” (1), significa atrito, que é o que queremos descobrir.

          Baseline Com Dados Não Balanceados

          Como estamos trabalhando em um projeto que existe no vácuo, isto é, sem contexto prévio de métricas já utilizadas pela empresa, precisamos criar uma baseline, um resultado mínimo aceitável, que sirva de referência para nosso aprimoramento.

          Neste caso, utilizarei o modelo de Regressão Logística, com nossos dados desbalanceados. Isso é importante para que possamos aferir se há mesmo a necessidade de balancear nossos dados.

          Resultado da Baseline.

          Ao analisarmos a Matriz de Confusão, conseguimos ver que tivemos muitos Falsos Negativos, o que é um problema.

          • Apesar do modelo apresentar uma Acurácia de cerca de 87% não podemos levar apenas essa métrica em consideração.
          • Nosso AUC foi de 0.6291, o que significa que precisamos melhorar bastante. Para entender melhor sobre ROC_AUC, veja este artigo. Para simplificar, apenas entendamos que quanto maior esse valor, melhor.

          Regressão Logística com Dados Balanceados

          Agora que temos nossa baseline, e um objetivo a bater, é hora de trabalharmos com nossos dados cuidadosamente trabalhados e buscarmos o nosso melhor.

          regressão logística para turnover
          Regressão Logística com Dados Balanceados.

          Aqui podemos ver que com dados balanceados, nossos resultados foram melhores.

          • Apesar da nossa acurácia ter caído, nosso AUC melhorou, o que é bom.
          • Entretanto, apesar de termos diminuído a quantidade de Falsos Negativos, aumentamos a de Falsos Positivos.

          De qualquer forma, obtivemos um resultado melhor que nossa baseline, o que já é um passo na direção correta.

          Random Forest

          Vamos testar se conseguiríamos um resultado superior utilizando outro algoritmo de Machine Learning. Neste caso, utilizaremos o Random Forest, que em tradução livre, significa “Floresta Aleatória”.

          Random forest para turnover
          Random Forest Simplificada.

          Como o nome sugere, ele é baseado em modelos de árvore de decisão. A diferença é que ele cria muitas árvores de decisão de maneira aleatória.

          Vamos ver como ele se sai.

          Resultados do Random Forest.

          O modelo Random Forest se saiu marginalmente melhor que a Regressão Logística.

          Apesar de não representar melhora significativa, com melhor parametrização, ambos modelos podem ter sua performance aumentada.

          Variáveis Mais Importantes (Feature Importances)

          Através da função feature_importances_ , podemos verificar quais variáveis foram mais importantes para as decisões do nosso modelo.

          Variáveis mais importantes.

          As variáveis mais importantes são muito valiosas, pois podem nos dar insights dos pontos mais críticos para geração de atritos, e com essa informação, podemos agir preventivamente.

          Entre as principais variáveis, podemos destacar:

          • Horas Extras (OverTime) — Definitivamente a mais importante das variáveis,estando bastante acima das outras.
          • Salário Mensal (MonthlyIncome)
          • ESOs (StockOptionLevel)
          • Idade (Age)
          • Nível do Cargo (JobLevel)
          • Anos Trabalhando (TotalWorkingYears)

          Podemos identificar variáveis bastante relacionadas com a carreira, benefícios e carga horária. Altos níveis de stress? Sentimento de desvalorização? São hipóteses. Somente uma análise mais detalhada pode nos dizer.

          Ciência de Dados, Machine Learning e Turnover

          Ciência de Dados é um campo em expansão, com muita coisa a ser explorada e melhorada. Neste projeto, o intuito foi apresentar uma espécie de MVP para o departamento de RH.

          Machine Learning para reduzir Turnover

          Sem sombra de dúvidas, com acesso a mais dados, colaboração com outros times da empresa, maior entendimento do contexto em que a empresa se encontra e otimização dos modelos apresentados e/ou inclusão de outros, os resultados podem ser muito melhores.

          De qualquer forma, espero ter fornecido insights interessantes, e um projeto pertinente.

          Caso tenha algum comentário, dúvida ou sugestão, não hesite em me contactar no meu LinkedIn, e conferira o código deste projeto na íntegra, bem como meus outros projetos, acesse meu portfólio no GitHub.

          Tags: dados desbalanceadosdata sciencekagglemachine learningpandaspythonrandom forestrecursos humanosregressão logísticarhturnover
          Previous Post

          Séries Temporais (Time Series) com Python

          Next Post

          Método de Ensemble: vantagens da combinação de diferentes estimadores

          rafael

          rafael

          Related Posts

          Data Science no exterior - como fazer uma Cover Letter
          Artigos

          Como escrever uma Cover Letter poderosa para Data Science

          by rafael
          janeiro 16, 2023
          GESTÃO DE DADOS: aprenda Data Science ou pague o preço de uma decisão errada | PrimoCast com Thiago Nigro
          Data Science

          Aprenda Data Science ou pague o preço de uma decisão errada

          by Carlos Melo
          janeiro 7, 2023
          Como usar o DALL-E 2 para gerar imagens a partir de textos
          Deep Learning

          Como usar o DALL-E 2 para gerar imagens a partir de textos

          by Carlos Melo
          dezembro 27, 2022
          Como a França usou Inteligência Artificial para detectar 20 mil piscinas
          Deep Learning

          Como a França usou Inteligência Artificial para detectar 20 mil piscinas

          by Carlos Melo
          janeiro 7, 2023
          ChatGPT: A Inteligência Artificial que vai escrever seus códigos
          Artigos

          ChatGPT: A Inteligência Artificial que vai escrever seus códigos

          by Carlos Melo
          dezembro 20, 2022
          Next Post
          Método de Ensemble: vantagens da combinação de diferentes estimadores

          Método de Ensemble: vantagens da combinação de diferentes estimadores

          Deixe um comentário Cancelar resposta

          O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

          Destaques Sigmoidal

          7 Livros de Data Science em 2021

          7 Livros de Data Science em 2021

          agosto 3, 2022
          Aprenda Python e se destaque no mercado

          Aprenda Python e se destaque no mercado

          dezembro 14, 2022
          NFT e artes criadas por Inteligência Artificial

          NFT e artes criadas por Inteligência Artificial

          julho 8, 2022

          Navegar por Categoria

          • Artigos
          • Blog
          • Carreira
          • Colunistas
          • Cursos
          • Data Science
          • Deep Learning
          • Destaques
          • Entrevistas
          • Inglês
          • Iniciantes
          • Inteligência Artificial
          • Livros
          • Machine Learning
          • NFT
          • Notícias
          • Projetos
          • Python
          • Teoria
          • Tutoriais
          • Visão Computacional
          • Youtube

          Navegar por Tags

          ações cancer carreira ciencia de dados cientista de dados cnn Cursos dados desbalanceados data science data science na prática decision tree deep learning gis gpt-3 gráficos healthcare iniciantes jupyter kaggle keras machine learning matplotlib medicina mnist nft nlp pandas personal branding plotly portfólio profissão python random forest redes neurais redes neurais convolucionais regressão logística seaborn sklearn tensorflow titanic vagas visualização de dados vídeo youtube árvore de decisão
          Sigmoidal

          O melhor conteúdo técnico de Data Science, com projetos práticos e exemplos do mundo real.

          Seguir no Instagram

          Categorias

          • Artigos
          • Blog
          • Carreira
          • Colunistas
          • Cursos
          • Data Science
          • Deep Learning
          • Destaques
          • Entrevistas
          • Inglês
          • Iniciantes
          • Inteligência Artificial
          • Livros
          • Machine Learning
          • NFT
          • Notícias
          • Projetos
          • Python
          • Teoria
          • Tutoriais
          • Visão Computacional
          • Youtube

          Navegar por Tags

          ações cancer carreira ciencia de dados cientista de dados cnn Cursos dados desbalanceados data science data science na prática decision tree deep learning gis gpt-3 gráficos healthcare iniciantes jupyter kaggle keras machine learning matplotlib medicina mnist nft nlp pandas personal branding plotly portfólio profissão python random forest redes neurais redes neurais convolucionais regressão logística seaborn sklearn tensorflow titanic vagas visualização de dados vídeo youtube árvore de decisão

          Artigos Recentes

          • Como escrever uma Cover Letter poderosa para Data Science
          • Aprenda Data Science ou pague o preço de uma decisão errada
          • Como usar o DALL-E 2 para gerar imagens a partir de textos

          © 2023 Sigmoidal - Aprenda Data Science e Python na prática.

          No Result
          View All Result
          • Home
          • Artigos
          • Tutoriais
          • YouTube
          • Contato

          © 2023 Sigmoidal - Aprenda Data Science e Python na prática.

          Welcome Back!

          Login to your account below

          Forgotten Password?

          Retrieve your password

          Please enter your username or email address to reset your password.

          Log In

          Add New Playlist

          INSCRIÇÕES ABERTAS

          DATA SCIENCE

          NA PRÁTICA

          RESERVE SUA VAGA
          Are you sure want to unlock this post?
          Unlock left : 0
          Are you sure want to cancel subscription?