Esta seção apresenta os resultados previstos gerados pelo modelo treinado em um subconjunto de 1000 linhas do conjunto de dados de teste. As previsões são baseadas nos padrões aprendidos do modelo e incluem métricas-chave que ajudam a avaliar sua confiabilidade.
Etapa 1: Selecionando um subconjunto de dados
Um subconjunto de 1000 empregados é selecionado a partir do conjunto de dados de teste depois de soltar a coluna 'FLIGHT_RISK' para garantir previsões imparciais.
123hdf_new=df_test.drop('FLIGHT_RISK').head(1000)
display(hdf_new.collect())| ITEM_NUMBER | EMPLOYEE_ID | AGE | AGE_GROUP10 | AGE_GROUPS | GERAÇÃO | CRITICAL_JOB_ROLE | RISK_OF_LOSS | IMPACT_OF_LOSS | FUTURE_LEADER | GENDER ... | CURRENT_REGION | CURRENT_COUNTRY | CURCOUNTRYLAT | CURCOUNTRYLON | PROMOTION_WITHIN_LAST_3_YEARS | CHANGED_POSITION_WITHIN_LAST_2_YEARS | CHANGE_IN_PERFORMANCE_RATING | FUNCTIONALAREACHANGETYPE | JOBLEVELCHANGETYPE | CABEÇALHO |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 10037 | 33 | (25-35] | (30-35] | Geração Y | Não crítico | Baixo | Baixo | Nenhum líder futuro | Masculino... | Américas | México | 19,432601 | -99,133342 | Nenhuma promoção | Nenhuma modificação | 0 - Não disponível | Nenhuma modificação | Nenhuma modificação | 1 |
| 1 | 10045 | 33 | (25-35) | (30-35) | Geração Y | Crítico | Médio | Médio | Nenhum líder futuro | Feminino... | Américas | EUA | 39,783730 | -100,445882 | Nenhuma promoção | Nenhuma modificação | 0 - Não disponível | Nenhuma modificação | Nenhuma modificação | 1 |
| 2 | 10082 | 33 | (25-35) | (30-35) | Geração Y | Crítico | Baixo | Médio | Nenhum líder futuro | Masculino | Américas | EUA | 39,783730 | -100,445882 | Nenhuma promoção | Nenhuma modificação | 0 - Não disponível | Nenhuma modificação | Nenhuma modificação | 1 |
| 3 | 10086 | 33 | (25-35] | (30-35] | Geração Y | Não crítico | Médio | Baixo | Futuro líder | Masculino... | Américas | EUA | 39,783730 | -100,445882 | Nenhuma promoção | Nenhuma modificação | 0 - Não disponível | Nenhuma modificação | Nenhuma modificação | 1 |
| 4 | 10092 | 33 | (25-35) | (30-35) | Geração Y | Não crítico | Baixo | Baixo | Futuro líder | Masculino... | Américas | EUA | 39,783730 | -100,445882 | Nenhuma promoção | Nenhuma modificação | 0 - Não disponível | Nenhuma modificação | Nenhuma modificação | 1 |
| . ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | |
| 995 | 16699 | 36 | (35-45) | (35-40) | Geração Y | Crítico | Médio | Baixo | Nenhum líder futuro | Masculino... | EMEA | Irlanda | 52,865196 | -7,979460 | Promoção | Nenhuma modificação | 3 - Diminuindo | Movimentação válida para todas as funções | Promoção | 1 |
| 996 | 16702 | 36 | (35-45) | (35-40) | Geração Y | Crítico | High | Médio | Nenhum líder futuro | Feminino... | EMEA | Dinamarca | 55,670249 | 10,333328 | Nenhuma promoção | Modificação | 1 - Aumentando | Movimentação válida para todas as funções | Mesmo nível | 1 |
| 997 | 16704 | 36 | (35-45] | (35-40] | Geração Y | Não crítico | Médio | High | Futuro líder | Masculino... | APJ | China | 35,000074 | 104,999927 | Nenhuma promoção | Nenhuma modificação | 3 - Diminuindo | Movimentação válida para todas as funções | Mesmo nível | 1 |
| 998 | 16710 | 45 | (45-55) | (40-45) | Geração X | Crítico | Médio | Médio | Nenhum líder futuro | Masculino... | EMEA | Itália | 42,638426 | 12,674297 | Promoção | Modificação | 1 - Aumentando | Movimentação válida para todas as funções | Promoção | 1 |
| 999 | 16731 | 50 | (45-55] | (45-50] | Geração X | Crítico | High | High | Nenhum líder futuro | Masculino... | Américas | EUA | 39,783730 | -100,445882 | Nenhuma promoção | Modificação | 2 - Constante | Movimentação válida para todas as funções | Mesmo nível | 1 |
Etapa 2: Executando previsões
As previsões são geradas usando o modelo treinado:
12predicted_classification = hgbc.predict(hdf_new, key = 'EMPLOYEE_ID', attribution_method='tree-shap',
missing_replacement='feature_marginalized')Etapa 3: Filtragem e exibição de resultados
Observe que alguns exemplos de previsão são exibidos na tabela mostrada abaixo. A tabela inclui as seguintes colunas: 'EMPLOYEE_ID', 'SCORE', 'CONFIDENCE', 'REASON_CODE', 'Top 1' e 'PCT 1'.
A coluna 'SCORE' [1] representa os valores de categoria previstos, enquanto a coluna 'CONFIDÊNCIA' indica a probabilidade ou o nível de confiança da previsão de classificação efetuada pelo modelo.
Além disso, a coluna 'REASON_CODE' fornece informações sobre a importância da funcionalidade relacionada à classificação prevista (ou seja, importância ou explicabilidade da funcionalidade local) [2].
Por exemplo, o número da linha 'zero' na tabela representa o registro de um empregado classificado como 'Sim' (indicando a rotatividade de empregados). A funcionalidade mais influente para esta classificação é 'FUNCTIONALAREACHANGETYPE' (listada na coluna 'Top 1'), com um valor percentual de 29% (exibido na coluna 'PCT 1').
123456pd.set_option('max_colwidth', None)
display(predicted_classification.filter('"SCORE" = \'Yes\'').select(
'EMPLOYEE_ID', 'SCORE', 'CONFIDENCE', 'REASON_CODE',
('json_query("REASON_CODE", \'$[0].attr\')', 'TOP 1'),
('json_query("REASON_CODE", \'$[0].pct\')', 'PCT 1') ).head(3).collect())| ITEM_NUMBER | EMPLOYEE_ID | PONTUAÇÃO | CONFIDÊNCIA | REASON_CODE | PRINCIPAL 1 | PCT 1 |
|---|---|---|---|---|---|---|
| 0 | 10772 | Sim | 0,9805 | Code Snippet | "FUNCTIONALAREACHANGETYPE" | 29,6167 |
| 1 | 12996 | Sim | 0,6626 | Code Snippet | "FUNCTIONALAREACHANGETYPE" | 26,1833 |
| 2 | 16484 | Sim | 0,5256 | Code Snippet | "FUNCTIONALAREACHANGETYPE" | 36,9316 |
| ITEM_NUMBER | EMPLOYEE_ID | PONTUAÇÃO | CONFIDÊNCIA | REASON_CODE | PRINCIPAL 1 | PCT 1 |
|---|---|---|---|---|---|---|
| 0 | 27221 | Sim | 0,522728 | Code Snippet | "TIMEINPREVPOSITIONMONTH" | 34,21097120019775 |
| 1 | 27858 | Sim | 0,990345 | Code Snippet | "TIMEINPREVPOSITIONMONTH" | 41,194646979837177 |
| 2 | 28272 | Sim | 0,703382 | Code Snippet | "TIMEINPREVPOSITIONMONTH" | 30,169212529463996 |
Resumindo os resultados
A tabela de saída inclui as seguintes colunas-chave:
- 'EMPLOYEE_ID': um identificador único para cada empregado.
- 'SCORE': a previsão do modelo indica se é provável que um empregado saia ('Sim' para desistência, 'Não', caso contrário).
- 'CONFIDÊNCIA': uma medida de certeza na previsão, representando a intensidade com que o modelo associa os dados de entrada com o resultado previsto.
Um 'SCORE' mais alto indica uma probabilidade aumentada de desistência, enquanto um valor 'CONFIDENCE' mais alto sugere que a previsão é mais confiável.
Esses insights podem ser usados para melhorar as estratégias direcionadas de retenção de funcionários, aproveitando a análise orientada por dados para reduzir a rotatividade.
Referências
Conclusão
O valor da métrica de desempenho da AUC obtido durante a avaliação do modelo está acima de '0,90', o que indica um classificador suficientemente de bom desempenho.
Ao revisar os resultados do treinamento do modelo, mostramos a seção de importância do recurso. Ou seja, a importância relativa de todos os atributos explicando e contribuindo para o desempenho da classificação global do modelo.
Durante a seção de previsão do modelo, destacamos que um valor maior de 'CONFIDÊNCIA' indica maior confiabilidade na previsão do modelo. Além disso, mostramos a relevância da 'explicabilidade' (por exemplo, saída fornecida na coluna 'REASON_CODE') fornecendo uma ferramenta eficaz para entender a modelagem preditiva [1].
Mostramos como o SAP HANA PAL integrou perfeitamente a "explicabilidade" na classificação e também se estende a vários algoritmos de regressão e à análise de série cronológica. A capacidade de explicação de ML é essencial para alcançar as metas éticas de IA da SAP, garantindo justiça, transparência e confiabilidade nos sistemas de IA.
Em resumo, esses insights podem ser aproveitados para abordar proativamente as estratégias de retenção de empregados com base em análises orientadas por modelo.