De acordo com o conceito de uma abordagem em espiral para o aprendizado, sobre o qual escrevi antes , aqui está um plano passo a passo para dominar a ciência de dados. O plano é projetado para que cada estágio torne o aluno mais ou menos melhor equipado para as tarefas do mundo real. Essa abordagem é inspirada pela ideologia do Agile no sentido de que não importa quanto tempo você gasta aprendendo e a qualquer momento que você parar, você terá o conjunto de conhecimentos mais requisitado que você pode dominar em tal tempo.
Essa lógica também pode ser explicada pelo contrário: é perigoso aprender imediatamente as redes neurais, porque uma pessoa que sabe algo sobre eles, mas não sabe como aplicá-lo efetivamente na prática, não está em demanda. E, por exemplo, você pode obter um conjunto de conhecimentos em 300 horas que não o torna um especialista bom o suficiente para resolver problemas reais, e nem mesmo lhe permitirá encontrar um emprego inicial para continuar desenvolvendo essas habilidades.
Se você estudar de acordo com o plano proposto, em cada etapa haverá um aumento na chance de encontrar esse emprego, de modo que as habilidades necessárias para um maior crescimento também possam ser aprimoradas no decorrer do trabalho real.
Para cada etapa, indico os custos de trabalho de referência, sujeitos a uma abordagem mais ou menos eficaz e estudando apenas o volume mínimo necessário (com uma abordagem ineficaz, cada item pode ser ensinado dez vezes mais)
Posteriormente, em um artigo separado, escreverei bons cursos e livros correspondentes a cada estágio (alguns cursos e livros para os primeiros estágios já foram indicados anteriormente no primeiro artigo desta série).
Etapa 1. Ferramentas básicas de análise de dados: SQL, Excel
Noções básicas de SQL (20h). O conhecimento de SQL por conta própria pode ser útil para muitas outras tarefas. E isso, em qualquer caso, é necessário para uma grande (a maioria?) Parte das vagas para o cargo de analista, cientista de dados e, mais ainda, engenheiro de aprendizado de máquina.
Noções básicas do Excel (10h): filtros e classificação de dados, fórmulas, vlookup, tabelas dinâmicas, trabalho básico com gráficos. Colegas, parceiros ou gerenciamento enviarão contribuições para o Excel, e você precisará ser capaz de compreendê-los e estudá-los rapidamente. Freqüentemente, é mais conveniente preparar e apresentar os resultados da análise feita em Python no Excel.
(20-200, ), .. , pandas/scikit, Python .
: / / -. , , 100, 50-70 .
2. Python Pandas
Python (80). . .
pandas (20 ) - . : , , ,
API (requests, beatiful soup)
Python API, -.
, . , -, ( ). , , .
3.
( 200-400 , )
:
-
Overfitting
-
Data leakage
( )
, :
:
Random forest
kNN
: k-means
:
: PCA
: dummy , one-hot encoding, tf-idf
:
: , ( ).
: "correlation does not imply causation", .
., , : . (max likelihood), (log-likelihood). ( log log-odds), ( ""). , , . , . . , senior, :
. - (/) .
4.
- scikit-learn, pandas (numpy).
, . 100-300. - , .
feature engineering
junior data scientist. . . senior , .
, CNN, RNN/LSTM , vector embeddings. , . " " , , , , , .
, .
20-40, .
5. ,
60-200, . , , , .. ,
Conda, , conda
bash
Python standard library, ( itertools, collections, contextlib), , ; context managers.
git, IDE: pycharm/vs code. git,
(matplotlib+seaborn, plotnine, plotly), .
( -, ).
, , , , (feature engineering), , , (xgboost, cat-boost). . Senior .
, 2-5
- , . , , . ( ):
matplotlib – , . , , -. , , "" - .
seaborn - , . .
plotnine - . - , . - seaborn , matplotlib , . , , plotnine . plotly - .
plotly - . . , , ().
, 10-20 .
, - PowerBI Tableau, . , , 60. SQL+Excel+PowerBI/Tableau "BI-" c 100 ., 150 . .
, ,
regular expressions, aka RegExp (10). regexp .
PySpark (40 , 100-200 ) . , (). Big data. , .. . ( , ).
Spark , , , .. SQL , , API pandas. , . Koalas, pandas spark-, Spark.
html - , , , .
6
, , , .
Python : , , , dunderscore ____ .
bash, linux
docker
. , , . .. , .
- (, EDA ). , . , . , , .. . , : , , .
, . , .. . , "" .
: . 50, , , .
, ,
, ( 2 ) , , .
, , , , . , , , . , .
, , , .
self.development.mentor no domínio gmail.com, Oleg