微积分直觉:隐含微分

目录

一、介绍

二、梯子问题

三、结论

四、一个额外的例子


一、介绍

让我们想象一个半径为 5 的圆,以 xy 平面为中心。现在假设我们想在点 (3,4) 处找到一条切线到圆的斜率。

好吧,为了做到这一点,我们必须非常接近圆和切线之间的空间,并沿着该曲线迈出一小步。该步骤的 y 分量为 dy,x 分量为 dx。斜率是 rise over run 或 dy 除以 dx。

与微积分中的其他切线斜率问题不同,这条曲线不是函数的图,因此我们不能采用简单的导数。x 和 y 不是输入和输出,但它们是相互依赖的值。圆的方程称为隐式曲线,它是一组 xy 点,满足以两个变量表示的一些属性。

如何找到 dy/dx 的过程非常奇怪!你对两边都取导数,所以对于 x²,你会写 2x dx,y² 变成 2y dy。右侧常数的导数为零。

这似乎与计算导数的常规方法非常不同。对具有多个变量的表达式进行导数意味着什么?为什么 dy 和 dx 是这样写的?

如果你盲目地向前移动,你会得到 dy/dx 等于 -x/y。因此,在坐标为 3,4 的点处,该斜率将为负 3 除以 4。这个奇怪的过程称为隐式微分。稍后我们将解释如何进行互操作,但首先让我们看看另一个有助于我们实现目标的问题。

二、梯子问题

想象一下,一个 5 米长的梯子靠墙支撑,梯子的顶部高出地面 4 米。那么根据勾股定理,底部必须在 3 米远的地方。

假设梯子正在滑落,以至于梯子的顶部每秒下降 1 米。现在的问题是,在最初的那一刻,底部梯子从墙上移动的速度是多少?由于所有这些因素都是相关的,我们应该有足够的信息来解决。

第一步是为所有数量命名。从梯子顶部到地面的距离称为 y(t)。梯子底部与墙壁的距离称为 x(t)。将这些项联系起来的关键方程是勾股定理 (y(t)² + x(t)² = ⁵²)。

解决这个问题的一种方法是隔离 x(t),并根据每秒 1 米的丢包率找出 y(t) 必须是什么。然后你可以对结果函数进行导数(x 相对于时间的变化率)。

但是,对于同一问题,也存在不同的思考方式。方程的左侧是时间 (y(t)² + x(t)²) 的函数,它恰好等于一个常数,这意味着该值不会随着时间的流逝而改变,但仍被写为依赖于时间的表达式。这意味着我们可以像任何其他将 t 作为输入的函数一样操作它。这意味着我们可以取这个左侧的导数。这意味着,如果经过一点时间(一些小的 dt),这会导致 y 略微减少,x 略微增加。那么这就给我们留下了一个问题,x(t)² + y(t)² 变化了多少?

但是,对于同一问题,也存在不同的思考方式。方程的左侧是时间 (y(t)² + x(t)²) 的函数,它恰好等于一个常数,这意味着该值不会随着时间的流逝而改变,但仍被写为依赖于时间的表达式。这意味着我们可以像任何其他将 t 作为输入的函数一样操作它。这意味着我们可以取这个左侧的导数。这意味着,如果经过一点时间(一些小的 dt),这会导致 y 略微减少,x 略微增加。那么这就给我们留下了一个问题,x(t)² + y(t)² 变化了多少?

我们知道导数应该是 0,因为方程等于一个常数。但是,当您计算这个导数时,您实际上会得到什么呢?

x(t)² 的导数是 x(t) 的 2 乘以 x 的导数(链式法则)。2x dx 表示由 x 的某个变化引起的 x 平方变化的大小,然后我们除以 dt。同样,y(t)² 的变化速率是 y(t) 的 2 乘以 y 的导数。

现在这个整个表达式必须等于 0,这只是意味着 x² + y² 在梯子移动时不应该改变。在时间 t 等于 0 的起点,高度 y(t) 为 4 米,距离 x(t) 为 3 米。由于梯子的顶部每秒下降 1 米,因此导数 dy/dt 为每秒 -1 米。这提供了足够的信息来隔离 dx/dt。

当你计算时,dx/dt 结果是每秒 4/3 米。

三、结论

我解释这个梯子问题的原因是,我希望你把它比作求一条切线到一个圆的斜率的问题。在这两种情况下,我们都有 x² + y² = ⁵² 的方程。此外,在这两种情况下,我们最终都采用了表达式的每一侧的导数。但是对于梯子问题,表达式是时间的函数,因此取导数具有明确的含义(表达式随时间变化而变化的速率)。

但让圆示例奇怪的是,导数不是说 dt 已经过去了少量时间,这会导致 x 和 y 发生变化,而是只有这些自由浮动的轻推(dx 和 dy),它们与时间等公共变量无关。

让我们以一种很好的方式考虑这个问题。假设 x² + y² 等于 S。S 是两个变量(x 和 y)的函数。它获取平面上的每一个点 xy 并将其与一个数字相关联。对于圆上的点,该数字恰好是 25。如果您离开圆圈,该值会更大。对于更靠近原点的其他点 xy,该数字会更小。取 S 的导数意味着考虑这两个变量的微小变化,一些微小的变化 dy 到 y,一些微小的变化 dx 到 x(不一定让你留在圆圈里,它可以在任何方向)。从那里你问 S 的值变化了多少?

微移之前和之后的 S 值之差称为 dS。

现在让我们看看这张图片:

在这张图片中,我们可以看到我们从 x 等于 3 且 y 等于 4 的点开始。假设 dx 为 -0.02,dy 为 -0.01。

S 的减少(该步骤中 x² + y² 的变化量)由上面的等式表示。这就是这个衍生词的真正含义。请务必注意,这是一个近似值,对于较小的微移,它会变得越来越真实。这里的关键点是,当你把自己限制在圆上的点上时,你基本上是在说你想确保 S 的值不会改变(它从值 25 开始,你想保持它在那里,也就是 dS 应该是 0)。将 2x dx + 2y dy 设置为 0 是使这些微小步骤保持在圆圈上的条件。同样,这只是一个近似值,更准确地说,它使您保持在圆的切线上,但对于足够小的步长,它们本质上是相同的。

四、一个额外的例子

表达式 x² + y² = ⁵² 没有什么特别之处,所以让我们也考虑一下表达式 sin(x)y² = x。

这些曲线表示 sin(x) 时间 y² 的值恰好等于 x 值的所有点 xy。现在想象一下,使用组件 dx dy 迈出一些小步骤,而不是一个不一定让您保持在曲线上的步骤。

对这个方程的每一侧进行导数,就可以告诉我们在步骤中该侧的值发生了多少变化。当我们使用乘积规则对每一方进行导数时,我们得到的是:

将这些边设置为彼此相等是一种说法,无论坐标 dx 和 dy 是什么步长,如果它要使我们保持在曲线上,那么左手边和右边的值必须变化相同的量(这是原始方程 sin(x)y² = x 保持为真的唯一方式)。

从这里开始,根据你要解决的问题,你可以用代数的方式处理一些东西。最常见的目标通常是找到 dy 除以 dx。

相关推荐
陈广亮9 小时前
构建具有长期记忆的 AI Agent:从设计模式到生产实践
人工智能
会写代码的柯基犬9 小时前
DeepSeek vs Kimi vs Qwen —— AI 生成俄罗斯方块代码效果横评
人工智能·llm
Mintopia10 小时前
OpenClaw 是什么?为什么节后热度如此之高?
人工智能
爱可生开源社区10 小时前
DBA 的未来?八位行业先锋的年度圆桌讨论
人工智能·dba
叁两12 小时前
用opencode打造全自动公众号写作流水线,AI 代笔太香了!
前端·人工智能·agent
前端付豪13 小时前
LangChain记忆:通过Memory记住上次的对话细节
人工智能·python·langchain
strayCat2325513 小时前
Clawdbot 源码解读 7: 扩展机制
人工智能·开源
王鑫星13 小时前
SWE-bench 首次突破 80%:Claude Opus 4.5 发布,Anthropic 的野心不止于写代码
人工智能
lnix13 小时前
当“大龙虾”养在本地:我们离“反SaaS”的AI未来还有多远?
人工智能·aigc