{
  "aliases": null,
  "backlinks": [
    {
      "field": "defines",
      "target": "VEMZC8Y458"
    }
  ],
  "body": "\n## Summary\n\nIndependent component analysis recovers hidden source signals from observed linear mixtures of them, assuming the sources are statistically independent.\nUnlike [[principal component analysis|ABXD13M340]], which only makes the new variables uncorrelated, it asks for full [[independence|0GQ938GDE0]].\nThis is possible only when at most one source is Gaussian.\nIt is a standard tool for blind source separation in signal processing.\n\n## Explanations\n\n### L1 human\n\nAt a party, two microphones each record a different mix of two people talking.\nIndependent component analysis tries to unmix the recordings into the two separate voices, without knowing how they were mixed.\nThe key assumption is that what one person says does not depend on what the other says.\nThe voices come back only up to order and volume: the method cannot tell which voice is \"first\" or how loud it really was.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "kind": "concept",
    "msc": [
      "62H25",
      "94A12"
    ],
    "name": "Independent component analysis",
    "same_as": {
      "wikidata": "Q1259145",
      "wikipedia": "Independent component analysis"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Independent_component_analysis"
      }
    ],
    "tag": "NBX8FZY516"
  },
  "kind": "concept",
  "link": "https://tamnd.github.io/math2/node/NBX8FZY516/",
  "links": null,
  "markdown": "https://tamnd.github.io/math2/node/NBX8FZY516.md",
  "msc": [
    "62H25",
    "94A12"
  ],
  "name": "Independent component analysis",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/NBX/NBX8FZY516.md",
  "status": null,
  "tag": "NBX8FZY516",
  "uri": "m2://NBX8FZY516",
  "url": "https://tamnd.github.io/math2/wiki/independent-component-analysis/",
  "writing": {
    "tag": "NBX8FZY516",
    "kind": "concept",
    "level": "W0",
    "next": [
      {
        "what": "an inventory row",
        "note": "the row of the inventory that the node accounts for",
        "have": 0,
        "want": 1
      },
      {
        "what": "a source with a locator",
        "have": 0,
        "want": 1
      }
    ]
  }
}
