📜  什么是机器学习中的统计数据 (1)

📅  最后修改于: 2023-12-03 15:21:49.545000             🧑  作者: Mango

什么是机器学习中的统计数据

在机器学习中,统计数据是非常重要的。通过了解并运用统计学原理,能够更好地理解和处理数据,从而训练出更准确的模型。

统计数据的定义

统计数据是指通过对随机样本数据的收集、汇总、分析、描述和展示,对总体特性进行推断和判断的数据。统计学是机器学习领域中的重要支撑学科之一。

常用的统计数据

以下是机器学习中常用的统计数据:

中心位置参数

中心位置参数指的是以数据集的平均值作为中心点的统计量。常用的统计量包括均值、中位数、众数等。

# 计算均值
mean = sum(data) / len(data)

# 计算中位数
data.sort()
n = len(data)
if n % 2 == 0:
    median = (data[n // 2 - 1] + data[n // 2]) / 2
else:
    median = data[n // 2]

# 计算众数
from collections import Counter
c = Counter(data)
mode = c.most_common(1)[0][0]
离散程度参数

离散程度参数用于表示数据分布的绝对离散程度或相对离散程度。常用的统计量包括方差、标准差、极差、四分位差等。

# 计算方差和标准差
n = len(data)
mean = sum(data) / n
variance = sum((x - mean) ** 2 for x in data) / n
std_dev = variance ** 0.5

# 计算极差
range = max(data) - min(data)

# 计算四分位差
data.sort()
n = len(data)
q1 = data[n // 4]
q2 = data[n // 2]
q3 = data[n * 3 // 4]
iqr = q3 - q1
相关性参数

相关性参数用于表示两个变量的关系程度。常用的统计量包括协方差、相关系数等。

# 计算协方差
def covariance(x, y):
    n = len(x)
    mean_x = sum(x) / n
    mean_y = sum(y) / n
    return sum((x[i] - mean_x) * (y[i] - mean_y) for i in range(n)) / (n - 1)

# 计算相关系数
def correlation(x, y):
    std_dev_x = (sum((x[i] - mean(x)) ** 2 for i in range(n)) / n) ** 0.5
    std_dev_y = (sum((y[i] - mean(y)) ** 2 for i in range(n)) / n) ** 0.5
    return covariance(x, y) / (std_dev_x * std_dev_y)
总结

统计数据在机器学习中的应用非常广泛,能够帮助我们更好地理解和处理数据。熟练掌握统计学原理对于训练出更准确的模型至关重要。