{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Uczenie maszynowe 2019/2020 – laboratoria\n", "### 18/19 maja 2020\n", "# 10. Sieci neuronowe - wprowadzenie" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Poniżej znajduje się implementacja prostej sieci neuronowej dla problemu klasyfikacji binarnej na przykładzie losowo wygenerowanego zestawu danych.\n", "\n", "W sieciach jednokierunkowych (ang. _feedforward_) wartości neuronów w $i$-tej warstwie są obliczane na podstawie wartości neuronów warstwy $i-1$. Mając daną $n$-warstwową sieć neuronową oraz jej parametry $\\Theta^{(1)}, \\ldots, \\Theta^{(n)} $ oraz $\\beta^{(1)}, \\ldots, \\beta^{(n)}$ liczymy: \n", "$$a^{(i)} = g^{(i)}\\left( a^{(i-1)} \\Theta^{(i)} + \\beta^{(i)} \\right) \\; , $$\n", "gdzie $g^{(i)}$ to tzw. **funkcje aktywacji**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Zadanie 10" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Część podstawowa (4 punkty)\n", "\n", " * Zaimplementuj funkcję `accuracy()` liczącą skuteczność klasyfikacji.\n", " * Za jej pomocą oblicz i wypisz końcową skuteczność klasyfikatora.\n", " * Wypisuj również wartość `accuracy` podczas trenowania (przy okazji wypisywania wartości funkcji kosztu).\n", " * Zbuduj sieci neuronowe dla różnych wielkości warstwy ukrytej (`dim_hid` = 1, 2, 5, 10, 25). Porównaj skuteczność tych modeli." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Część zaawansowana (2 punkty)\n", "\n", "Zastosuj poniższą implementację sieci neuronowej do klasyfikacji binarnej zbioru wygenerowanego za pomocą wybranej funkcji [sklearn.datasets](http://scikit-learn.org/stable/modules/classes.html#samples-generator). Ustal rozmiary warstw wejściowej ($n \\gt 2$) i ukrytej, dobierz odpowiednie parametry sieci (parametr $\\alpha$, liczba epok, wielkość warstwy ukrytej). Podaj skuteczność klasyfikacji." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [], "source": [ "import numpy as np\n", "from sklearn import datasets\n", "import matplotlib.pyplot as plt\n", "\n", "\n", "def generate_data():\n", " # Keep results deterministic\n", " np.random.seed(1234)\n", " X, y = datasets.make_moons(200, noise=0.25)\n", " # X, y = datasets.make_classification(200, 2, 2, 0)\n", " return X, y\n", "\n", "def visualize(X, y, model=None):\n", " x_min, x_max = X[:, 0].min() - .5, X[:, 0].max() + .5\n", " y_min, y_max = X[:, 1].min() - .5, X[:, 1].max() + .5\n", " h = 0.01\n", " xx, yy = np.meshgrid(\n", " np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))\n", " if model:\n", " Z = predict(model, np.c_[xx.ravel(), yy.ravel()])\n", " Z = Z.reshape(xx.shape)\n", " plt.contourf(xx, yy, Z, cmap=plt.cm.viridis)\n", " plt.scatter(X[:, 0], X[:, 1], c=y, cmap=plt.cm.viridis)\n", " plt.show()\n", "\n", "def initialize_model(dim_in=2, dim_hid=3, dim_out=2):\n", " # Keep results deterministic\n", " np.random.seed(1234)\n", " W1 = np.random.randn(dim_in, dim_hid) / np.sqrt(dim_in)\n", " b1 = np.zeros((1, dim_hid))\n", " W2 = np.random.randn(dim_hid, dim_out) / np.sqrt(dim_hid)\n", " b2 = np.zeros((1, dim_out))\n", " return W1, b1, W2, b2\n", "\n", "def softmax(X):\n", " e = np.exp(X)\n", " return e / np.sum(e, axis=1, keepdims=True)\n", "\n", "def predict(model, X):\n", " W1, b1, W2, b2 = model\n", " z1 = X.dot(W1) + b1\n", " a1 = np.tanh(z1)\n", " z2 = a1.dot(W2) + b2\n", " probs = softmax(z2)\n", " return np.argmax(probs, axis=1)\n", "\n", "def calculate_cost(model, X, y):\n", " W1, b1, W2, b2 = model\n", " z1 = X.dot(W1) + b1\n", " a1 = np.tanh(z1)\n", " z2 = a1.dot(W2) + b2\n", " probs = softmax(z2)\n", " preds = probs[:, 1]\n", " return -1. / len(y) * np.sum(\n", " np.multiply(y, np.log(preds)) + np.multiply(1 - y, np.log(1 - preds)),\n", " axis=0)\n", "\n", "def accuracy(model, X, y):\n", " # TODO: Napisz funkcję obliczającą skuteczność.\n", " pass\n", "\n", "def train(model, X, y, alpha=0.01, epochs=10000, debug=False):\n", " W1, b1, W2, b2 = model\n", " m = len(X)\n", "\n", " for i in range(epochs):\n", " # Forward propagation\n", " z1 = X.dot(W1) + b1\n", " a1 = np.tanh(z1)\n", " z2 = a1.dot(W2) + b2\n", " probs = softmax(z2)\n", "\n", " # Backpropagation\n", " delta3 = probs\n", " delta3[range(m), y] -= 1\n", " dW2 = (a1.T).dot(delta3)\n", " db2 = np.sum(delta3, axis=0, keepdims=True)\n", " delta2 = delta3.dot(W2.T) * (1 - np.power(a1, 2))\n", " dW1 = np.dot(X.T, delta2)\n", " db1 = np.sum(delta2, axis=0)\n", "\n", " # Parameter update\n", " W1 -= alpha * dW1\n", " b1 -= alpha * db1\n", " W2 -= alpha * dW2\n", " b2 -= alpha * db2\n", "\n", " # Print loss\n", " if debug and i % 1000 == 0:\n", " model = (W1, b1, W2, b2)\n", " print(\"Cost after iteration {}: {:.4f}\".format(i, calculate_cost(\n", " model, X, y)))\n", " # TODO: Wypisz skuteczność (accuracy) klasyfikacji w tym miejscu\n", "\n", " return W1, b1, W2, b2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [ { "data": { "image/png": "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\n", "image/svg+xml": [ "\r\n", "\r\n", "\r\n", "\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", "\r\n" ], "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "X, y = generate_data()\n", "visualize(X, y)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cost after iteration 0: 0.4692\n", "Cost after iteration 1000: 0.1527\n", "Cost after iteration 2000: 0.1494\n", "Cost after iteration 3000: 0.1478\n", "Cost after iteration 4000: 0.1458\n", "Cost after iteration 5000: 0.1444\n", "Cost after iteration 6000: 0.1433\n", "Cost after iteration 7000: 0.1423\n", "Cost after iteration 8000: 0.1415\n", "Cost after iteration 9000: 0.1407\n" ] }, { "data": { "image/png": "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\n", "image/svg+xml": [ "\r\n", "\r\n", "\r\n", "\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", "\r\n" ], "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "model = train(initialize_model(dim_hid=5), X, y, debug=True)\n", "visualize(X, y, model)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "hide_input": false, "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.3" } }, "nbformat": 4, "nbformat_minor": 4 }