函数图像(Graphed Functions)的直观理解

当我们绘制函数 $f(x)$ 的图像时,有几种方法可以修改它:

使用 $f(ax + b) + c$ 代替 $f(x)$ 有几个效果:

这是怎么回事?嗯,我们是在描述图像上的视觉结果,但并没有描述引起变化的基础过程。让我们来看看根本原因。

f(ax)是快进

f(ax) 中的 "a" 是一个快进因子。通常,我们体验时间的方式是“每分钟一分钟”——每等一分钟,世界就向前推进一分钟。

如果我们看到快进的生活呢?

在这里,我们(在我们的“x”时间线上)经过1分钟意味着现实世界中过去了2分钟。或者是10分钟、一小时或一年。

在我们的时间线(x)上,时间正常流逝。但决定我们所见结果的函数被输入了一个修改过的时间线。当我们悠闲地从 x=1 漫步到 x=2 时,f 必须从 f(10) 跳到 f(11)、f(12)……一直到 f(20)。在这里,f 需要在我们随意等待一分钟的时间里绘制 10 分钟的事件。将更多数据点塞进相同的时间段会导致一个被压缩、加速的图像。

直观地说,“压缩图像”实际上意味着“让时间运行得更快”。

f(x + b) 是一个偏移量

一种更简单的时间旅行是基本的平移。如果事情发生 提前 偏离计划,那是什么意思?

想象一个德国/日本城市,那里的火车提前一小时运行。

下午4点的火车在下午3点到达。上午11点的航班在上午10点起飞。换句话说,一个反乌托邦的地狱景象。

如果我在到达时没有着火,我会这样描述情况:

  • 实际时间:上午10点
  • 起飞航班:上午11点
  • 航班 = 实际 + 1

换句话说,f(x + 1) 意味着事情提前了。我们认为现在是下午3点 (x=3),但下午4点的事件正在发生 [f(4) 正在发生]。

同样,这可能有点棘手:我们移除时间让事情更早发生,难道不觉得奇怪吗?这是我们的视觉直觉在欺骗我们:如果现在是下午3点,但 f 正在运行下午4点的事件,那么它是在提前进行。注意,我们 增加 给我们的手表增加时间才能早到。)

将“向左滑动”理解为“提前”。

f(x) + c 是一个偏置

给函数加上一个值会使其垂直移动。

发生了什么?在 f(x) 不知情的情况下,我们取最终结果并使其变大。

直观上,我们有一个“偏置”。当 f(x) = 0 时,它告诉我们“不要改变,保持在0”。但是我们的默认值不是零,而是 c。当 f(x) 说不改变时,意思是“使用你的默认值 c”。

将“向上滑动函数”理解为“改变默认值”。

(在神经网络中,如果没有输入,你可能有一个默认值。“默认偏置”是一个很好的描述方式,相比“垂直滑动函数”。)

附录:链式法则

在微积分中,链式法则让我们可以组合函数。(把一个函数塞进另一个函数的花哨说法。)

当我们把 2x 塞进 正弦,并求导数时,得到:

\displaystyle{\frac{d}{dx}\sin(2x) = \frac{d}{dx}\sin(2x) \cdot \frac{d}{dx} 2x = \cos(2x) \cdot 2 = 2 \cos(2x)}

链式法则告诉我们先求外层函数的导数 (sin(2x) => cos(2x)),再乘以内层函数的导数 (2x => 2)。

这是怎么回事?使用“导数=斜率”的解释(不是 我最喜欢的 但对作图来说很好),我们看到:

如果我们选取循环上的一个点(比如 x = 1 弧度),我们得到该点的斜率为

\displaystyle{\frac{d}{dx} \sin(x), \text{at x = 1}}

\displaystyle{ = \cos(x), \text{at x = 1} }

\displaystyle{ = \cos(1) = 0.54 }

换句话说,在 x=1 处,sin(x) 有一个大约54%的上坡斜率。好,不错。

现在,如果我们以两倍速度运行 sin(x) 会发生什么?吃,吃,吃!

嗯……导数(我们看到的斜率)应该加倍!与原始函数相比,sin(2x)经历变化的速度是我们速度的两倍。我们世界中的1分钟意味着sin(2x)已经吞噬了2分钟的变化。

在周期中的 对应点 处,我们预期斜率会加倍。让我们确认一下。

不再询问x=1,我们知道sin(2x)时间线上的同一点现在是x=0.5。所以让我们求该点的导数:

\displaystyle{\frac{d}{dx} \sin(2x), \text{at x = 0.5}}

\displaystyle{ = 2\cos(2x), \text{at x = 0.5} }

\displaystyle{ = 2\cos(2 * 0.5) = 2 \cos(1) = 1.08}

耶,数学验证成立!

我们可以从机械上描述链式法则为函数组合的一种方式。但直观上,我们在函数内部绑定了一个快进装置,加速了我们所经历的变化。

普通的sin(x)将其导数保持在-1.0到+1.0之间,这是cos(x)施加的限制。但现在我们有了一个快进技巧,可以使sin(x)以我们想要的任何速度移动。

额外思考:假设我们不是以固定的速度2快进,而是随着进程的推进加速越来越快?这样的函数可能是sin(x * x),其中一个x是我们周期中的常规位置,另一个x是我们的快进速率。为了好玩(是的!),你可以求sin(x * x)的导数(答案).

附录:指数函数

我们可以通过$e^{x + b}$让指数函数($e^x$)提前运行。

但我们可以将其重写为:

\displaystyle{e^{x + b} = e^x \cdot e^b}

换句话说,将 指数函数 "提前"视为具有更大起始点的常规指数函数。

普通的指数函数从1.0开始并连续复利。相反,我们可以将其视为从比1.0更大的起始值开始。(例如,$e^{x + 2}$从$e^2 = 7.389$开始复利。)

根据函数的不同,"提前"之外的解释可能更有意义。

数学愉快。

本系列其他文章

  1. 理解代数(Algebra):我们为何要对方程因式分解?
  2. 参数方程(Parametric Equations)的直观速览
  3. 二次方程公式(Quadratic Formula)的直观理解
  4. 斜截式(Slope-Intercept Form)的直观理解
  5. 函数图像(Graphed Functions)的直观理解
  6. 多项式(Polynomials)的直观理解

加入 45 万月度读者

喜欢这篇文章?还有更多内容能帮你建立持久、直观的数学理解。加入通讯以获取额外内容和最新更新。