As ferramentas que seu cientista de dados precisa para ser eficaz

Publicados: 2022-04-28

Em postagens anteriores, discutimos como construir um roteiro de ciência de dados e determinar quais dados você usará para ajudar um cientista de dados recém-contratado a começar a trabalhar. Mas não basta ter boas ideias, dados e um cientista de dados: o cientista de dados precisa de ferramentas poderosas para fazer seu trabalho com eficiência. Neste post, discutiremos os tipos de ferramentas necessárias para que um cientista de dados típico seja bem-sucedido.

A camada de dados

Os produtos de tecnologia moderna podem gerar muitos dados: fluxos de cliques, telemetria, conteúdo gerado pelo usuário, como comentários ou avaliações, e pontos de contato da experiência do cliente, para citar alguns. É fundamental que esses dados sejam localizados, mapeados e, se possível, carregados em um único local central. Esse armazenamento de dados central é a camada de dados de sua operação de ciência de dados.

Armazéns de Dados

Se a maioria dos seus dados existir em bancos de dados relacionais (ou o que geralmente é chamado de bancos de dados SQL), uma das coisas mais fáceis e melhores que você pode fazer para seu possível Cientista de Dados é construir um Data Warehouse .

Os dados normalmente não são coletados com o propósito expresso de “fazer ciência de dados”; por exemplo, um site de comércio eletrônico coleta avaliações de clientes em um banco de dados para que as avaliações possam ser exibidas em uma página, não para que os Cientistas de Dados possam realizar processamento de linguagem natural para descobrir padrões nas avaliações. Isso significa que, embora as revisões sejam coletadas, elas são difíceis e demoradas de analisar.

Um data warehouse é um banco de dados SQL que contém todos os dados necessários para análise e inteligência de negócios em sua organização. Se arquitetados corretamente, os data warehouses são rápidos de consultar, fáceis de dimensionar e conterão todos os dados que seu Cientista de Dados precisa para atingir seus objetivos. Construir isso antes de trazer um Cientista de Dados reduzirá o tempo perdido na espera pelo acesso aos dados ou na consulta de bancos de dados lentos.

Todos os principais provedores de nuvem fornecem algum tipo de tecnologia de data warehouse, que é fácil de configurar e dimensionar. A Amazon Web Services (AWS) fornece o Amazon Redshift e o Redshift Spectrum, o Google tem o Google BigQuery e a Microsoft oferece o Azure SQL Data Warehouse.

Lagos de dados

Os data warehouses são poderosos e úteis desde que seus dados possam ser carregados em um banco de dados SQL. No entanto, isso nem sempre é prático. Muitas organizações de tecnologia modernas lidam com dados semiestruturados ou não estruturados; nesse caso, pode ser bastante desafiador carregar em um data warehouse, que é inerentemente construído para dados estruturados. Nesse caso, podemos preferir começar com um Data Lake . Um data lake é um armazenamento de dados organizado que contém todos os dados gerados por sua organização, geralmente em formato bruto.

Para utilizar efetivamente um data lake, você precisará de ferramentas para realizar consultas e análises em grande escala nos dados contidos no data lake. As ferramentas de consulta são parte integrante de um data warehouse, mas você precisará escolher uma ferramenta de consulta para emparelhar com seu data lake. Tradicionalmente, isso era feito com uma estrutura chamada Apache Hadoop , um conjunto de ferramentas de software para realizar cálculos programados ou em lote em enormes conjuntos de dados.

Outra ferramenta comum para consultar data lakes é o Apache Spark, que permite que os cientistas de dados trabalhem interativamente com conjuntos de big data usando sua linguagem de programação preferida (python ou R). Para entender melhor como os data lakes funcionam, confira este infográfico criado pelo G2 Crowd Learning Hub.

O que é um lago de dados

Fonte: G2 Multidão

A camada de computação

Os Cientistas de Dados fazem coisas diferentes em diferentes organizações, mas uma constante é que eles precisarão realizar um processamento de números bastante pesado. Para fazer isso, um cientista de dados precisa de um laptop poderoso e, dependendo das funções que executará, pode precisar de ferramentas computacionais adicionais. As ferramentas disponibilizadas para computação formam a camada de computação de sua operação de ciência de dados.

Para o trabalho diário

A produtividade do seu Cientista de Dados pode ser muito melhorada fornecendo equipamentos com uma grande quantidade de poder computacional. As ferramentas típicas para análise de dados são R ou Python com notebook Jupyter, e essas ferramentas dependem do armazenamento de conjuntos de dados e da execução de cálculos na memória. Isso torna comum para um Cientista de Dados maximizar a memória de seu laptop, resultando em trabalho lento ou até mesmo perdido. Para combater esse problema, escolha o máximo de RAM possível ao comprar um laptop para seu cientista de dados.

Ferramentas de computação para aprendizado de máquina

As técnicas modernas de aprendizado de máquina são surpreendentemente boas em fazer coisas como reconhecer imagens ou rostos, processamento de linguagem natural e muitas outras tarefas que eram quase inimagináveis ​​para um computador até alguns anos atrás. Mas esses avanços têm um custo: construir modelos de aprendizado de máquina requer imenso poder computacional – mais do que pode ser encontrado na maioria dos laptops.

Um avanço importante é o desenvolvimento da computação GPU (Graphics Processing Unit) para aprendizado de máquina. As GPUs foram originalmente projetadas como ferramentas para renderizar com eficiência gráficos complexos, liberando a CPU (Unidade Central de Processamento) para fazer outras coisas. Enquanto uma CPU é projetada para executar tarefas complexas uma de cada vez, as GPUs são projetadas para executar milhares de tarefas muito simples por vez. Esse estilo de computação é perfeito para a matemática que o aprendizado profundo e outros métodos complexos de aprendizado de máquina usam. Pesquisadores e desenvolvedores de aprendizado de máquina aprenderam a aproveitar a computação GPU para acelerar o processo de construção desses modelos.

Para aproveitar a computação GPU, você precisa acessar um computador com uma GPU discreta. Tradicionalmente, isso seria encontrado em computadores para jogos, mas à medida que a computação GPU ganhou popularidade, as GPUs discretas tornaram-se mais amplamente disponíveis em computadores profissionais de ponta.

Computação em Nuvem

Para a maioria das organizações, há muitas vantagens em manter todo o trabalho de aprendizado de máquina na nuvem. Serviços como Google Cloud Platform, Amazon Web Services, Microsoft Azure e outros permitem que os usuários aluguem uma instância virtual de um computador bem equipado localizado em um de seus data centers. As instâncias de nuvem podem ser acessadas com segurança de qualquer computador conectado à Internet, o que significa que essa abordagem não exige que seu Cientista de Dados tenha um laptop especializado. Existem algumas outras vantagens importantes da computação em nuvem.

A vantagem mais óbvia é a escalabilidade. Se você precisar de mais poder de computação para um novo projeto, recursos adicionais podem ser organizados instantaneamente aumentando seu pagamento mensal para o serviço em nuvem. E os recursos podem ser reduzidos com a mesma rapidez. Você pode até optar por executar várias instâncias: uma instância de menor potência para computação do dia-a-dia e uma instância de maior potência que é ativada apenas para trabalho pesado. Isso é comum especialmente quando a computação de GPU é necessária, pois as instâncias habilitadas para GPU tendem a ser mais caras.

Outra vantagem é a segurança dos dados. Não é a melhor ideia baixar dados para seu laptop pessoal para análise, especialmente se esses dados forem confidenciais. Usar o mesmo provedor de nuvem para armazenamento e computação é uma maneira de manter seus dados mais seguros.

Colabore com seu cientista de dados

Infelizmente, é muito comum que as organizações contratem um cientista de dados, mas não forneçam as ferramentas e os equipamentos necessários para o sucesso.

Esteja preparado para ouvir seu novo Cientista de Dados. Isso é especialmente verdadeiro se você estiver contratando um Cientista de Dados experiente com experiência em fazer esse tipo de trabalho em escala em outras empresas. Se você não tiver certeza de quais ferramentas precisará para capacitar o Cientista de Dados, esteja preparado para colaborar com ele em um roteiro de Ciência de Dados que inclua ideias, dados e recursos computacionais.