From 37eb9b41485b6210d65204592129d8d2aa44bc92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Geron?= Date: Wed, 18 Oct 2017 09:44:57 +0200 Subject: [PATCH] Add comment about the DeviceWrapper class since TF 1.1 --- 14_recurrent_neural_networks.ipynb | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/14_recurrent_neural_networks.ipynb b/14_recurrent_neural_networks.ipynb index 4318442..c4547b1 100644 --- a/14_recurrent_neural_networks.ipynb +++ b/14_recurrent_neural_networks.ipynb @@ -1390,23 +1390,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Alternatively, you can use the Tensorflow class DeviceWrapper - note you can define more than one layer per gpu" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "devices = [\"/gpu:0\", \"/gpu:1\", \"/gpu:2\"] \n", - "cells = []\n", - "for dev in devices:\n", - " cell = DeviceWrapper(rnn_cell.BasicRNNCell(num_units=n_neurons), dev)\n", - " cells.append(cell)\n", - "\n", - "self.multiple_lstm_cells = tf.contrib.rnn.MultiRNNCell(cells, state_is_tuple=True)\n", - "outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)" + "Alternatively, since TensorFlow 1.1, you can use the `tf.contrib.rnn.DeviceWrapper` class (alias `tf.nn.rnn_cell.DeviceWrapper` since TF 1.2)." ] }, { @@ -2722,21 +2706,21 @@ "language_info": { "codemirror_mode": { "name": "ipython", - "version": 3.0 + "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.2" + "version": "3.6.2" }, "nav_menu": {}, "toc": { "navigate_menu": true, "number_sections": true, "sideBar": true, - "threshold": 6.0, + "threshold": 6, "toc_cell": false, "toc_section_display": "block", "toc_window_display": false