{ "cells": [ { "cell_type": "markdown", "id": "liked-catholic", "metadata": {}, "source": [ "## Noisy neuron access consciousness\n", "\n", "The point of this notebook is to show that a very simple system can produce similar data as seen in Figure 4B of this paper: https://science.sciencemag.org/content/369/6511/1626.\n", "\n", "The idea of the model is this: We are given a stimulus intensity between 0 and 1. We have one neuron that copies this stimulus intensity at the stimulus offset. Now during the delay period (2500 time steps in this case), this value is gradually corrupted by random noise. We say that whatever value the neuron has at the end will decide the action of our neuron, i.e. it will dictate whether the neuron considers the stimulus as 'seen' or 'not seen'. We will define any value below 0.5 as 'not seen', and above as 'seen'." ] }, { "cell_type": "code", "execution_count": 1, "id": "duplicate-history", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import random\n", "from darts import TimeSeries\n", "from darts.utils import timeseries_generation as tg\n", "\n", "LENGTH = 2500" ] }, { "cell_type": "code", "execution_count": 3, "id": "quality-translation", "metadata": {}, "outputs": [], "source": [ "stimulus_intensity_ts = tg.constant_timeseries(value=1, length=LENGTH)\n", "noise = tg.random_walk_timeseries(length=LENGTH, std=0.01)" ] }, { "cell_type": "markdown", "id": "surprising-diagram", "metadata": {}, "source": [ "We will assume that at every time step, gaussian noise with a mean of 0 and a standard deviation of 0.01 will be added to the state of the neuron. We can do this by computing gaussian random walks like the one below and add them to a constant time series of the initial stimulus value." ] }, { "cell_type": "code", "execution_count": 4, "id": "dimensional-girlfriend", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "(stimulus_intensity_ts + noise).plot()" ] }, { "cell_type": "markdown", "id": "ambient-connecticut", "metadata": {}, "source": [ "As measure for accuracy we compute 1 minus the distance between the actual value, be that stimulus intensity or the decision that the neuron encodes at the end." ] }, { "cell_type": "code", "execution_count": 28, "id": "residential-vaccine", "metadata": {}, "outputs": [], "source": [ "stimulus_predictions = []\n", "decision_predictions = []\n", "\n", "for trial in range(200):\n", " stimulus_intensity = random.uniform(0, 1)\n", " stimulus_intensity_ts = tg.constant_timeseries(value=stimulus_intensity, length=LENGTH)\n", " noise = tg.random_walk_timeseries(length=LENGTH, std=0.005)\n", " neuron_activity = stimulus_intensity_ts + noise\n", " \n", " decision = int(neuron_activity.last_value() > 0.5)\n", " decision_ts = tg.constant_timeseries(value=decision, length=LENGTH)\n", " \n", " stimulus_prediction_performance = 1 - abs(stimulus_intensity - neuron_activity)\n", " stimulus_predictions.append(stimulus_prediction_performance)\n", " \n", " decision_prediction = neuron_activity.map(lambda x: int(x > 0.5))\n", " decision_prediction_performance = 1 - abs(decision_ts - decision_prediction)\n", " decision_predictions.append(decision_prediction_performance)\n", "\n" ] }, { "cell_type": "code", "execution_count": 29, "id": "clear-science", "metadata": {}, "outputs": [], "source": [ "avg_stimulus_prediction = sum(stimulus_predictions) / len(stimulus_predictions)\n", "avg_decision_prediction = sum(decision_predictions) / len(decision_predictions)" ] }, { "cell_type": "code", "execution_count": 31, "id": "falling-folder", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "avg_stimulus_prediction.plot(label='Prediction of stimulus intensity')\n", "avg_decision_prediction.plot(label='Prediction of decision')\n", "plt.ylabel('Prediction accuracy')\n", "plt.legend()" ] }, { "cell_type": "markdown", "id": "israeli-local", "metadata": {}, "source": [ "This plot shares the relevant properties of Figure 4B of the paper after the delay onset in the sense that the neuron transissions from at first mainly encoding stimulus intensity to encoding the action/decision that will be made based on our rule mentioned above." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "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.8.8" } }, "nbformat": 4, "nbformat_minor": 5 }