Analista de dados: os objetivos e competências de um bom profissional

“Mas, após observação e análise, quando você achar que alguma coisa concorda com a razão e é condutora para o bem e benefício de todos, aceite-a e cumpra-a.”

Gautama Siddharta, também conhecido como Buda, 563-483 A.C.

Ciência de dados é um campo interdisciplinar que usa métodos científicos, processos, algoritmos e sistemas para extrair conhecimento e insights de dados. Como sabemos, ela lida com dados quantitativos e qualitativos, onde aplicamos essencialmente quatro tipos de análise: descritiva, diagnóstica, preditiva e prescritiva. O fato de ser interdisciplinar nos indica que ela envolve a combinação de mais de uma disciplina acadêmica dentro da mesma atividade. 

Por ser uma área extensa, permitiu a criação de várias especializações de carreiras existentes anteriormente. Muitos desconhecem que para cada tipo de tarefa temos profissionais com perfis e conhecimentos específicos. Nesse texto vamos focar no Analista de Dados, indicando quais são as competências esperadas e seu limite de atuação. Em uma publicação futura detalharemos cada uma das posições existentes dentro de um time focado em dados.

Quais as competências de cada profissional dentro de um time?  

Antes do profissional, vamos falar da análise de dados em si: as empresas tendem a coletar todos os dados possíveis relacionados ao seu negócio, já que as expectativas dos clientes são cada vez mais altas e a competição acirrada continua em crescimento. A análise desses dados podem contribuir para que essas organizações possam ser proativas, antecipando as necessidades, otimizando a experiência de seus usuários e entregando produtos e funcionalidades relevantes, os quais podem permitir a construção de um relacionamento entre a marca/produto e seus clientes. 

Baseado em fatos, podemos tomar decisões de negócio mais rápidas, ter consciência de riscos e capacidade de reação a mudanças do mercado, além de insights sobre o desempenho da empresa, reduzindo custos e aumentando lucros. Mas quais são os profissionais que, em termos de ciência de dados, podem auxiliar os tomadores de decisão a realizar essas análises em um curto espaço de tempo?

O primeiro profissional que sempre vem em mente é o cientista de dados, com domínio em machine learning, estatística e análise. Altamente qualificado, este profissional 3 em 1 tem alto custo, o qual muitas vezes não se justifica sem uma sólida estrutura e cultura de dados estabelecida nas organizações. Outros especialistas de domínios específicos podem ser essenciais para alcançarmos os objetivos desejados. Mas quais habilidades e competências eles devem ter? Existe uma tendência em procurar profissionais com expertise em inteligência artificial e machine learning, ou estatísticos, devido à sua longa reputação de rigor e superioridade matemática – ambos inegáveis. Mas e os analistas?

O que os menos envolvidos na área por vezes não entendem é que, apesar de estarem sob o mesmo guarda-chuva, esses profissionais são diferentes, mesmo utilizando os mesmos métodos algumas vezes. Cada um deve ser encorajado a dominar amplamente sua área de atuação. Estatísticos sempre prezam pelo rigor, engenheiros de machine learning pelo desempenho, e analistas pela velocidade. Os melhores analistas são velozes em vasculhar um dataset, identificando potenciais insights antes dos outros profissionais citados; isso não deve ser considerado como um demérito para eles já que, como citado, os objetivos são diferentes. 

Estatísticos, ao prezarem pelo rigor, garantem as conclusões obtidas de seus dados, não permitindo que você se engane. Não há espaço para inferências aqui: os métodos aplicados são os corretos para o problema apresentado. Engenheiros de machine learning, ao prezarem pelo desempenho, desenvolvem modelos resilientes, precisos e de rápida resposta aos seus acionamentos. O que ambos têm em comum é o fato de que são soluções de alto esforço para problemas específicos: se os problemas apresentados não valerem o custo de serem solucionados, a empresa acaba perdendo tempo e dinheiro.

O que faz um bom analista de dados? 

Bons analistas são um pré-requisito para sua empreitada com dados. Além da velocidade, eles têm a habilidade de identificar informações potencialmente úteis e apresentá-las em formato gráfico efetivo, revelando o antes desconhecido aos tomadores de decisão e inspirando-os a selecionar os problemas que valem a pena serem enviados aos estatísticos e engenheiros de machine learning. Os bons analistas podem ser considerados então como contadores de histórias dos dados.

Um ponto de destaque em relação aos analistas de dados é a sua regra de ouro: não chegue a conclusões através de seus dados. Apesar de soar estranho, essa regra deixa claro que o resultado de seu trabalho deve inspirar os interessados a explorar todas as possibilidades de interpretação de cada insight, elaborando hipóteses que possam ser testadas pelos estatísticos. Outro aspecto interessante dessa regra é que ela indica que a comunicação do resultado do trabalho realizado pelos analistas deve ser clara o suficiente para que não entendam um insight como uma conclusão.

O domínio de negócio também é algo extremamente relevante para os analistas de dados, não sendo algo essencial para engenheiros de machine learning e estatísticos. Por causa dessa expertise, eles podem auxiliar a identificar padrões rapidamente em seus dados e explorar diversos ângulos do mesmo assunto, antes mesmo de levar as informações para os tomadores de decisão. 

Podemos dizer que, numa ordem de prioridade na montagem de um time de dados, o analista vem antes dos outros profissionais citados, gerando insumos para eles e tendo uma importante função junto aos tomadores de decisão.

Gostou da nossa explicação? A Viceri tem um time completo de especialistas sempre dispostos a ajudar sua empresa a chegar mais longe. Entre em contato com a gente

LGPD: O cenário de insegurança jurídica durante a pandemia

Fica muito difícil não relacionarmos este tempo pandêmico com um cenário de insegurança jurídica em torno da Lei Geral de Proteção de Dados,  a LGPD. No artigo anterior, já tínhamos abordado sobre a dificuldade das empresas nos processo de adequação. Não só aspectos econômicos em tempos de crise, mas também as preocupações técnicas em relação a prazos e sobre quais as medidas os governos e instituições de saúde têm tomado para tratar dados com segurança neste período. E para entendermos um pouco melhor este momento que o Brasil vive, precisamos compreender também o que está sendo debatido entre o Governo Federal e o Senado. 

Em agosto de 2018 tivemos a promulgação da Lei nº 13.709, a Lei Geral de Proteção de Dados, com previsão de vigência para agosto de 2020. Por conta do cenário de pandemia, o Senado recebeu o plano de Lei nº 1179/2020 com a sugestão de um regime emergencial. Na primeira votação os senadores decidiram pelo adiamento da vigência da LGPD para janeiro de 2021, com aplicabilidade de multas a partir de agosto do mesmo ano. 

Antes da conclusão e sanção do plano de Lei nº 1179/2020, o executivo editou a Medida Provisória 959/2020 que tratava também do adiamento da vigência da LGPD para maio de 2021. Essa medida provisória entrou em vigor em abril de 2020 e deve ser convertida em lei, após votação do Congresso Nacional, até 27 de agosto deste ano. Caso contrário, ela simplesmente deixa de existir. Porém, uma nova votação aconteceu na Câmara dos Deputados para o plano de Lei nº 1179/2020 que eliminou a tratativa da prorrogação da vigência da lei, mantendo apenas a prorrogação dos recursos punitivos para agosto de 2021. 

Que confusões essas mudanças podem causar? 

Então, diante de todas essas informações, podemos entender que a Medida Provisória nº 959/2020 precisa ser convertida em lei até 27 de agosto de 2020 para que a data de vigência inicial da LGPD seja postergada para maio de 2021. Ou então, voltamos à data inicial prevista antes da pandemia, 16 de agosto de 2020. Sabemos que esse assunto tão importante segue em discussão e não podemos deixar de mencionar os impactos que isso traz para todo o país. 

O certo é que a Lei Geral de Proteção de Dados é extremamente relevante para o Brasil, e é importante desde a sua promulgação, em 2018. Sua relevância demonstra que o país está preocupado em fazer um tratamento de dados dos titulares de forma transparente. Traz também a credibilidade no que diz respeitos aos direitos humanos e aos requisitos de segurança digital. 

Porém, o país tem um grande entrave, um grande gerador de insegurança jurídica: a ausência da criação da ANPD, a Autoridade Nacional de Proteção de Dados. Ela vai ser responsável, dentre várias funções, por fiscalizar e aplicar a lei. A nomeação ainda não ocorreu por conta de dependência da agenda do executivo e orçamento. Além da aprovação e indicação dos responsáveis. 

De acordo com Patrícia Peck, advogada especialista em Direito Digital e PHD em Direito Internacional e Propriedade Intelectual, não adianta prorrogar a vigência da lei sem que se tenha um compromisso de, nesse período de transição, criar a Autoridade Nacional de Proteção de Dados.

O país não pode simplesmente decidir uma vigência de lei e começar a aplicabilidade de multas na sequência, sem que se tenha a preocupação com o protocolo de conduta. A ANPD, antes da vigência da LGPD, precisa articular com as instituições e com a sociedade, estabelecer metodologias, promover campanhas educativas, responder a consultas públicas, regulamentar artigos que ainda ficaram abertos para discussão, para evitar que haja uma interpretação confusa da legislação.

Ou seja, é uma lei de alto impacto que precisa ser tratada com a sua devida importância. Alguns especialistas, inclusive, acreditam que vai ser preciso ao menos seis meses para que a ANPD tenha recursos suficientes para começar a sancionar. 

Quer saber mais sobre a nova Lei Geral de Proteção de Dados? Acesse o nosso whitepaper especial “Tudo sobre a LGPD” e confira vários conceitos e dicas para adequar o seu negócio à nova legislação!

O que vem pela frente? 

Estamos diante de uma mudança de vício de consentimento. A partir de agora tudo vai ter que ser muito mais claro, mais transparente, sem letras miúdas ou interpretações dúbias. Todo o tratamento de dados tem que ter um objetivo, um princípio. Por isso hoje mais de 120 países estão regulamentando as suas leis de privacidade. Além disso, estamos em tempo de cloud computing, o que torna a proteção e a confidencialidade dos dados muito mais importante.

As empresas precisam determinar quais serão os dados levados para nuvem, por exemplo. São dados pessoais? São dados pessoais sensíveis? A preocupação com os riscos e a segurança, desde a criptografia dos dados em movimento e armazenados, até com quem os acessa, deve ser base para adequação à lei. Mesmo que ainda haja discussão sobre data de vigência, sobre a criação da ANPD, sobre quando começar com os recursos punitivos, e sobre os impactos da pandemia na LGPD, o fato é que já estamos em tempo de lições aprendidas, em tempo de amadurecimento das práticas de governança de dados.

A aplicação da lei é necessária visto que o momento em que vivemos é de extremo risco para o vazamento de dados: home office, grande quantidade de dados em trânsito e uma maior quantidade de dados sensíveis do que em outros períodos. Quanto mais tempo protelarmos a aplicação da lei, mais estaremos sujeitos a vazamentos de informações.

A pandemia está nos mostrando o quão importante seria se a LGPD já estivesse em vigor. Uma lei que seria uma referência muito forte diante de todas as questões de saúde que estamos enfrentando, devido ao grau de conscientização da sociedade diante da  crise. Acredito que o futuro nos reserva instituições mais preparadas e consumidores mais conscientes dos seus direitos.

A Viceri tem um time de especialistas nas mais diversas áreas. Todos prontos para ajudar sua empresa a entrar em conformidade com a nova Lei Geral de Proteção de Dados. Fale com a gente!

Métricas de performance e funções de perda para Machine Learning

O processo de treinamento de um modelo supervisionado requer um feedback que consiste em realizar medições de performance e ajustar hiperparâmetros do modelo até que um estado ótimo seja atingido, para que a generalização seja a melhor possível.

Para isso ocorrer, é necessário utilizar métricas para se maximizar a qualidade e minimizar o erro. Veja alguns conceitos utilizados nesta área de aprendizado de máquina:

Underfitting: acontece quando o modelo é muito simples e não é capaz de gerar bons resultados sobre os dados conhecidos (os de treinamento), e muito menos de generalizar bem (sobre dados desconhecidos). Imagine um gráfico 2D onde este modelo representa uma função linear (uma reta), e os dados são vários pontos nesse gráfico, onde muitos deles não são cobertos pela reta.

Por outro lado, se o modelo é muito complexo e possui uma função extremamente fiel aos dados de treino, ele também não vai conseguir generalizar bem. Nesse caso ocorreu um Overfitting. Como exemplos disso podemos ter uma árvore de decisão com muitos nós, ou uma rede neural com mais neurônios do que o necessário. Isso é muito ruim porque o modelo memoriza a entrada de treino ao invés de aprender características dela.

Outro conceito é o Erro Empírico (ou erro de treino): definido como o erro do modelo sobre os dados de treino, que tende a aumentar naturalmente com o tamanho da base de treinamento, até atingir uma estabilização a um nível aceitável. Já o Erro de Validação é o erro do modelo sobre os dados de validação. Tem um comportamento espelhado com relação ao erro empírico, ou seja, tende a diminuir com o aumento da base de treino.

A partir de uma grande base de treinamento, se estas duas medidas de erro estiverem bem acima do erro aceitável (ou desejado), então ocorreu um underfitting, e dizemos que o modelo neste caso ficou com um alto viés – ou bias. Ao contrário, se apenas a medida de erro empírico estiver bem abaixo do erro aceitável, mas a medida do erro de validação estiver bem acima do aceitável, então ocorreu um overfitting e o modelo ficou com alta variância, ou seja, baixo poder de generalização. Nenhum dos dois casos é bom!

Com relação ao aumento da complexidade do modelo, temos que o erro empírico sempre vai diminuindo, porém o erro de validação tende a diminuir até um certo ponto, mas pode começar a aumentar novamente se houver superajuste do modelo. Nota-se, portanto, que é necessário encontrar um ponto ótimo, também chamado de bias-trade-off, onde o erro de validação é o mínimo possível. Durante o treino de um modelo, o objetivo é minimizar o erro de validação e não o erro de treinamento (o empírico), porque deseja-se que o modelo seja capaz de generalizar, e não de se superajustar aos dados de entrada – já conhecidos.

Depois dos conceitos, vamos às medidas de avaliação

É nesse contexto de se encontrar o equilíbrio, que se faz uso de medidas de avaliação e análise da função de perda. A maioria das medidas de avaliação derivam de uma tabela chamada de Matriz de Confusão, que contém a quantidade de classificações corretas versus as classificações preditas para cada classe sobre um conjunto de exemplos, ou seja, ela indica os erros e acertos do modelo comparando com os resultados esperados. Para cada classe é realizada a extração de quatro variáveis:

  • Verdadeiro positivo;

  • Verdadeiro negativo;  

  • Falso positivo;

  • Falso negativo.

A partir destas quatro variáveis definem-se várias métricas de avaliação. Algumas delas são:

A acurácia: representando a porcentagem de elementos classificados corretamente (positivos ou negativos), indica uma performance geral do modelo, porém pode haver situações em que ela é enganosa, no caso de identificação de fraudes em cartões de crédito, as ocorrências são naturalmente bem menores do que a quantidade de casos consideradas legais;

A acurácia por classe: a média das acurácias individuais para cada classe, minimizando o problema de desbalanceamento, como o citado anteriormente;

A precisão: que define, dentre os exemplos classificados como positivos (pelo modelo), quantos eram realmente verdadeiros. Ela é utilizada onde os falsos positivos são considerados mais prejudiciais que os falsos negativos. Por exemplo: é pior classificar um investimento ruim como bom, do que classificar um investimento bom como ruim;

A revocação ou recall: que define, dentre todas as situações de classe positiva (dos valores esperados), quantas foram classificadas como verdadeiras. Ela é utilizada onde os falsos negativos são considerados mais prejudiciais que os falsos positivos. Por exemplo: é bem pior classificar uma pessoa doente como saudável, do que classificar uma pessoa saudável como doente, considerando doente igual a positivo;

A especificidade: que é a porcentagem de amostras negativas identificadas corretamente sobre o total de amostras negativas;

E o F-Score ou F-Measure: que representa a média ponderada de precisão e revocação.

Podemos citar duas métricas que não utilizam as variáveis da matriz de confusão: a “Log-Loss” que depende da probabilidade retornada da classificação, e a “Hamming-loss” que depende da distância média entre o previsto e a classe original.

Então qual métrica é melhor? 

Cada métrica tem suas particularidades que devem ser levadas em consideração na escolha de como o modelo de classificação será avaliado. De maneira geral, não existe uma melhor ou pior que a outra, depende muito da análise do problema.

A outra parte da análise de performance de um modelo, tem relação com as funções de perda que devem ser minimizadas, ao contrário das medidas de avaliação vistas anteriormente que buscamos sempre aumentar.

De modo simplificado, uma função de perda, representa a distância entre o previsto e o real. Como exemplos podemos citar as seguintes funções:

Perda quadrática (ou squared loss): onde o resultado é elevado ao quadrado para que as distâncias negativas não se cancelem no somatório. É mais utilizada para regressões lineares;

Perda de articulação (ou hinge loss): utiliza o conceito de “margem máxima” buscando obter fronteiras com a maior distância dos dados, onde chamamos de margem, a diferença entre o “score” da classe correta e de uma outra classe;

Perda de entropia cruzada (ou cross-entropy loss): muito usada em regressões lineares multivariadas e principalmente em redes profundas. Para se buscar o valor mínimo da função de perda, é utilizado o cálculo de um vetor de derivadas parciais chamado de gradiente, em que este deve ser igualado a zero. O gradiente representa o quão rápido varia a função de perda, e esta se reduz conforme se segue no sentido contrário ao gradiente. Com o gradiente igual a zero, tem-se que a função de perda não sofre mais variação.

Podemos citar (em ordem de importância) algumas técnicas para cálculo e otimização do gradiente:

  • Método do gradiente estocástico descendente (ou SGD): que calcula o gradiente através de um batch aleatório de dados;

  • Método da propagação retrógrada (ou backpropagation): que calcula o gradiente do final para o início usando a regra da cadeia para a determinação das derivadas;

  • Método do momento: que consegue chegar ao mínimo da função de forma muito mais rápida se comparada ao zig-zag do SGD;

  • Método do momento de Nesterov (ou NAG): que é uma variante do método acima, porém mais rápido;

  •  Método RMSProp: que ajusta os valores de gradiente pelo inverso de uma média móvel;

  • Método do gradiente adaptativo (ou ADAGRAD): que é semelhante ao RMSProp, porém utiliza a soma acumulada dos quadrados dos gradientes;

  • Método da estimação do momento adaptativo (ou ADAM): que é o mais utilizado em redes neurais profundas, e reúne a técnica do RMSProp com a técnica do momento.

Sobre a base dados, de forma resumida, deve-se separar uma porção maior chamada de dados de treino, e uma parte menor chamada de dados de teste. Esta parte menor será utilizada apenas após o treinamento para verificações. Não se deve treinar o modelo com dados de teste! 

A fim de se obter as métricas mencionadas anteriormente, é muito comum uma subdivisão nos dados de treino em uma pequena parte chamada de dados de validação. E para se evitar um possível viés no treinamento, pode-se utilizar a técnica K-Fold de validação cruzada (ou cross-validation), onde deve-se definir um hiperparâmetro K, como sendo o número de folds que serão alternados durante o treinamento, ocorrendo várias trocas entre os dados de treino e de validação.

Gostou das nossas dicas e quer saber mais sobre métricas de performance e funções de perda para Machine Learning? Então fale com nosso time. Entre em contato com a Viceri!