🫑Python数学应用(矢量图形-微积分-物理模拟-机器学习)
Python | 数学 | 矢量图形 | 微积分 | 物理模拟 | 机器学习 | 矩阵计算 | 二角学 matplotlib 二维(2D) 三维(3D) 点积 叉积 线性变换线性方程组 NumPy 变化率 瞬时流量 平均流量 黎曼和 欧拉方法
矢量图和图形
2D矢量
绘制二维矢量 表示二维向量 Python 中的 2D 绘图
平面矢量算术 矢量分量和长度 向量乘以数字 减法、位移和距离
平面中的角度和二角学 角度到组件 Python中的弧度和三角函数 组件回到角度
转换向量集合 组合向量变换
使用 Matplotlib 绘图
转换矢量图和图形
转换 3D 对象 绘制变换的对象 组合向量变换 围绕轴旋转对象 发明自己的几何变换
线性变换 保留向量算术 描绘线性变换 计算线性变换
矩阵计算变换
用矩阵表示线性变换 将向量和线性变换写成矩阵 将矩阵与向量相乘 通过矩阵乘法组合线性变换 实现矩阵乘法 带有矩阵变换的 3D 动画
解释不同形状的矩阵 作为矩阵的列向量 哪些矩阵对可以相乘 将方阵和非方阵视为向量函数 投影为从 3D 到 2D 的线性映射 组成线性映射
用矩阵平移向量 使平面平移线性化 为 2D 平移寻找 3D 矩阵 将平移与其他线性变换相结合 在 4D 世界中平移 3D 对象
更高维度
对向量的定义 为二维坐标向量创建一个类 改进 Vec2 类 使用 3D 矢量重复该过程 构建向量基类 定义向量空间 单元测试向量空间类
探索不同的向量空间 枚举所有坐标向量空间 在野外识别向量空间 将函数视为向量 将矩阵视为向量 用矢量运算处理图像
寻找更小的向量空间 识别子空间 从单个向量开始 跨越更大的空间 定义单词维度 寻找函数向量空间的子空间 图像的子空间
解线性方程组
设计街机游戏 游戏建模 渲染游戏 发射激光
寻找线的交点 为线条选择正确的公式 找到一条线的标准形式方程 矩阵表示法中的线性方程 用 NumPy 求解线性方程 确定激光是否击中小行星 识别无法解决的系统
将线性方程更高维度 在 3D 中表示平面 求解 3D 线性方程组 代数研究超平面 计算维度、方程和解 通过求解线性方程来改变基础 求解 3D 示例
微积分和物理模拟
了解变化率
从体积计算平均流量 实现 average_flow_rate 函数 用割线苗绘平均流量 负变化率
绘制随时间变化的平均流速 求不同时间间隔的平均流量 绘制区间流速
近似瞬时流量 寻找小割线的斜率 构建瞬时流量函数 对瞬时流量函数进行柯里化和绘图
近似体积变化 查找短时间间隔内的音量变化 将时间分成更小的间隔 在流量图上描绘体积变化
随时间绘制体积 随着时间的推移找到音量 描绘体积函数的黎曼和 改进近似值 定积分和不定积分
模拟移动物体
模拟匀速运动 增加小行星的速度 更新游戏引擎以移动 小行星 将小行星保持在屏幕上
模拟加速度 加速宇宙飞船
深入研究欧拉的方法 手工执行欧拉方法 在 Python 中实现算法
用更小的时间步运行欧拉方法
模拟力场
用矢量模拟重力 用势能函数模拟重力
模拟引力场 定义向量场 定义一个简单的力场 为小行星游戏添加重力 让游戏对象感受到重力
引入势能 定义势能标量场 将标量场绘制为热图 将标量场绘制为等高线图
用梯度连接能量和力 用横截面测量陡度 计算偏导数 使用梯度查找图的陡度 使用梯度从势能计算力场
优化物理系统
测试弹丸模拟 使用 Euler 方法构建模拟 测量轨迹的特性 探索不同的发射角度
计算最佳范围 寻找射弹射程作为发射角度的函数 求解最大范围 识别最大值和最小值
增强我们的模拟 添加另一个维度 大炮周围的地形建模 在 3D 中求解弹丸的射程
使用梯度上升优化范围 绘图范围与启动参数 范围函数的梯度 用梯度寻找上坡方向 实现梯度上升
用傅里叶级数分析声波
组合声波并分解它们
在 Python 中播放声波 产生我们的第一个声音 演奏音符
将正弦波变成声音 从正弦函数制作音频 改变正弦波的频率 采样和播放声波
结合声波制造新声波 添加采样声波以构建和弦 描绘两个声波的总和 构建正弦曲线的线性组合 使用正弦曲线构建熟悉的函数
将声波分解为其傅里叶级数 查找具有内积的向量分量 定义周期函数的内积 编写一个函数来查找傅立叶系数 求方波的傅立叶系数 其他波形的傅立叶系数
机器学习应用
将函数拟合到数据
测量函数的拟合质量 测量与函数的距离 对误差的平方求和 计算汽车价格函数的成本
探索功能空间 描绘通过原点的线的成本 所有线性函数的空间
使用梯度下降找到最佳拟合线 重新缩放数据 寻找并给制最佳拟合线
拟合非线性函数 了解指数函数的行为 寻找最佳拟合的指数函数
使用逻辑回归对数据进行分类
在真实数据上测试分类函数 加载汽车数据 测试分类功能
描绘决策边界 想象汽车的空间 绘制更好的决策边界 实现分类功能
将分类框架化为回归问题 缩放原始汽车数据 衡量汽车的"BMWness" 介绍 sigmoid 函数 将 sigmoid 函数与其他函数组合
探索可能的逻辑函数 参数化逻辑函数 测量逻辑函数的拟合质量 测试不同的逻辑函数
寻找最佳逻辑函数 二个维度的梯度下降 使用梯度下降找到最佳拟合 测试和理解最佳逻辑分类器
训练神经网络
使用神经网络对数据进行分类
对手写数字的图像进行分类 构建 64 维图像向量 构建随机数字分类器 测量数字分类器的性能
设计神经网络 组织神经元和连接 通过神经网络的数据流 计算激活 以矩阵表示法计算激活
Python构建神经网络 在 Python 中实现 MLP 类 评估 MLP 测试 MLP 的分类性能
使用梯度下降训练神经网络 将训练框架化为最小化问题 使用反向传播计算梯度 使用 scikit-learn 进行自动训练
使用反向传播计算梯度 根据最后一层权重查找成本 使用链式法则计算最后一层权重的偏导数
Last updated