Деривация логистической уравнения
S-кура Хэминга имеет точную математическую деривацию. Начните с двух наблюдений о принятии технологий:
1. Скорость принятия ускоряется с текущим уровнем принятия (рекомендации, эффект сети): dP/dt ∝ P
2. Скорость принятия замедляется, когда рынок насыщается: dP/dt ∝ (1 − P)
Соедините: dP/dt = r · P · (1 − P)
Это логистическое дифференциальное уравнение. Оно разделяется: частичное разложение позволяет напрямую интегрировать.
Деривация
Разделите переменные: dP / [P(1−P)] = r dt
Частичные дроби: 1/[P(1−P)] = 1/P + 1/(1−P)
Интегрируйте оба конца: ln(P) − ln(1−P) = rt + C
ln[P/(1−P)] = rt + C
P/(1−P) = e^(rt+C) = e^C · e^(rt)
Пусть K = e^C. Решите для P: P = K·e^(rt) / (1 + K·e^(rt))
Или: P(t) = 1 / (1 + e^(−r(t − t₀)))
где t₀ = (ln K)/r - точка инфлексии.
Точка инфлексии
При t = t₀: P = 0,5. Второй производная d²P/dt² = 0: скорость роста максимальна. До t₀: выпуклая вверх (ускоряется). После t₀: выпуклая вниз (ускоряется).
Адаптация логистической к данным
Два уравнения с точками данных на логистической кривой позволяют решить для r и t₀.
Принятие интернета: P(1995) = 0,01 (1% домохозяйств США), P(2005) = 0,70 (70%).
Стоимость сети как геометрическое количество
Хэмминг заметил, что приложения способствовали более быстрому внедрению вычислительной техники, чем аппаратное обеспечение или программное обеспечение. Сети-зависимые приложения следуют определенной модели роста: их стоимость растет быстрее, чем их стоимость.
Закон Меткалфа
Стоимость сети с n пользователями пропорциональна количеству возможных соединений между пользователями:
V(n) = k · n(n−1)/2 ≈ k · n²/2 (для больших n)
где k - стоимость одного соединения. Стоимость сети: C(n) ∝ n (примерно линейно по количеству пользователей).
Соотношение стоимости к стоимости: V/C ∝ n²/n = n. Чем больше n, тем больше отношение растет. Сеть с 10-кратным количеством пользователей обеспечивает примерно в 100 раз больше стоимости за 10 раз больше стоимости.
Геометрическая картина
С n узлами, количество рёбер в полном графе K_n равно C(n,2) = n(n−1)/2. Это комбинаторная формула: выбрать 2 узла из n. Для n=10: C(10,2)=45. Для n=100: C(100,2)=4950. Для n=1000: C(1000,2)=499,500.
Кривая S и закон Меткалфа взаимодействуют: во второй фазе быстрого внедрения n растет быстро, и V(n) растет как n². Инфляция стоимости происходит до инфляции внедрения - стоимость ускоряется перед внедрением, вызывая положительный обратный связь.
Стоимость сети на разных уровнях внедрения
Адопция электронной почты: в 1985 году (n=100,000 пользователей), k = $0.01 на соединение-год. В 1995 году (n=30,000,000 пользователей).
Оптимизация как геометрия
Рассказ Хэмминга о бумажной ленте Boeing описывает оптимизацию, которая закончилась провалом с точной геометрической интерпретацией. Оптимизация функции f(x) на ландшафте требует:
1. Определенной функции f: целевая функция (тяг, стоимость, время внедрения на рынок)
2. Стабильного ландшафта: f, оцененная в том же состоянии каждый раз
3. Градиента: направления наибольшего улучшения
Когда ландшафт меняется между измерениями, вычисленный вами градиент может указывать на направление, которое больше не существует, когда вы сделаете следующий шаг. Вы вычисляете градиент(f₁), но двигаетесь по ландшафту f₂.
Градиентный спуск
Стандартный градиентный спуск: x_{t+1} = x_t − α ∇f(x_t)
где α = размер шага (коэффициент обучения), ∇f = градиентный вектор (частные производные).
Провал Boeing: в момент t команда измеряет f(x_t). В момент t+1 команда меняет x на x_t + Δx. Но и общая база данных также изменилась: f теперь f' ≠ f. Измеренное изменение: f'(x_t + Δx) − f(x_t). Это НЕ градиент f — в нем содержится термин от сдвига ландшафта.
Фантомный градиент
Измеренное изменение = [f'(x+Δx) − f(x)] = [f(x+Δx) − f(x)] + [f'(x+Δx) − f'(x+Δx)]
= истинный градиент × Δx + сдвиг ландшафта
Если сдвиг ландшафта доминирует: команда движется к минимуму в f', который является максимумом в f. Они оптимизируют неправильное вещество — возможно, ухудшая свою конструкцию, в то время как измерения показывают улучшение.
Квантификация ошибки фантомного градиента
Команда оптимизирует аэродинамическое сопротивление f(θ, s), где θ - угол крыла, s - размах. Истинный градиент: ∂f/∂θ = −0.5 (сопротивление уменьшается с увеличением θ), ∂f/∂s = +0.3 (сопротивление увеличивается с увеличением s).
Еще одна команда одновременно уменьшает вес фюзеляжа, что изменяет функцию сопротивления: f' = f − 0.8. (Легкий фюзеляж уменьшает сопротивление на 0.8 единиц на всех конфигурациях.)
Первая команда измеряет: f'(θ+Δθ, s) − f(θ, s) = [f(θ+Δθ, s) − 0.8] − f(θ, s) = −0.5·Δθ − 0.8.