{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# SYDE 556/750: Simulating Neurobiological Systems\n", "\n", "Accompanying Readings: Chapter 8\n", "\n", "ADMIN STUFF: Next assignment, project proposal due dates" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "\n", "## Dynamics\n", "\n", "- Everything we've looked at so far has been feedforward\n", " - There's some pattern of activity in one group of neurons representing $x$\n", " - We want that to cause some pattern of activity in another group of neurons to represent $y=f(x)$\n", " - These can be chained together to make more complex systems $z=h(f(x)+g(y))$\n", "- What about recurrent networks?\n", " - What happens when we connect a neural group back to itself?\n", " \n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Recurrent functions\n", "\n", "- What if we do exactly what we've done so far in the past, but instead of connecting one group of neurons to another, we just connect it back to itself\n", " - Instead of $y=f(x)$\n", " - We get $x=f(x)$ (???)\n", "- As written, this is clearly non-sensical\n", " - For example, if we do $f(x)=x+1$ then we'd have $x=x+1$, or $x-x=1$, or $0=1$\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "- But don't forget about time\n", " - What if it was $x_{t+1} = f(x_t)$\n", " - Which makes more sense because we're talking about a real physical system\n", " - This is a lot like a differential equation\n", " - What would happen if we built this?" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Try it out\n", "\n", "- Let's try implementing this kind of circuit\n", "- Start with $x_{t+1}=x_t+1$ " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "%pylab inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/html": [ "\n", "