- Published on
- · July 10, 2026
How to Study Machine Learning: A Guide to Methods and Resources
- Blog

- Henrico Piubello
- Henrico Piubello
- IT Specialist - Grupo Voitto
IT Specialist - Grupo Voitto

- Renata Weber
- Renata Weber
- Growth Specialist at Pareto Plus
Growth Specialist at Pareto Plus

Studying Machine Learning requires three fronts: mathematical foundations (statistics and linear algebra), programming in Python, and practice on real projects. This CodeCrush guide organizes the essential concepts, a three-level roadmap, and the official documentation of the field.
- What to study first in Machine Learning?
- What is the difference between supervised and unsupervised learning?
- How does reinforcement learning work?
- What are the main Machine Learning algorithms?
- How to evaluate model performance?
- Data preprocessing and feature selection
- What are overfitting, underfitting, and regularization?
- Statistics and linear algebra: the mathematical foundation
- What documentation and resources to use for studying?
- Study roadmap: from beginner to advanced
- Conclusion
What to study first in Machine Learning?
Before training the first model, study seven fundamentals: supervised and unsupervised learning, reinforcement learning, classification/regression/clustering algorithms, model evaluation, data preprocessing, regularization, and notions of statistics and linear algebra. These concepts underpin any practical application in the field.
The working language is Python: according to the Stack Overflow Developer Survey 2025, 57.9% of developers use the language — and, among those learning to program, adoption reaches 71.8%. Not coincidentally, the Andrew Ng Machine Learning course, the classic starting point of the field, has been taken by more than 4.8 million students since 2012, according to DeepLearning.AI.
At the heart of Machine Learning is a system ability to learn from data and make predictions without being explicitly programmed. If you are still building this conceptual base, the article on the meaning and importance of Machine Learning is a good starting point, and the fundamentals of Machine Learning guide deepens each pillar.
In short, the initial study list is:
- Supervised and unsupervised learning
- Reinforcement learning
- Classification, regression, and clustering algorithms
- Model evaluation and performance metrics
- Data preprocessing and feature selection
- Overfitting, underfitting, and regularization techniques
- Basic notions of statistics and linear algebra
What is the difference between supervised and unsupervised learning?
Supervised learning trains models on labeled data, where each input has a known output; unsupervised learning identifies patterns and structures in unlabeled data. Reinforcement learning, in turn, teaches an agent by trial and error, with rewards and punishments. The table summarizes the three paradigms:
| Learning type | How it learns | Example use |
|---|---|---|
| Supervised | Labeled data with known outputs | Classifying emails as spam |
| Unsupervised | Patterns in unlabeled data | Segmenting customers by similarity |
| Reinforcement | Rewards and punishments per action | Agents in games and robotics |
Supervised learning
In supervised learning, models are trained using labeled data, that is, input data with their corresponding desired outputs. In a problem of classifying emails as "spam" or "not spam", for example, the model receives a set of previously labeled emails and learns to map the features of each message (keywords, sender, etc.) to the corresponding category. This approach is widely used in classification, prediction, and pattern detection tasks.
Unsupervised learning
Unsupervised learning involves identifying hidden patterns and structures in unlabeled datasets. In this case, the model seeks to find natural groups (clustering) or relationships between the data (dimensionality reduction). Imagine a dataset with information about a store customers, but without labels: unsupervised learning can group these customers into segments based on their similarities, helping to understand audience behavior and guide marketing decisions.
How does reinforcement learning work?
Reinforcement learning is a branch of AI (Artificial Intelligence) in which an agent interacts with an environment, observes the current state, executes actions, and receives rewards or punishments as feedback. The agent goal is to learn an action policy that maximizes the accumulated reward over time.
Reinforcement learning is inspired by behavioral psychology: the agent learns by trial and error, exploring the environment and adjusting its strategy based on the feedback received. Over time, the agent associates certain states with actions that lead to higher rewards.
This paradigm is commonly modeled using Markov Decision Processes (MDPs), mathematically formulated as a tuple composed of:
- Set of states: represents all possible configurations of the environment at a given moment.
- Set of actions: represents the actions the agent can execute.
- Transition function: describes the probabilities of transition between states, given an action.
- Reward function: assigns a reward to a state or a state-action pair.
- Policy: defines the agent strategy for choosing actions in certain states.
Finding the optimal policy usually involves value-function-based algorithms, such as Q-Learning and Sarsa. Reinforcement learning has applications in games, robotics, finance, and process optimization, enabling autonomous decisions in complex and dynamic environments, where there is no complete set of labeled training data.
What are the main Machine Learning algorithms?
Machine Learning algorithms are divided into three main families: classification (categorizing data into classes), regression (predicting numerical values), and clustering (grouping data by similarity). Mastering these three families is the minimum requirement to apply Machine Learning to real-world problems.
Classification algorithms
Classification algorithms categorize data into distinct classes. A common example is decision trees, which make decisions based on a sequence of questions and answers about data features, splitting the set into branches and assigning labels to the final leaves.
Regression algorithms
Regression algorithms predict numerical values from input data, establishing a functional relationship between the independent variables and the output variable. Linear regression, for example, estimates the line of best fit that represents the relationship between the variables — the article on modeling, evaluation, and interpretation of linear regression details this algorithm step by step.
Clustering algorithms
Clustering algorithms group data based on their similarities, identifying natural groups without the need for pre-existing labels. K-means is the most popular example: the data is divided into K clusters, where K is a value predefined by the analyst.
How to evaluate model performance?
Model evaluation measures the quality of predictions using objective metrics calculated on data the model did not see in training. The four most used metrics in classification problems are:
- Accuracy: measures the model hit rate, that is, the proportion of correct predictions relative to the total predictions made.
- Precision: indicates the proportion of correct predictions among all positive predictions made by the model.
- Recall: measures the proportion of correct predictions relative to all positive examples present in the data.
- F1-Score: combines precision and recall into a single measure, providing an overview of the model performance.
In addition to these, there are specific metrics for regression problems (such as mean squared error) and clustering (such as silhouette coefficient). Selecting the metrics appropriate to the problem type is essential for a complete and reliable evaluation — the Scikit-learn metrics documentation catalogs the options available for each scenario.
Data preprocessing and feature selection
Data preprocessing transforms raw data into a format suitable for algorithms, and usually consumes a good part of a project time. The most common techniques are:
- Data cleaning: removes or corrects missing, inconsistent, or duplicated data.
- Normalization: scales the data to a specific range, ensuring comparable scales between variables.
- Data transformation: applies functions such as logarithm or square root to adjust the data distribution.
- Categorical variable encoding: converts categorical variables into a numerical form usable by the algorithms.
Feature selection complements preprocessing by choosing the most relevant and informative variables for the model. Reducing the dimensionality of the data and discarding unnecessary features results in more efficient models, faster to train, and less prone to generalization errors.
What are overfitting, underfitting, and regularization?
Overfitting occurs when the model memorizes the training data and fails to generalize to new data; underfitting occurs when the model is too simple to capture the data patterns. Regularization techniques restrict the model complexity to balance these two extremes.
Overfitting
Overfitting happens when the model becomes too complex and captures noise or irrelevant details from the training data. The model becomes too specific to the training set and does not capture the broader underlying patterns — as a result, performance on unseen data (validation or test) is worse than expected. Overfitting usually leads to high variance in the results.
Underfitting
Underfitting occurs when the model cannot capture the training data patterns or generalize to new data, usually because it is too simple or due to inadequate training. The underfitted model shows insufficient performance both on training and on unseen data, with high bias in the results.
L1 and L2 regularization
L1 and L2 regularization add a penalty term to the loss function during training, encouraging smaller coefficients and reducing model complexity. L1 regularization, known as "Lasso", tends to make coefficients sparse, zeroing some of them; L2 regularization, known as "Ridge", reduces coefficients without necessarily zeroing them.
Dropout
Dropout is a regularization technique specific to neural networks. During training, some neurons and their connections are temporarily removed from the network, randomly and with a predefined probability. This prevents excessive co-adaptation between neurons and forces the network to learn robust representations in a distributed way.
Statistics and linear algebra: the mathematical foundation
Statistics provides the tools to understand and analyze data: mean, median, standard deviation, distributions, and hypothesis tests are concepts that help interpret model results, evaluate their reliability, and perform meaningful analyses.
Linear algebra, in turn, is the language of algorithms. Vectors, matrices, matrix operations, linear transformations, and singular value decomposition appear in techniques such as linear regression, principal component analysis (PCA), and matrix decomposition.
Having a solid foundation in these two areas allows a deeper understanding of Machine Learning algorithms and sets the stage for advanced topics, such as deep learning and generative models.
What documentation and resources to use for studying?
The official documentation of the main libraries is the most reliable and up-to-date study material in the field. The table gathers the essential resources:
| Resource | Type | Why use it |
|---|---|---|
| Scikit-learn | Python library | Classic algorithms and preprocessing |
| TensorFlow | Deep learning framework | Large-scale models, docs in Portuguese |
| PyTorch | Deep learning framework | Flexible and standard in research |
| Keras | High-level API | Neural networks with few lines |
| Kaggle | Practice platform | Competitions, public datasets, and forums |
| arXiv (stat.ML) | Article repository | Recent Machine Learning research |
Kaggle deserves attention as a practice environment: the study Kaggle Chronicles (arXiv, 2025) counted 23.29 million registered accounts on the platform in April 2025, which gives a sense of the community available to exchange code, datasets, and competition solutions.
To discover libraries, books, and courses by area, the curated list Awesome Machine Learning on GitHub organizes resources by language and category and is maintained by the community.
Study roadmap: from beginner to advanced
The roadmap below organizes the journey into nine progressive steps, from beginner to advanced:
- Master the fundamentals of Python — variables, control structures, and functions. Recommendation: the Learn Python 3 course on Codecademy.
- Study the essential math — linear algebra (vectors, matrices, linear systems) and statistics (mean, standard deviation, distributions, hypothesis tests). Recommendation: Mathematics for Machine Learning on Coursera.
- Learn the fundamentals of Machine Learning — supervised and unsupervised learning, algorithms, metrics, and regularization. Recommendation: the Machine Learning Specialization by Andrew Ng on Coursera.
- Deepen into intermediate algorithms — Support Vector Machines (SVM), Random Forests, and Gradient Boosting (XGBoost, LightGBM). Recommendation: the book Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, by Aurélien Géron.
- Study deep learning — deep architectures, CNNs (convolutional neural networks) for images, and RNNs (recurrent neural networks) for sequences. Recommendation: the Deep Learning Specialization on Coursera.
- Explore natural language processing — language models and word embeddings (Word2Vec, GloVe). Recommendation: the NLP with Classification and Vector Spaces course on Coursera.
- Advance to frontier topics — reinforcement learning and generative models (Variational Autoencoders, GANs). Recommendation: the book Pattern Recognition and Machine Learning, by Christopher M. Bishop.
- Practice on real projects — participate in competitions on Kaggle and develop your own projects; the guide to creating Machine Learning projects shows how to structure from problem to deploy.
- Follow the trends — read articles on arXiv and participate in conferences and workshops in the field.
Learning Machine Learning is a continuous process: practice by solving real problems, develop your own projects, and stay up to date with the new techniques in the field.
Conclusion
Machine Learning rewards those who study with method: anyone who jumps straight to neural networks without mastering Python, statistics, and the classic algorithms ends up stuck on the first real projects. Follow the roadmap in order, use the official documentation as the primary source, and turn every learned concept into code — a portfolio with two or three complete projects on Kaggle is worth more for your career than a dozen certificates with no practice.
## faq
Frequently asked questions
Where do I start studying Machine Learning?
Start with the fundamentals of Python and basic notions of statistics and linear algebra. Then study supervised and unsupervised learning with the Scikit-learn library and take an introductory course, such as the Andrew Ng Machine Learning Specialization. Finally, consolidate the learning by building practical projects with public datasets from Kaggle.
Do I need a lot of math to learn Machine Learning?
You do not need to master advanced math to start, but statistics, probability, and linear algebra are indispensable to evolve. Concepts like mean, standard deviation, distributions, vectors, and matrices appear in almost every algorithm. Study these topics alongside practice, deepening as the models require.
Which language to use for Machine Learning: Python or R?
Python is the standard choice for Machine Learning: according to the Stack Overflow Developer Survey 2025, it is used by 57.9% of developers and concentrates libraries like Scikit-learn, TensorFlow, and PyTorch. R remains relevant in statistics and academic research, but the market and most study materials prioritize Python.
How long does it take to learn Machine Learning?
With regular dedication, the fundamentals take six months to a year: Python, basic math, classic algorithms, and the first projects. Topics like deep learning and natural language processing require a few more months. Machine Learning evolves fast, so continuous learning is part of the career.
Are Machine Learning and Artificial Intelligence the same thing?
No. Artificial Intelligence is the broad field that seeks to create systems capable of simulating intelligent behavior. Machine Learning is a subfield of AI where algorithms learn patterns from data, without explicit programming of rules. All Machine Learning is AI, but not all AI uses Machine Learning.
Topics in this article
## continue lendo
Artigos relacionados
Keep browsing
Previous article

Linear Regression: What It Is, How to Model and Evaluate
Understand linear regression: how it models relationships between variables with a line, predicts continuous values, and is evaluated with R², RMSE, and residual analysis.
Read moreNext article

Types of Frameworks: Web, Mobile, Data, and Games
Frameworks are reusable code structures that accelerate projects. Meet the types for web, mobile, data science, games, and IoT.
Read moreAbout the author




