You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

时间序列分析:Modified Exponential与Gompertz曲线的差异及拟合区别

Modified Exponential vs Gompertz Curves: Key Differences & Fitting Methods

Let’s cut through the confusion between these two growth curves—they both model asymptotic growth, but their shapes and fitting workflows have critical differences. I’ll break this down into core form/shape distinctions first, then dive into how you fit each one.

Core Form & Shape Differences

First, let’s lay out their standard mathematical forms (using t for time as the independent variable, L as the upper asymptote/limit value):

Modified Exponential Curve

y(t) = L - a*b^t

Where a > 0, 0 < b < 1. As t → ∞, b^t → 0, so y(t) → L.

Gompertz Curve

y(t) = L * e^(-b*e^(-k*t))

Where b > 0, k > 0. As t → ∞, e^(-k*t) → 0, so y(t) → L.

Now the key shape differences that matter for modeling:

  • Inflection Point:
    • Modified Exponential: No inflection point. It starts at y(0) = L - a and grows toward L with a continuously decreasing growth rate (the curve is concave down everywhere for t > 0). Think of a process that starts growing quickly and slows down steadily, never having a "peak growth" moment.
    • Gompertz: Has a single inflection point at t = ln(b)/k, where y(t) = L/e (~37% of the upper limit). Before this point, growth accelerates; after, it decelerates toward L. This makes it perfect for processes with a clear "takeoff" phase (like product adoption, bacterial growth in early stages) followed by slowing growth.
  • Growth Rate Behavior:
    • Modified Exponential: Growth rate decays exponentially over time (proportional to b^t).
    • Gompertz: Growth rate follows a bell-shaped curve relative to time—it rises to a peak at the inflection point, then falls off exponentially.

Fitting Method Differences

Both curves can be fitted with either linearization (if you know the upper limit L) or nonlinear optimization (if L is unknown), but the steps and considerations differ:

Modified Exponential Fitting

  • Linearization (Known L):
    Rearrange the equation to isolate the exponential term:
    L - y(t) = a*b^t
    
    Take the natural logarithm of both sides:
    ln(L - y(t)) = ln(a) + t*ln(b)
    
    Now this is a linear equation in terms of t (independent variable) and ln(L - y(t)) (dependent variable). You can use standard linear regression to estimate ln(a) and ln(b), then exponentiate to get a and b.
  • Nonlinear Fitting (Unknown L):
    If L isn’t known, you can’t linearize fully. Use nonlinear least squares (e.g., Levenberg-Marquardt algorithm) to minimize the sum of squared errors between observed y and predicted y(t). You’ll need initial guesses: estimate L as the maximum observed y plus a small buffer, pick reasonable starting values for a and b (e.g., a = L - y(0), b between 0 and 1).
  • Heuristic Alternative:
    Split your data into three equal-sized groups, then solve a system of equations to estimate L, a, and b directly. This works best for evenly spaced, noise-free data.

Gompertz Curve Fitting

  • Linearization (Known L):
    Start by taking the natural logarithm of both sides:
    ln(y(t)) = ln(L) - b*e^(-k*t)
    
    Rearrange to isolate the inner exponential term:
    ln(L / y(t)) = b*e^(-k*t)
    
    Take the natural logarithm again:
    ln(ln(L / y(t))) = ln(b) - k*t
    
    Now this is linear in t and ln(ln(L / y(t))). Use linear regression to estimate ln(b) and -k, then exponentiate to get b and k.
  • Nonlinear Fitting (Unknown L):
    Similar to Modified Exponential, use nonlinear least squares. Initial guesses are key: estimate L as the maximum observed y, b can be set to ln(L / y(0)) (from the t=0 form), and k as a small positive number (e.g., 0.1).
  • Heuristic Alternative:
    The three-point method also works here—split data into three groups, solve the system derived from the Gompertz equation to get initial parameters, then refine with nonlinear fitting if needed.

Key Fitting Distinctions

  • Data Constraints: Linearization for both requires positive values (since we’re taking logs):
    • Modified Exponential: L - y(t) > 0 for all data points.
    • Gompertz: y(t) > 0 and L > y(t) for all data points. Nonlinear fitting avoids these hard constraints but needs better initial guesses.
  • Outlier Sensitivity: Modified Exponential fitting is more sensitive to outliers in early data points, since its growth rate is highest at the start. Gompertz is more robust to early noise because it accounts for an initial acceleration phase.
  • Use Case Alignment: Fit Modified Exponential when your data shows steady deceleration. Fit Gompertz when you see a clear acceleration-then-deceleration pattern.

内容的提问来源于stack exchange,提问作者user163580

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 03:17:11