【机器学习中的数学基础】(1)——笔记

一:O(n)、o(n)

import matplotlib.pyplot as plt
import numpy as np

# 定义 n 的范围
n = np.linspace(1, 100, 400)

# 定义 O(n) 和 o(n) 的函数
O_n = n
o_n = n / np.log(n)

# 创建图像
plt.figure(figsize=(10, 6))
plt.plot(n, O_n, label="O(n) = n", color='blue')
plt.plot(n, o_n, label="o(n) = n / log(n)", color='green')
plt.ylim(0, 120)  # 限制 y 轴范围以便更好地展示

# 添加标题和标签
plt.title("O(n) vs o(n)")
plt.xlabel("n (输入规模)")
plt.ylabel("时间复杂度")
plt.legend()

# 显示图像
plt.grid(True)
plt.show()


二:时间复杂度

如果你运行上面的代码,图像会显示以下几条曲线,分别代表不同的时间复杂度:

  1. O(1) - 蓝色

    • 这是一条水平线,表示常数时间复杂度,无论输入规模 n 多大,执行时间保持不变。
  2. O(log n) - 绿色

    • 这是一条渐渐上升的曲线,表示对数时间复杂度。随着 n增加,执行时间增加得很慢。
  3. O(n) - 红色

    • 这是一条直线,表示线性时间复杂度。执行时间随着输入规模线性增加。
  4. O(n log n) - 紫色

    • 这是一条曲线,表示线性对数时间复杂度。增长速度比线性快,但比平方慢。
  5. O(n^2) - 橙色

    • 这是一条抛物线,表示平方时间复杂度。执行时间随着输入规模平方增加,增长速度非常快。

总结

通过这些曲线,我们可以直观地看到不同时间复杂度的增长情况。常数时间最优,平方时间最差,而对数、线性和线性对数时间复杂度介于两者之间。了解这些复杂度可以帮助我们选择和优化算法,以提高性能。

三:极限

四:导数

五:求导方法

六:导数应用:费马定理

七:导数应用 函数逼近

函数逼近是数学中一种重要的技术,用于通过简单或者已知的函数逼近复杂的函数或数据。这种技术在数值分析、统计学、工程学等领域中有广泛的应用。

函数逼近的方法和技术

  1. 泰勒级数展开

    • 泰勒级数是一种将函数在某一点附近展开成无穷级数的方法。通过泰勒级数展开,可以用多项式来逼近任意光滑函数,其中高阶项的贡献会随着阶数的增加而减小。
  2. 插值法

    • 插值法通过已知点的函数值来构造一个多项式,使得该多项式通过这些点。常见的插值方法包括拉格朗日插值和牛顿插值,它们可以精确地逼近给定的数据点,但在一些情况下可能会引入振荡或者不稳定性。
  3. 最小二乘法

    • 最小二乘法通过最小化观测数据与理论模型之间的残差平方和来找到最佳拟合曲线。这种方法广泛应用于回归分析和数据拟合中,例如线性回归、多项式拟合等。
  4. 傅立叶级数

    • 傅立叶级数将周期函数分解成一系列正弦和余弦函数的和,通过控制各个分量的振幅和相位可以逼近任意的周期函数。
  5. 样条插值

    • 样条插值通过分段低阶多项式(通常是三次样条)来逼近函数。这种方法可以在每个分段内保持多项式的光滑性,并且可以通过插值点处的导数信息进一步优化拟合效果。
  6. 小波变换

    • 小波变换通过将信号分解成不同尺度和频率的小波基函数来进行函数逼近。小波变换在信号处理和图像处理领域中有重要应用。

应用和实际意义

  • 数据拟合和预测:函数逼近使得可以从有限的数据点或者观测中推导出更广泛的结论或预测,例如天气预报中的气温变化预测。

  • 数值计算:在数值分析中,函数逼近是求解微分方程、积分和求根问题的重要工具。

  • 图像处理和模式识别:函数逼近在图像处理中用于去噪、图像压缩和特征提取。

  • 优化和控制:函数逼近在优化问题中用于构造代价函数或者目标函数,帮助寻找最优解或者设计控制策略。

函数逼近方法的选择通常依赖于问题的具体性质、数据的性质以及对逼近精度的要求。不同的方法在不同的场景中可能会有各自的优势和局限性。

八:导数应用 泰勒展开

九:凸函数

  • 31
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
《斯坦福大学机器学习数学基础.pdf》是一本由斯坦福大学开发的机器学习教材。本书将数学基础机器学习算法相结合,旨在向读者介绍机器学习所需的数学知识。 该书首先介绍了线性代数的基础知识。线性代数是机器学习常用的工具,被广泛应用于数据处理和模型训练。本书从向量、矩阵和线性变换等基本概念开始,逐步讲解了线性方程组、行列式、特征值与特征向量等重要内容,为读者提供了深入理解线性代数的基础。 接着,本书介绍了概率论和统计学的相关知识。概率论是机器学习的核心概念之一,它用于描述和解释不确定性。统计学是机器学习的重要工具,利用统计方法对数据进行分析和建模。本书讲解了概率论的基本概念、条件概率和贝叶斯定理等内容,同时介绍了统计学的假设检验、参数估计和回归分析等方法。 最后,本书还介绍了线性回归、逻辑回归、支持向量机等常用的机器学习算法。这些算法建立在数学基础之上,通过数学模型实现对数据的学习和预测。本书通过具体的案例分析和实践操作,让读者理解这些算法的原理和实际应用。 总之,《斯坦福大学机器学习数学基础.pdf》是一本系统而全面的机器学习教材,涵盖了机器学习所需的数学基础知识。读者通过学习本书,将能够理解和应用机器学习算法,从而在实际问题进行数据分析和模型构建。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值