diff --git a/doc/pub/week41/html/._week41-bs058.html b/doc/pub/week41/html/._week41-bs058.html index 95b9f43bf..01583abf7 100644 --- a/doc/pub/week41/html/._week41-bs058.html +++ b/doc/pub/week41/html/._week41-bs058.html @@ -259,15 +259,16 @@ MathJax.Hub.Config({
-
from tensorflow.keras.layers import Input
+from tensorflow.keras import datasets, layers, models
+from tensorflow.keras.layers import Input
from tensorflow.keras.models import Sequential #This allows appending layers to existing models
from tensorflow.keras.layers import Dense #This allows defining the characteristics of a particular layer
from tensorflow.keras import optimizers #This allows using whichever optimiser we want (sgd,adam,RMSprop)
from tensorflow.keras import regularizers #This allows using whichever regularizer we want (l1,l2,l1_l2)
from tensorflow.keras.utils import to_categorical #This allows using categorical cross entropy as the cost function
-from tensorflow.keras import Conv2D
-from tensorflow.keras import MaxPooling2D
-from tensorflow.keras import Flatten
+#from tensorflow.keras import Conv2D
+#from tensorflow.keras import MaxPooling2D
+#from tensorflow.keras import Flatten
from sklearn.model_selection import train_test_split
diff --git a/doc/pub/week41/html/._week41-bs059.html b/doc/pub/week41/html/._week41-bs059.html
index 902beec2a..6e3e83f13 100644
--- a/doc/pub/week41/html/._week41-bs059.html
+++ b/doc/pub/week41/html/._week41-bs059.html
@@ -264,14 +264,14 @@ MathJax.Hub.Config({
n_filters, n_neurons_connected, n_categories,
eta, lmbd):
model = Sequential()
- model.add(Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
- activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(MaxPooling2D(pool_size=(2, 2)))
- model.add(Flatten())
- model.add(Dense(n_neurons_connected, activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(Dense(n_categories, activation='softmax', kernel_regularizer=l2(lmbd)))
+ model.add(layers.Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
+ activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.MaxPooling2D(pool_size=(2, 2)))
+ model.add(layers.Flatten())
+ model.add(layers.Dense(n_neurons_connected, activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.Dense(n_categories, activation='softmax', kernel_regularizer=regularizers.l2(lmbd)))
- sgd = SGD(lr=eta)
+ sgd = optimizers.SGD(lr=eta)
model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy'])
return model
diff --git a/doc/pub/week41/html/week41-reveal.html b/doc/pub/week41/html/week41-reveal.html
index bf44b4652..9478fb341 100644
--- a/doc/pub/week41/html/week41-reveal.html
+++ b/doc/pub/week41/html/week41-reveal.html
@@ -2545,15 +2545,16 @@ plt.show()
-
from tensorflow.keras.layers import Input
+from tensorflow.keras import datasets, layers, models
+from tensorflow.keras.layers import Input
from tensorflow.keras.models import Sequential #This allows appending layers to existing models
from tensorflow.keras.layers import Dense #This allows defining the characteristics of a particular layer
from tensorflow.keras import optimizers #This allows using whichever optimiser we want (sgd,adam,RMSprop)
from tensorflow.keras import regularizers #This allows using whichever regularizer we want (l1,l2,l1_l2)
from tensorflow.keras.utils import to_categorical #This allows using categorical cross entropy as the cost function
-from tensorflow.keras import Conv2D
-from tensorflow.keras import MaxPooling2D
-from tensorflow.keras import Flatten
+#from tensorflow.keras import Conv2D
+#from tensorflow.keras import MaxPooling2D
+#from tensorflow.keras import Flatten
from sklearn.model_selection import train_test_split
@@ -2580,14 +2581,14 @@ X_train, X_test, Y_train, Y_test = train_test_split(inputs, labels, train_size=t
n_filters, n_neurons_connected, n_categories,
eta, lmbd):
model = Sequential()
- model.add(Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
- activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(MaxPooling2D(pool_size=(2, 2)))
- model.add(Flatten())
- model.add(Dense(n_neurons_connected, activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(Dense(n_categories, activation='softmax', kernel_regularizer=l2(lmbd)))
+ model.add(layers.Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
+ activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.MaxPooling2D(pool_size=(2, 2)))
+ model.add(layers.Flatten())
+ model.add(layers.Dense(n_neurons_connected, activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.Dense(n_categories, activation='softmax', kernel_regularizer=regularizers.l2(lmbd)))
- sgd = SGD(lr=eta)
+ sgd = optimizers.SGD(lr=eta)
model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy'])
return model
diff --git a/doc/pub/week41/html/week41-solarized.html b/doc/pub/week41/html/week41-solarized.html
index 0673a9412..f0f1314e6 100644
--- a/doc/pub/week41/html/week41-solarized.html
+++ b/doc/pub/week41/html/week41-solarized.html
@@ -2460,15 +2460,16 @@ plt.show()
-
from tensorflow.keras.layers import Input
+from tensorflow.keras import datasets, layers, models
+from tensorflow.keras.layers import Input
from tensorflow.keras.models import Sequential #This allows appending layers to existing models
from tensorflow.keras.layers import Dense #This allows defining the characteristics of a particular layer
from tensorflow.keras import optimizers #This allows using whichever optimiser we want (sgd,adam,RMSprop)
from tensorflow.keras import regularizers #This allows using whichever regularizer we want (l1,l2,l1_l2)
from tensorflow.keras.utils import to_categorical #This allows using categorical cross entropy as the cost function
-from tensorflow.keras import Conv2D
-from tensorflow.keras import MaxPooling2D
-from tensorflow.keras import Flatten
+#from tensorflow.keras import Conv2D
+#from tensorflow.keras import MaxPooling2D
+#from tensorflow.keras import Flatten
from sklearn.model_selection import train_test_split
@@ -2494,14 +2495,14 @@ X_train, X_test, Y_train, Y_test = train_test_split(inputs, labels, train_size=t
n_filters, n_neurons_connected, n_categories,
eta, lmbd):
model = Sequential()
- model.add(Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
- activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(MaxPooling2D(pool_size=(2, 2)))
- model.add(Flatten())
- model.add(Dense(n_neurons_connected, activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(Dense(n_categories, activation='softmax', kernel_regularizer=l2(lmbd)))
+ model.add(layers.Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
+ activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.MaxPooling2D(pool_size=(2, 2)))
+ model.add(layers.Flatten())
+ model.add(layers.Dense(n_neurons_connected, activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.Dense(n_categories, activation='softmax', kernel_regularizer=regularizers.l2(lmbd)))
- sgd = SGD(lr=eta)
+ sgd = optimizers.SGD(lr=eta)
model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy'])
return model
diff --git a/doc/pub/week41/html/week41.html b/doc/pub/week41/html/week41.html
index 6f9dc016d..1ae3109c6 100644
--- a/doc/pub/week41/html/week41.html
+++ b/doc/pub/week41/html/week41.html
@@ -2465,15 +2465,16 @@ plt.show()
-
from tensorflow.keras.layers import Input
+from tensorflow.keras import datasets, layers, models
+from tensorflow.keras.layers import Input
from tensorflow.keras.models import Sequential #This allows appending layers to existing models
from tensorflow.keras.layers import Dense #This allows defining the characteristics of a particular layer
from tensorflow.keras import optimizers #This allows using whichever optimiser we want (sgd,adam,RMSprop)
from tensorflow.keras import regularizers #This allows using whichever regularizer we want (l1,l2,l1_l2)
from tensorflow.keras.utils import to_categorical #This allows using categorical cross entropy as the cost function
-from tensorflow.keras import Conv2D
-from tensorflow.keras import MaxPooling2D
-from tensorflow.keras import Flatten
+#from tensorflow.keras import Conv2D
+#from tensorflow.keras import MaxPooling2D
+#from tensorflow.keras import Flatten
from sklearn.model_selection import train_test_split
@@ -2499,14 +2500,14 @@ X_train, X_test, Y_train, Y_test = train_tes
n_filters, n_neurons_connected, n_categories,
eta, lmbd):
model = Sequential()
- model.add(Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
- activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(MaxPooling2D(pool_size=(2, 2)))
- model.add(Flatten())
- model.add(Dense(n_neurons_connected, activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(Dense(n_categories, activation='softmax', kernel_regularizer=l2(lmbd)))
+ model.add(layers.Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
+ activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.MaxPooling2D(pool_size=(2, 2)))
+ model.add(layers.Flatten())
+ model.add(layers.Dense(n_neurons_connected, activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.Dense(n_categories, activation='softmax', kernel_regularizer=regularizers.l2(lmbd)))
- sgd = SGD(lr=eta)
+ sgd = optimizers.SGD(lr=eta)
model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy'])
return model
diff --git a/doc/pub/week41/ipynb/ipynb-week41-src.tar.gz b/doc/pub/week41/ipynb/ipynb-week41-src.tar.gz
index a6271cad5..897ca0358 100644
Binary files a/doc/pub/week41/ipynb/ipynb-week41-src.tar.gz and b/doc/pub/week41/ipynb/ipynb-week41-src.tar.gz differ
diff --git a/doc/pub/week41/ipynb/week41.ipynb b/doc/pub/week41/ipynb/week41.ipynb
index 446285be2..eda8793b1 100644
--- a/doc/pub/week41/ipynb/week41.ipynb
+++ b/doc/pub/week41/ipynb/week41.ipynb
@@ -2460,15 +2460,16 @@
},
"outputs": [],
"source": [
+ "from tensorflow.keras import datasets, layers, models\n",
"from tensorflow.keras.layers import Input\n",
"from tensorflow.keras.models import Sequential #This allows appending layers to existing models\n",
"from tensorflow.keras.layers import Dense #This allows defining the characteristics of a particular layer\n",
"from tensorflow.keras import optimizers #This allows using whichever optimiser we want (sgd,adam,RMSprop)\n",
"from tensorflow.keras import regularizers #This allows using whichever regularizer we want (l1,l2,l1_l2)\n",
"from tensorflow.keras.utils import to_categorical #This allows using categorical cross entropy as the cost function\n",
- "from tensorflow.keras import Conv2D\n",
- "from tensorflow.keras import MaxPooling2D\n",
- "from tensorflow.keras import Flatten\n",
+ "#from tensorflow.keras import Conv2D\n",
+ "#from tensorflow.keras import MaxPooling2D\n",
+ "#from tensorflow.keras import Flatten\n",
"\n",
"from sklearn.model_selection import train_test_split\n",
"\n",
@@ -2499,20 +2500,18 @@
},
"outputs": [],
"source": [
- "\n",
- "\n",
"def create_convolutional_neural_network_keras(input_shape, receptive_field,\n",
" n_filters, n_neurons_connected, n_categories,\n",
" eta, lmbd):\n",
" model = Sequential()\n",
- " model.add(Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',\n",
- " activation='relu', kernel_regularizer=l2(lmbd)))\n",
- " model.add(MaxPooling2D(pool_size=(2, 2)))\n",
- " model.add(Flatten())\n",
- " model.add(Dense(n_neurons_connected, activation='relu', kernel_regularizer=l2(lmbd)))\n",
- " model.add(Dense(n_categories, activation='softmax', kernel_regularizer=l2(lmbd)))\n",
+ " model.add(layers.Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',\n",
+ " activation='relu', kernel_regularizer=regularizers.l2(lmbd)))\n",
+ " model.add(layers.MaxPooling2D(pool_size=(2, 2)))\n",
+ " model.add(layers.Flatten())\n",
+ " model.add(layers.Dense(n_neurons_connected, activation='relu', kernel_regularizer=regularizers.l2(lmbd)))\n",
+ " model.add(layers.Dense(n_categories, activation='softmax', kernel_regularizer=regularizers.l2(lmbd)))\n",
" \n",
- " sgd = SGD(lr=eta)\n",
+ " sgd = optimizers.SGD(lr=eta)\n",
" model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy'])\n",
" \n",
" return model\n",
diff --git a/doc/src/week41/week41.do.txt b/doc/src/week41/week41.do.txt
index e055736d5..9eb94a41a 100644
--- a/doc/src/week41/week41.do.txt
+++ b/doc/src/week41/week41.do.txt
@@ -2018,15 +2018,16 @@ plt.show()
!split
===== Importing Keras and Tensorflow =====
!bc pycod
+from tensorflow.keras import datasets, layers, models
from tensorflow.keras.layers import Input
from tensorflow.keras.models import Sequential #This allows appending layers to existing models
from tensorflow.keras.layers import Dense #This allows defining the characteristics of a particular layer
from tensorflow.keras import optimizers #This allows using whichever optimiser we want (sgd,adam,RMSprop)
from tensorflow.keras import regularizers #This allows using whichever regularizer we want (l1,l2,l1_l2)
from tensorflow.keras.utils import to_categorical #This allows using categorical cross entropy as the cost function
-from tensorflow.keras import Conv2D
-from tensorflow.keras import MaxPooling2D
-from tensorflow.keras import Flatten
+#from tensorflow.keras import Conv2D
+#from tensorflow.keras import MaxPooling2D
+#from tensorflow.keras import Flatten
from sklearn.model_selection import train_test_split
@@ -2045,20 +2046,18 @@ X_train, X_test, Y_train, Y_test = train_test_split(inputs, labels, train_size=t
===== Running with Keras =====
!bc pycod
-
-
def create_convolutional_neural_network_keras(input_shape, receptive_field,
n_filters, n_neurons_connected, n_categories,
eta, lmbd):
model = Sequential()
- model.add(Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
- activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(MaxPooling2D(pool_size=(2, 2)))
- model.add(Flatten())
- model.add(Dense(n_neurons_connected, activation='relu', kernel_regularizer=l2(lmbd)))
- model.add(Dense(n_categories, activation='softmax', kernel_regularizer=l2(lmbd)))
+ model.add(layers.Conv2D(n_filters, (receptive_field, receptive_field), input_shape=input_shape, padding='same',
+ activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.MaxPooling2D(pool_size=(2, 2)))
+ model.add(layers.Flatten())
+ model.add(layers.Dense(n_neurons_connected, activation='relu', kernel_regularizer=regularizers.l2(lmbd)))
+ model.add(layers.Dense(n_categories, activation='softmax', kernel_regularizer=regularizers.l2(lmbd)))
- sgd = SGD(lr=eta)
+ sgd = optimizers.SGD(lr=eta)
model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy'])
return model