{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "(factor_analysis)=\n", "# Factor analysis\n", "\n", ":::{post} 19 Mar, 2022\n", ":tags: factor analysis, matrix factorization, PCA \n", ":category: advanced, how-to\n", ":author: Chris Hartl, Christopher Krapu, Oriol Abril-Pla\n", ":::" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Factor analysis is a widely used probabilistic model for identifying low-rank structure in multivariate data as encoded in latent variables. It is very closely related to principal components analysis, and differs only in the prior distributions assumed for these latent variables. It is also a good example of a linear Gaussian model as it can be described entirely as a linear transformation of underlying Gaussian variates. For a high-level view of how factor analysis relates to other models, you can check out [this diagram](https://www.cs.ubc.ca/~murphyk/Bayes/Figures/gmka.gif) originally published by Ghahramani and Roweis." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ ":::{include} ../extra_installs.md\n", ":::" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running on PyMC3 v4.0.0b6\n" ] } ], "source": [ "import arviz as az\n", "import matplotlib\n", "import numpy as np\n", "import pymc as pm\n", "import pytensor.tensor as pt\n", "import scipy as sp\n", "import seaborn as sns\n", "import xarray as xr\n", "\n", "from matplotlib import pyplot as plt\n", "from matplotlib.lines import Line2D\n", "from numpy.random import default_rng\n", "from xarray_einstats import linalg\n", "from xarray_einstats.stats import XrContinuousRV\n", "\n", "print(f\"Running on PyMC3 v{pm.__version__}\")" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "%config InlineBackend.figure_format = 'retina'\n", "az.style.use(\"arviz-darkgrid\")\n", "\n", "np.set_printoptions(precision=3, suppress=True)\n", "RANDOM_SEED = 31415\n", "rng = default_rng(RANDOM_SEED)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulated data generation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To work through a few examples, we'll first generate some data. The data will not follow the exact generative process assumed by the factor analysis model, as the latent variates will not be Gaussian. We'll assume that we have an observed data set with $N$ rows and $d$ columns which are actually a noisy linear function of $k_{true}$ latent variables." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "scrolled": true }, "outputs": [], "source": [ "n = 250\n", "k_true = 4\n", "d = 10" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The next code cell generates the data via creating latent variable arrays M and linear transformation Q. Then, the matrix product $QM$ is perturbed with additive Gaussian noise controlled by the variance parameter err_sd." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "err_sd = 2\n", "M = rng.binomial(1, 0.25, size=(k_true, n))\n", "Q = np.hstack([rng.exponential(2 * k_true - k, size=(d, 1)) for k in range(k_true)]) * rng.binomial(\n", " 1, 0.75, size=(d, k_true)\n", ")\n", "Y = np.round(1000 * np.dot(Q, M) + rng.standard_normal(size=(d, n)) * err_sd) / 1000" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Because of the way we have generated the data, the covariance matrix expressing correlations between columns of $Y$ will be equal to $QQ^T$. The fundamental assumption of PCA and factor analysis is that $QQ^T$ is not full rank. We can see hints of this if we plot the covariance matrix:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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ypYt65Y4XJLUSFKrVq20adMmGYah7777Tg888IDT7zFv3jzzedu2bZ1+fQAAAPgfw4cqNYcOHdKkSZO0cuVKZWdnX/LzmJgY9enTR4MGDbLsQOxqK1as0Mcff6yNGzcWuISkVKlSatasmfr27as777zTpfG4LKl55JFHdMstt0iSgoKCnH793bt364cffpB0YZOBG264wen3AAAAADxl0aJFGjdunOUMSEcnTpzQ5MmTtWLFCk2ePNnla8xPnz6tMWPGaOXKlZfta7fbtW3bNv3000++m9RUrFhRFStWdNXlVadOHa1fv95su6u0BQAAAB/nA5Wa1atXa/To0eY5jpJUu3ZtXXvttYqMjFR8fLxWrlxpHm+yfft2DR48WLNnz1ZERIRLYkpMTFS/fv108OBBy+vNmjVT06ZNFR0drezsbB0/flx//vmnDh065JI48uOypMbVQkND3VpiAwAAANzh5MmTGjFihJnQ2Gw2jRo1Sv369bOsn0lOTtbw4cPNL/r37NmjcePGadKkSU6PKTMzU4MGDbIkNDfeeKOee+65AtfOHzp0SAsXLlRqaqrT43HkuVVFAAAAgAcYdvc8SmratGmWROCJJ57QgAEDLtkQICoqStOnT1e9evXM1xYvXqxdu3aV/OYFmDp1quW6/fr100cffVToZmC1a9fW8OHD9fzzzzs9HkckNQAAAICXSEpK0pw5c8x2zZo1NWjQoAL7h4WFaezYsWbbMAxNnTrVqTHt27dPM2bMMNvXX3+9nn32Wafe40qR1AAAACCw2N30KIHly5crKyvLbN9zzz0KCQkpdEyHDh0sZz6uWrVK58+fL1kA+fjkk0/MnddKlSrldQmNRFIDAAAAeI0VK1ZY2hd3E76cvP0yMjK0du1ap8STnp6uJUuWmO02bdpYprt5C5IaAAAABBRvXlOzceNG83l0dLRq1KhRpHEtW7a0tDds2FCyABysXLnSsqV09+7dnXJdZyOpAQAAALzAiRMnLBsENGnSpMhjmzZtamnv37/fKTFt2bLF0m7WrJlTrutsPrulMwAAAFASV7IzmSsdOHDA0q5WrVqRx0ZHRyskJMRc++J4rZL6888/Le0GDRpIks6cOaP//ve/+u6773TkyBGlpKSoQoUKqlatmjp06KDbb79ddevWdUoMRUFSAwAAAHiBxMRESzs2NrbIY202m2Jj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N17tPXN83eVH27OeDsGtQp981dMhuF3UR/08HYJbJWWd9XQIbvdIxSRPhwAPc6y0XFz0X1R5D+2Uip8U5efkyZN64403zPaoUaNUsWLFK76us5HUAAAAIKDYPR1AAcLDwy1tx8rN5ThWZoq7Jic/L730ks6evfAlQ7t27dSrV68rvqYrsKYGAAAA8AKOSc25c+eKNT7vGprg4OBir8lx9OOPP2rZsmWSpJCQEL344otXdD1XolIDAACAgOKtu585buF8/HjRl0UYhmHZxrk420EX5PXXXzefDxo0SHXr1r3ia7oKSQ0AAADgBRyThmPHjhV57KlTpyxrcOrUqXPF8Zw+fdp8Pm3aNE2bNq1Y49evX6+mTZua7bZt2+rTTz+94rjyQ1IDAACAgOKtu5/FxsaqXLlySk1NlSTt3LmzyGN37NhhaderV8+pseXm5l7xOLvddauZWFMDAAAAeInWrVubz0+dOqUjR44UadymTZss7bZt2zo1Lm9HpQYAAAABxVt3P5OkLl266KeffjLbS5cu1aBBgy477uKCfunC1tAdO3a84lg2btxYrP5Hjx5V165dzXa7du00a9asK46jKKjUAAAAAF6ia9euCgkJMdtz58697Hk169at08GDB812p06dLtlJzd+R1AAAACCg2N30KIno6Gj17t3bbMfHx+vDDz8ssH9mZqZefvlls22z2TRkyJAC+x89elSNGjUyH126+McB3SQ1AAAAgBcZPHiw5eDMyZMna+bMmZcstE9OTtbAgQO1b98+87XbbrvNsuNYoGBNDQAAAAKK4aW7n10UGxurt99+W0OGDJHdbpdhGJo4caJmz56t9u3bKzIyUocPH9bKlSuVkZFhjqtfv74mTJjgwcg9h6QGAAAA8DKdO3fWxIkTNX78eJ0/f16SdOjQIR06dCjf/k2aNNGUKVMUERHhxii9B9PPAAAAEFC8eU1NXj179tS8efPUrVs3y+YBeVWuXFlDhw7VnDlzFBcX54S7+iYqNQAAAICXqlu3rt577z2dPn1amzZt0vHjx5Wenq7o6GjVqFFDrVq1UlBQUJGvFxcXp927d7skVlde+3JIagAAABBQvPmcmoJUrFjRcgYMrJh+BgAAAMCnUakBAABAQDE8HQCcjkoNAAAAAJ/m1ZWaffv2KTExUWfOnFFoaKiioqLUqFEjy2FEAAAAQHHY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AABAQGFNjf+hUgMAAADAp1GpAQAAQEBhTY3/oVIDAAAAwKdRqQEAAEBAsVOp8Ttek9RkZ2fr3LlzysjIUNmyZRUREeHpkAAAAAD4ALcnNTk5Ofrll1+0fv167du3TwcOHNBff/2lnJwcSz+bzaZy5cqpXr16at68ua6++mrddNNNKlOmjLtDBgAAgB8x2P3M77gtqTly5IimTp2qH3/8UWlpaebrBS3UMgxDZ86c0ebNm7V582ZJUnh4uHr06KF+/fqpXr16bokbAAAAgHdzeVKTk5OjN954Q7Nnz1ZOTo6ZxNhsNsv/Xo5hGEpPT9fcuXM1f/58Pfrooxo8eLBCQ0NdFjsAAAD8D7uf+R+X7n529uxZPfzww5o1a5ays7MtPzMMw/LIKywsTJGRkQoJCcn359nZ2Xr//fd177336sSJE658CwAAAAC8nEsrNSNGjND69evNaoxhGGrevLlatmyp2NhYhYWF6cyZM9q7d6/WrVunM2fOSJJyc3M1atQo9ezZU2lpadq7d6927NihZcuWaePGjWais2PHDvXv319ffvmlIiMjXflWAAAA4CfsrKnxOy5LaubMmaM1a9bIZrPJMAxdc801Gj9+vBo3bpxv/6ysLH3++ed69913lZGRoTFjxqhMmTLq3r27WrZsqZYtW+qBBx7QgQMH9Morr2jt2rWy2Ww6ePCgRo8erWnTprnqrQAAAADwYi6bfjZr1izzeceOHTVr1qwCExpJCg0N1cMPP6z3339fwcHBMgxD48aN0+nTpy396tatqxkzZqh///5mxWbVqlVauXKlq94KAAAA/IjjMghXPeA+Lklq9u7dq71790qSSpcurYkTJyokJKRIYzt06KD77rtPknTmzBktXLgw336jR49W586dzfbHH398ZUEDAAAA8EkuS2qkCzubXXfddYqJiSnW+Lvvvtt8/v333xfYb8yYMZIuZNsbN25UUlJSCaIFAABAILEbhlsecB+XJDV5dySrW7duscfnHRMfH19gv1q1aqlZs2Zm+48//ij2vQAAAAD4NpckNbm5uf+7QamS3+LiAZyFyZvUHD16tMT3AgAAQGBgTY3/cUlSExUVZT4/cOBAsccfPHhQ0oXpaxUqVCi0b6VKlczn6enpxb4XAAAAAN/mki2d69evL+lCFrxmzRolJSVZko/LWbBggfm8WrVqhfbNyckx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", "text/plain": [ "