From 72962655e5ec2310b702646957b1bb92959ebdcd Mon Sep 17 00:00:00 2001 From: Av Shrikumar Date: Thu, 12 Nov 2020 16:10:57 -0800 Subject: [PATCH] v0.5.9.0 --- .../TF_MoDISco_TAL_GATA.ipynb | 420 +++++++++--------- 1 file changed, 207 insertions(+), 213 deletions(-) diff --git a/examples/simulated_TAL_GATA_deeplearning/TF_MoDISco_TAL_GATA.ipynb b/examples/simulated_TAL_GATA_deeplearning/TF_MoDISco_TAL_GATA.ipynb index 34b1c3f..605f358 100644 --- a/examples/simulated_TAL_GATA_deeplearning/TF_MoDISco_TAL_GATA.ipynb +++ b/examples/simulated_TAL_GATA_deeplearning/TF_MoDISco_TAL_GATA.ipynb @@ -53,7 +53,7 @@ "cell_type": "code", "metadata": { "id": "CLiK1j6A8YrA", - "outputId": "f85e5783-7fcf-4004-dc29-064ba45ee06b", + "outputId": "b8092f0d-e73e-41b7-f938-6c173ec2d5a9", "colab": { "base_uri": "https://localhost:8080/" } @@ -65,48 +65,42 @@ "\n", "!pip install modisco" ], - "execution_count": 2, + "execution_count": 1, "outputs": [ { "output_type": "stream", "text": [ - "Collecting leidenalg\n", - "\u001b[?25l Downloading https://files.pythonhosted.org/packages/64/9f/6a4b9b9009bfaa418b6d1f23aea0783b1f7266d3418929838766a41e6c76/leidenalg-0.8.2-cp36-cp36m-manylinux2010_x86_64.whl (2.4MB)\n", - "\u001b[K |████████████████████████████████| 2.4MB 6.1MB/s \n", - "\u001b[?25hCollecting python-igraph>=0.8.0\n", - "\u001b[?25l Downloading https://files.pythonhosted.org/packages/20/6e/3ac2fc339051f652d4a01570d133e4d15321aaec929ffb5f49a67852f8d9/python_igraph-0.8.3-cp36-cp36m-manylinux2010_x86_64.whl (3.2MB)\n", - "\u001b[K |████████████████████████████████| 3.2MB 39.7MB/s \n", - "\u001b[?25hCollecting texttable>=1.6.2\n", - " Downloading https://files.pythonhosted.org/packages/06/f5/46201c428aebe0eecfa83df66bf3e6caa29659dbac5a56ddfd83cae0d4a4/texttable-1.6.3-py2.py3-none-any.whl\n", - "Installing collected packages: texttable, python-igraph, leidenalg\n", - "Successfully installed leidenalg-0.8.2 python-igraph-0.8.3 texttable-1.6.3\n", - "Looking in indexes: https://test.pypi.org/simple/\n", "Collecting modisco\n", - "\u001b[?25l Downloading https://test-files.pythonhosted.org/packages/dc/07/22e62915c2819253f43bd4b3280874f6fb724dcf5b8aa0508fbc81dae796/modisco-0.5.9.0.tar.gz (180kB)\n", - "\u001b[K |████████████████████████████████| 184kB 5.8MB/s \n", + "\u001b[?25l Downloading https://files.pythonhosted.org/packages/dc/07/22e62915c2819253f43bd4b3280874f6fb724dcf5b8aa0508fbc81dae796/modisco-0.5.9.0.tar.gz (180kB)\n", + "\u001b[K |████████████████████████████████| 184kB 5.6MB/s \n", "\u001b[?25hRequirement already satisfied: numpy>=1.9 in /usr/local/lib/python3.6/dist-packages (from modisco) (1.18.5)\n", "Requirement already satisfied: joblib>=0.11 in /usr/local/lib/python3.6/dist-packages (from modisco) (0.17.0)\n", "Requirement already satisfied: scikit-learn>=0.19 in /usr/local/lib/python3.6/dist-packages (from modisco) (0.22.2.post1)\n", "Requirement already satisfied: h5py>=2.5 in /usr/local/lib/python3.6/dist-packages (from modisco) (2.10.0)\n", - "Requirement already satisfied: leidenalg>=0.7.0 in /usr/local/lib/python3.6/dist-packages (from modisco) (0.8.2)\n", - "Requirement already satisfied: tqdm>=4.38.0 in /usr/local/lib/python3.6/dist-packages (from modisco) (4.41.1)\n", + "Collecting leidenalg>=0.7.0\n", + "\u001b[?25l Downloading https://files.pythonhosted.org/packages/64/9f/6a4b9b9009bfaa418b6d1f23aea0783b1f7266d3418929838766a41e6c76/leidenalg-0.8.2-cp36-cp36m-manylinux2010_x86_64.whl (2.4MB)\n", + "\u001b[K |████████████████████████████████| 2.4MB 15.1MB/s \n", + "\u001b[?25hRequirement already satisfied: tqdm>=4.38.0 in /usr/local/lib/python3.6/dist-packages (from modisco) (4.41.1)\n", "Requirement already satisfied: psutil>=5.4.8 in /usr/local/lib/python3.6/dist-packages (from modisco) (5.4.8)\n", "Requirement already satisfied: matplotlib>=2.2.5 in /usr/local/lib/python3.6/dist-packages (from modisco) (3.2.2)\n", "Requirement already satisfied: scipy>=0.17.0 in /usr/local/lib/python3.6/dist-packages (from scikit-learn>=0.19->modisco) (1.4.1)\n", "Requirement already satisfied: six in /usr/local/lib/python3.6/dist-packages (from h5py>=2.5->modisco) (1.15.0)\n", - "Requirement already satisfied: python-igraph>=0.8.0 in /usr/local/lib/python3.6/dist-packages (from leidenalg>=0.7.0->modisco) (0.8.3)\n", + "Collecting python-igraph>=0.8.0\n", + "\u001b[?25l Downloading https://files.pythonhosted.org/packages/20/6e/3ac2fc339051f652d4a01570d133e4d15321aaec929ffb5f49a67852f8d9/python_igraph-0.8.3-cp36-cp36m-manylinux2010_x86_64.whl (3.2MB)\n", + "\u001b[K |████████████████████████████████| 3.2MB 21.8MB/s \n", + "\u001b[?25hRequirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib>=2.2.5->modisco) (2.4.7)\n", "Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib>=2.2.5->modisco) (2.8.1)\n", "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib>=2.2.5->modisco) (1.3.1)\n", - "Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib>=2.2.5->modisco) (2.4.7)\n", "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.6/dist-packages (from matplotlib>=2.2.5->modisco) (0.10.0)\n", - "Requirement already satisfied: texttable>=1.6.2 in /usr/local/lib/python3.6/dist-packages (from python-igraph>=0.8.0->leidenalg>=0.7.0->modisco) (1.6.3)\n", + "Collecting texttable>=1.6.2\n", + " Downloading https://files.pythonhosted.org/packages/06/f5/46201c428aebe0eecfa83df66bf3e6caa29659dbac5a56ddfd83cae0d4a4/texttable-1.6.3-py2.py3-none-any.whl\n", "Building wheels for collected packages: modisco\n", " Building wheel for modisco (setup.py) ... \u001b[?25l\u001b[?25hdone\n", - " Created wheel for modisco: filename=modisco-0.5.9.0-cp36-none-any.whl size=193923 sha256=fd05785164ec05bdfbdfdc2f868e7cd6690a036af05c0fd31cd691d29bc99469\n", - " Stored in directory: /root/.cache/pip/wheels/e9/14/79/cef886fbf9014f9ef16641dfefbd42aa6ed528106662add4b9\n", + " Created wheel for modisco: filename=modisco-0.5.9.0-cp36-none-any.whl size=193923 sha256=3b48828d9324b3f1980d4187528c34a490936ae4887acf1e8a15a2ed7a5e99e2\n", + " Stored in directory: /root/.cache/pip/wheels/7e/be/b2/9f7fab971460aaa9bcb2a7b50930d6f976eb4cd8be4632416e\n", "Successfully built modisco\n", - "Installing collected packages: modisco\n", - "Successfully installed modisco-0.5.9.0\n" + "Installing collected packages: texttable, python-igraph, leidenalg, modisco\n", + "Successfully installed leidenalg-0.8.2 modisco-0.5.9.0 python-igraph-0.8.3 texttable-1.6.3\n" ], "name": "stdout" } @@ -129,14 +123,14 @@ " except ImportError:\n", " from imp import reload # Python 3.0 - 3.3" ], - "execution_count": 3, + "execution_count": 2, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "uVOSJpXV8aIG", - "outputId": "c5f494f5-305a-4612-8898-9629a7fb4724", + "outputId": "f5de8bbd-7fc5-4f4c-f0a8-b23eb94e1bd0", "colab": { "base_uri": "https://localhost:8080/" } @@ -147,7 +141,7 @@ "import sys\n", "import os" ], - "execution_count": 4, + "execution_count": 3, "outputs": [ { "output_type": "stream", @@ -188,7 +182,7 @@ "cell_type": "code", "metadata": { "id": "bZ8jaBDZ8fmm", - "outputId": "6295280d-e54f-4bf3-f5dc-6de5e0189410", + "outputId": "a0501430-ed20-4bf5-ade3-3b3ee38a4140", "colab": { "base_uri": "https://localhost:8080/" } @@ -200,15 +194,15 @@ "![[ -f sequences.simdata.gz ]] || wget https://raw.githubusercontent.com/AvantiShri/model_storage/db919b12f750e5844402153233249bb3d24e9e9a/deeplift/genomics/sequences.simdata.gz\n", "![[ -f test.txt.gz ]] || wget https://raw.githubusercontent.com/AvantiShri/model_storage/9aadb769735c60eb90f7d3d896632ac749a1bdd2/deeplift/genomics/test.txt.gz" ], - "execution_count": 5, + "execution_count": 4, "outputs": [ { "output_type": "stream", "text": [ " % Total % Received % Xferd Average Speed Time Time Time Current\n", " Dload Upload Total Spent Left Speed\n", - "100 21.9M 100 21.9M 0 0 8084k 0 0:00:02 0:00:02 --:--:-- 8081k\n", - "--2020-11-12 23:45:16-- https://raw.githubusercontent.com/AvantiShri/model_storage/db919b12f750e5844402153233249bb3d24e9e9a/deeplift/genomics/sequences.simdata.gz\n", + "100 21.9M 100 21.9M 0 0 12.4M 0 0:00:01 0:00:01 --:--:-- 12.4M\n", + "--2020-11-13 00:07:37-- https://raw.githubusercontent.com/AvantiShri/model_storage/db919b12f750e5844402153233249bb3d24e9e9a/deeplift/genomics/sequences.simdata.gz\n", "Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.0.133, 151.101.64.133, 151.101.128.133, ...\n", "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.0.133|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", @@ -217,9 +211,9 @@ "\n", "sequences.simdata.g 100%[===================>] 614.75K --.-KB/s in 0.06s \n", "\n", - "2020-11-12 23:45:17 (10.9 MB/s) - ‘sequences.simdata.gz’ saved [629502/629502]\n", + "2020-11-13 00:07:37 (10.9 MB/s) - ‘sequences.simdata.gz’ saved [629502/629502]\n", "\n", - "--2020-11-12 23:45:17-- https://raw.githubusercontent.com/AvantiShri/model_storage/9aadb769735c60eb90f7d3d896632ac749a1bdd2/deeplift/genomics/test.txt.gz\n", + "--2020-11-13 00:07:37-- https://raw.githubusercontent.com/AvantiShri/model_storage/9aadb769735c60eb90f7d3d896632ac749a1bdd2/deeplift/genomics/test.txt.gz\n", "Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.0.133, 151.101.64.133, 151.101.128.133, ...\n", "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.0.133|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", @@ -228,7 +222,7 @@ "\n", "test.txt.gz 100%[===================>] 2.23K --.-KB/s in 0s \n", "\n", - "2020-11-12 23:45:18 (41.0 MB/s) - ‘test.txt.gz’ saved [2287/2287]\n", + "2020-11-13 00:07:37 (37.2 MB/s) - ‘test.txt.gz’ saved [2287/2287]\n", "\n" ], "name": "stdout" @@ -297,7 +291,7 @@ " if seq_id in ids_to_load:\n", " fasta_sequences.append(seq_fasta.decode(\"utf-8\"))" ], - "execution_count": 6, + "execution_count": 5, "outputs": [] }, { @@ -335,7 +329,7 @@ "\n", "onehot_data = [one_hot_encode_along_channel_axis(seq) for seq in fasta_sequences][:n]" ], - "execution_count": 7, + "execution_count": 6, "outputs": [] }, { @@ -351,7 +345,7 @@ "cell_type": "code", "metadata": { "id": "Ky6nlCFs-NcP", - "outputId": "93020dd5-914d-4000-a1c2-648be56ed247", + "outputId": "7731cef8-6ef2-402f-816e-b87aab80c4ba", "colab": { "base_uri": "https://localhost:8080/", "height": 411 @@ -365,7 +359,7 @@ "viz_sequence.plot_weights(task_to_hyp_scores['task0'][0], subticks_frequency=20)\n", "viz_sequence.plot_weights(onehot_data[0], subticks_frequency=20)" ], - "execution_count": 8, + "execution_count": 7, "outputs": [ { "output_type": "display_data", @@ -431,7 +425,7 @@ "metadata": { "id": "--8gp-i2-TOm", "scrolled": false, - "outputId": "0b184931-a376-4eb5-cd48-d698247bf075", + "outputId": "c4a9a61c-e129-4335-cb32-fb18b7f8000d", "colab": { "base_uri": "https://localhost:8080/", "height": 1000 @@ -470,12 +464,12 @@ " one_hot=onehot_data,\n", " null_per_pos_scores = null_per_pos_scores)" ], - "execution_count": 9, + "execution_count": 8, "outputs": [ { "output_type": "stream", "text": [ - "MEMORY 0.426233856\n", + "MEMORY 0.426569728\n", "On task task0\n", "Computing windowed sums on original\n", "Generating null dist\n", @@ -490,7 +484,7 @@ { "output_type": "display_data", "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -518,7 +512,7 @@ { "output_type": "display_data", "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAD4CAYAAAAAczaOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAdLElEQVR4nO3dfZRc9X3f8fdnZ1daCYEe1wJLaqQU2S524ppuMY5TH2NiA46P5dbEB5LYqkOrpsEOfmgdcHNCTnJ8cBIfY7t16VGNbDglYA4hRkkVYxUrdeNjBIvBPAgDW560W4QWPQHSPs3Mt3/cu6uRNPs4c+9d7Xxe5+yZmd+9M/ObRXzmt9/f796riMDMzFpDW9EdMDOz/Dj0zcxaiEPfzKyFOPTNzFqIQ9/MrIW0F92ByaxatSrWr19fdDfMzE4rDz300CsR0VVv25wO/fXr19PT01N0N8zMTiuSXphom8s7ZmYtxKFvZtZCHPpmZi1kytCXtE3SfkmPn9T+aUk/l/SEpD+vab9OUq+kpyRdUtN+adrWK+na5n4MMzObjulM5H4H+C/ArWMNki4CNgFvj4hhSW9I288DrgDeCrwR+F+S3pQ+7ZvA+4E+4EFJ2yNiT7M+iJmZTW3K0I+IH0laf1Lzvwe+HBHD6T770/ZNwB1p+3OSeoEL0m29EfEsgKQ70n0d+mZmOZptTf9NwL+QtFvS/5b0z9P2NcDemv360raJ2k8haYukHkk9AwMDs+yemZnVM9vQbwdWABcC/xG4U5Ka0aGI2BoR3RHR3dVV99gCMzObpdkenNUH3B3JyfgfkFQFVgH9wLqa/dambUzSbmZmOZlt6H8PuAjYlU7ULgBeAbYDfynpqyQTuRuBBwABGyVtIAn7K4DfbLDvp59dNxy/f9F1xfXDzFrWlKEv6XbgvcAqSX3A9cA2YFu6jHME2JyO+p+QdCfJBG0ZuDoiKunrfAq4FygB2yLiiQw+j5mZTWI6q3eunGDTb0+w/5eAL9Vp3wHsmFHvzMysqXxErplZC3Hom5m1EIe+mVkLceibmbUQh76ZWQtx6JuZtRCHvplZC3Hom5m1EIe+mVkLceibmbUQh76ZWQtx6JuZtRCHvplZC3Hom5m1kNleRGV++MxnktuvfS3Tt9n3s31EJVj2WrDozAavKplTn81sfmrt0H/kkczf4qvfe5zXPno3VAOAzjPho3/YzrkXzfIFc+izmc1fLu9k7B3P3ALVYM17Rtj40WGGXoPd9x8tultm1qKmDH1J2yTtTy+NePK2z0sKSavSx5L0DUm9kh6VdH7NvpslPZP+bG7ux5i7quXkdvm5FdZfMnJCm5lZ3qYz0v8OcOnJjZLWAR8AXqxpvozkYugbgS3ATem+K0iurftO4ALgeknLG+n46aJaTmr4be2gNkBBctVgM7P8TRn6EfEj4GCdTTcCXwCipm0TcGsk7geWSToHuATYGREHI+IQsJM6XyTz0diovq0jvW2HqDQ4mWtmNkuzqulL2gT0R8TPTtq0Bthb87gvbZuovd5rb5HUI6lnYGBgNt2bU8ZCX+3Jd6NKUPVI38wKMuPQl7QY+CLwR83vDkTE1ojojojurq6uLN4iV7XlHYC2Ei7vmFlhZjPS/8fABuBnkp4H1gI/lXQ20A+sq9l3bdo2Ufu8F6PJ7Vjoq+SavpkVZ8ahHxGPRcQbImJ9RKwnKdWcHxH7gO3AJ9JVPBcCRyLiJeBe4AOSlqcTuB9I2+a98Zp+bXmn7Jq+mRVjOks2bwd+ArxZUp+kqybZfQfwLNAL/Hfg9wAi4iDwp8CD6c+fpG3znss7ZjaXTHlEbkRcOcX29TX3A7h6gv22Adtm2L/T3vHVO+lIvz08kWtmhfERuRkbX71TSm490jezIjn0MzZe3knX6SdLNl3TN7NiOPQzVh1fvXN8ItcjfTMrikM/Y2MBf3wi1zV9MyuOQz9j1dETV++o3SN9MyuOQz9j9SdyXdM3s2I49DNWLSf1fKU5nxycVWyfzKx1OfQzVi1rfOUOJDV9l3fMrCgO/YxVy8fPsAk+y6aZFcuhn7EoH5/EhbElm67pm1kxHPoZq47qhND3EblmViSHfsbGJnLH+Nw7ZlYkh37GqmWP9M1s7nDoZ6xa5oTVO67pm1mRHPoZO6W843X6ZlYgh37GqmWNH40LXqdvZsVy6GesOlqnvFMVyfVmzMzyNZ3LJW6TtF/S4zVtfyHp55IelfTXkpbVbLtOUq+kpyRdUtN+adrWK+na5n+Uuenk8k5bOuqvjlYL6pGZtbLpjPS/A1x6UttO4G0R8cvA08B1AJLOA64A3po+579KKkkqAd8ELgPOA65M9533oqJTDs4CqIy6xmNm+Zsy9CPiR8DBk9p+EBFj05H3A2vT+5uAOyJiOCKeI7lA+gXpT29EPBsRI8Ad6b7zXnWUk5ZsJqP+yohD38zy14ya/u8Af5feXwPsrdnWl7ZN1D7vnXpwVtru8o6ZFaCh0Jf0n4AycFtzugOStkjqkdQzMDDQrJctTL2Ds8DlHTMrxqxDX9K/Bj4E/FYcX4rSD6yr2W1t2jZR+ykiYmtEdEdEd1dX12y7N2dUy6ATVu8kvyqP9M2sCLMKfUmXAl8APhwRx2o2bQeukLRQ0gZgI/AA8CCwUdIGSQtIJnu3N9b100PUOTgLPNI3s2K0T7WDpNuB9wKrJPUB15Os1lkI7FRySaj7I+J3I+IJSXcCe0jKPldHJIciSfoUcC9QArZFxBMZfJ45pVqpEtX65R2P9M2sCFOGfkRcWaf55kn2/xLwpTrtO4AdM+rdaa4ynIzm6y7Z9OodMyuAj8jNUHk4WdV6YnknXbLp8o6ZFcChn6Gx0fwJ5R0v2TSzAjn0MzRe3unwRK6ZzQ0O/QwdL+8cb/NErpkVyaGfobGRvk6YyHVN38yK49DPUL2J3Dav3jGzAjn0M1RvItfn3jGzIjn0M1Rvnb7PvWNmRXLoZ2iydfoe6ZtZERz6GZr0iFyP9M2sAA79DI2N9GvPsumJXDMrkkM/Q8cnck89OMvlHTMrgkM/Q3Unctu9Tt/MiuPQz1C9I3I90jezIjn0M3R8pO9z75jZ3ODQz1DdkX76G/dI38yK4NDP0PhEbu01cpWs1ffqHTMrgkM/Q5XhCmqL8dH9mLZ2l3fMrBhThr6kbZL2S3q8pm2FpJ2Snklvl6ftkvQNSb2SHpV0fs1zNqf7PyNpczYfZ24pD5dPOMPmGJVc3jGzYkxnpP8d4NKT2q4F7ouIjcB96WOAy4CN6c8W4CZIviRILqj+TuAC4PqxL4r5rDJcOaGeP0al8EjfzAoxZehHxI+Agyc1bwJuSe/fAnykpv3WSNwPLJN0DnAJsDMiDkbEIWAnp36RzDvl4fIJK3fGtHmkb2YFmW1Nf3VEvJTe3wesTu+vAfbW7NeXtk3UfgpJWyT1SOoZGBiYZffmhupIdYKRvk/DYGbFaHgiNyICOHU4O/vX2xoR3RHR3dXV1ayXLUR5uHzCyp0xHumbWVFmG/ovp2Ub0tv9aXs/sK5mv7Vp20Tt81pluDJ+KuVaandN38yKMdvQ3w6MrcDZDNxT0/6JdBXPhcCRtAx0L/ABScvTCdwPpG3zWlLTP7XdI30zK0qdSDqRpNuB9wKrJPWRrML5MnCnpKuAF4CPpbvvAD4I9ALHgE8CRMRBSX8KPJju9ycRcfLk8LxTGa7ULe+o5HX6ZlaMKUM/Iq6cYNPFdfYN4OoJXmcbsG1GvTvNVUYqdVfveJ2+mRXFR+RmaOLyjk/DYGbFcOhnaOKDs1zeMbNiOPQz5IOzzGyucehnKKnpn9ruJZtmVhSHfoaS1TueyDWzucOhn6GJzrLZ5pq+mRXEoZ+hSSdyvXrHzArg0M/QxBO54fKOmRXCoZ+RiJh4ItflHTMriEM/I9VyFQKfe8fM5hSHfkYqw2MXRa+/escjfTMrgkM/I+XhMpAE/Mnk0zCYWUEc+hk5PtI/dVtbe1LeSc5PZ2aWH4d+RsZG8hOdZRMgKg59M8uXQz8jY+WdiSZywXV9M8ufQz8j4+Wduks2kxG+V/CYWd4c+hk5PtKfuLzjkb6Z5a2h0Jf0WUlPSHpc0u2SOiVtkLRbUq+k70pakO67MH3cm25f34wPMFdNNtIfL+94BY+Z5WzWoS9pDfD7QHdEvA0oAVcAfwbcGBHnAoeAq9KnXAUcSttvTPebt8YCXfWukZt+Ebi8Y2Z5a7S80w4sktQOLAZeAt4H3JVuvwX4SHp/U/qYdPvFktTg+89Zk5V32tKavss7Zpa3WYd+RPQDXwFeJAn7I8BDwOGIKKe79QFr0vtrgL3pc8vp/itPfl1JWyT1SOoZGBiYbfcKN/lEbnLrkb6Z5a2R8s5yktH7BuCNwBnApY12KCK2RkR3RHR3dXU1+nKFmWzJpidyzawojZR3fg14LiIGImIUuBt4N7AsLfcArAX60/v9wDqAdPtS4EAD7z+nHR/p179GLngi18zy10jovwhcKGlxWpu/GNgD7AIuT/fZDNyT3t+ePibd/sOYx+chOH5E7qnbvE7fzIrSSE1/N8mE7E+Bx9LX2gr8AfA5Sb0kNfub06fcDKxM2z8HXNtAv+e88fLOBOfeAZd3zCx/dcah0xcR1wPXn9T8LHBBnX2HgN9o5P1OJ5OVdzyRa2ZF8RG5GRk/tXLdg7O8ZNPMiuHQz8j4SL/u+fSTW4/0zSxvDv2MVEYqtHW0oTq/YXn1jpkVxKGfkfJwmfaF9adMPJFrZkVx6GekMlyhtLBObQcv2TSz4jj0M1IeLlNaUD/0fREVMyuKQz8j1ZHqhOUdT+SaWVEc+hkpD5cnKe8ktx7pm1neHPoZqQxXJp7IHVun79U7ZpYzh35GJh3p+yIqZlYQh35GKsMVT+Sa2Zzj0M9IZWTi8o4ncs2sKA79jExa3hGoJI/0zSx3Dv2MTDaRC1DqKHki18xy59DPyGQjfYDSgpLLO2aWu4bOp28T2HUDlSMjlA4emnCXto42l3fMLHce6WekMgqlOlfNGlPq8EjfzPLXUOhLWibpLkk/l/SkpHdJWiFpp6Rn0tvl6b6S9A1JvZIelXR+cz7C3FQehfZJQr+to82hb2a5a3Sk/3Xg+xHxFuDtwJMk1769LyI2Avdx/Fq4lwEb058twE0NvvecVhmF0oKJt5c6Si7vmFnuZh36kpYC7yG98HlEjETEYWATcEu62y3AR9L7m4BbI3E/sEzSObPu+Rw3nZG+V++YWd4aGelvAAaAb0t6WNK3JJ0BrI6Il9J99gGr0/trgL01z+9L204gaYukHkk9AwMDDXSvOFENqmUoTTJN7tU7ZlaERkK/HTgfuCki3gEc5XgpB4CICCBm8qIRsTUiuiOiu6urq4HuFaeSXBOd0gJNuI/LO2ZWhEZCvw/oi4jd6eO7SL4EXh4r26S3+9Pt/cC6muevTdvmncpocuuJXDOba2Yd+hGxD9gr6c1p08XAHmA7sDlt2wzck97fDnwiXcVzIXCkpgw0r5TT0J9qyaZH+maWt0YPzvo0cJukBcCzwCdJvkjulHQV8ALwsXTfHcAHgV7gWLrvvFQ70p8o1j2Ra2ZFaCj0I+IRoLvOpovr7BvA1Y283+nigWcOAUt4/sjrTLQ8qbSgxOjR0Ty7ZWbmI3KzMHosmcBtXzzxHLbLO2ZWBId+Bspp6HecMXHotx1+hurhl2HXDXl1y8zMoZ+FsZF+x+KJ9ym1i0p5RqtZzcwa5tDPQPno1OWdtnaolvPqkZlZwqGfgWnV9EvHD+IyM8uLQz8D5WOirSMmXaff1uHQN7P8OfQzMHoMOiYZ5UMy0q968Y6Z5cyhn4HRY6J9kpU7kNT0PdI3s7w59DNQPiY6Fk2+T8kTuWZWAId+BkaPeqRvZnOTQz8D5WOaVk0/qsm5983M8uLQz8DoMU26XBOg1JEs6/Ro38zy5NBvsqgG5cGpV++0lZJbr+Axszw59Jts+NVhiGmUd9Lzm3qkb2Z5cug32eChQWDyo3EhmcgFr+Axs3w59Jts6PAQAB1nTL6fR/pmVgSHfpMNHUpCf8qJXIe+mRWg4dCXVJL0sKS/TR9vkLRbUq+k76aXUkTSwvRxb7p9faPvPReNlXemnMh1ecfMCtCMkf41wJM1j/8MuDEizgUOAVel7VcBh9L2G9P95p2x8s70R/pep29m+Wko9CWtBX4d+Fb6WMD7gLvSXW4BPpLe35Q+Jt1+cbr/vDJW3pl6yWby0b1k08zy1OhI/2vAF4Bq+nglcDgixooWfcCa9P4aYC9Auv1Iuv8JJG2R1COpZ2BgoMHu5W/w0CBqC0qdk+/nmr6ZFWHWoS/pQ8D+iHioif0hIrZGRHdEdHd1dTXzpXMxdHiI9sXBVH/DtDn0zawA7Q08993AhyV9EOgEzgK+DiyT1J6O5tcC/en+/cA6oE9SO7AUONDA+89JQ4eGaJ/iDJtwfKTviVwzy9OsR/oRcV1ErI2I9cAVwA8j4reAXcDl6W6bgXvS+9vTx6TbfxgR824Wc+jQEB1TnGETXN4xs2JksU7/D4DPSeolqdnfnLbfDKxM2z8HXJvBexdu6PDQlJO44CWbZlaMRso74yLi74G/T+8/C1xQZ58h4Dea8X5z2eChQdrPnMZIPz3hWsWrd8wsRz4it8mGDs1spF8ZzbhDZmY1HPpNFBHjq3emUmofW6c/76Y1zGwOc+g3UXmwTGWkQsfiqff1RK6ZFcGh30Tjp1WexuodT+SaWREc+k00flrlaZV3kluP9M0sTw79JpruaZXBl0s0s2I49JtouqdVhpqRvlfvmFmOHPpNNN3TKgOUOpJbr9M3szw59Jvo+GmVp953vLzjmr6Z5cih30TTvSg6wO4XDqL24PmXBrPulpnZOId+Ew0dHmLBkgXjo/ipdC4Phg7Ou+vImNkc5tBvoqFDQ3Qun+LqKTUWrawyeMD/CcwsP06cJho6NMSi5dM4mX6qc2UweMAjfTPLj0O/iYYOD9G5bGYj/ZEjbZSHPJtrZvlw6DfLrhsY7HuRzsqL035K58rk0sJH9h7JqldmZidw6DfR0GvBoiXTL9csWpms8jnygkPfzPLh0G+ioddh4ZLp7z820j/8wuGMemRmdqJZh76kdZJ2Sdoj6QlJ16TtKyTtlPRMers8bZekb0jqlfSopPOb9SHmgko5GBmERWdOf6TfuTxA4ZG+meWmkZF+Gfh8RJwHXAhcLek8kmvf3hcRG4H7OH4t3MuAjenPFuCmBt57zhl6PbntnMFIv60dFi5z6JtZfmYd+hHxUkT8NL3/GvAksAbYBNyS7nYL8JH0/ibg1kjcDyyTdM6sez7HDL2W3M4k9CFZwXP4kUdh1w3Jj5lZhppS05e0HngHsBtYHREvpZv2AavT+2uAvTVP60vb5oV/eOBVAPrjtRk9r3NlcPhlXzLRzPLRcOhLWgL8FfCZiHi1dltEBDCjRJO0RVKPpJ6BgYFGu5ebI8+1oVJw1i/M7LSZi1ZWeXXA18o1s3w0FPqSOkgC/7aIuDttfnmsbJPe7k/b+4F1NU9fm7adICK2RkR3RHR3dXU10r1cHXmuxJI1VUoLZva8RSuDqMJrr2TTLzOzWo2s3hFwM/BkRHy1ZtN2YHN6fzNwT037J9JVPBcCR2rKQKe1qAavPl9i6YaZnxx/fNmmSzxmloP2Bp77buDjwGOSHknbvgh8GbhT0lXAC8DH0m07gA8CvcAx4JMNvPec8spTr1AeFEt/ceahP36AlkPfzHIw69CPiH8AJlqUfnGd/QO4erbvN5f1706qVEs3VGf83M4VYyP9pnbJzKwuH5HbBP0P9NO+KDjj7JmHfmkhLF4Gh/d5pG9m2XPoN0H/7n7OWl9Bs/xtLlstl3fMLBcO/QaNDo7y8qMvz2oSd8zS1a7pm1k+HPoN2vfwPqrl6qzq+WOWrhZH9kMy7WFmlp1GVu/YrhvovysZ4Tcy0l+2WpRH4OghmOFZHMzMZsQj/Qb85NkD/KxniM4VVRYum/0ofdnqZBGUSzxmljWHfoOOPFfirAZG+QBLz05uvWzTzLLm0G/AyGticKCtodIOeKRvZvlx6Ddg3wPJlMiKNzcW+g/vP0jniio//t4oxw4ca0bXzMzqcujPUmW0wvP3LmDZxnJDK3fG/NK/HWLwgPjuv/wu5eFyE3poZnYqh/4sPfaXjzF0sI0Nl4005fWWb6zwtk8O8eL/eZHtV2338k0zy4SXbM7QjTufJqrB0T/axZK1FVb9UmOlnVrnvLPMqkqJXdse4+wle/iV//aHTXttMzPwSH9Wyj/pp/riq2y4bARN/zro09L+rsOs+uUyu24tM3hwsLkvbmYtz6E/QxHB8B170DlLWN3d/Nq7BBv/1TDlIfjxn/+46a9vZq3NoT9Dozufo/rUARZe/hbaStm8x5lrq5x9QZnd39jN6/tez+ZNzKwlOfRnoPf7vQzfeD8r/kmZX33rrkzf69wPD1MervCff/dvuHHn05m+l5m1Dk/kTsONO5+m8vQBjv6HH3LmG6v8098bpC3j39zi1UHHJb/IyP/sZcHlbxkP/ssPDbJu+aJs39zM5i2P9KcQEZy742ZGr/s+nUtGOP+aQdpzytx3XfQzRIXSH/811ZePjrfvPTTIjTuf9l8AZjZjuY/0JV0KfB0oAd+KiC/n3Yfp+OoPnqKy5xWGv/0olUcXs6iryvnXHGvoxGoz1bkieNvvDLHn1k4q/+7v6Lz6nxHBtFcM1X4pfPb9b8qol2Z2Osk19CWVgG8C7wf6gAclbY+IPXn2Y0xUg2q5yoHH93Pw/x7kezueotr3GtUXjlB54Qi8PoqWd/KW3xxi7XtGMy/p1HPOBWWWbjjKT257A0N/cT/f6/xVVi8+xMi9z9K29ky+svdVdNZCtLgd2tvQBN8IM/2rYDpfEhN9qWTxXnmb6DNk3deZflHPpp9ZDwY82JjblOeRn5LeBfxxRFySPr4OICJuqLd/d3d39PT0zPr9brjiTka2PwPAgtLxStZIpQrlKptHbwbgFj45vq19cbBkTYUlb6xy1j+qcvaFo7QvnHUXmiaqsHdXB0fvOcC+oTcwWu2ov2NHG5TaJr5kvVlBTvl/MMPXrG0/HV35N1ey/r3rZ/18SQ9FRHfdbTmH/uXApRHxb9LHHwfeGRGfqtlnC7Alffhm4KncOpi9VcArRXciJ/6s85M/6+nhFyKiq96GObd6JyK2AluL7kcWJPVM9O073/izzk/+rKe/vP8G6gfW1Txem7aZmVkO8g79B4GNkjZIWgBcAWzPuQ9mZi0r1/JORJQlfQq4l2TJ5raIeCLPPhRsXpatJuDPOj/5s57mcp3INTOzYp3e65rMzGxGHPpmZi3EoZ8TSZdKekpSr6Rri+5PViStk7RL0h5JT0i6pug+ZUlSSdLDkv626L5kTdIySXdJ+rmkJ9ODLecdSZ9N/+0+Lul2SZ1F96mZHPo5qDn9xGXAecCVks4rtleZKQOfj4jzgAuBq+fxZwW4Bniy6E7k5OvA9yPiLcDbmYefW9Ia4PeB7oh4G8mCkyuK7VVzOfTzcQHQGxHPRsQIcAewqeA+ZSIiXoqIn6b3XyMJhjXF9iobktYCvw58q+i+ZE3SUuA9wM0AETESEYeL7VVm2oFFktqBxcD/K7g/TeXQz8caYG/N4z7maRDWkrQeeAewu9ieZOZrwBeA5pxIZm7bAAwA307LWd+SdEbRnWq2iOgHvgK8CLwEHImIHxTbq+Zy6FsmJC0B/gr4TES8WnR/mk3Sh4D9EfFQ0X3JSTtwPnBTRLwDOArMu7kpSctJ/grfALwROEPSbxfbq+Zy6OejpU4/IamDJPBvi4i7i+5PRt4NfFjS8yTluvdJ+h/FdilTfUBfRIz91XYXyZfAfPNrwHMRMRARo8DdwK8U3Kemcujno2VOP6HkhP43A09GxFeL7k9WIuK6iFgbEetJ/nv+MCLm1YiwVkTsA/ZKenPadDFQyHUwMvYicKGkxem/5YuZZxPWc+4sm/NRi51+4t3Ax4HHJD2Stn0xInYU2Cdrjk8Dt6UDl2eh5kIU80RE7JZ0F/BTkpVoDzPPTsfg0zCYmbUQl3fMzFqIQ9/MrIU49M3MWohD38yshTj0zcxaiEPfzKyFOPTNzFrI/we6hnfPjgtL3QAAAABJRU5ErkJggg==\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -546,7 +540,7 @@ { "output_type": "display_data", "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -562,12 +556,12 @@ "Got 166 coords\n", "After resolving overlaps, got 275 seqlets\n", "Across all tasks, the weakest transformed threshold used was: 0.8401150537634409\n", - "MEMORY 0.430112768\n", + "MEMORY 0.430669824\n", "275 identified in total\n", "2 activity patterns with support >= 100 out of 26 possible patterns\n", "Metacluster sizes: [115, 104]\n", "Idx to activities: {0: '1,0,1', 1: '1,1,0'}\n", - "MEMORY 0.430112768\n", + "MEMORY 0.430669824\n", "On metacluster 1\n", "Metacluster size 104\n", "Relevant tasks: ('task0', 'task1')\n", @@ -575,49 +569,49 @@ "TfModiscoSeqletsToPatternsFactory: seed=1234\n", "(Round 1) num seqlets: 104\n", "(Round 1) Computing coarse affmat\n", - "MEMORY 0.4306944\n", + "MEMORY 0.431722496\n", "Beginning embedding computation\n", "Computing embeddings\n", "MAKING A SESSION\n", - "Finished embedding computation in 0.45 s\n", + "Finished embedding computation in 0.47 s\n", "Starting affinity matrix computations\n", - "Normalization computed in 0.0 s\n", + "Normalization computed in 0.01 s\n", "Cosine similarity mat computed in 0.01 s\n", - "Normalization computed in 0.0 s\n", + "Normalization computed in 0.01 s\n", "Cosine similarity mat computed in 0.01 s\n", - "Finished affinity matrix computations in 0.02 s\n", + "Finished affinity matrix computations in 0.03 s\n", "(Round 1) Compute nearest neighbors from coarse affmat\n", - "MEMORY 0.452386816\n", + "MEMORY 0.451944448\n", "Computed nearest neighbors in 0.01 s\n", - "MEMORY 0.452386816\n", + "MEMORY 0.451944448\n", "(Round 1) Computing affinity matrix on nearest neighbors\n", - "MEMORY 0.452386816\n", + "MEMORY 0.451944448\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.452386816\n", + "MEMORY 0.451944448\n", "Parallel runs completed\n", - "MEMORY 0.457510912\n", - "Job completed in: 1.51 s\n", - "MEMORY 0.457519104\n", + "MEMORY 0.457474048\n", + "Job completed in: 1.62 s\n", + "MEMORY 0.457474048\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.457519104\n", + "MEMORY 0.457474048\n", "Parallel runs completed\n", - "MEMORY 0.457494528\n", - "Job completed in: 1.62 s\n", - "MEMORY 0.457494528\n", - "(Round 1) Computed affinity matrix on nearest neighbors in 3.21 s\n", - "MEMORY 0.457494528\n", + "MEMORY 0.457449472\n", + "Job completed in: 1.63 s\n", + "MEMORY 0.457449472\n", + "(Round 1) Computed affinity matrix on nearest neighbors in 3.3 s\n", + "MEMORY 0.457449472\n", "Filtered down to 99 of 104\n", "(Round 1) Retained 99 rows out of 104 after filtering\n", - "MEMORY 0.45774848\n", + "MEMORY 0.457670656\n", "(Round 1) Computing density adapted affmat\n", - "MEMORY 0.45774848\n", + "MEMORY 0.457670656\n", "[t-SNE] Computing 31 nearest neighbors...\n", - "[t-SNE] Indexed 99 samples in 0.002s...\n", + "[t-SNE] Indexed 99 samples in 0.000s...\n", "[t-SNE] Computed neighbors for 99 samples in 0.001s...\n", "[t-SNE] Computed conditional probabilities for sample 99 / 99\n", "[t-SNE] Mean sigma: 0.226334\n", "(Round 1) Computing clustering\n", - "MEMORY 0.458047488\n", + "MEMORY 0.457920512\n", "Beginning preprocessing + Leiden\n" ], "name": "stdout" @@ -639,7 +633,7 @@ { "output_type": "stream", "text": [ - "100%|██████████| 50/50 [00:00<00:00, 226.55it/s]" + "100%|██████████| 50/50 [00:00<00:00, 226.97it/s]" ], "name": "stderr" }, @@ -649,11 +643,11 @@ "Got 7 clusters after round 1\n", "Counts:\n", "{6: 8, 1: 15, 2: 15, 4: 13, 5: 12, 3: 14, 0: 22}\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "(Round 1) Aggregating seqlets in each cluster\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Aggregating for cluster 0 with 22 seqlets\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Trimming eliminated 0 seqlets out of 22\n", "Skipped 3 seqlets\n" ], @@ -670,71 +664,71 @@ "output_type": "stream", "text": [ "Aggregating for cluster 1 with 15 seqlets\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Trimming eliminated 0 seqlets out of 15\n", "Removed 1 duplicate seqlets\n", "Aggregating for cluster 2 with 15 seqlets\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Trimming eliminated 0 seqlets out of 15\n", "Skipped 1 seqlets\n", "Aggregating for cluster 3 with 14 seqlets\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Trimming eliminated 0 seqlets out of 14\n", "Skipped 2 seqlets\n", "Aggregating for cluster 4 with 13 seqlets\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Trimming eliminated 0 seqlets out of 13\n", "Skipped 1 seqlets\n", "Aggregating for cluster 5 with 12 seqlets\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Trimming eliminated 0 seqlets out of 12\n", "Skipped 1 seqlets\n", "Aggregating for cluster 6 with 8 seqlets\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Trimming eliminated 0 seqlets out of 8\n", "(Round 2) num seqlets: 90\n", "(Round 2) Computing coarse affmat\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Beginning embedding computation\n", "Computing embeddings\n", - "Finished embedding computation in 0.06 s\n", + "Finished embedding computation in 0.08 s\n", "Starting affinity matrix computations\n", - "Normalization computed in 0.01 s\n", + "Normalization computed in 0.0 s\n", "Cosine similarity mat computed in 0.01 s\n", "Normalization computed in 0.0 s\n", "Cosine similarity mat computed in 0.01 s\n", - "Finished affinity matrix computations in 0.03 s\n", + "Finished affinity matrix computations in 0.02 s\n", "(Round 2) Compute nearest neighbors from coarse affmat\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Computed nearest neighbors in 0.01 s\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "(Round 2) Computing affinity matrix on nearest neighbors\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.458440704\n", + "MEMORY 0.458252288\n", "Parallel runs completed\n", - "MEMORY 0.458948608\n", - "Job completed in: 1.32 s\n", - "MEMORY 0.458948608\n", + "MEMORY 0.458305536\n", + "Job completed in: 1.42 s\n", + "MEMORY 0.458305536\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.458948608\n", + "MEMORY 0.458305536\n", "Parallel runs completed\n", - "MEMORY 0.45891584\n", - "Job completed in: 1.21 s\n", - "MEMORY 0.45891584\n", - "(Round 2) Computed affinity matrix on nearest neighbors in 2.59 s\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", + "Job completed in: 1.32 s\n", + "MEMORY 0.458272768\n", + "(Round 2) Computed affinity matrix on nearest neighbors in 2.79 s\n", + "MEMORY 0.458272768\n", "Not applying filtering for rounds above first round\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "(Round 2) Computing density adapted affmat\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "[t-SNE] Computing 31 nearest neighbors...\n", "[t-SNE] Indexed 90 samples in 0.000s...\n", "[t-SNE] Computed neighbors for 90 samples in 0.001s...\n", "[t-SNE] Computed conditional probabilities for sample 90 / 90\n", "[t-SNE] Mean sigma: 0.229980\n", "(Round 2) Computing clustering\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Beginning preprocessing + Leiden\n" ], "name": "stdout" @@ -757,7 +751,7 @@ { "output_type": "stream", "text": [ - "100%|██████████| 50/50 [00:00<00:00, 215.16it/s]" + "100%|██████████| 50/50 [00:00<00:00, 211.47it/s]" ], "name": "stderr" }, @@ -767,11 +761,11 @@ "Got 8 clusters after round 2\n", "Counts:\n", "{4: 12, 0: 19, 2: 16, 1: 16, 5: 9, 6: 2, 7: 2, 3: 14}\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "(Round 2) Aggregating seqlets in each cluster\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Aggregating for cluster 0 with 19 seqlets\n", - "MEMORY 0.45891584\n" + "MEMORY 0.458272768\n" ], "name": "stdout" }, @@ -788,35 +782,35 @@ "Trimming eliminated 0 seqlets out of 19\n", "Removed 1 duplicate seqlets\n", "Aggregating for cluster 1 with 16 seqlets\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Trimming eliminated 0 seqlets out of 16\n", "Aggregating for cluster 2 with 16 seqlets\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Trimming eliminated 0 seqlets out of 16\n", "Removed 1 duplicate seqlets\n", "Aggregating for cluster 3 with 14 seqlets\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Trimming eliminated 0 seqlets out of 14\n", "Aggregating for cluster 4 with 12 seqlets\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Trimming eliminated 0 seqlets out of 12\n", "Removed 1 duplicate seqlets\n", "Aggregating for cluster 5 with 9 seqlets\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Trimming eliminated 0 seqlets out of 9\n", "Aggregating for cluster 6 with 2 seqlets\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Trimming eliminated 0 seqlets out of 2\n", "Removed 1 duplicate seqlets\n", "Aggregating for cluster 7 with 2 seqlets\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Trimming eliminated 0 seqlets out of 2\n", "Removed 1 duplicate seqlets\n", "Got 8 clusters\n", "Splitting into subclusters...\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "Merging on 8 clusters\n", - "MEMORY 0.45891584\n", + "MEMORY 0.458272768\n", "On merging iteration 1\n", "Numbers for each pattern pre-subsample: [18, 16, 15, 14, 11, 9, 1, 1]\n", "Numbers after subsampling: [18, 16, 15, 14, 11, 9, 1, 1]\n", @@ -872,7 +866,7 @@ "Trimming eliminated 0 seqlets out of 69\n", "Trimming eliminated 0 seqlets out of 83\n", "Unmerged patterns remapping: OrderedDict([(6, 1), (7, 2)])\n", - "Time spent on merging iteration: 12.33408236503601\n", + "Time spent on merging iteration: 14.254217863082886\n", "On merging iteration 2\n", "Numbers for each pattern pre-subsample: [83, 1, 1]\n", "Numbers after subsampling: [83, 1, 1]\n", @@ -887,18 +881,18 @@ " [0.43 1. 0.74]\n", " [0.69 0.74 1. ]]\n", "Got 3 patterns after merging\n", - "MEMORY 0.459198464\n", + "MEMORY 0.45907968\n", "Performing seqlet reassignment\n", - "MEMORY 0.459198464\n", - "Cross contin jaccard time taken: 0.02 s\n", + "MEMORY 0.45907968\n", + "Cross contin jaccard time taken: 0.03 s\n", "Cross contin jaccard time taken: 0.02 s\n", "Discarded 2 seqlets\n", "Skipped 1 seqlets\n", "Skipped 1 seqlets\n", "Got 1 patterns after reassignment\n", - "MEMORY 0.459198464\n", - "Total time taken is 21.52s\n", - "MEMORY 0.459198464\n", + "MEMORY 0.45907968\n", + "Total time taken is 23.93s\n", + "MEMORY 0.45907968\n", "On metacluster 0\n", "Metacluster size 115\n", "Relevant tasks: ('task0', 'task2')\n", @@ -906,7 +900,7 @@ "TfModiscoSeqletsToPatternsFactory: seed=1234\n", "(Round 1) num seqlets: 115\n", "(Round 1) Computing coarse affmat\n", - "MEMORY 0.45920256\n", + "MEMORY 0.45907968\n", "Beginning embedding computation\n", "Computing embeddings\n", "Finished embedding computation in 0.08 s\n", @@ -915,39 +909,39 @@ "Cosine similarity mat computed in 0.01 s\n", "Normalization computed in 0.0 s\n", "Cosine similarity mat computed in 0.01 s\n", - "Finished affinity matrix computations in 0.02 s\n", + "Finished affinity matrix computations in 0.03 s\n", "(Round 1) Compute nearest neighbors from coarse affmat\n", - "MEMORY 0.45973504\n", + "MEMORY 0.45983744\n", "Computed nearest neighbors in 0.01 s\n", - "MEMORY 0.45973504\n", + "MEMORY 0.45983744\n", "(Round 1) Computing affinity matrix on nearest neighbors\n", - "MEMORY 0.45973504\n", + "MEMORY 0.45983744\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.45973504\n", + "MEMORY 0.45983744\n", "Parallel runs completed\n", - "MEMORY 0.465580032\n", - "Job completed in: 1.82 s\n", - "MEMORY 0.465580032\n", + "MEMORY 0.46606336\n", + "Job completed in: 1.93 s\n", + "MEMORY 0.46606336\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.465580032\n", + "MEMORY 0.46606336\n", "Parallel runs completed\n", - "MEMORY 0.465809408\n", + "MEMORY 0.466038784\n", "Job completed in: 1.83 s\n", - "MEMORY 0.465809408\n", - "(Round 1) Computed affinity matrix on nearest neighbors in 3.72 s\n", - "MEMORY 0.465809408\n", + "MEMORY 0.466038784\n", + "(Round 1) Computed affinity matrix on nearest neighbors in 3.83 s\n", + "MEMORY 0.466038784\n", "Filtered down to 109 of 115\n", "(Round 1) Retained 109 rows out of 115 after filtering\n", - "MEMORY 0.465809408\n", + "MEMORY 0.466194432\n", "(Round 1) Computing density adapted affmat\n", - "MEMORY 0.465809408\n", + "MEMORY 0.466194432\n", "[t-SNE] Computing 31 nearest neighbors...\n", "[t-SNE] Indexed 109 samples in 0.000s...\n", - "[t-SNE] Computed neighbors for 109 samples in 0.002s...\n", + "[t-SNE] Computed neighbors for 109 samples in 0.001s...\n", "[t-SNE] Computed conditional probabilities for sample 109 / 109\n", "[t-SNE] Mean sigma: 0.219531\n", "(Round 1) Computing clustering\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Beginning preprocessing + Leiden\n" ], "name": "stdout" @@ -971,7 +965,7 @@ { "output_type": "stream", "text": [ - "100%|██████████| 50/50 [00:00<00:00, 187.33it/s]" + "100%|██████████| 50/50 [00:00<00:00, 160.64it/s]" ], "name": "stderr" }, @@ -981,11 +975,13 @@ "Got 8 clusters after round 1\n", "Counts:\n", "{3: 19, 0: 21, 6: 4, 1: 21, 4: 13, 2: 20, 5: 8, 7: 3}\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "(Round 1) Aggregating seqlets in each cluster\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Aggregating for cluster 0 with 21 seqlets\n", - "MEMORY 0.465833984\n" + "MEMORY 0.466194432\n", + "Trimming eliminated 0 seqlets out of 21\n", + "Skipped 2 seqlets\n" ], "name": "stdout" }, @@ -999,77 +995,75 @@ { "output_type": "stream", "text": [ - "Trimming eliminated 0 seqlets out of 21\n", - "Skipped 2 seqlets\n", "Aggregating for cluster 1 with 21 seqlets\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 21\n", "Skipped 3 seqlets\n", "Aggregating for cluster 2 with 20 seqlets\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 20\n", "Skipped 3 seqlets\n", "Aggregating for cluster 3 with 19 seqlets\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 19\n", "Skipped 4 seqlets\n", "Removed 1 duplicate seqlets\n", "Aggregating for cluster 4 with 13 seqlets\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 13\n", "Skipped 2 seqlets\n", "Aggregating for cluster 5 with 8 seqlets\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 8\n", "Aggregating for cluster 6 with 4 seqlets\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 4\n", "Aggregating for cluster 7 with 3 seqlets\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 3\n", "(Round 2) num seqlets: 94\n", "(Round 2) Computing coarse affmat\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Beginning embedding computation\n", "Computing embeddings\n", - "Finished embedding computation in 0.05 s\n", + "Finished embedding computation in 0.06 s\n", "Starting affinity matrix computations\n", "Normalization computed in 0.0 s\n", "Cosine similarity mat computed in 0.01 s\n", "Normalization computed in 0.0 s\n", "Cosine similarity mat computed in 0.01 s\n", - "Finished affinity matrix computations in 0.02 s\n", + "Finished affinity matrix computations in 0.03 s\n", "(Round 2) Compute nearest neighbors from coarse affmat\n", - "MEMORY 0.465833984\n", - "Computed nearest neighbors in 0.02 s\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", + "Computed nearest neighbors in 0.01 s\n", + "MEMORY 0.466194432\n", "(Round 2) Computing affinity matrix on nearest neighbors\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.465833984\n", + "MEMORY 0.466194432\n", "Parallel runs completed\n", - "MEMORY 0.465809408\n", - "Job completed in: 1.32 s\n", - "MEMORY 0.465809408\n", + "MEMORY 0.466169856\n", + "Job completed in: 1.43 s\n", + "MEMORY 0.466169856\n", "Launching nearest neighbors affmat calculation job\n", - "MEMORY 0.465809408\n", + "MEMORY 0.466169856\n", "Parallel runs completed\n", - "MEMORY 0.46577664\n", - "Job completed in: 1.32 s\n", - "MEMORY 0.46577664\n", - "(Round 2) Computed affinity matrix on nearest neighbors in 2.7 s\n", - "MEMORY 0.46577664\n", + "MEMORY 0.46614528\n", + "Job completed in: 1.43 s\n", + "MEMORY 0.46614528\n", + "(Round 2) Computed affinity matrix on nearest neighbors in 2.92 s\n", + "MEMORY 0.46614528\n", "Not applying filtering for rounds above first round\n", - "MEMORY 0.46577664\n", + "MEMORY 0.46614528\n", "(Round 2) Computing density adapted affmat\n", - "MEMORY 0.46577664\n", + "MEMORY 0.46614528\n", "[t-SNE] Computing 31 nearest neighbors...\n", "[t-SNE] Indexed 94 samples in 0.000s...\n", "[t-SNE] Computed neighbors for 94 samples in 0.001s...\n", "[t-SNE] Computed conditional probabilities for sample 94 / 94\n", "[t-SNE] Mean sigma: 0.219984\n", "(Round 2) Computing clustering\n", - "MEMORY 0.46577664\n", + "MEMORY 0.46614528\n", "Beginning preprocessing + Leiden\n" ], "name": "stdout" @@ -1092,7 +1086,7 @@ { "output_type": "stream", "text": [ - "100%|██████████| 50/50 [00:00<00:00, 244.85it/s]" + "100%|██████████| 50/50 [00:00<00:00, 233.45it/s]" ], "name": "stderr" }, @@ -1102,14 +1096,11 @@ "Got 8 clusters after round 2\n", "Counts:\n", "{2: 16, 1: 17, 4: 8, 3: 14, 0: 25, 5: 7, 6: 4, 7: 3}\n", - "MEMORY 0.465825792\n", + "MEMORY 0.46614528\n", "(Round 2) Aggregating seqlets in each cluster\n", - "MEMORY 0.465825792\n", + "MEMORY 0.46614528\n", "Aggregating for cluster 0 with 25 seqlets\n", - "MEMORY 0.465825792\n", - "Trimming eliminated 0 seqlets out of 25\n", - "Aggregating for cluster 1 with 17 seqlets\n", - "MEMORY 0.465825792\n" + "MEMORY 0.46614528\n" ], "name": "stdout" }, @@ -1123,32 +1114,35 @@ { "output_type": "stream", "text": [ + "Trimming eliminated 0 seqlets out of 25\n", + "Aggregating for cluster 1 with 17 seqlets\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 17\n", "Aggregating for cluster 2 with 16 seqlets\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 16\n", "Aggregating for cluster 3 with 14 seqlets\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 14\n", "Removed 1 duplicate seqlets\n", "Aggregating for cluster 4 with 8 seqlets\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 8\n", "Aggregating for cluster 5 with 7 seqlets\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 7\n", "Skipped 1 seqlets\n", "Aggregating for cluster 6 with 4 seqlets\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 4\n", "Aggregating for cluster 7 with 3 seqlets\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "Trimming eliminated 0 seqlets out of 3\n", "Got 8 clusters\n", "Splitting into subclusters...\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "Merging on 8 clusters\n", - "MEMORY 0.465825792\n", + "MEMORY 0.466194432\n", "On merging iteration 1\n", "Numbers for each pattern pre-subsample: [25, 17, 16, 13, 8, 6, 4, 3]\n", "Numbers after subsampling: [25, 17, 16, 13, 8, 6, 4, 3]\n", @@ -1201,7 +1195,7 @@ "Trimming eliminated 0 seqlets out of 85\n", "Trimming eliminated 0 seqlets out of 89\n", "Unmerged patterns remapping: OrderedDict([(7, 1)])\n", - "Time spent on merging iteration: 4.079357862472534\n", + "Time spent on merging iteration: 4.443928480148315\n", "On merging iteration 2\n", "Numbers for each pattern pre-subsample: [89, 3]\n", "Numbers after subsampling: [89, 3]\n", @@ -1216,7 +1210,7 @@ "Collapsing 0 & 1 with crosscontam 0.30785183461967824 and sim 0.9136464575580681\n", "Trimming eliminated 0 seqlets out of 92\n", "Unmerged patterns remapping: OrderedDict()\n", - "Time spent on merging iteration: 0.5474634170532227\n", + "Time spent on merging iteration: 0.6209373474121094\n", "On merging iteration 3\n", "Numbers for each pattern pre-subsample: [92]\n", "Numbers after subsampling: [92]\n", @@ -1227,15 +1221,15 @@ "Pattern-to-pattern sim matrix:\n", "[[1.]]\n", "Got 1 patterns after merging\n", - "MEMORY 0.465829888\n", + "MEMORY 0.466194432\n", "Performing seqlet reassignment\n", - "MEMORY 0.465829888\n", + "MEMORY 0.466194432\n", "Skipped 6 seqlets\n", "Skipped 6 seqlets\n", "Got 1 patterns after reassignment\n", - "MEMORY 0.465829888\n", - "Total time taken is 13.08s\n", - "MEMORY 0.465829888\n" + "MEMORY 0.466194432\n", + "Total time taken is 13.98s\n", + "MEMORY 0.466194432\n" ], "name": "stdout" } @@ -1264,7 +1258,7 @@ "tfmodisco_results.save_hdf5(grp)\n", "grp.close()" ], - "execution_count": 10, + "execution_count": 9, "outputs": [] }, { @@ -1281,7 +1275,7 @@ "metadata": { "id": "SvRgsV6D_WYR", "scrolled": false, - "outputId": "c72e7452-eade-45e6-d0b0-db1492f339a0", + "outputId": "27498846-81b8-441e-c37b-dc6c5f389d52", "colab": { "base_uri": "https://localhost:8080/", "height": 1000 @@ -1359,7 +1353,7 @@ " \n", "hdf5_results.close()" ], - "execution_count": 11, + "execution_count": 10, "outputs": [ { "output_type": "stream", @@ -1729,7 +1723,7 @@ " workflow.TfModiscoResults.from_hdf5(grp, track_set=track_set)\n", "grp.close()" ], - "execution_count": 12, + "execution_count": 11, "outputs": [] }, { @@ -1750,7 +1744,7 @@ "cell_type": "code", "metadata": { "id": "cxu4zoH90kZr", - "outputId": "2f993976-ba8c-4f5e-cc0f-f60931e3b307", + "outputId": "9ae7bdc2-376f-4b8a-c77a-577806a04fd7", "colab": { "base_uri": "https://localhost:8080/", "height": 466 @@ -1771,7 +1765,7 @@ "print(\"IC-trimmed Gata - sequence (scaled by information content)\")\n", "viz_sequence.plot_weights(viz_sequence.ic_scale(trimmed_gata[\"sequence\"].fwd, background=background))\n" ], - "execution_count": 13, + "execution_count": 12, "outputs": [ { "output_type": "stream", @@ -1915,7 +1909,7 @@ "sum_scores = modisco.util.compute_sum_scores(imp_scores=imp_scores,\n", " window_size=len(trimmed_gata[\"task0_hypothetical_contribs\"].fwd))" ], - "execution_count": 14, + "execution_count": 13, "outputs": [] }, { @@ -1931,7 +1925,7 @@ "cell_type": "code", "metadata": { "id": "6hwvQ1dA0kZx", - "outputId": "ce17a3d5-207e-48e0-cdf3-29559904a6de", + "outputId": "a033a0b4-8786-45f9-b3d2-19949bc2f2b2", "colab": { "base_uri": "https://localhost:8080/", "height": 281 @@ -1946,7 +1940,7 @@ "plt.ylabel(\"Sum score\")\n", "plt.show()" ], - "execution_count": 15, + "execution_count": 14, "outputs": [ { "output_type": "display_data", @@ -1976,7 +1970,7 @@ "cell_type": "code", "metadata": { "id": "8ZG2kwYD0kZ0", - "outputId": "f7638e6a-e77f-489b-9195-42cb74395ba8", + "outputId": "efc0c68b-c088-4641-fd59-12d46ff57873", "colab": { "base_uri": "https://localhost:8080/", "height": 279 @@ -1988,7 +1982,7 @@ "plt.ylabel(\"Density\")\n", "plt.show()" ], - "execution_count": 16, + "execution_count": 15, "outputs": [ { "output_type": "display_data", @@ -2018,7 +2012,7 @@ "cell_type": "code", "metadata": { "id": "7rU98aJk0kZ3", - "outputId": "0ba7e8d3-d84b-4694-94ce-730c32c93eb8", + "outputId": "811bbd2e-e788-4276-a462-74bb7d1b9fe6", "colab": { "base_uri": "https://localhost:8080/", "height": 279 @@ -2032,7 +2026,7 @@ "plt.ylabel(\"Density\")\n", "plt.show()" ], - "execution_count": 17, + "execution_count": 16, "outputs": [ { "output_type": "display_data", @@ -2062,7 +2056,7 @@ "cell_type": "code", "metadata": { "id": "IME4TNtF0kZ7", - "outputId": "d3379875-5641-49b3-b58c-1cf69512f082", + "outputId": "e0736214-f7a9-49dd-99a0-99ebb5398271", "colab": { "base_uri": "https://localhost:8080/", "height": 281 @@ -2084,7 +2078,7 @@ "plt.legend(handles=handles, labels=[\"Not passing\", \"Passing\"])\n", "plt.show()" ], - "execution_count": 18, + "execution_count": 17, "outputs": [ { "output_type": "display_data", @@ -2114,7 +2108,7 @@ "cell_type": "code", "metadata": { "id": "agaA8m0Q0kZ_", - "outputId": "6024cb7c-faf6-42d5-8888-b149443436c2", + "outputId": "56eb71ae-77a0-4f8d-81a7-37ab3d16d335", "colab": { "base_uri": "https://localhost:8080/", "height": 757 @@ -2131,7 +2125,7 @@ " highlight={'red': [(hit_pos, hit_pos+len(trimmed_gata))]},\n", " subticks_frequency=20)\n" ], - "execution_count": 19, + "execution_count": 18, "outputs": [ { "output_type": "stream", @@ -2248,7 +2242,7 @@ "cell_type": "code", "metadata": { "id": "HrV4gmd30kaB", - "outputId": "40d8bb4c-70a5-41a4-81cc-57b5fda0909d", + "outputId": "2ba78ce5-7b28-49d2-df06-b4ed61b46555", "colab": { "base_uri": "https://localhost:8080/", "height": 750 @@ -2276,7 +2270,7 @@ " highlight={'red': [(hit_pos, hit_pos+len(trimmed_gata))]},\n", " subticks_frequency=20)" ], - "execution_count": 20, + "execution_count": 19, "outputs": [ { "output_type": "stream", @@ -2396,7 +2390,7 @@ "metadata": { "scrolled": false, "id": "UKZnFiKCzN0U", - "outputId": "56df2ca1-fc36-4bbf-da29-b8848917b429", + "outputId": "0519a2a3-e0df-4a54-cee8-81d510f7bd19", "colab": { "base_uri": "https://localhost:8080/", "height": 1000 @@ -2439,7 +2433,7 @@ " .seqlets_to_patterns_result.pattern_merge_hierarchy.root_nodes,\n", " path=\"root\")" ], - "execution_count": 29, + "execution_count": 20, "outputs": [ { "output_type": "stream", @@ -3346,7 +3340,7 @@ "source": [ "" ], - "execution_count": null, + "execution_count": 20, "outputs": [] } ]