Starting Your Data Science Learning Journey

This section will guide you understand the new skills, provide directions and ideas for those motivated ones. You will want to fully understand the concepts and details of various machine learning algorithms, data science concepts, etc. Therefore, I recommend that you start from the base before looking at machine learning algorithms or data analysis applications. Suppose you do not have a basic understanding of calculus and integrals, linear algebra and statistics. In that case, it will be difficult for you to understand the underlying mechanics of the various algorithms. Likewise, if you don’t have a basic understanding of Python, it will be difficult for you to translate your knowledge into real-world applications. Below is the order of the topics that I recommend studying:

· Mathematics and Statistics.

· Basics of programming.

· Machine learning algorithms and concepts.

Mathematics and statistics

As with everything else, you should learn the basics before getting into the fun stuff. Trust me, it would be much easier for me if I started by learning math and statistics before getting started with some machine learning algorithms. Three general topics that I recommend looking at are calculus/integrals, statistics, and linear algebra (in no particular order).

Integrals

Integrals are essential when it comes to probability distribution and hypothesis testing. While you don’t need to be an expert, it’s in your best interest to learn the basics of integrals. If you know absolutely nothing about integrals, I recommend that you take the Khan Academy course. Here are links to a number of practical tasks to hone your skills:

· Introduction to integrals: https://towardsdatascience.com/an-integrals-crash-course-for-data-science-cf6e6dd7c046

· A crash course on integrals: https://www.albert.io/blog/how-to-solve-integrals-ap-calculus-crash-course/

· Khan Academy: Integral Calculus: https://www.khanacademy.org/math/integral-calculus

· Practical Questions (start with block 6): https://www.albert.io/ap-calculus-ab-bc?utm_source=blog&utm_medium=blog&utm_campaign=ap-calculus

Statistics

If there is any topic that you should focus on, it is statistics. After all, a data scientist is a truly modern statistician, and machine learning is a modern term for statistics. If you have time, I recommend taking the Georgia Tek course called Statistical Techniques (https://mediaspace.gatech.edu/playlist/dedicated/74258101/1_g5xwvbde/1_iw8fk73m), which covers the basics of probability, random variables, probability distribution, hypothesis testing, and more. If you don’t have time to devote yourself to this course, I highly recommend watching the Khan Academy video on statistics (https://www.khanacademy.org/math/statistics-probability).

Linear algebra

Linear algebra is fundamental if you want to dive into deep learning. It is helpful to know other basic machine learning concepts such as principal component analysis and recommender systems. For mastering linear algebra, I also recommend Khan Academy (https://www.khanacademy.org/math/linear-algebra)

Fundamentals of programming

Just as a fundamental understanding of math and statistics is important, a fundamental understanding of programming will make your life so much easier, especially when it comes to implementation. Therefore, I recommend that you take the time to learn the basic languages ​​- SQL and Python, before diving into machine learning algorithms.

SQL

It doesn’t matter where to start, but I would start with SQL. Why? It is easier to learn and useful to know if you are employed in a company that works with data, even if you are not a data scientist.

If you are new to SQL, I recommend checking out Mode’s SQL (https://mode.com/sql-tutorial/introduction-to-sql/) tutorials as they are very concise and detailed. If you want to learn more advanced concepts, see the list of resources where you can learn advanced SQL.

Below are a few resources you can use to practice SQL:

· Resources on Leetcode: https://leetcode.com/problemset/database/

· Resources on HackerRank: https://www.hackerrank.com/domains/sql?filters%5Bstatus%5D%5B%5D=unsolved&badge_type=sql

· Examples of implementation: https://docs.google.com/document/d/1_-pPj_HusumXskhsXFOccimhDSloWkAyEdCOxv7mZFY/edit#heading=h.sspk8oxbveqv

Python

Once you start with Python, you will probably stay with this language for the rest of your life. It’s far ahead in terms of open-source contributions and easy to learn. I have found that learning Python through practice is much more rewarding. Nevertheless, after taking several Python crash courses, I concluded that this course is the most complete (and free!).

Introduction to Python Programming – Georgia Tech

https://www.edx.org/professional-certificate/introduction-to-python-programming

Pandas

Perhaps the most critical library to know is Pandas, which is specifically designed for data manipulation and analysis. Below are two resources that should accelerate your learning curve. The first link is a tutorial on how to use Pandas, and the second link contains many practical tasks that you can solve to solidify your knowledge!

· Learn pandas on Kaggle: https://www.kaggle.com/learn/pandas

· Practice with Randas on dozens of hands-on tasks: https://github.com/guipsamora/pandas_exercises

Algorithms and concepts of machine learning

This part is split into two others: machine learning algorithms and machine learning concepts. Every machine learning algorithm has three components:

Representation: how to represent knowledge. Examples include decision trees, sets of rules, instances, graphical models, neural networks, support vector machines, model ensembles, etc.

Evaluation: the way to evaluate candidate programs (hypotheses). Examples include accuracy, prediction and recall, squared error, likelihood, posterior probability, cost, margin, entropy k-L divergence, etc.

Optimisation: the way candidate programs are generated, known as the search process. For example, combinatorial optimisation, convex optimisation, constrained optimisation.

Machine learning algorithms

The next step is to learn about the various machine learning algorithms, how they work and when to use them. Below is a list of the various machine learning algorithms and resources you can use to learn each of them.

· Linear Regression:

o Georgia Tech: https://www2.isye.gatech.edu/~sman/courses/6739/SimpleLinearRegression.pdf

o StatQuest: https://www.youtube.com/watch?v=nk2CQITm_eo&ab_channel=StatQuestwithJoshStarmer

· Logistic regression:

o StatQuest: https://www.youtube.com/watch?v=yIYKR4sgzI8&ab_channel=StatQuestwithJoshStarmer

· K nearest neighbours:

o MIT: https://www.youtube.com/watch?v=09mb78oiPkA&ab_channel=MITOpenCourseWare

· Decision trees:

o StatQuest: https://www.youtube.com/watch?v=7VeUPuFGJHk&ab_channel=StatQuestwithJoshStarmer

· Naive Bayes

o Terence Sheen:
https://towardsdatascience.com/a-mathematical-explanation-of-naive-bayes-in-5-minutes-44adebcdb5f8

o Luis Serrano: https://www.youtube.com/watch?v=Q8l0Vip5YUw&ab_channel=LuisSerrano

· Support Vector Machines:

o SVM Tutorial by Alice Zhao: https://www.youtube.com/watch?v=N1vOgolbjSc&ab_channel=AliceZhao

· Neural networks:

o Terence Sheen:
https://towardsdatascience.com/a-beginner-friendly-explanation-of-how-neural-networks-work-55064db60df4

· Random forests:

o StatQuest: https://www.youtube.com/watch?v=J4Wdy0Wc_xQ&ab_channel=StatQuestwithJoshStarmer

· AdaBoost:

o Terence Sheen:
https://towardsdatascience.com/a-mathematical-explanation-of-adaboost-4b0c20ce4382?source=friends_link&sk=956d985b9578c3d272e3851a53ee822a

o StatQuest: https://www.youtube.com/watch?v=LsK-xG1cLYA&t=9s&ab_channel=StatQuestwithJoshStarmer

· Gradient boosting:

o StatQuest: https://www.youtube.com/watch?v=OtD8wVaFm6E&t=1s&ab_channel=StatQuestwithJoshStarmer

· XGBoost:

o StatQuest: https://www.youtube.com/watch?v=OtD8wVaFm6E&t=1s&ab_channel=StatQuestwithJoshStarmer

· Principal component analysis:

o StatQuest: https://www.youtube.com/watch?v=FgakZw6K1QQ&ab_channel=StatQuestwithJoshStarmer

Machine learning concepts

In addition, there are a few fundamental concepts of machine learning that you will want to learn as well. Below is a (non-exhaustive) list of concepts that I highly recommend learning. Many interview questions are based on these topics!

· Regularisation: https://towardsdatascience.com/regularization-in-machine-learning-76441ddcf99a

· The bias-variance dilemma: https://towardsdatascience.com/understanding-the-bias-variance-tradeoff-165e6942b229

· Confusion matrix and related metrics: https://towardsdatascience.com/understanding-the-confusion-matrix-and-how-to-implement-it-in-python-319202e0fe4d?source=friends_link&sk=434d5a02fcaec213208c2eeb1174b5c6

· Area under the ROC and ROC curve (video): https://www.youtube.com/watch?v=4jRBRDbJemM

· Bootstrap fetch:
https://towardsdatascience.com/what-is-bootstrap-sampling-in-machine-learning-and-why-is-it-important-a5bb90cbd89a

· Ensemble training, bagging and boosting: https://towardsdatascience.com/ensemble-learning-bagging-and-boosting-explained-in-3-minutes-2e6d2240ae21

· Normalisation and standardisation: https://www.statisticshowto.com/probability-and-statistics/normal-distributions/normalized-data-normalization/#:~:text=Normalization%20vs.-,Standardization,a%20standard%20deviation%20of%201.

Projects in the field of data science

By this point, you will not only have built a solid foundation, but you will also have a solid understanding of the fundamentals of machine learning. Now it’s time to work on some personal side projects. If you would like to see some simple examples of data science projects, check these out:

· Predicting Wine Quality with Several Classification Techniques: https://towardsdatascience.com/predicting-wine-quality-with-several-classification-techniques-179038ea6434

· Coronavirus data visualizations using Plotly: https://towardsdatascience.com/coronavirus-data-visualizations-using-plotly-cfbdb8fcfc3d

· 14 Data Science Projects to do During Your 14 Day Quarantine: https://towardsdatascience.com/14-data-science-projects-to-do-during-your-14-day-quarantine-8bd60d1e55e1