O surto de coronavírus está assumindo as manchetes. Devido à disseminação do COVID-19, o trabalho remoto é subitamente um requisito noturno para muitos. Você pode estar trabalhando em casa enquanto lê este artigo.
Com milhões trabalhando em casa há muitas semanas, devemos aproveitar esta oportunidade para melhorar nossas habilidades no domínio em que estamos nos concentrando.
Aqui está minha estratégia para aprender Ciência de Dados enquanto trabalho em casa com poucos projetos pessoais da vida real.
“Então o que deveríamos fazer?”
“Onde devemos começar a aprender?”
Pegue seu café enquanto explico o processo de como você pode aprender ciência de dados em casa. Este blog é para todos, de iniciantes a profissionais.
Pré-requisitos
Para iniciar essa jornada, você precisará cobrir os pré-requisitos. Não importa em que campo específico você esteja, você precisará aprender os seguintes pré-requisitos para ciência de dados.
Lógica / Algoritmos:
É importante saber por que precisamos de um pré-requisito específico antes de aprender. Algoritmos são basicamente um conjunto de instruções dadas a um computador para executar uma tarefa específica.
O aprendizado de máquina é construído a partir de vários algoritmos complexos. Portanto, você precisa entender como os algoritmos e a lógica funcionam em um nível básico antes de pular para algoritmos complexos necessários para o aprendizado de máquina.
Se você conseguir escrever a lógica de qualquer quebra-cabeça com as etapas adequadas, será fácil entender como esses algoritmos funcionam e você poderá escrever um para si.
Estatisticas:
Estatísticas é uma coleção de ferramentas que você pode usar para obter respostas a perguntas importantes sobre dados.
O aprendizado de máquina e as estatísticas são dois campos de estudo intimamente relacionados. Tanto que os estatísticos se referem ao aprendizado de máquina como “estatística aplicada” ou “aprendizado estatístico”.
Os seguintes tópicos devem ser abordados por aspirantes a cientistas de dados antes de começarem o aprendizado de máquina.
- Medidas de Tendência Central – média, mediana, moda, etc.
- Medidas de variabilidade – variação, desvio padrão, escore z, etc.
- Probabilidade – função de densidade de probabilidade, probabilidade condicional, etc.
- Precisão – verdadeiro positivo, falso positivo, sensibilidade etc.
- Teste de hipóteses e significância estatística – valor de p, hipótese nula, etc.
Recursos: Aprenda estatísticas de nível universitário neste curso gratuito de 8 horas.
O negócio:
Isso depende do domínio em que você deseja se concentrar. Basicamente, envolve entender o domínio em particular e obter conhecimentos sobre o domínio antes de entrar em um projeto de ciência de dados. Isso é importante, pois ajuda a definir nosso problema com precisão.
Recursos: Ciência de dados para empresas
Escove seus princípios
Parece muito fácil, mas tendemos a esquecer alguns conceitos básicos importantes. É difícil aprender conceitos mais complexos e as mais recentes tecnologias em um domínio específico sem ter uma base sólida no básico.
Aqui estão alguns conceitos que você pode começar a revisar:
Linguagem de programação Python
Python é amplamente usado em ciência de dados. Veja isso coleção de ótimos tutoriais em Python e esses amostras de código úteis para começar.
Você também pode verificar isso Cheatsheet do Python3 isso ajudará você a aprender a nova sintaxe lançada no python3. Também ajudará você a aprimorar a sintaxe básica.
E se você quer um ótimo curso gratuito, confira este Curso Python para Todos com Dr. Chuck.
Habilidades gerais de ciência de dados
Deseja fazer um ótimo curso sobre conceitos de ciência de dados? Aqui está um vários cursos de ciência de dados que você pode fazer on-line, classificados de acordo com milhares de pontos de dados.
Recursos: Ciência de dados para iniciantes – curso gratuito de 6 horas, Quais idiomas você deve aprender para a ciência de dados?
Coleção de dados
Agora é hora de explorar todas as maneiras pelas quais você pode coletar seus dados. Você nunca sabe onde seus dados podem estar ocultos. A seguir, apresentamos algumas maneiras de coletar seus dados.
Raspagem da web
A raspagem da Web ajuda a coletar dados estruturados da Web, selecionar alguns desses dados e manter o que você selecionou para o uso que você precisar.
Você pode comece a aprender BeautifulSoup4 o que ajuda a criar sites e criar seus próprios conjuntos de dados.
Dica avançada: você pode automatizar navegadores e obter dados de páginas da web interativas, como o Firebase, usando Selênio. É útil para automatizar aplicativos da Web e automatizar administração chata baseada na Web
Recursos: Raspagem da Web 101 em Python
Servidores em nuvem
Se seus dados estiverem armazenados em servidores em nuvem como o S3, talvez você precise se familiarizar com como obter dados a partir daí. O link a seguir ajudará você a entender como implementá-los usando o Amazon S3.
Recursos : Introdução ao Amazon S3, Como implantar seu site ou aplicativo no AWS S3 com CloudFront
APIs
Existem milhões de sites que fornecem dados por meio de APIs como Facebook, Twitter, etc. Portanto, é importante aprender como eles são usados e ter uma boa idéia de como eles são implementados.
Recursos : O que é uma API? Em inglês por favor, Como criar uma API JSON com Pythone Introdução à API Python.
Pré-processamento de Dados
Este tópico inclui tudo, desde a limpeza de dados até a engenharia de recursos. Demora muito tempo e esforço. Portanto, precisamos dedicar muito tempo para realmente aprender.
Limpeza de dados envolve técnicas diferentes baseadas no problema e no tipo de dados. Os dados precisam ser limpos de dados irrelevantes, erros de sintaxe, inconsistências e dados ausentes. O guia a seguir mostra a limpeza de dados.
Recursos : Guia definitivo para limpeza de dados
Pré-processamento de Dados é uma etapa importante na qual os dados são transformados ou codificados, para que a máquina possa analisá-los facilmente. Requer tempo e esforço para pré-processar diferentes tipos de dados, incluindo dados numéricos, textuais e de imagem.
Recursos : Pré-processamento de dados: conceitos, Tudo o que você precisa saber sobre pré-processamento de texto para PNL e Machine Learning, Pré-processamento para aprendizado profundo.
Machine Learning
Finalmente, chegamos à nossa parte favorita da ciência de dados: Machine Learning.
Minha sugestão aqui seria primeiro retocar seus algoritmos básicos.
Classificação – Regressão logística, RandomForest, SVM, Naive Bayes, Árvores de decisão
Recursos : Tipos de algoritmos de classificação no Machine Learning, Algoritmos de classificação no aprendizado de máquina
Regressão– Regressão linear, RandomForest, Regressão polinomial
Recursos : Introdução à regressão linear , Use modelos de regressão linear para prever funções quadráticas, raiz e polinomiais, 7 técnicas de regressão que você deve conhecer, Selecionando o melhor algoritmo de Machine Learning para o seu problema de regressão,
Agrupamento– Clustering K-Means, DBSCAN, Clustering Hierárquico Aglomerado
Recursos : Algoritmos de cluster
Reforço de gradiente– XGBoost, Catboost, AdaBoost
Recursos : Gradiente aumentando a partir do zero, Entendendo as máquinas de aumento de gradiente
Peço a todos que entendam a matemática por trás desses algoritmos, para que tenham uma idéia clara de como ele realmente funciona. Você pode consultar este blog em que implementei o XGBoost do zero –Implementando o XGBoost do zero
Agora você pode seguir para as Redes Neurais e iniciar sua jornada de Aprendizado Profundo.
Recursos: Aprendizado profundo para desenvolvedores, Introdução ao Deep Learning com Tensorflow, Como desenvolver redes neurais com o Tensorflow, Aprenda como as redes neurais profundas funcionam
Você pode aprofundar ainda mais o funcionamento de LSTM, Siamese Networks, CapsNet e BERT.
Hackathons:
Agora precisamos implementar esses algoritmos em um nível competitivo. Você pode começar a procurar Hackathons de ciência de dados on-line. Aqui está a lista de sites em que tento competir com outros cientistas de dados.
Analytics Vidhya–https://datahack.analyticsvidhya.com/contest/all/
Kaggle–https://www.kaggle.com/competitions
Hackerearth–https://www.hackerearth.com/challenges/
MachineHack–https://www.machinehack.com/
TechGig–https://www.techgig.com/challenge
Dare2compete–https://dare2compete.com/e/competitions/latest
Crowdanalytix–https://www.crowdanalytix.com/community
Para dar uma olhada em uma solução vencedora, aqui está um link para minha solução vencedora para um Hackathon on-line no Analytics Vidhya –https://github.com/Sid11/AnalyticsVidhya_DataSupremacy
Projetos:
Vemos pessoas trabalhando em dados fictícios e ainda não sabemos como são os dados reais. Na minha opinião, trabalhar com dados da vida real fornece uma ideia muito clara de como são os dados na vida real. A quantidade de tempo e esforço necessários para limpar dados da vida real leva cerca de 70% do tempo do seu projeto.
Business Intelligence
Depois de obter os resultados do seu projeto, agora é hora de tomar decisões de negócios a partir desses resultados. Business Intelligence é um conjunto de software e serviços que ajuda a transformar dados em inteligência e conhecimento acionáveis.
Isso pode ser feito criando um painel a partir da saída do nosso modelo. Quadroé uma ferramenta de visualização de dados poderosa e de crescimento mais rápido usada no setor de Business Intelligence. Ajuda a simplificar os dados brutos para o formato facilmente compreensível. A análise dos dados é muito rápida com o Tableau e as visualizações criadas são na forma de painéis e planilhas.
Recursos : Introdução ao Tableau, Curso Tableau for Data Science
Agora é hora de você começar seu trabalho em casa para melhorar suas habilidades. Ademais, se você iniciou esta jornada e precisa de meus conselhos ou detalhes sobre qualquer subparte que mencionei acima, fique à vontade para comentar ou enviar um e-mail para jsiddhesh96[at]gmail[dot]com.