Machine Learning - Statistics



Statistics is a crucial tool in machine learning because it helps us understand the underlying patterns in the data. It provides us with methods to describe, summarize, and analyze data. Let's see some of the basics of statistics for machine learning.

Descriptive Statistics

Descriptive statistics is a branch of statistics that deals with the summary and analysis of data. It includes measures such as mean, median, mode, variance, and standard deviation. These measures help us understand the central tendency, variability, and distribution of the data.

In machine learning, descriptive statistics can be used to summarize the data, identify outliers, and detect patterns. For example, we can use the mean and standard deviation to describe the distribution of a dataset.

In Python, we can calculate descriptive statistics using libraries such as NumPy and Pandas. Below is an example −

Example

import numpy as np
import pandas as pd

data = np.array([1, 2, 3, 4, 5])
df = pd.DataFrame(data, columns=["Values"])
print(df.describe())

Output

This will output a summary of the dataset, including the count, mean, standard deviation, minimum, and maximum values as follows −

         Values
count    5.000000
mean     3.000000
std      1.581139
min      1.000000
25%      2.000000
50%      3.000000
75%      4.000000
max      5.000000

Inferential Statistics

Inferential statistics is a branch of statistics that deals with making predictions and inferences about a population based on a sample of data. It involves using hypothesis testing, confidence intervals, and regression analysis to draw conclusions about the data.

In machine learning, inferential statistics can be used to make predictions about new data based on existing data. For example, we can use regression analysis to predict the price of a house based on its features, such as the number of bedrooms and bathrooms.

In Python, we can perform inferential statistics using libraries such as Scikit-Learn and StatsModels. Below is an example −

Example

import statsmodels.api as sm
import numpy as np

X = np.array([1, 2, 3, 4, 5])
y = np.array([2, 4, 6, 8, 10])

X = sm.add_constant(X)
model = sm.OLS(y, X).fit()

print(model.summary())

Output

This will output a summary of the regression model, including the coefficients, standard errors, t-statistics, and p-values as follows −

Inferential Statistics

In the next chapter, we will discuss various descriptive and inferential statistics measures, which are commonly used in machine learning, in detail along with Python implementation example.

Advertisements