Análise de Big Data - Ferramentas de Análise de Dados
Há uma variedade de ferramentas que permitem a um cientista de dados analisar os dados de maneira eficaz. Normalmente, o aspecto de engenharia da análise de dados se concentra em bancos de dados, enquanto o cientista de dados se concentra em ferramentas que podem implementar produtos de dados. A seção a seguir discute as vantagens de diferentes ferramentas, com foco nos pacotes estatísticos que os cientistas usam na prática com mais frequência.
Linguagem de programação R
R é uma linguagem de programação de código aberto com foco em análise estatística. É competitivo com ferramentas comerciais como SAS, SPSS em termos de capacidades estatísticas. É considerada uma interface para outras linguagens de programação, como C, C ++ ou Fortran.
Outra vantagem do R é o grande número de bibliotecas de código aberto disponíveis. No CRAN existem mais de 6.000 pacotes que podem ser baixados gratuitamente e emGithub há uma grande variedade de pacotes R disponíveis.
Em termos de desempenho, R é lento para operações intensivas, devido à grande quantidade de bibliotecas disponíveis, as seções lentas do código são escritas em linguagens compiladas. Mas se você pretende fazer operações que exigem a gravação profunda de loops for, R não seria sua melhor alternativa. Para fins de análise de dados, existem boas bibliotecas, comodata.table, glmnet, ranger, xgboost, ggplot2, caret que permitem usar R como uma interface para linguagens de programação mais rápidas.
Python para análise de dados
Python é uma linguagem de programação de propósito geral e contém um número significativo de bibliotecas dedicadas à análise de dados, como pandas, scikit-learn, theano, numpy e scipy.
Muito do que está disponível em R também pode ser feito em Python, mas descobrimos que R é mais simples de usar. Caso você esteja trabalhando com grandes conjuntos de dados, normalmente Python é uma escolha melhor do que R. Python pode ser usado de forma bastante eficaz para limpar e processar dados linha por linha. Isso é possível a partir de R, mas não é tão eficiente quanto Python para tarefas de script.
Para aprendizado de máquina, scikit-learné um ambiente agradável que possui uma grande quantidade de algoritmos disponíveis que podem lidar com conjuntos de dados de tamanho médio sem problemas. Comparado com a biblioteca equivalente de R (circunflexo),scikit-learn tem uma API mais limpa e consistente.
Julia
Julia é uma linguagem de programação dinâmica de alto nível e alto desempenho para computação técnica. Sua sintaxe é bastante semelhante a R ou Python, então se você já está trabalhando com R ou Python, deve ser bastante simples escrever o mesmo código em Julia. O idioma é bastante novo e cresceu significativamente nos últimos anos, então é definitivamente uma opção no momento.
Recomendamos Julia para algoritmos de prototipagem que são computacionalmente intensivos, como redes neurais. É uma ótima ferramenta de pesquisa. Em termos de implementação de um modelo em produção, provavelmente o Python tem alternativas melhores. No entanto, isso está se tornando menos problemático, pois existem serviços da web que fazem a engenharia de implementação de modelos em R, Python e Julia.
SAS
SAS é uma linguagem comercial que ainda está sendo usada para inteligência de negócios. Possui uma linguagem base que permite ao usuário programar uma ampla variedade de aplicações. Ele contém alguns produtos comerciais que oferecem aos usuários não especialistas a capacidade de usar ferramentas complexas, como uma biblioteca de rede neural, sem a necessidade de programação.
Além da desvantagem óbvia das ferramentas comerciais, o SAS não se adapta bem a grandes conjuntos de dados. Mesmo conjuntos de dados de tamanho médio terão problemas com SAS e farão o servidor travar. Somente se você estiver trabalhando com pequenos conjuntos de dados e os usuários não forem cientistas especialistas em dados, o SAS é recomendado. Para usuários avançados, R e Python fornecem um ambiente mais produtivo.
SPSS
SPSS, é atualmente um produto da IBM para análise estatística. É usado principalmente para analisar dados de pesquisas e para usuários que não são capazes de programar, é uma alternativa decente. Provavelmente é tão simples de usar quanto o SAS, mas em termos de implementação de um modelo, é mais simples porque fornece um código SQL para pontuar um modelo. Esse código normalmente não é eficiente, mas é um começo, enquanto o SAS vende o produto que pontua modelos para cada banco de dados separadamente. Para dados pequenos e uma equipe inexperiente, o SPSS é uma opção tão boa quanto o SAS.
O software, entretanto, é bastante limitado e usuários experientes serão muito mais produtivos usando R ou Python.
Matlab, Octave
Existem outras ferramentas disponíveis, como Matlab ou sua versão de código aberto (Octave). Essas ferramentas são usadas principalmente para pesquisa. Em termos de recursos, R ou Python podem fazer tudo o que está disponível em Matlab ou Octave. Só faz sentido comprar uma licença do produto se você estiver interessado no suporte que eles fornecem.