diff --git a/doc/pub/week44/html/figslides/deepcnn.png b/doc/pub/week44/html/figslides/deepcnn.png
new file mode 100644
index 000000000..a6c023d72
Binary files /dev/null and b/doc/pub/week44/html/figslides/deepcnn.png differ
diff --git a/doc/pub/week44/html/figslides/discreteconv.png b/doc/pub/week44/html/figslides/discreteconv.png
new file mode 100644
index 000000000..3d40abfcb
Binary files /dev/null and b/doc/pub/week44/html/figslides/discreteconv.png differ
diff --git a/doc/pub/week44/html/figslides/discreteconv1.png b/doc/pub/week44/html/figslides/discreteconv1.png
new file mode 100644
index 000000000..4d57c1e99
Binary files /dev/null and b/doc/pub/week44/html/figslides/discreteconv1.png differ
diff --git a/doc/pub/week44/html/figslides/maxpooling.png b/doc/pub/week44/html/figslides/maxpooling.png
new file mode 100644
index 000000000..752651f85
Binary files /dev/null and b/doc/pub/week44/html/figslides/maxpooling.png differ
diff --git a/doc/pub/week44/html/figslides/photo.jpg b/doc/pub/week44/html/figslides/photo.jpg
new file mode 100755
index 000000000..426220598
Binary files /dev/null and b/doc/pub/week44/html/figslides/photo.jpg differ
diff --git a/doc/pub/week44/ipynb/figslides/deepcnn.png b/doc/pub/week44/ipynb/figslides/deepcnn.png
new file mode 100644
index 000000000..a6c023d72
Binary files /dev/null and b/doc/pub/week44/ipynb/figslides/deepcnn.png differ
diff --git a/doc/pub/week44/ipynb/figslides/discreteconv.png b/doc/pub/week44/ipynb/figslides/discreteconv.png
new file mode 100644
index 000000000..3d40abfcb
Binary files /dev/null and b/doc/pub/week44/ipynb/figslides/discreteconv.png differ
diff --git a/doc/pub/week44/ipynb/figslides/discreteconv1.png b/doc/pub/week44/ipynb/figslides/discreteconv1.png
new file mode 100644
index 000000000..4d57c1e99
Binary files /dev/null and b/doc/pub/week44/ipynb/figslides/discreteconv1.png differ
diff --git a/doc/pub/week44/ipynb/figslides/maxpooling.png b/doc/pub/week44/ipynb/figslides/maxpooling.png
new file mode 100644
index 000000000..752651f85
Binary files /dev/null and b/doc/pub/week44/ipynb/figslides/maxpooling.png differ
diff --git a/doc/pub/week44/ipynb/figslides/photo.jpg b/doc/pub/week44/ipynb/figslides/photo.jpg
new file mode 100755
index 000000000..426220598
Binary files /dev/null and b/doc/pub/week44/ipynb/figslides/photo.jpg differ
diff --git a/doc/src/week44/Programs/.DS_Store b/doc/src/week44/Programs/.DS_Store
new file mode 100644
index 000000000..04ede83b6
Binary files /dev/null and b/doc/src/week44/Programs/.DS_Store differ
diff --git a/doc/src/week44/Programs/DataFiles/.DS_Store b/doc/src/week44/Programs/DataFiles/.DS_Store
new file mode 100644
index 000000000..1cdd15ffa
Binary files /dev/null and b/doc/src/week44/Programs/DataFiles/.DS_Store differ
diff --git a/doc/src/week44/Programs/grades.csv~ b/doc/src/week44/Programs/grades.csv~
new file mode 100644
index 000000000..ace8e8be9
--- /dev/null
+++ b/doc/src/week44/Programs/grades.csv~
@@ -0,0 +1,12 @@
+1,0,1,1,
+0,1,0,0,
+1,0,1,1,
+1,1,1,1,
+0,0,1,0,
+1,0,0,0,
+0,1,1,0,
+0,0,1,0,
+1,0,0,0,
+1,1,1,1,
+
+
diff --git a/doc/src/week44/Programs/grades.py~ b/doc/src/week44/Programs/grades.py~
new file mode 100644
index 000000000..e45910e13
--- /dev/null
+++ b/doc/src/week44/Programs/grades.py~
@@ -0,0 +1,70 @@
+# Common imports
+import numpy as np
+import pandas as pd
+import matplotlib.pyplot as plt
+from sklearn.tree import DecisionTreeClassifier
+from sklearn.model_selection import train_test_split
+from sklearn.tree import export_graphviz
+from sklearn.preprocessing import StandardScaler, OneHotEncoder
+from sklearn.compose import ColumnTransformer
+from IPython.display import Image
+from pydot import graph_from_dot_data
+import os
+
+# Where to save the figures and data files
+PROJECT_ROOT_DIR = "Results"
+FIGURE_ID = "Results/FigureFiles"
+DATA_ID = "DataFiles/"
+
+if not os.path.exists(PROJECT_ROOT_DIR):
+ os.mkdir(PROJECT_ROOT_DIR)
+
+if not os.path.exists(FIGURE_ID):
+ os.makedirs(FIGURE_ID)
+
+if not os.path.exists(DATA_ID):
+ os.makedirs(DATA_ID)
+
+def image_path(fig_id):
+ return os.path.join(FIGURE_ID, fig_id)
+
+def data_path(dat_id):
+ return os.path.join(DATA_ID, dat_id)
+
+def save_fig(fig_id):
+ plt.savefig(image_path(fig_id) + ".png", format='png')
+
+infile = open(data_path("grades.csv"),'r')
+
+# Read the experimental data with Pandas
+from IPython.display import display
+grades = pd.read_csv(infile, names = ('Trend','Sleep','Studied','Grade'))
+grades = pd.DataFrame(grades)
+display(grades)
+# Features and targets
+X = pd.to_numeric(grades.loc[:, grades.columns != 'Grade'].values)
+y = pd.to_numeric(grades.loc[:, grades.columns == 'Grade'].values)
+print(X)
+# Create the encoder.
+encoder = OneHotEncoder(handle_unknown="ignore")
+# Assume for simplicity all features are categorical.
+encoder.fit(X)
+# Apply the encoder.
+X = encoder.transform(X)
+# Then do a Classification tree
+tree_clf = DecisionTreeClassifier(max_depth=2)
+tree_clf.fit(X, y)
+print("Train set accuracy with Decision Tree: {:.2f}".format(tree_clf.score(X,y)))
+#transfer to a decision tree graph
+export_graphviz(
+ tree_clf,
+ out_file="DataFiles/grade.dot",
+ rounded=True,
+ filled=True
+)
+cmd = 'dot -Tpng DataFiles/grade.dot -o DataFiles/grades.png'
+os.system(cmd)
+
+
+#data_pandas = pd.DataFrame(data,index=['Frodo','Bilbo','Aragorn','Sam'])
+#df.columns = ['First', 'Second', 'Third', 'Fourth', 'Fifth']