From 302ba26f4e68efc7e290b0c543bf4c744db667d4 Mon Sep 17 00:00:00 2001 From: bigbrowncow Date: Wed, 1 Mar 2017 22:02:11 +0000 Subject: [PATCH] Add files via upload --- demo_full_notes.ipynb | 271 +++++++++++++++++++++++------------------- 1 file changed, 150 insertions(+), 121 deletions(-) diff --git a/demo_full_notes.ipynb b/demo_full_notes.ipynb index 2c4e7c7..7ae7830 100644 --- a/demo_full_notes.ipynb +++ b/demo_full_notes.ipynb @@ -36,7 +36,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 1, "metadata": { "collapsed": false, "scrolled": true @@ -51,7 +51,7 @@ "" ] }, - "execution_count": 36, + "execution_count": 1, "metadata": {}, "output_type": "execute_result" } @@ -68,7 +68,7 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 2, "metadata": { "collapsed": true }, @@ -88,7 +88,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 3, "metadata": { "collapsed": false }, @@ -97,15 +97,15 @@ "name": "stdout", "output_type": "stream", "text": [ - "(array([[0, 0, 1, ..., 0, 0, 0],\n", + "(array([[1, 1, 0, ..., 1, 1, 0],\n", + " [0, 0, 1, ..., 1, 0, 1],\n", + " [0, 1, 1, ..., 0, 1, 0],\n", " [0, 0, 0, ..., 0, 0, 1],\n", - " [1, 0, 1, ..., 1, 0, 1],\n", + " [0, 1, 0, ..., 1, 0, 1]]), array([[0, 0, 0, ..., 0, 0, 0],\n", + " [1, 1, 0, ..., 0, 0, 0],\n", " [1, 0, 1, ..., 1, 1, 0],\n", - " [0, 1, 1, ..., 0, 0, 1]]), array([[0, 0, 0, ..., 0, 0, 1],\n", - " [0, 0, 0, ..., 1, 1, 1],\n", - " [0, 0, 1, ..., 0, 0, 1],\n", - " [1, 0, 1, ..., 1, 0, 1],\n", - " [1, 1, 0, ..., 1, 1, 1]]))\n" + " [0, 1, 0, ..., 0, 0, 1],\n", + " [0, 0, 1, ..., 1, 0, 1]]))\n" ] } ], @@ -143,7 +143,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 4, "metadata": { "collapsed": false }, @@ -157,7 +157,7 @@ "" ] }, - "execution_count": 24, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -170,7 +170,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 5, "metadata": { "collapsed": true }, @@ -203,7 +203,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 6, "metadata": { "collapsed": true }, @@ -237,7 +237,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 7, "metadata": { "collapsed": false }, @@ -251,7 +251,7 @@ "" ] }, - "execution_count": 27, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -262,7 +262,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 8, "metadata": { "collapsed": true }, @@ -274,8 +274,9 @@ "# Unpack columns\n", "#Unpacks the given dimension of a rank-R tensor into rank-(R-1) tensors.\n", "#so a bunch of arrays, 1 batch per time step\n", - "inputs_series = tf.unpack(batchX_placeholder, axis=1)\n", - "labels_series = tf.unpack(batchY_placeholder, axis=1)" + "#Use unstack for TF V1.0\n", + "inputs_series = tf.unstack(batchX_placeholder, axis=1)\n", + "labels_series = tf.unstack(batchY_placeholder, axis=1)" ] }, { @@ -287,7 +288,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 9, "metadata": { "collapsed": false }, @@ -301,7 +302,7 @@ "" ] }, - "execution_count": 29, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -321,9 +322,9 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 10, "metadata": { - "collapsed": true + "collapsed": false }, "outputs": [], "source": [ @@ -341,7 +342,7 @@ " #format input\n", " current_input = tf.reshape(current_input, [batch_size, 1])\n", " #mix both state and input data \n", - " input_and_state_concatenated = tf.concat(1, [current_input, current_state]) # Increasing number of columns\n", + " input_and_state_concatenated = tf.concat(values=[current_input, current_state],axis=1) # Increasing number of columns. Use new convention for TF 1.0\n", " #perform matrix multiplication between weights and input, add bias\n", " #squash with a nonlinearity, for probabiolity value\n", " next_state = tf.tanh(tf.matmul(input_and_state_concatenated, W) + b) # Broadcasted addition\n", @@ -360,7 +361,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 11, "metadata": { "collapsed": false }, @@ -374,7 +375,7 @@ "" ] }, - "execution_count": 31, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } @@ -392,9 +393,9 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 12, "metadata": { - "collapsed": true + "collapsed": false }, "outputs": [], "source": [ @@ -409,7 +410,7 @@ "#measures the difference between two probability distributions\n", "#this will return A Tensor of the same shape as labels and of the same type as logits \n", "#with the softmax cross entropy loss.\n", - "losses = [tf.nn.sparse_softmax_cross_entropy_with_logits(logits, labels) for logits, labels in zip(logits_series,labels_series)]\n", + "losses = [tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits, labels=labels) for logits, labels in zip(logits_series,labels_series)]\n", "#computes average, one value\n", "total_loss = tf.reduce_mean(losses)\n", "#use adagrad to minimize with .3 learning rate\n", @@ -446,7 +447,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 13, "metadata": { "collapsed": true }, @@ -483,24 +484,15 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": null, "metadata": { "collapsed": false }, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From :3 in .: initialize_all_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02.\n", - "Instructions for updating:\n", - "Use `tf.global_variables_initializer` instead.\n" - ] - }, { "data": { "text/plain": [ - "" + "" ] }, "metadata": {}, @@ -511,56 +503,121 @@ "output_type": "stream", "text": [ "New data, epoch 0\n", - "Step 0 Loss 0.694274\n", - "Step 100 Loss 0.694601\n", - "Step 200 Loss 0.698367\n", - "Step 300 Loss 0.691077\n", - "Step 400 Loss 0.695672\n", - "Step 500 Loss 0.700865\n", - "Step 600 Loss 0.703006\n", + "Step 0 Loss 0.750204\n", + "Step 100 Loss 0.690701\n", + "Step 200 Loss 0.705412\n", + "Step 300 Loss 0.693443\n", + "Step 400 Loss 0.694005\n", + "Step 500 Loss 0.704948\n", + "Step 600 Loss 0.694155\n", "New data, epoch 1\n", - "Step 0 Loss 0.689579\n", - "Step 100 Loss 0.697464\n", - "Step 200 Loss 0.675731\n", - "Step 300 Loss 0.693432\n", - "Step 400 Loss 0.69857\n", - "Step 500 Loss 0.691433\n", - "Step 600 Loss 0.695144\n", + "Step 0 Loss 0.685447\n", + "Step 100 Loss 0.693303\n", + "Step 200 Loss 0.692341\n", + "Step 300 Loss 0.69659\n", + "Step 400 Loss 0.696923\n", + "Step 500 Loss 0.69113\n", + "Step 600 Loss 0.687985\n", "New data, epoch 2\n", - "Step 0 Loss 0.687036\n", - "Step 100 Loss 0.692382\n", - "Step 200 Loss 0.528434\n", - "Step 300 Loss 0.0380583\n", - "Step 400 Loss 0.0206784\n", - "Step 500 Loss 0.0193994\n", - "Step 600 Loss 0.00806456\n", + "Step 0 Loss 0.693967\n", + "Step 100 Loss 0.683915\n", + "Step 200 Loss 0.690287\n", + "Step 300 Loss 0.689661\n", + "Step 400 Loss 0.688611\n", + "Step 500 Loss 0.690039\n", + "Step 600 Loss 0.697008\n", "New data, epoch 3\n", - "Step 0 Loss 0.253958\n", - "Step 100 Loss 0.00741629\n", - "Step 200 Loss 0.00585695\n", - "Step 300 Loss 0.0049752\n", - "Step 400 Loss 0.00385626\n", - "Step 500 Loss 0.00346152\n", - "Step 600 Loss 0.00304733\n", + "Step 0 Loss 0.694872\n", + "Step 100 Loss 0.695032\n", + "Step 200 Loss 0.695153\n", + "Step 300 Loss 0.693118\n", + "Step 400 Loss 0.695594\n", + "Step 500 Loss 0.694857\n", + "Step 600 Loss 0.691996\n", "New data, epoch 4\n", - "Step 0 Loss 0.18807\n", - "Step 100 Loss 0.00286971\n", - "Step 200 Loss 0.00264319\n", - "Step 300 Loss 0.00214223\n", - "Step 400 Loss 0.00237676\n", - "Step 500 Loss 0.00214094\n", - "Step 600 Loss 0.00204883\n" + "Step 0 Loss 0.701297\n", + "Step 100 Loss 0.691102\n", + "Step 200 Loss 0.695521\n", + "Step 300 Loss 0.691362\n", + "Step 400 Loss 0.697917\n", + "Step 500 Loss 0.69154\n", + "Step 600 Loss 0.687599\n", + "New data, epoch 5\n", + "Step 0 Loss 0.69331\n", + "Step 100 Loss 0.681797\n", + "Step 200 Loss 0.678573\n", + "Step 300 Loss 0.682002\n", + "Step 400 Loss 0.573232\n", + "Step 500 Loss 0.570528\n", + "Step 600 Loss 0.564054\n", + "New data, epoch 6\n", + "Step 0 Loss 0.486219\n", + "Step 100 Loss 0.556778\n", + "Step 200 Loss 0.403246\n", + "Step 300 Loss 0.312297\n", + "Step 400 Loss 0.138694\n", + "Step 500 Loss 0.0388277\n", + "Step 600 Loss 0.0286313\n", + "New data, epoch 7\n", + "Step 0 Loss 0.210464\n", + "Step 100 Loss 0.0148813\n", + "Step 200 Loss 0.0120166\n", + "Step 300 Loss 0.0124786\n", + "Step 400 Loss 0.0109747\n", + "Step 500 Loss 0.0074821\n", + "Step 600 Loss 0.00717302\n", + "New data, epoch 8\n", + "Step 0 Loss 0.175907\n", + "Step 100 Loss 0.00588585\n", + "Step 200 Loss 0.00555157\n", + "Step 300 Loss 0.00549456\n", + "Step 400 Loss 0.00738931\n", + "Step 500 Loss 0.00400051\n", + "Step 600 Loss 0.0035037\n", + "New data, epoch 9\n", + "Step 0 Loss 0.254644\n", + "Step 100 Loss 0.00343027\n", + "Step 200 Loss 0.00331434\n", + "Step 300 Loss 0.00293136\n", + "Step 400 Loss 0.00261806\n", + "Step 500 Loss 0.00290736\n", + "Step 600 Loss 0.00281621\n", + "New data, epoch 10\n", + "Step 0 Loss 0.303174\n", + "Step 100 Loss 0.00280853\n", + "Step 200 Loss 0.00305283\n", + "Step 300 Loss 0.00307812\n", + "Step 400 Loss 0.0031034\n", + "Step 500 Loss 0.00238453\n", + "Step 600 Loss 0.00228345\n", + "New data, epoch 11\n", + "Step 0 Loss 0.268247\n", + "Step 100 Loss 0.00242884\n", + "Step 200 Loss 0.00182146\n", + "Step 300 Loss 0.00210676\n", + "Step 400 Loss 0.00183384\n", + "Step 500 Loss 0.00175889\n", + "Step 600 Loss 0.00162106\n", + "New data, epoch 12\n", + "Step 0 Loss 0.240926\n", + "Step 100 Loss 0.0021215\n", + "Step 200 Loss 0.00150442\n", + "Step 300 Loss 0.00150672\n", + "Step 400 Loss 0.00179223\n", + "Step 500 Loss 0.00149068\n", + "Step 600 Loss 0.00144401\n", + "New data, epoch 13\n", + "Step 0 Loss 0.229597\n", + "Step 100 Loss 0.00136076\n", + "Step 200 Loss 0.00139812\n", + "Step 300 Loss 0.0012217\n", + "Step 400 Loss 0.001728\n", + "Step 500 Loss 0.00131114\n", + "Step 600 Loss 0.00119626\n", + "New data, epoch 14\n", + "Step 0 Loss 0.225017\n", + "Step 100 Loss 0.00158774\n" ] - }, - { - "data": { - "image/png": "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\nAAAASUVORK5CYII=\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ @@ -568,7 +625,7 @@ "with tf.Session() as sess:\n", " #we stupidly have to do this everytime, it should just know\n", " #that we initialized these vars. v2 guys, v2..\n", - " sess.run(tf.initialize_all_variables())\n", + " sess.run(tf.global_variables_initializer())\n", " #interactive mode\n", " plt.ion()\n", " #initialize the figure\n", @@ -627,25 +684,11 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": null, "metadata": { "collapsed": false }, - "outputs": [ - { - "data": { - "text/html": [ - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 20, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "Image(url= \"https://cdn-images-1.medium.com/max/1600/1*uKuUKp_m55zAPCzaIemucA.png\")" ] @@ -667,25 +710,11 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": null, "metadata": { "collapsed": false }, - "outputs": [ - { - "data": { - "text/html": [ - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "Image(url= \"https://cdn-images-1.medium.com/max/1600/1*ytquMdmGMJo0-3kxMCi1Gg.png\")" ] @@ -716,7 +745,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", - "version": "2.7.12" + "version": "2.7.13" } }, "nbformat": 4,