{
  "aliases": null,
  "backlinks": [
    {
      "field": "uses",
      "target": "6V75QVQCX6"
    },
    {
      "field": "specializes",
      "target": "CHHD44WDHJ"
    },
    {
      "field": "defines",
      "target": "HSSC2ZZWMY"
    }
  ],
  "body": "\n## Summary\n\nStochastic approximation is a family of iterative methods for finding a root or an extremum of a function observed only with random noise.\nEach step moves the current guess by a decreasing step size times a noisy measurement.\nThe first methods were the Robbins–Monro algorithm of 1951, for roots, and the Kiefer–Wolfowitz algorithm of 1952, for maxima.\nStochastic gradient descent, the workhorse of machine learning, is a stochastic approximation method.\n\n## Explanations\n\n### L1 human\n\nSuppose a machine has a dial, and its average output depends on the dial setting, but every single reading is noisy.\nTo find the setting where the average output equals a target, turn the dial a little against each error you read.\nThe turns get smaller over time, so the noise averages out while the dial still travels far enough to reach the right place.\nFor example, to estimate a mean $m$ from samples $Z_1, Z_2, \\dots$, the update $\\theta_{n+1} = \\theta_n + \\frac{1}{n} (Z_n - \\theta_n)$ with $\\theta_1 = 0$ gives exactly the running average of the samples.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "kind": "concept",
    "msc": [
      "62L20"
    ],
    "name": "Stochastic approximation",
    "same_as": {
      "wikidata": "Q97663916",
      "wikipedia": "Stochastic approximation"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Stochastic_approximation"
      }
    ],
    "tag": "ZPCPW4W1Y9"
  },
  "kind": "concept",
  "link": "https://tamnd.github.io/math2/node/ZPCPW4W1Y9/",
  "links": null,
  "markdown": "https://tamnd.github.io/math2/node/ZPCPW4W1Y9.md",
  "msc": [
    "62L20"
  ],
  "name": "Stochastic approximation",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/ZPC/ZPCPW4W1Y9.md",
  "status": null,
  "tag": "ZPCPW4W1Y9",
  "uri": "m2://ZPCPW4W1Y9",
  "url": "https://tamnd.github.io/math2/wiki/stochastic-approximation/",
  "writing": {
    "tag": "ZPCPW4W1Y9",
    "kind": "concept",
    "level": "W0",
    "next": [
      {
        "what": "a source with a locator",
        "have": 0,
        "want": 1
      }
    ]
  }
}
