凹函数这东西啊,实际上大家心里有数,就是那种“往下掉”的趋势,越往右走,下降得越狠。最典型的例子就是那个对数函数 $f(x)=log x$,要么幂函数 $f(x)=x^alpha$ 只要 $alpha$ 小于 1 的情况。你要真去画它的草图,你会发现曲线是往下弯的,像个碗口的弧线,中间凹进去一块。

这跟凸函数彻底反之,凸函数是往上鼓的,像个拱桥。 要搞懂这玩意儿如何定义,还得从切线这回事儿说起。想象一下,你在函数 $f(x)$ 的曲面上随意找个点 $x_0$,然后你往两边画两条线。对于凸函数,出于曲线是往上拱的,故此这两条切线往左和往右看,都是“挖”着曲线角的,它们围出来的三角形区域,函数值一辈子都在切线下面。

这就好比你站在山顶看山坡,山坡的坡度是越来越缓,你画出的线段一辈子比斜坡本身短。 那凹函数呢?情况就反过来了。出于曲线是往下弯的,切线是往“坡底”看,是“撑”着曲线的。你画两条切线,它们往右延伸时,会越往上翘,把曲线“顶”上去。

这时候,你再看函数值 $f(x)$,你会发现它一直跑在切线 $y=f(x_0)+(x-x_0)f'(x_0)$ 的上面。

也就是说,对于凹函数函数值一辈子大于等于切线。

这就解释了大量直觉。

比如计算 $sqrt{x}$,当你算 $sqrt{x}$ 的切线时,你会发现 $sqrt{x}$ 这个函数值一直比切线高。

反过来想,要是 $sqrt{x}$ 是凹函数,难道 $sqrt{x+1}$ 就不是凹函数了?自然不是,凸函数加凸函数还是凸函数,但凹函数凹函数反而变成了凸函数

这是个反直觉的结论。 为啥我们要定义“凹”?主要是为了数学上的严谨和计算撇脱。

那会儿几何里,我们只说“凸”和“凹”,但没量化。

后来数学系出了凹凸性这个概念,把“凸”直接定义为 $f(t x_1 + (1-t) x_2) le t f(x_1) + (1-t) f(x_2)$ 这种线性不等式。但这个不等式对于凹函数来说得是 $ge$。

这挺费事,出于它得对所有方向($t$ 从 0 到 1)都成立。我们习惯说“对 $t$ 的凸性”,要么干脆直接写 $f(lambda x + (1-lambda)y) le lambda f(x) + (1-lambda) f(y)$ 这种形式。

这种写法别看短,但读起来好办让人晕,出于它掩盖了方向性。 实际上凹函数的核心定义,就是看它的二阶导数。大量人一看到 $f''(x) le 0$ 就懂了,但这不够,出于要是 $f''(x)=0$ 呢?那是常数函数,它既是凹的也是凸的。并且二阶导数别看好办,但有时候挺难直接求出来,要么求不出来。

那我们就看一阶导数 $f'(x)$。

要是 $f'(x)$ 是单调递减的函数,那 $f(x)$ 就是凹函数

这个说法更直观,也更有几何意义。出于导数就是切线的斜率。

要是你画函数图像,它的斜率是越来越小的(不管是正变负还是负得更多),那它就是往下弯的,这就是凹。 举个例子,对数函数 $f(x) = log_a x$ ($a>1$)。它的导数是 $f'(x) = frac{1}{x ln a}$。

你看这个函数,$x$ 越大,$ln a$ 是正的常数,$x$ 在分母上,故此 $frac{1}{x}$ 是越来越小的。斜率越来越小,说明曲线越来越平,越来越往下陷,这就是标准的对数函数,也是凹函数。再比如 $f(x) = -x^2$,这是个抛物线开口向下的。它的导数是 $-2x$,斜率随 $x$ 增大而减小(从正变负),要么随 $x$ 减小而增大(从负变正),总而言之斜率一直在变。甭管如何变,它的二阶导数都是 $-2

要是你 $f(x)$ 是凹的,那 $f'(x)$ 肯定也是凹的。

这就像二阶导数 $f''(x)$ 是负的,那它就更“凹”了。

这个推论在求导过程中特别好用,有时候你求了一个一阶导,发现它也是凹函数,那你就不用急着求它的二阶导了,直接利用凹函数性质就能解题。 另外,凹函数还有一个别的特性,叫“一阶导数单调递增”。

这是关键。出于凹函数意味着斜率在变小(要是是负斜率)要么在变大(要是是正斜率)。

故此一阶导数 $f'(x)$ 是单调的,并且是递增的。

这跟凸函数刚好反之。凸函数是先增后减,斜率是负的,故此一阶导数是递减的。 最终,凹函数在积分里也有毛病,叫可积性。凹函数一定是有界整除的,要么别看不整除但绝对值有限。

比如 $log x$ 在 0 到无穷大之间,导数从无穷大掉到 0,值是有限的,故此它绝对可积。

这个性质在讲积分不等式的时候特别关键。 总而言之,凹函数就是一个斜率往下掉要么往上提的函数。它集合了所有斜率单调递减的函数

这就是它的定义和本质。