diff --git a/JSL_notebook.ipynb b/JSL_notebook.ipynb
index 5a54aba..42211b2 100644
--- a/JSL_notebook.ipynb
+++ b/JSL_notebook.ipynb
@@ -1,205 +1,495 @@
{
+ "nbformat": 4,
+ "nbformat_minor": 0,
+ "metadata": {
+ "colab": {
+ "name": "JSL-notebook.ipynb",
+ "provenance": [],
+ "authorship_tag": "ABX9TyOyouFLeOExeSvfdoPotWlr",
+ "include_colab_link": true
+ },
+ "kernelspec": {
+ "name": "python3",
+ "display_name": "Python 3"
+ },
+ "language_info": {
+ "name": "python"
+ }
+ },
"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "view-in-github",
+ "colab_type": "text"
+ },
+ "source": [
+ ""
+ ]
+ },
{
"cell_type": "code",
- "execution_count": 1,
- "metadata": {},
+ "source": [
+ "!pip install --upgrade git+https://github.com/google/flax.git\n",
+ "!pip install --upgrade tensorflow-probability\n"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "rX9X_KFwEtoK",
+ "outputId": "89fbddbe-e2b5-4fc5-b190-2a30852625be"
+ },
+ "execution_count": 5,
"outputs": [
{
- "name": "stdout",
"output_type": "stream",
+ "name": "stdout",
"text": [
- "The autoreload extension is already loaded. To reload it, use:\n",
- " %reload_ext autoreload\n"
+ "Collecting git+https://github.com/google/flax.git\n",
+ " Cloning https://github.com/google/flax.git to /tmp/pip-req-build-ihuwjxbb\n",
+ " Running command git clone -q https://github.com/google/flax.git /tmp/pip-req-build-ihuwjxbb\n",
+ "Requirement already satisfied: numpy>=1.12 in /usr/local/lib/python3.7/dist-packages (from flax==0.4.0) (1.21.5)\n",
+ "Requirement already satisfied: jax>=0.3 in /usr/local/lib/python3.7/dist-packages (from flax==0.4.0) (0.3.1)\n",
+ "Requirement already satisfied: matplotlib in /usr/local/lib/python3.7/dist-packages (from flax==0.4.0) (3.2.2)\n",
+ "Requirement already satisfied: msgpack in /usr/local/lib/python3.7/dist-packages (from flax==0.4.0) (1.0.3)\n",
+ "Requirement already satisfied: optax in /usr/local/lib/python3.7/dist-packages (from flax==0.4.0) (0.1.1)\n",
+ "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from jax>=0.3->flax==0.4.0) (3.10.0.2)\n",
+ "Requirement already satisfied: scipy>=1.2.1 in /usr/local/lib/python3.7/dist-packages (from jax>=0.3->flax==0.4.0) (1.4.1)\n",
+ "Requirement already satisfied: opt-einsum in /usr/local/lib/python3.7/dist-packages (from jax>=0.3->flax==0.4.0) (3.3.0)\n",
+ "Requirement already satisfied: absl-py in /usr/local/lib/python3.7/dist-packages (from jax>=0.3->flax==0.4.0) (1.0.0)\n",
+ "Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from absl-py->jax>=0.3->flax==0.4.0) (1.15.0)\n",
+ "Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->flax==0.4.0) (2.8.2)\n",
+ "Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->flax==0.4.0) (3.0.7)\n",
+ "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->flax==0.4.0) (1.4.0)\n",
+ "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.7/dist-packages (from matplotlib->flax==0.4.0) (0.11.0)\n",
+ "Requirement already satisfied: chex>=0.0.4 in /usr/local/lib/python3.7/dist-packages (from optax->flax==0.4.0) (0.1.1)\n",
+ "Requirement already satisfied: jaxlib>=0.1.37 in /usr/local/lib/python3.7/dist-packages (from optax->flax==0.4.0) (0.3.0+cuda11.cudnn805)\n",
+ "Requirement already satisfied: toolz>=0.9.0 in /usr/local/lib/python3.7/dist-packages (from chex>=0.0.4->optax->flax==0.4.0) (0.11.2)\n",
+ "Requirement already satisfied: dm-tree>=0.1.5 in /usr/local/lib/python3.7/dist-packages (from chex>=0.0.4->optax->flax==0.4.0) (0.1.6)\n",
+ "Requirement already satisfied: flatbuffers<3.0,>=1.12 in /usr/local/lib/python3.7/dist-packages (from jaxlib>=0.1.37->optax->flax==0.4.0) (2.0)\n",
+ "Requirement already satisfied: tensorflow-probability in /usr/local/lib/python3.7/dist-packages (0.16.0)\n",
+ "Requirement already satisfied: numpy>=1.13.3 in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability) (1.21.5)\n",
+ "Requirement already satisfied: decorator in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability) (4.4.2)\n",
+ "Requirement already satisfied: gast>=0.3.2 in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability) (0.5.3)\n",
+ "Requirement already satisfied: cloudpickle>=1.3 in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability) (1.3.0)\n",
+ "Requirement already satisfied: dm-tree in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability) (0.1.6)\n",
+ "Requirement already satisfied: six>=1.10.0 in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability) (1.15.0)\n",
+ "Requirement already satisfied: absl-py in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability) (1.0.0)\n"
]
}
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "#!pip install git+git://github.com/blackjax-devs/blackjax.git\n",
+ "#!pip install git@github.com:blackjax-devs/blackjax.git\n",
+ "\n",
+ "#!pip install --upgrade git+https://github.com/blackjax-devs/blackjax.git\n",
+ "!pip install blackjax"
],
+ "metadata": {
+ "id": "zs54LQC9u9qL",
+ "outputId": "e573820f-bdd6-4a3e-ff74-dc895f8c9829",
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ }
+ },
+ "execution_count": 6,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Collecting git+https://github.com/blackjax-devs/blackjax.git\n",
+ " Cloning https://github.com/blackjax-devs/blackjax.git to /tmp/pip-req-build-l2squsd6\n",
+ " Running command git clone -q https://github.com/blackjax-devs/blackjax.git /tmp/pip-req-build-l2squsd6\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
"source": [
- "%load_ext autoreload\n",
- "%autoreload "
+ "#!pip install git+git://github.com/deepmind/distrax.git.\n",
+ "!pip install distrax"
+ ],
+ "metadata": {
+ "id": "ARlJdPVrvllp",
+ "outputId": "b9e87cfe-d06c-4dd3-eeca-01e3eb39814b",
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ }
+ },
+ "execution_count": 4,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Collecting distrax\n",
+ " Downloading distrax-0.1.1-py3-none-any.whl (243 kB)\n",
+ "\u001b[?25l\r\u001b[K |█▍ | 10 kB 24.7 MB/s eta 0:00:01\r\u001b[K |██▊ | 20 kB 27.2 MB/s eta 0:00:01\r\u001b[K |████ | 30 kB 32.4 MB/s eta 0:00:01\r\u001b[K |█████▍ | 40 kB 16.4 MB/s eta 0:00:01\r\u001b[K |██████▊ | 51 kB 12.2 MB/s eta 0:00:01\r\u001b[K |████████ | 61 kB 14.0 MB/s eta 0:00:01\r\u001b[K |█████████▍ | 71 kB 12.6 MB/s eta 0:00:01\r\u001b[K |██████████▉ | 81 kB 13.3 MB/s eta 0:00:01\r\u001b[K |████████████▏ | 92 kB 14.3 MB/s eta 0:00:01\r\u001b[K |█████████████▌ | 102 kB 14.0 MB/s eta 0:00:01\r\u001b[K |██████████████▉ | 112 kB 14.0 MB/s eta 0:00:01\r\u001b[K |████████████████▏ | 122 kB 14.0 MB/s eta 0:00:01\r\u001b[K |█████████████████▌ | 133 kB 14.0 MB/s eta 0:00:01\r\u001b[K |██████████████████▉ | 143 kB 14.0 MB/s eta 0:00:01\r\u001b[K |████████████████████▎ | 153 kB 14.0 MB/s eta 0:00:01\r\u001b[K |█████████████████████▋ | 163 kB 14.0 MB/s eta 0:00:01\r\u001b[K |███████████████████████ | 174 kB 14.0 MB/s eta 0:00:01\r\u001b[K |████████████████████████▎ | 184 kB 14.0 MB/s eta 0:00:01\r\u001b[K |█████████████████████████▋ | 194 kB 14.0 MB/s eta 0:00:01\r\u001b[K |███████████████████████████ | 204 kB 14.0 MB/s eta 0:00:01\r\u001b[K |████████████████████████████▎ | 215 kB 14.0 MB/s eta 0:00:01\r\u001b[K |█████████████████████████████▋ | 225 kB 14.0 MB/s eta 0:00:01\r\u001b[K |███████████████████████████████ | 235 kB 14.0 MB/s eta 0:00:01\r\u001b[K |████████████████████████████████| 243 kB 14.0 MB/s \n",
+ "\u001b[?25hRequirement already satisfied: absl-py>=0.9.0 in /usr/local/lib/python3.7/dist-packages (from distrax) (1.0.0)\n",
+ "Requirement already satisfied: tensorflow-probability>=0.15.0 in /usr/local/lib/python3.7/dist-packages (from distrax) (0.16.0)\n",
+ "Requirement already satisfied: jax>=0.1.55 in /usr/local/lib/python3.7/dist-packages (from distrax) (0.3.1)\n",
+ "Requirement already satisfied: chex>=0.0.7 in /usr/local/lib/python3.7/dist-packages (from distrax) (0.1.1)\n",
+ "Requirement already satisfied: jaxlib>=0.1.67 in /usr/local/lib/python3.7/dist-packages (from distrax) (0.3.0+cuda11.cudnn805)\n",
+ "Requirement already satisfied: numpy>=1.18.0 in /usr/local/lib/python3.7/dist-packages (from distrax) (1.21.5)\n",
+ "Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from absl-py>=0.9.0->distrax) (1.15.0)\n",
+ "Requirement already satisfied: toolz>=0.9.0 in /usr/local/lib/python3.7/dist-packages (from chex>=0.0.7->distrax) (0.11.2)\n",
+ "Requirement already satisfied: dm-tree>=0.1.5 in /usr/local/lib/python3.7/dist-packages (from chex>=0.0.7->distrax) (0.1.6)\n",
+ "Requirement already satisfied: opt-einsum in /usr/local/lib/python3.7/dist-packages (from jax>=0.1.55->distrax) (3.3.0)\n",
+ "Requirement already satisfied: scipy>=1.2.1 in /usr/local/lib/python3.7/dist-packages (from jax>=0.1.55->distrax) (1.4.1)\n",
+ "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from jax>=0.1.55->distrax) (3.10.0.2)\n",
+ "Requirement already satisfied: flatbuffers<3.0,>=1.12 in /usr/local/lib/python3.7/dist-packages (from jaxlib>=0.1.67->distrax) (2.0)\n",
+ "Requirement already satisfied: gast>=0.3.2 in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability>=0.15.0->distrax) (0.5.3)\n",
+ "Requirement already satisfied: decorator in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability>=0.15.0->distrax) (4.4.2)\n",
+ "Requirement already satisfied: cloudpickle>=1.3 in /usr/local/lib/python3.7/dist-packages (from tensorflow-probability>=0.15.0->distrax) (1.3.0)\n",
+ "Installing collected packages: distrax\n",
+ "Successfully installed distrax-0.1.1\n"
+ ]
+ }
]
},
{
"cell_type": "code",
- "execution_count": 1,
- "metadata": {},
- "outputs": [],
"source": [
- "import jax.numpy as jnp\n",
- "import numpy as np\n",
- "import matplotlib.pyplot as plt\n"
+ "\n",
+ "import tensorflow as tf\n",
+ "import tensorflow_probability as tfp\n"
+ ],
+ "metadata": {
+ "id": "ye9LqR2JE-bD"
+ },
+ "execution_count": 7,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "!git clone https://github.com/probml/JSL.git\n",
+ "#!pip install git+https://github.com/probml/jsl\n"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "asDC0nQvFXee",
+ "outputId": "d65cebdd-d399-48de-cf44-1dc13e2f6c0b"
+ },
+ "execution_count": 8,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Cloning into 'JSL'...\n",
+ "remote: Enumerating objects: 1464, done.\u001b[K\n",
+ "remote: Counting objects: 100% (1409/1409), done.\u001b[K\n",
+ "remote: Compressing objects: 100% (960/960), done.\u001b[K\n",
+ "remote: Total 1464 (delta 876), reused 925 (delta 429), pack-reused 55\u001b[K\n",
+ "Receiving objects: 100% (1464/1464), 3.01 MiB | 12.24 MiB/s, done.\n",
+ "Resolving deltas: 100% (895/895), done.\n"
+ ]
+ }
]
},
{
"cell_type": "code",
- "execution_count": 2,
+ "source": [
+ "%cd /content/JSL/\n",
+ "!pip install -e ."
+ ],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
- "height": 218
+ "height": 590
},
- "id": "_b8lNuou9RaT",
- "outputId": "7165d3db-0250-479b-83cc-77157beb6e56"
+ "id": "RHRJ6MA-I6c9",
+ "outputId": "2874c232-39e4-4c55-b04a-212a10bd82e0"
},
+ "execution_count": 9,
"outputs": [
{
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "/content/JSL\n",
+ "Obtaining file:///content/JSL\n",
+ "Requirement already satisfied: chex in /usr/local/lib/python3.7/dist-packages (from jsl==0.0.0) (0.1.1)\n",
+ "Collecting dataclasses\n",
+ " Downloading dataclasses-0.6-py3-none-any.whl (14 kB)\n",
+ "Requirement already satisfied: jaxlib in /usr/local/lib/python3.7/dist-packages (from jsl==0.0.0) (0.3.0+cuda11.cudnn805)\n",
+ "Requirement already satisfied: jax in /usr/local/lib/python3.7/dist-packages (from jsl==0.0.0) (0.3.1)\n",
+ "Requirement already satisfied: matplotlib in /usr/local/lib/python3.7/dist-packages (from jsl==0.0.0) (3.2.2)\n",
+ "Requirement already satisfied: tensorflow_probability in /usr/local/lib/python3.7/dist-packages (from jsl==0.0.0) (0.16.0)\n",
+ "Requirement already satisfied: dm-tree>=0.1.5 in /usr/local/lib/python3.7/dist-packages (from chex->jsl==0.0.0) (0.1.6)\n",
+ "Requirement already satisfied: numpy>=1.18.0 in /usr/local/lib/python3.7/dist-packages (from chex->jsl==0.0.0) (1.21.5)\n",
+ "Requirement already satisfied: toolz>=0.9.0 in /usr/local/lib/python3.7/dist-packages (from chex->jsl==0.0.0) (0.11.2)\n",
+ "Requirement already satisfied: absl-py>=0.9.0 in /usr/local/lib/python3.7/dist-packages (from chex->jsl==0.0.0) (1.0.0)\n",
+ "Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from absl-py>=0.9.0->chex->jsl==0.0.0) (1.15.0)\n",
+ "Requirement already satisfied: scipy>=1.2.1 in /usr/local/lib/python3.7/dist-packages (from jax->jsl==0.0.0) (1.4.1)\n",
+ "Requirement already satisfied: opt-einsum in /usr/local/lib/python3.7/dist-packages (from jax->jsl==0.0.0) (3.3.0)\n",
+ "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from jax->jsl==0.0.0) (3.10.0.2)\n",
+ "Requirement already satisfied: flatbuffers<3.0,>=1.12 in /usr/local/lib/python3.7/dist-packages (from jaxlib->jsl==0.0.0) (2.0)\n",
+ "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->jsl==0.0.0) (1.4.0)\n",
+ "Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->jsl==0.0.0) (3.0.7)\n",
+ "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.7/dist-packages (from matplotlib->jsl==0.0.0) (0.11.0)\n",
+ "Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->jsl==0.0.0) (2.8.2)\n",
+ "Requirement already satisfied: cloudpickle>=1.3 in /usr/local/lib/python3.7/dist-packages (from tensorflow_probability->jsl==0.0.0) (1.3.0)\n",
+ "Requirement already satisfied: decorator in /usr/local/lib/python3.7/dist-packages (from tensorflow_probability->jsl==0.0.0) (4.4.2)\n",
+ "Requirement already satisfied: gast>=0.3.2 in /usr/local/lib/python3.7/dist-packages (from tensorflow_probability->jsl==0.0.0) (0.5.3)\n",
+ "Installing collected packages: dataclasses, jsl\n",
+ " Running setup.py develop for jsl\n",
+ "Successfully installed dataclasses-0.6 jsl-0.0.0\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
"data": {
- "text/plain": [
- "'/Users/kpmurphy/github/JSL'"
- ]
+ "application/vnd.colab-display-data+json": {
+ "pip_warning": {
+ "packages": [
+ "dataclasses"
+ ]
+ }
+ }
},
- "execution_count": 2,
- "metadata": {},
- "output_type": "execute_result"
+ "metadata": {}
}
- ],
- "source": [
- "\n",
- "%pwd\n"
]
},
{
"cell_type": "code",
+ "source": [
+ "!pwd"
+ ],
+ "metadata": {
+ "id": "OmuXLXtHwRaH",
+ "outputId": "6478494f-fcdb-425e-fd51-0fca226b1c53",
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ }
+ },
"execution_count": 12,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "/content/JSL\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "!ls"
+ ],
"metadata": {
- "id": "CWEhPo9YJuut"
+ "id": "Sq2dul_2wd83",
+ "outputId": "6fc8c1c8-5505-47ea-b4b9-9050b30da961",
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ }
},
+ "execution_count": 17,
"outputs": [
{
+ "output_type": "stream",
"name": "stdout",
+ "text": [
+ "environment.yml jsl.egg-info\t LICENSE\tsetup.py\n",
+ "jsl\t\t JSL_notebook.ipynb README.md\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "%run /content/JSL/jsl/demos/kf_tracking.py\n"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 813
+ },
+ "id": "YhvXkCeiI4aX",
+ "outputId": "d6f7b479-b2b7-459f-efb2-2d2b455c4bb9"
+ },
+ "execution_count": 14,
+ "outputs": [
+ {
"output_type": "stream",
+ "name": "stdout",
"text": [
- "L2-filter: 37198.8789\n",
- "L2-smooth: 52081.6406\n",
- "{'kalman-tracking-truth':