{ "cells": [ { "cell_type": "markdown", "id": "a87c470a-ccd8-462f-96ac-79cbf7b30cb2", "metadata": {}, "source": [ "## Constraints and Priors\n", "\n", "In the first tutorial, we saw how we can use Ledidi to design transcription factor binding sites by pairing it with a BPNet model that predicted GATA2. Then, we saw a few approaches for evaluating the designs to ensure they are robust and not just based on some learned spurious correlation. More broady, we saw how to actually use Ledidi with a PyTorch model given a target objective and an initial sequence. \n", "\n", "However, this sort of unconstrained design, where edits can be made anywhere, may not always be ideal in reality. In practice there are likely to be important constraints that cannot be violated, such as not editing key binding sites or transcribed regions, or there may be useful prior knowledge that can guide the design process. Ledidi is able to seamlessly integrate hard constraints and also soft priors into the design task without the need for any code modifications.\n", "\n", "### Constraints\n", "\n", "#### Preventing Edits (Gene Bodies)\n", "\n", "The most conceptually straightforward constraint is preventing edits from being made at certain positions. These positions do not have to be contiguous, though they will usually come in the form of one or more spans known to be important. For example, when editing a promoter region, one may with to prevent edits at the TATAA box or within the coding region for the gene. Although using a model that is aware of transcription and setting an appropriate target value edits may implicitly prevent edits at the TATAA box, sometimes having a hard constraint can be useful, particularly when such a model is not readily available. Alternatively, when editing an enhancer, one may wish to preserve binding sites corresponding to long-range activity whose influence may fall outside the scope of the individual region being considered.\n", "\n", "This constraint is implemented in Ledidi through the use of a boolean mask over every position, indicating whether edits can be made or not. This provides the user with the most flexibility possible in that any number of spans or even individual positions can be blocked from being edited without additional complexity. Under the hood, this mask is used to set the weights in Ledidi's weight matrix to -inf in each character at those positions except for the one in the initial sequence. This prevents Ledidi from sampling anything other than the original character at those positions.\n", "\n", "Let's see this constraint in practice by considering the promoter of the SMYD3 gene, as we do in the paper. SMYD3 is a protein that is broadly expressed across tissues and is associated with remodeling chromatin, and where dysregulation can lead to cancer. In this example, let's try to alter various properties of the region without disturbing the coding region of the gene itself. Because the gene is on the negative strand and we have chosen the TSS as the middle of the region, this means masking out the first 1057 bp. \n", "\n", "First, we can load the region." ] }, { "cell_type": "code", "execution_count": 1, "id": "2d192d9b-b326-487e-85f4-74b0e41cb610", "metadata": {}, "outputs": [], "source": [ "import pyfaidx\n", "from tangermeme.utils import one_hot_encode\n", "\n", "chrom, mid = 'chr1', 246507312 # Location of the SMYD3 gene TSS\n", "start, end = mid - 1057, mid + 1057 # 2114 bp window\n", "\n", "X = pyfaidx.Fasta(\"../../../../common/hg38.fa\")[chrom][start:end].seq.upper()\n", "X = one_hot_encode(X).unsqueeze(0).float().cuda()" ] }, { "cell_type": "markdown", "id": "08712135-309c-46b6-bbb1-73ffd2cb766a", "metadata": {}, "source": [ "Then we can load up models to use for design. Because we are just demonstrating how to do certain types of designs, let's use the GATA2 BPNet model again." ] }, { "cell_type": "code", "execution_count": 2, "id": "57958bfb-7e07-489c-91b4-bd7b542d52ce", "metadata": {}, "outputs": [], "source": [ "import torch\n", "\n", "from bpnetlite import BPNet\n", "from bpnetlite.bpnet import ControlWrapper\n", "from bpnetlite.bpnet import CountWrapper\n", "\n", "model = torch.load(\"../../../../models/bpnet/GATA2.torch\", weights_only=False)\n", "model = CountWrapper(ControlWrapper(model)).cuda()" ] }, { "cell_type": "markdown", "id": "d391c29d-52b4-4512-85fb-87f0ed32857a", "metadata": {}, "source": [ "We should first confirm that GATA does not already bind at this region so that increasing GATA binding further is a feasible task." ] }, { "cell_type": "code", "execution_count": 3, "id": "87d65a54-28a4-406c-a3a4-e736e30b879b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tensor([[0.4570]])" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from tangermeme.predict import predict\n", "\n", "predict(model, X)" ] }, { "cell_type": "markdown", "id": "deb75142-4a2a-4c37-86d0-840c113c3c6b", "metadata": {}, "source": [ "Great. Because BPNet count predictions are log fold count enrichment over a control, a value near zero means low predicted binding." ] }, { "cell_type": "markdown", "id": "eae19f7e-f1b6-4025-83a6-1a83d0b4ed16", "metadata": {}, "source": [ "Next, we will begin by having Ledidi design edits in an unconstrained manner that significantly increase GATA binding. These edits can be anywhere in the provided region. Then, to demonstrate how to use a mask and that this enforces a hard constraint of no edits being allowed, we will mask out the gene body to prevent any edits from being made after the TSS. And, finally, we will take that mask and incrementally expand it out past the TSS." ] }, { "cell_type": "code", "execution_count": 4, "id": "43e5ef7e-198d-473b-9c78-23e94aa6825c", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████| 10/10 [01:26<00:00, 8.69s/it]\n" ] } ], "source": [ "import numpy\n", "\n", "from tqdm import tqdm\n", "from ledidi import ledidi\n", "\n", "y_bar = predict(model, X, device='cuda').cuda() + 4\n", "X_bars_gata = []\n", "\n", "X_bar = ledidi(model, X, y_bar, l=0.01, verbose=False)\n", "X_bars_gata.append(X_bar)\n", "\n", "for i in tqdm(range(10)):\n", " input_mask = torch.ones(2114, dtype=bool, device='cuda')\n", " input_mask[1057 + i*50:] = 0\n", " \n", " X_bar = ledidi(model, X, y_bar, l=0.01, input_mask=input_mask, verbose=False)\n", " X_bars_gata.append(X_bar)\n", " \n", "X_bars_gata = torch.stack(X_bars_gata)\n", "\n", "edits_mask = torch.abs(X_bars_gata - X[:, None]).sum(dim=(1, 2)).numpy(force=True)\n", "edits_mask = numpy.where(edits_mask > 0)" ] }, { "cell_type": "markdown", "id": "74c6a4f0-4116-4e58-bb42-ecac15969db6", "metadata": {}, "source": [ "Now we can make a plot showing where the edits are made in the sequence where each row is a differing amount of sequence being protected, with the first row being none of it being protected, and each dot corresponds to the location in the sequence that an edit is being proposed." ] }, { "cell_type": "code", "execution_count": 5, "id": "8cc981ad-a14c-498d-820e-5baee66872ef", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "from matplotlib import pyplot as plt\n", "import seaborn; seaborn.set_style('whitegrid')\n", "\n", "plt.figure(figsize=(4, 3))\n", "plt.scatter(edits_mask[1], 10 - edits_mask[0], s=3, c='0.5')\n", "\n", "for i in range(10):\n", " plt.plot([1057+i*50, 1057+i*50], [-0.5, 9.5-i], c=str(0.08*i), linestyle='--', linewidth=0.75)\n", "\n", "plt.xlim(-20, 2140)\n", "plt.grid(False)\n", "seaborn.despine(bottom=True, left=True)\n", "plt.yticks(range(11), list(map(str, 450 - numpy.arange(9)*50)) + ['Gene Body', 'No Mask'])\n", "plt.ylabel(\"Additional bp Masked\")\n", "plt.xlabel(\"Coordinate\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "25f25e76-1e25-4f19-b827-c2cb07f422b3", "metadata": {}, "source": [ "We can make several observations. \n", "\n", "First, when doing the design in an unconstrained manner, Ledidi proposed edits across the entire sequence. This makes sense, and the reason that these edits are so scattered is that likely are taking sites that are almost GATA sites and making one or a small number of changes to subtly pushing them in the right direction.\n", "\n", "Second, when using the mask that prevents edits in the gene body (left-most dotted gray line), no edits are proposed in the gene body. This demonstrates that the mask is a hard constraint, not simply a preference that could be overcome with enough pushing by the optimization algorithm.\n", "\n", "Third, as we increase the size of the mask, edits are proposed in a smaller and smaller window. Consequently, the edits become more concentrated within the area that edits are allowed to be made. This is because Ledidi is still trying to achieve the same target value as before, but now just has less material to do it with. \n", "\n", "An interesting half-observation is that edits do not seem to be frequently proposed on the flanks of the input window, even when very little space is available for editing. This is likely an artifact of the model where, for whatever reason, the flanks are less influential or potentially even not influential for model predictions. " ] }, { "cell_type": "markdown", "id": "6c6b24ba-3cfb-4f59-ab4c-ff21e678c920", "metadata": {}, "source": [ "#### Preventing Edits (Protein Binding Sites)\n", "\n", "Another setting where we may want to prevent edits is when there are known motifs that are important but whose role may not be captured by the predictive model being used. For instance, continuing with the example of editing in GATA binding at a promoter, we may want to block edits from happening at the initiation site or the TATAA box if such a site exists at this promoter. This means that instead of blocking off edits from being made in a big chunk of the region, we want to block out one or more spans (potentially alongside blocking off a big chunk like the gene body).\n", "\n", "To demonstrate this, let's use a synthetic site that is entirely randomly generated but has multiple copies of the GATA binding site in it." ] }, { "cell_type": "code", "execution_count": 6, "id": "d6f8cefb-9140-42fb-bba7-4a1f6ca53c2c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tensor([[1.2434]], device='cuda:0')" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from tangermeme.utils import random_one_hot\n", "from tangermeme.ersatz import multisubstitute\n", "\n", "motif = 'ACAGATAAGAA'\n", "\n", "X = random_one_hot((1, 4, 2114), random_state=0).float().cuda()\n", "X_gata = multisubstitute(X, [motif, motif, motif], spacing=12)\n", "\n", "y_bar = predict(model, X_gata).cuda() - 0.5\n", "y_bar" ] }, { "cell_type": "markdown", "id": "b4d8f585-7a1f-43ce-b716-c101d7bd2663", "metadata": {}, "source": [ "Looks like this region starts off with a reasonable amount of GATA binding as we would expect. Now, we can use Ledidi in three settings where we want to diminish, but not completely destroy, GATA binding signal. First, we can use it without any mask to see where it would make edits normally. Then, we can use it when the left half of the sequence is protected and edits cannot be made there. Finally, we will protect the right half of the edits and only make edits on the right portion." ] }, { "cell_type": "code", "execution_count": 7, "id": "1a781bb7-0e23-47cc-9234-77632e3fbf53", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "iter=I\tinput_loss=0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=0.0\n", "iter=100\tinput_loss=4.125\toutput_loss=0.01595\ttotal_loss=0.4284\ttime=1.217\n", "iter=F\tinput_loss=1.938\toutput_loss=0.03134\ttotal_loss=0.2251\ttime=1.892\n", "iter=I\tinput_loss=0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=0.0\n", "iter=100\tinput_loss=1.75\toutput_loss=0.01721\ttotal_loss=0.1922\ttime=1.214\n", "iter=F\tinput_loss=1.75\toutput_loss=0.01373\ttotal_loss=0.1887\ttime=1.905\n", "iter=I\tinput_loss=0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=0.0\n", "iter=100\tinput_loss=2.125\toutput_loss=0.002378\ttotal_loss=0.2149\ttime=1.161\n", "iter=F\tinput_loss=1.688\toutput_loss=0.02081\ttotal_loss=0.1896\ttime=1.898\n" ] } ], "source": [ "torch.manual_seed(0)\n", "X_bar0 = ledidi(model, X_gata, y_bar)\n", "\n", "torch.manual_seed(0)\n", "input_mask = numpy.zeros(2114, dtype=bool)\n", "input_mask[:1057] = True\n", "\n", "X_bar1 = ledidi(model, X_gata, y_bar, input_mask=input_mask)\n", "\n", "torch.manual_seed(0)\n", "input_mask = numpy.zeros(2114, dtype=bool)\n", "input_mask[1057:] = True\n", "\n", "X_bar2 = ledidi(model, X_gata, y_bar, input_mask=input_mask).cuda()" ] }, { "cell_type": "markdown", "id": "9f4d9e17-5f84-4b03-81d6-ecccbf41978c", "metadata": {}, "source": [ "To visualize these edits we will use DeepLIFT/SHAP on the resulting sequences. Remember that we only diminished the original predicted sequence by a little bit, so we would not expect each of the three motifs to be knocked out." ] }, { "cell_type": "code", "execution_count": 8, "id": "64fff012-d86a-4d8a-a4bf-108aa2dbf1c6", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAArEAAAEiCAYAAADuwIpdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAACPcklEQVR4nOzdd3xV9f348ded2XsREjYkIey9BRlFEBcKsrQuVNBqW1urYh391mJVqq2WWtxWBEQUEaM4GLKHBAIhYSZkkL3HTe46vz/yO8dcskMYkffz8eDBzblnfM65Z7zP+3w+n6NTFEVBCCGEEEKIdkR/uQsghBBCCCFES0kQK4QQQggh2h0JYoUQQgghRLsjQawQQgghhGh3JIgVQgghhBDtjgSxQgghhBCi3ZEgVgghhBBCtDsSxAohhBBCiHZHglghhBBCCNHuSBArxFXms88+Izo6WvvXr18/xowZwx133MF///tfCgoKLuryX3/9daKjoy/qMtrCE088wcSJE5s1rtPp5IsvvuDee+9l1KhR9OnTh6FDhzJ79mzeeecdCgsL653OZrMxZswYoqOj+eabb7Th5/9GDf07v3y33HIL0dHRvPPOO81ez4yMjHqncTgcPPnkk0RHR/Of//yn2fO7GJ544gkGDRp0yZe7cuVKPvvss0u+XCFE8xgvdwGEEJfH0qVL6d69O3a7nYKCAn766Sfeeust3n33XV599VVGjx59UZY7a9Ysxo0bd1HmfTlUVVWxePFidu3axfTp03n66acJDQ2lvLyc+Ph43nnnHX744Qc+/vjjOtNu3bqV/Px8AD799FOuu+46ACZMmMCaNWtcxr399tuZOnUq99xzjzbMbDZrn5OSkjh27Jg2r3vvvbfV62S1Wnnsscf4/vvvefbZZ5k3b16r59WerVq1ioCAAGbOnHm5iyKEqIcEsUJcpXr16kW/fv20v6dOncpdd93FvHnzePjhh/n2228JDg5u8+V26NCBDh06tPl8L5e//e1v7Ny5k2XLljFjxgyX76699loWLVrEl19+We+0n376KSaTieHDh7Nz506ys7Pp0KEDgYGBBAYG1hk/ODiYgQMH1juvtWvXAjUB8NatWzl48CCDBw9u8fpUVlby0EMPsX//fl555RWuv/76Fs9DCCEuBalOIITQdOzYkT/96U9UVFSwevVql++OHDnCgw8+yPDhw+nXrx8333wzcXFxLuNYLBb+/ve/M3HiRPr168fw4cOZOXMmGzdu1MaprzqB1WrlxRdfZMyYMQwYMID58+dz9OhRJk6cyBNPPKGNpz5m37NnD88++ywjRoxgxIgRPPzww+Tk5NRZn7i4OG6//XYGDhzIoEGDuPfee7VsZW2fffYZU6dOpW/fvkybNo3169c3a3vl5uaybt06JkyYUCeAVXl4eDB79uw6w3Nycti+fTsTJ07k3nvvxel0tvrRdXV1NRs3bqRPnz48+eSTAKxbt67F8ykpKeHuu+/m4MGD/Pvf/64TwLZk+zudTt566y2uu+46+vbty6hRo3j88cfJzs6us9wff/yRX//61wwZMoQBAwYwbdo0/vvf/zZa1p9++okRI0bwwAMPUFlZCcCBAwf49a9/zaBBgxgwYABz5sxh69atLtM1VJ1FXbeMjAwAJk6cyMmTJ9m3b1+d6htOp5Ply5czdepU+vfvz9ChQ7nhhhv44IMPGt/AQog2JZlYIYSL8ePHYzAYOHDggDZsz5493HfffQwYMIDnnnsOHx8f4uLi+N3vfkdVVZX2uHXp0qVs2LCB3/72t/Tu3RuLxcKJEycoLi5udJlPPvkkcXFx3HfffYwcOZJTp07x8MMPU15eXu/4Tz/9NBMmTGDZsmVkZWXx8ssv88c//pEPP/xQG+fNN9/ktddeY+bMmSxatAibzcY777zD/PnzWbt2LT179gRqgpcnn3ySSZMm8cQTT1BWVsYbb7yB1WpFr2/8Pn/v3r3Y7fZm152t7fPPP8fhcHDrrbcyevRoIiIiWLduHYsWLUKn07VoXt9++y0lJSU8+uijdO3alSFDhhAXF8dTTz2Fl5dXs+aRl5fHggULyMrK4p133mHo0KENjtuc7f/cc8+xZs0aFixYwIQJE8jMzOSf//wn+/bt47PPPtMyzWvXruXPf/4zw4YN4/nnnycoKIiUlBROnjzZ4PLj4uL405/+xK233sqf//xnDAYD+/bt45577iEqKooXXngBs9nMqlWrePDBB/nHP/7B9OnTm7k1a7zxxhs88sgj+Pj48OyzzwI/V994++23eeONN1i0aBFDhw7Fbrdz5swZysrKWrQMIcQFUoQQV5V169YpUVFRSkJCQoPjjB49Wpk2bZr293XXXafcfPPNis1mcxnvgQceUMaMGaM4HA5FURRlxowZyuLFixtd/r/+9S8lKipK+/vkyZNKVFSU8vLLL7uMt3HjRiUqKkr505/+VKfszz33nMu4b731lhIVFaXk5uYqiqIo586dU2JjY5X/+7//cxmvvLxcGTNmjPLoo48qiqIoDodDGTt2rHLLLbcoTqdTGy8jI0Pp06ePcu211za6Lv/973+VqKgo5ccff6zznc1mc/lXm9PpVKZMmaKMGzdOsdvtLttl165d9S4rKipKef755+v97s4771T69eunlJSUKIry83Zau3Zto+VXFEVJT09XoqKitH87duxocNzmbv9Tp07VO97hw4eVqKgo5R//+IeiKDW/x+DBg5W5c+e6bP/z/elPf1IGDhyoKErNNu/du7eyYsUKl3Fmz56tjBo1SikvL9eG2e12ZcaMGco111yjzf/8/e/8dUtPT9eGXX/99cqCBQvqjPvAAw8oN910U4PlFUJcGlKdQAhRh6Io2uezZ89y5swZbrjhBgDsdrv275prriEvL4+UlBQA+vXrx48//sgrr7zC3r17qaqqanJZ+/btA2DatGkuw6dOnYrRWP/DovMzn+rj4XPnzgGwY8cO7HY7N910k0t53dzcGDZsmLbMlJQUcnNzmTFjhkv2MyIi4oJawyclJdGnTx+Xf7V7KNi3bx9nz57llltuwWAwADBz5kx0Ol2LqwGkp6ezd+9epkyZgq+vLwDXXXcdXl5eLZrX2LFjMZvNvPjiiw32pqBqavvv3bsXqOktobb+/fvTo0cPdu/eDUB8fDzl5eXMmzevyeyzoig888wzvP7667zyyissXLhQ+66yspLDhw8zdepUl8yzwWDgxhtvJDs7mzNnzjQ6/5bo168fycnJPPfcc2zfvr3BJwZCiItLqhMIIVxUVlZSXFxMVFQUgNZ6/u9//zt///vf652mqKgIqHnM3KFDB+Li4njrrbdwc3Nj7NixPP7443Tt2rXeadWqBuc3IjMajfj7+9c7zfnD1ce8atCslvm2226rd3q1moBa7voasAUHB5OZmVnv9KqOHTsCPwdvqm7duvHpp58C8Mknn/DJJ5+4fK9+N3nyZEpLSwHw8fFhyJAhfPvtt5SWlmoBaVPWrVuHoihcd9112rygJtD88ssvOX36ND169GhyPqNHj+bOO+/k4Ycf5s477+SDDz4gKCio3nGb2v7qbxoaGlpn2tDQUG17qcFycxr62Ww24uLi6NWrF9dcc43Ld6WlpSiKQkhISL3Lq12mtvDAAw/g6enJhg0bWL16NQaDgaFDh/KHP/zBpbGkEOLikiBWCOFi69atOBwOhg8fDkBAQABQc+GeMmVKvdN069YNAE9PTx555BEeeeQR8vPz+fHHH1m2bBkPPvigSz+otakBUX5+PmFhYdpwu93e6sBDLfO//vUvLdBsbDw16K2tvmHnGz58OEajkc2bN3P77bdrw93d3bVg5vyGRWVlZXz77bdAw0H2l19+yfz585tcvtPp5PPPPwfg4YcfrnecdevW8fjjjzc5L6ipD718+XIeeughLZBtTQ8V6m+am5tbJ0DNzc3VtrtaL7a+xl7nM5vNfPjhh9x7773cfffdvP322/j5+QHg6+uLXq8nLy+vznS5ubnAz7+1m5sbUNOYsHYXZeoNTXMYjUbuvvtu7r77bkpLS9m1axevvvoq9913H1u3bsXDw6PZ8xJCtJ5UJxBCaM6dO8dLL72Ej48Pc+bMAaB79+507dqV5ORk+vXrV+8/b2/vOvMKDg5m5syZXH/99aSkpGCxWOpd5rBhwwDq9HSwadMm7HZ7q9Zj7NixGI1G0tLSGiwz1ATfISEhbNy40aUKRWZmJvHx8U0uJzQ0lFtvvZWtW7fy1VdfNatsX375JVVVVTz66KN8+OGHdf4FBAQ0uxrA9u3byc7OZv78+fXOq1evXnzxxRct2o7jxo1j+fLlpKenc+edd9YbGDZl5MiRAGzYsMFleEJCAqdPn9a+HzRoED4+Pqxevdpl+zckNjaWjz76iOzsbO644w7txRyenp4MGDCA7777zqUKi9PpZMOGDXTo0EG70YqIiAAgOTnZZd5btmypszyz2dxklRhfX1+uu+465s2bR3FxcZPZeyFE25FMrBBXqZMnT+JwOLDb7RQWFnLgwAE+++wzDAYDb7zxhks/pc8//zwLFy7k3nvv5ZZbbiEsLIySkhJOnz5NYmIi//rXv4CaFxlMmDCB6Oho/Pz8OH36NF988QWDBg1qMDvVq1cvZsyYwXvvvYfBYGDkyJGcPHmS9957Dx8fnxa31AeIjIzkkUce4bXXXiM9PZ1rrrkGX19f8vPzOXLkCB4eHjzyyCPo9XoeffRRnn76aR566CFmz55NaWkpb7zxRrMzkE899RQZGRn84Q9/YPPmzUyaNInQ0FAsFgtnzpzhq6++ws3NDZPJBNRUJfDz8+Pee+/VsoK13Xzzzbz33nskJycTExPT6LLXrVuH0WjkgQcecMliq26//Xb++te/snXrViZPntys9YGam4D//Oc/LF68WMvI1lc1oCHdu3fn9ttv56OPPkKv13PNNddovROEh4dz1113AeDl5cWf/vQnnn76ae666y5mz55NUFAQaWlpJCcn88wzz9SZd48ePfj444+56667mD9/Pu+//z4dOnTg97//Pffccw933nkn99xzDyaTiY8//piTJ0/yj3/8Q9uPxo8fj7+/P0uWLOHRRx/FYDDw+eefk5WVVWdZUVFRfPXVV8TFxREZGYmbmxvR0dE8+OCD9OrVi759+xIYGEhmZiYffPABERERdOnSpdnbSQhxYSSIFeIqpfYnajKZ8PX1pUePHixcuJBZs2bV6Wh/5MiRrF27ljfffJO//e1vlJaW4u/vT48ePVwaZI0cOZLNmzfzwQcfYLFYCAsL4+abb+bBBx9stCxLly4lJCSETz/9lPfff5/evXvz2muvcd999zW7buj5HnjgAXr06MGHH37IV199hdVqJSQkhL59+zJ37lxtvFmzZgE13SY9/PDDRERE8MADD7B//36tAVhj3N3defvtt9mwYQMbNmzgL3/5C2VlZXh4eNCtWzemTZvGnDlz8PHxITk5mcTERH7961/XG8ACzJ49m/fee49PP/2Up59+usHlFhYWsnnzZiZMmFBvAAtw00038corr/Dpp5+2KIgFGDNmDG+++SYPPvigFsi2xHPPPUenTp349NNP+fjjj/H29mbcuHE89thj2qN9qNn+oaGhvP322zz99NMoikJERAQ333xzg/Pu1KmTFsjOmzePDz74gOHDh/P+++/z+uuv8+STT+J0OomJieE///kP1157rTatt7c3b731Fn/729/44x//iI+Pj/YWufO3929+8xvy8vJ4+umnqaioICIigs2bNzNixAg2bdrE2rVrKS8vJyQkhNGjR7N48WLtZkUIcfHplOY8wxFCiEvs4MGDzJ07l1deeUXrGUEIIYRQSRArhLjsdu7cSXx8PH379sXNzY3jx4+zYsUKfHx82LBhQ4NZSyGEEFcvqU4ghLjsvL292blzJx9++CEVFRUEBARwzTXX8Pvf/14CWCGEEPWSTKwQQgghhGh3pIstIYQQQgjR7kgQ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HqfTSWho6CWpoteiINZqtZKYmMj999/vMnzMmDHaI4bzHTp0iDFjxrgMGzduHOvWrWt2o4bmUE9K7u7ueHp6UlFRQVJSEt999x2RkZEYDAaOHTuGt7c3Xbp0wel0UlBQoE0zfPhw9u3bR3JyMj/88AOdOnViwIABrFy5kvz8fEaMGEF5eTkVFRV4enpiNpu1C6SiKISEhKDX6ykpKSE5ORlPT09KS0vp3LkzkZGRzXqbVEJCAidOnGDMmDGMGTOGqqoqEhIS2LRpE56enpekwvy8efO0upTPPPMMERERmM1mcnJy6Nq1q3YyXbBggXbSO3jwIG+//TYJCQnExMQQGBjIb37zG958802toVRQUBD333+/1rfr+Zlef39/SktLKS4ubvRiovYPazKZuPHGG7WDrrS0VOul4MyZMwDcdtttdOnSBYADBw6wbds29u3bx7hx47jhhhuIi4vj9ddfdwl2mttP7d69e/nf//5HUFAQI0aM4IcffuBf//oXd999N9HR0Xz88cecO3eOa6+9lsDAQLKzsykuLsZisTB06FDmz5/PBx98wPHjx3n66afp3r27VifW29ub4OBgzp49y5gxYxg6dCgWi4XDhw/zzTff4O3tza233qrdqOXl5WmPltetW4fFYuFvf/sb119/PT/88AOvvfYaAwYMIDg4GJvNRkZGBuPHj6eyspKioiK6deuGp6cnZWVl2Gw2FEWhe/fuzJ07l7feeovdu3eTkJBASEgIJSUlANp2vxDe3t64u7tTVVVFXl4eRqORvLw8vv76a/Lz87nnnntYt24dJSUl3HLLLQwePBgPDw8URdGy02+//Tapqalcf/31dO3alby8PHJycsjLy2Pw4MFNtr5fu3YtP/74I2FhYfzud79zOWnbbDZ++uknAAYNGsTNN9+sDd+/fz8nTpxAURT0ej2LFi1i+fLlWtbUaDRy22230aFDB21dz193aF4mtnb3WqqIiAjtO7WBzbXXXsuNN94I1DzxWLJkiRbEzpkzh6qqKo4cOeKSUQ4MDGzyBr853n//fY4dO0ZMTAwLFy7UzhOKojRZdQV+Pofo9Xoee+wxlzrhDoejWVVsFi9e3Oj33bt358yZM9x0001ce+21FBUVkZqayvHjx8nKynKpPtVa+fn5fPrpp5w9e5ZRo0bx448/0r9/f2666SYiIiIYOXIke/fu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t94iIj2lECsiphIeHo7FYqGurs6rvTMs9u/f32hzu90EBwd3eQs/MDDQ+N3X99F/hQ8/uOXh0OzxeB5pe3Aci8XyyLgWiwW3293lvB6suzdmzZpFamoqfn5+hISEGE8leNyDZx6se968ebz55pscP36ciooKnE4na9asISkpqU+1dLUmXdXSk/UWEXkS7YkVEVMZNGgQb7zxBjt37qS9vb3bvqNGjeL69ev4+PgQERHh9dPTT9WHh4djtVo5e/as0dbR0cG5c+cYMWLEU83lQa+99hput5vTp0/36ryAgAAiIiIIDQ31eqxWZGQkd+/e5ZdffjHampubqa+v96o7NDSUxMREtmzZwocffsjevXu7vI7VauXevXvd1hIZGcmVK1e4cuWK0Xbx4kXa2tr+07USEQGFWBExoXXr1nHv3j3eeecdioqKqK2tpa6ujkOHDlFXV2eEudjYWMaNG8fSpUspKyvjzz//5Oeff+arr7567G39hw0YMIDExETy8vL46aefuHjxIg6Hgzt37jB37tz/bE5Dhw5lzpw5ZGVlUVxcTGNjI1VVVRQVFfVpvGHDhjFt2jQcDgdnzpzhwoULrF69msGDBxuPH8vJyaGsrIzGxkZqamo4efLkY8NmWFgY7e3tVFZWcvPmTa+nLHSKjY3FZrORkZFBTU0N1dXVZGZm8vrrrzNmzJg+zUNE5HG0nUBETCc8PJwDBw5QUFBAfn4+V69exWq1EhkZyaJFi5g/fz5w//a90+nk66+/Jisri+bmZoKCgpg4cSJBQUE9vl5GRgYej4fMzEz++usvRo8ezbZt23jxxRf/03llZ2fz5Zdfkp2dTUtLC0OGDOGjjz7q83i5ubnk5OSQmppKR0cHEydOxOl0YrVagfvbLdavX09TUxMBAQFMnjyZtWvXdjmW3W7n/fffJy0tjZaWFpYtW8by5cu9+lgsFr755hs2bNjAggULsFgsTJ48GYfD0ec5iIg8jr6xS0RERERMR9sJRERERMR0FGJFRERExHQUYkVERETEdBRiRURERMR0FGJFRERExHQUYkVERETEdBRiRURERMR0FGJFRERExHQUYkVERETEdBRiRURERMR0FGJFRERExHQUYkVERETEdP4F+O1uwVxifbcAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from ledidi.plot import plot_edits\n", "from tangermeme.deep_lift_shap import deep_lift_shap\n", "\n", "mid, w = 1057, 40\n", "start, end = mid - w + 2, mid + w\n", "\n", "X_attr = deep_lift_shap(model, X_gata)[:, :, start:end]\n", "X_attr0 = deep_lift_shap(model, X_bar0)[:1, :, start:end]\n", "X_attr1 = deep_lift_shap(model, X_bar1)[:1, :, start:end]\n", "X_attr2 = deep_lift_shap(model, X_bar2)[:1, :, start:end]\n", "\n", "axs = plot_edits(X_attr, torch.cat([X_attr0, X_attr1, X_attr2], axis=0), figsize=(7, 3))\n", "\n", "axs[0].set_title(\"Designed GATA Knockouts\")\n", "plt.xlabel(\"Genomic Position\")\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "02eec672-2102-4dcb-9903-267386b7d753", "metadata": {}, "source": [ "These results are in line with what we would expect. In the first row, before any design is done, all three motifs exhibit high attribution. In the second row, where the editing is unrestrained, we see that left and right flanking motifs get removed. In the third row, where edits can only be made on the right flank of the sequence, the right flanking motif gets knocked out. In the fourth row, where edits can only be made on the left side, the left flanking motif gets knocked out.\n", "\n", "Essentially, we have used the mask to control which binding sites get removed by the editing process, and which ones remain completely in-tact." ] }, { "cell_type": "markdown", "id": "ff2013b6-de5a-4d51-9179-89e24a6a4425", "metadata": {}, "source": [ "#### Preventing Edits (No Added Cs)\n", "\n", "So far we have prevented edits of any type from being made at certain positions. However, we get more sophisticated than that and only block certain types of edits from being made. Because we can set any entry in the initial weight matrix to a -inf to prevent that character from being observed, we have complete flexibility over the positioning and composition of the edits. All we have to do is manually create our initial weight matrix and pass it in. Under the hood, modifying this weight matrix is what is happening when you pass in a mask. For example, let's consider an example where we want to block any Cs from being allowed in the sequence." ] }, { "cell_type": "code", "execution_count": 9, "id": "2b79410f-ccb9-40dc-b209-1ba07ab2f1ee", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "iter=I\tinput_loss=0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=0.0\n", "iter=100\tinput_loss=526.0\toutput_loss=0.05333\ttotal_loss=52.65\ttime=1.173\n", "iter=F\tinput_loss= 0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=1.173\n" ] } ], "source": [ "initial_weights = torch.zeros((1, 4, 2114)).float()\n", "initial_weights[:, 1, :] = float(\"-inf\")\n", "\n", "X_bar3 = ledidi(model, X_gata, y_bar, initial_weights=initial_weights).cuda()" ] }, { "cell_type": "code", "execution_count": 10, "id": "9b90fce6-b290-4c40-a6e6-c1ca0ab12ff0", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAArEAAAEiCAYAAADuwIpdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAACAHUlEQVR4nO3dd3gU1foH8O+29N4LpJCQBFIggUBI6KBUpQkIKIqCFP3Z8GKDa794VbxWVMSG0pReolTpJQFCgJBQkgAJ6bvZ9M22+f2xzmE3ddOz5P08Dw/J7OzO2cnuzDvvvOccAcdxHAghhBBCCDEhwo5uACGEEEIIIU1FQSwhhBBCCDE5FMQSQgghhBCTQ0EsIYQQQggxORTEEkIIIYQQk0NBLCGEEEIIMTkUxBJCCCGEEJNDQSwhhBBCCDE5FMQSQgghhBCTQ0EsIV3Mtm3bEBwczP6Fh4cjLi4Ojz/+OL777jtIpdI23f6XX36J4ODgNt1Ga3jttdcwcuRIo9bVarXYuXMnnn76aQwaNAihoaHo378/ZsyYgR9++AEymazO56lUKsTFxSE4OBh//fUXW17zb1Tfv5rtmzJlCoKDg/HDDz8Y/T6zs7PrfI5Go8Hrr7+O4OBgfPPNN0a/Xlt47bXXEBkZ2e7bXb9+PbZt29bu2yWEGEfc0Q0ghHSMlStXokePHlCr1ZBKpTh//jy+//57/Pjjj/jf//6H2NjYNtnu9OnTMWTIkDZ57Y6gUCiwZMkSnDp1CuPHj8fy5cvh5uaG8vJyJCUl4YcffsChQ4ewYcOGWs89cuQIioqKAABbtmzB2LFjAQDDhw/H5s2bDdadOXMmxowZg6eeeootMzMzYz+npqbi6tWr7LWefvrpZr8npVKJpUuX4uDBg3jrrbcwe/bsZr+WKdu4cSMcHR0xderUjm4KIaQOFMQS0kX17NkT4eHh7PcxY8bgySefxOzZs/Hcc89h//79cHFxafXtenh4wMPDo9Vft6P85z//wcmTJ7Fq1SpMnDjR4LERI0Zg8eLF2L17d53P3bJlCyQSCQYMGICTJ08iLy8PHh4ecHJygpOTU631XVxc0Ldv3zpf648//gCgC4CPHDmCCxcuICoqqsnvp7KyEs8++ywSExPxySefYMKECU1+DUIIaQ9UTkAIYby8vPDqq6+ioqICmzZtMnjs8uXLWLRoEQYMGIDw8HBMnjwZ8fHxButUVVXhv//9L0aOHInw8HAMGDAAU6dOxZ49e9g6dZUTKJVKfPjhh4iLi0OfPn0wZ84cXLlyBSNHjsRrr73G1uNvs585cwZvvfUWBg4ciIEDB+K5555Dfn5+rfcTHx+PmTNnom/fvoiMjMTTTz/NspX6tm3bhjFjxiAsLAzjxo3Djh07jNpfBQUF2Lp1K4YPH14rgOVZWlpixowZtZbn5+fj+PHjGDlyJJ5++mlotdpm37qurq7Gnj17EBoaitdffx0AsHXr1ia/TklJCebNm4cLFy7g66+/rhXANmX/a7VafP/99xg7dizCwsIwaNAgLFu2DHl5ebW2e+zYMTzxxBPo168f+vTpg3HjxuG7775rsK3nz5/HwIEDsXDhQlRWVgIAzp07hyeeeAKRkZHo06cPHn30URw5csTgefWVs/DvLTs7GwAwcuRI3LhxAwkJCbXKN7RaLVavXo0xY8YgIiIC/fv3x0MPPYRffvml4R1MCGlVlIklhBgYNmwYRCIRzp07x5adOXMG8+fPR58+ffD222/D1tYW8fHxeOmll6BQKNjt1pUrV2LXrl148cUX0atXL1RVVeH69euQy+UNbvP1119HfHw85s+fj5iYGNy8eRPPPfccysvL61x/+fLlGD58OFatWoXc3Fx8/PHH+Ne//oV169axdb799lt89tlnmDp1KhYvXgyVSoUffvgBc+bMwR9//IHAwEAAuuDl9ddfx6hRo/Daa6+hrKwMX331FZRKJYTChq/zz549C7VabXTtrL7t27dDo9Fg2rRpiI2Nhbe3N7Zu3YrFixdDIBA06bX279+PkpISvPDCC/Dz80O/fv0QHx+PN954A9bW1ka9RmFhIR577DHk5ubihx9+QP/+/etd15j9//bbb2Pz5s147LHHMHz4cNy9exeff/45EhISsG3bNpZp/uOPP7BixQpER0fjnXfegbOzMzIzM3Hjxo16tx8fH49XX30V06ZNw4oVKyASiZCQkICnnnoKQUFB+OCDD2BmZoaNGzdi0aJF+PTTTzF+/Hgj96bOV199heeffx62trZ46623ANwr31i7di2++uorLF68GP3794darUZGRgbKysqatA1CSAtxhJAuZevWrVxQUBB36dKleteJjY3lxo0bx34fO3YsN3nyZE6lUhmst3DhQi4uLo7TaDQcx3HcxIkT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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X_attr3 = deep_lift_shap(model, X_bar3)[:1, :, start:end]\n", "axs = plot_edits(X_attr, X_attr3, figsize=(7, 3))\n", "\n", "axs[0].set_title(\"Designed GATA Knockouts\")\n", "plt.xlabel(\"Genomic Position\")\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "f9f29917-1e1c-4710-93c1-d90aad5755c0", "metadata": {}, "source": [ "C's do not play a big role in the GATA motif which, notoriously, does not have any C's in it. But you can see that, in addition to our original design task, we have converted all the C's in the sequence into something else while still achieving our design goal.\n", "\n", "Likely, you do not actually want to remove all instances of a particular nucleotide from your sequence. But you might want to prevent certain nucleotides from being edited in, potentially due to issues with prime or base editing. To do this, all we have to do is change the initial weight matrix to have a -inf at the C position but only when the initial sequence is not C.initial_weights = torch.zeros((1, 4, 2114)).float()\n", "initial_weights[:, 1, :] = float(\"-inf\")\n", "\n", "X_bar3 = ledidi(model, X_gata, y_bar, initial_weights=initial_weights).cuda()" ] }, { "cell_type": "code", "execution_count": 11, "id": "227276ad-adef-4db4-83e0-1addade08b66", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "iter=I\tinput_loss=0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=0.0\n", "iter=100\tinput_loss=2.375\toutput_loss=0.01549\ttotal_loss=0.253\ttime=1.162\n", "iter=F\tinput_loss=2.062\toutput_loss=0.01364\ttotal_loss=0.2199\ttime=2.164\n" ] } ], "source": [ "initial_weights = torch.zeros((1, 4, 2114)).float()\n", "initial_weights[:, 1, :] = float(\"-inf\")\n", "initial_weights[0, X_gata.argmax(axis=1)[0], :] = 0\n", "\n", "X_bar4 = ledidi(model, X_gata, y_bar, initial_weights=initial_weights).cuda()" ] }, { "cell_type": "code", "execution_count": 12, "id": "4105b5a4-3737-40f9-9482-8f634f83cc51", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X_attr4 = deep_lift_shap(model, X_bar4)[:1, :, start:end]\n", "axs = plot_edits(X_attr, X_attr4, figsize=(7, 3))\n", "\n", "axs[0].set_title(\"Designed GATA Knockouts\")\n", "plt.xlabel(\"Genomic Position\")\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "2c18001e-8054-4a0d-b190-adb43f541265", "metadata": {}, "source": [ "This set of edits seems more reasonable. Positions that were originally C are allowed to remain that way but we cannot add in any more Cs.\n", "\n", "Naturally, this concept can be extended past a complete blocking of Cs. Individual positions can be blocked from making specific edits. For instance, the G in each of the GATAA motif might be blocked from becoming a T because that would turn the GATAA into a TATAA, which might have sub-optimal outcomes. Because it is common for protein binding sites to have similar motifs, in high-stakes situations you may need to block some specific edits from being made to prevent the knock-out for one protein to accidentally turn into a knock-in for another one." ] }, { "cell_type": "markdown", "id": "3fb07077-995f-4721-8dd1-15c3cf23046f", "metadata": {}, "source": [ "#### Adding in Motifs\n", "\n", "Although the idea is somewhat contradictory, we can also use careful usage of a mask to force edits to happen -- even editing in an entire motif. In our initial usage of a mask, we set all the characters to -inf except the one in the initial sequence. If we set all the characters to -inf except for some other character, we could force that edit ot be included in the design. Keep in mind that this is not the same as simply making the change before or after running Ledidi. If we made the edit before, Ledidi could potentially remove it. If we made the edit after, the sequence might no longer have the desired properties because other necessary edits were made in that region, or the inclusion of the motif diminishes or increases signal past what one wanted. Conceptually, it is the same as making edits and then masking the region out without needing to alter the initial sequence." ] }, { "cell_type": "code", "execution_count": 13, "id": "7fddd57a-c49a-409a-a920-a26d343dd875", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "iter=I\tinput_loss=0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=0.0\n", "iter=100\tinput_loss=11.5\toutput_loss=0.002746\ttotal_loss=0.1177\ttime=1.175\n", "iter=F\tinput_loss=11.44\toutput_loss=0.001603\ttotal_loss=0.116\ttime=2.33\n" ] } ], "source": [ "initial_weights = torch.zeros((1, 4, 2114)).float()\n", "initial_weights[:, :, 1050:1060] = float(\"-inf\")\n", "initial_weights[:, [2, 0, 2, 0, 3, 0, 0, 2, 0, 0], range(1050, 1060)] = 0\n", "\n", "torch.manual_seed(0)\n", "X_bar5 = ledidi(model, X_gata, y_bar, l=0.01, initial_weights=initial_weights).cuda()" ] }, { "cell_type": "code", "execution_count": 14, "id": "d2ba55d8-4c8e-4628-908b-749c964a68a1", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X_attr5 = deep_lift_shap(model, X_bar5)[:1, :, start:end]\n", "axs = plot_edits(X_attr, X_attr5, figsize=(7, 3))\n", "\n", "axs[0].set_title(\"Designed GATA Knockouts\")\n", "plt.xlabel(\"Genomic Position\")\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "b67d6a1d-ca1b-4428-81ce-1e496234d68a", "metadata": {}, "source": [ "In this example you can see that we have moved the middle GATA motif over by a few nucleotides and still achieved our objective by eliminating the GATA motif on the right flank." ] }, { "cell_type": "markdown", "id": "e13dda4a-7c78-4dae-bb53-c71a325043bb", "metadata": {}, "source": [ "#### Priors\n", "\n", "If masks can be thought of as a hard constraint, priors can be viewed as a soft constraint. Rather than forcing a position to not be edited, we can nudge the optimization problem in a certain direction. Using priors does not force Ledidi to design anything in particular (unless the prior is set to such a high value that nothing else is feasible), but simply rewards Ledidi is the priors can be used in a successful design.\n", "\n", "Priors are implemented in Ledidi by providing an initial weight matrix that is not just entirely zeroes, like the vanilla Ledidi weight matrix, or zeroes with some -infs in it, as Ledidi does when it has hard constraints. Because this weight matrix encodes logits used in the Gumbel-softmax distribution, positive values mean it is more likely that these values are drawn and negative values mean less likely.\n", "\n", "An important note about setting priors like this is that they can be undone by the training procedure and, once undone, are almost as if they were never set at all. Basically, even if set to a high value initially, if the design process takes many steps and each step decreases this value, you may find that those initial values are gone forever.\n", "\n", "To see the use of priors in action, we can mimic the masked section by trying to knock out a specific GATA binding site by setting a span of characters in the middle to having a high likelihood of being Cs. Remember that we are not forcing the characters to be Cs (although we could by setting the value to inf instead of just high), but rather just pushing the model in that direction." ] }, { "cell_type": "code", "execution_count": 15, "id": "4ac11af1-97af-4880-a63f-864589eb4cc2", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "iter=I\tinput_loss=0.0\toutput_loss=0.25\ttotal_loss=0.25\ttime=0.0\n", "iter=100\tinput_loss=16.75\toutput_loss=0.001271\ttotal_loss=0.1688\ttime=1.17\n", "iter=200\tinput_loss=22.31\toutput_loss=0.003895\ttotal_loss=0.227\ttime=1.166\n", "iter=F\tinput_loss=13.62\toutput_loss=0.003672\ttotal_loss=0.1399\ttime=2.43\n" ] } ], "source": [ "initial_weights = torch.zeros((1, 4, 2114)).float()\n", "initial_weights[:, :, 1057-5:1057+5] = 0\n", "initial_weights[:, 1, 1057-5:1057+5] = 1000\n", "\n", "torch.manual_seed(0)\n", "X_bar6 = ledidi(model, X_gata, y_bar, l=0.01, initial_weights=initial_weights).cuda()" ] }, { "cell_type": "markdown", "id": "92e2eb62-9c9f-4195-9f10-359134379638", "metadata": {}, "source": [ "And we can visualize the results in the same way as before. " ] }, { "cell_type": "code", "execution_count": 16, "id": "7f19c592-2caf-41c8-ad95-136c7ea459cd", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X_attr6 = deep_lift_shap(model, X_bar6)[:1, :, start:end]\n", "axs = plot_edits(X_attr, X_attr6, figsize=(7, 3))\n", "\n", "axs[0].set_title(\"Designed GATA Knockouts\")\n", "plt.xlabel(\"Genomic Position\")\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "590121ff-437d-45de-ad0f-9262ca762f2b", "metadata": {}, "source": [ "It is a little difficult to see, but there is a span of C's in the middle there that are all edits." ] }, { "cell_type": "markdown", "id": "5d29cedd-b431-4f0b-b0ab-c00bc2d4fcdc", "metadata": {}, "source": [ "### Conclusions\n", "\n", "Hard constraints and soft priors can be important components of design. These tools allow you to incorporate prior knowledge into the design either in the form of knowing things that cannot be touched (but may not be known about by the model being used for design), or knowledge about types of edits that might be experimentally challenging to achieve. As we have seen, Ledidi is able to seamlessly incorporate both types of constraints into the design process, meaning that you do not have to post-hoc account for any inconveniences caused by an unconstrained design process." ] } ], "metadata": { "kernelspec": { "display_name": "Python [conda env:root]", "language": "python", "name": "conda-root-py" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.2" } }, "nbformat": 4, "nbformat_minor": 5 }