update on notes
This commit is contained in:
@@ -55,7 +55,7 @@ const thebe_selector_output = ".output, .cell_output"
|
||||
<script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="search.html" />
|
||||
<link rel="next" title="Project 1 on Machine Learning, deadline October 9 (midnight), 2023" href="project1.html" />
|
||||
<link rel="next" title="Week 45, Recurrent Neural Networks" href="week45.html" />
|
||||
<link rel="prev" title="Week 43: Deep Learning: Constructing a Neural Network code and solving differential equations" href="week43.html" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="docsearch:language" content="None">
|
||||
@@ -348,6 +348,11 @@ const thebe_selector_output = ".output, .cell_output"
|
||||
Week 44, Convolutional Neural Networks (CNN)
|
||||
</a>
|
||||
</li>
|
||||
<li class="toctree-l1">
|
||||
<a class="reference internal" href="week45.html">
|
||||
Week 45, Recurrent Neural Networks
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<p aria-level="2" class="caption" role="heading">
|
||||
<span class="caption-text">
|
||||
@@ -1206,7 +1211,9 @@ doconce format html week44.do.txt --no_mako -->
|
||||
<li><p>Exercise on writing your own neural network code, application to the OR and XOR gates, see notes from last week</p></li>
|
||||
<li><p>The exercise this week is a continuation from last week</p></li>
|
||||
<li><p>Discussion of project 2</p></li>
|
||||
<li><p><a class="reference external" href="https://youtu.be/Ia6wwDLxqtM">Video of lab session from last week</a></p></li>
|
||||
<li><p><a class="reference external" href="https://youtu.be/Ia6wwDLxqtM">Video of lab session from week 43</a></p></li>
|
||||
<li><p><a class="reference external" href="https://youtu.be/EajWMW__k0I">Video of lab session from week 44</a></p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/CompPhysics/MachineLearning/blob/master/doc/HandWrittenNotes/2023/Exercisesweek44.pdf">See also whiteboard notes from lab session week 44</a></p></li>
|
||||
</ul>
|
||||
<p><strong>Material for the lecture on Thursday November 2, 2023.</strong></p>
|
||||
<ul class="simple">
|
||||
@@ -2228,7 +2235,7 @@ labels = (n_inputs) = (1797,)
|
||||
</div>
|
||||
<div class="output stderr highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>/Users/mhjensen/miniforge3/envs/myenv/lib/python3.9/site-packages/keras/optimizer_v2/gradient_descent.py:102: UserWarning: The `lr` argument is deprecated, use `learning_rate` instead.
|
||||
super(SGD, self).__init__(name, **kwargs)
|
||||
2023-10-30 10:31:09.117456: W tensorflow/core/platform/profile_utils/cpu_utils.cc:128] Failed to get CPU frequency: 0 Hz
|
||||
2023-11-06 06:34:51.825607: W tensorflow/core/platform/profile_utils/cpu_utils.cc:128] Failed to get CPU frequency: 0 Hz
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="output traceback highlight-ipythontb notranslate"><div class="highlight"><pre><span></span><span class="gt">---------------------------------------------------------------------------</span>
|
||||
@@ -2373,6 +2380,112 @@ labels = (n_inputs) = (1797,)
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cell_output docutils container">
|
||||
<div class="output stream highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>45/45 [==============================] - 4s 83ms/step - loss: 3.3532 - accuracy: 0.1134
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 3.4256 - accuracy: 0.0917
|
||||
45/45 [==============================] - 4s 78ms/step - loss: 3.3619 - accuracy: 0.1141
|
||||
12/12 [==============================] - 1s 64ms/step - loss: 3.4338 - accuracy: 0.0944
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 3.4466 - accuracy: 0.1141
|
||||
12/12 [==============================] - 1s 62ms/step - loss: 3.5186 - accuracy: 0.0944
|
||||
45/45 [==============================] - 4s 78ms/step - loss: 4.2927 - accuracy: 0.1141
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 4.3646 - accuracy: 0.0944
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 12.7049 - accuracy: 0.1141
|
||||
12/12 [==============================] - 1s 63ms/step - loss: 12.7761 - accuracy: 0.0944
|
||||
45/45 [==============================] - 3s 74ms/step - loss: 91.9603 - accuracy: 0.1134
|
||||
12/12 [==============================] - 1s 59ms/step - loss: 92.0269 - accuracy: 0.0944
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 519.9026 - accuracy: 0.1148
|
||||
12/12 [==============================] - 1s 62ms/step - loss: 519.9384 - accuracy: 0.0972
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 1.4512 - accuracy: 0.5449
|
||||
12/12 [==============================] - 1s 62ms/step - loss: 1.5349 - accuracy: 0.4694
|
||||
45/45 [==============================] - 3s 75ms/step - loss: 1.4605 - accuracy: 0.5470
|
||||
12/12 [==============================] - 1s 62ms/step - loss: 1.5442 - accuracy: 0.4667
|
||||
45/45 [==============================] - 4s 80ms/step - loss: 1.5454 - accuracy: 0.5477
|
||||
12/12 [==============================] - 1s 64ms/step - loss: 1.6288 - accuracy: 0.4667
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 2.3881 - accuracy: 0.5435
|
||||
12/12 [==============================] - 1s 68ms/step - loss: 2.4714 - accuracy: 0.4722
|
||||
45/45 [==============================] - 4s 80ms/step - loss: 10.3364 - accuracy: 0.5393
|
||||
12/12 [==============================] - 1s 63ms/step - loss: 10.4141 - accuracy: 0.4556
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 53.4810 - accuracy: 0.4983
|
||||
12/12 [==============================] - 1s 65ms/step - loss: 53.5240 - accuracy: 0.4472
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 4.6258 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 4.6259 - accuracy: 0.0889
|
||||
45/45 [==============================] - 4s 80ms/step - loss: 0.1946 - accuracy: 0.9534
|
||||
12/12 [==============================] - 1s 67ms/step - loss: 0.2641 - accuracy: 0.9194
|
||||
45/45 [==============================] - 3s 77ms/step - loss: 0.2027 - accuracy: 0.9541
|
||||
12/12 [==============================] - 1s 64ms/step - loss: 0.2736 - accuracy: 0.9167
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 0.2901 - accuracy: 0.9541
|
||||
12/12 [==============================] - 1s 65ms/step - loss: 0.3604 - accuracy: 0.9167
|
||||
45/45 [==============================] - 3s 77ms/step - loss: 1.1123 - accuracy: 0.9520
|
||||
12/12 [==============================] - 1s 58ms/step - loss: 1.1848 - accuracy: 0.9167
|
||||
45/45 [==============================] - 4s 81ms/step - loss: 5.7392 - accuracy: 0.9415
|
||||
12/12 [==============================] - 1s 61ms/step - loss: 5.7980 - accuracy: 0.9250
|
||||
45/45 [==============================] - 3s 77ms/step - loss: 2.5993 - accuracy: 0.4085
|
||||
12/12 [==============================] - 1s 65ms/step - loss: 2.6003 - accuracy: 0.3472
|
||||
45/45 [==============================] - 3s 77ms/step - loss: 2.3024 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 2.3032 - accuracy: 0.0889
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 0.0180 - accuracy: 1.0000
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 0.0958 - accuracy: 0.9694
|
||||
45/45 [==============================] - 4s 80ms/step - loss: 0.0280 - accuracy: 0.9986
|
||||
12/12 [==============================] - 1s 68ms/step - loss: 0.1060 - accuracy: 0.9750
|
||||
45/45 [==============================] - 3s 77ms/step - loss: 0.1148 - accuracy: 0.9986
|
||||
12/12 [==============================] - 1s 67ms/step - loss: 0.1862 - accuracy: 0.9778
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 0.6357 - accuracy: 0.9958
|
||||
12/12 [==============================] - 1s 67ms/step - loss: 0.6819 - accuracy: 0.9750
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 0.9286 - accuracy: 0.9499
|
||||
12/12 [==============================] - 1s 65ms/step - loss: 0.9978 - accuracy: 0.9028
|
||||
45/45 [==============================] - 3s 75ms/step - loss: 2.3020 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 64ms/step - loss: 2.3064 - accuracy: 0.0889
|
||||
45/45 [==============================] - 4s 78ms/step - loss: 2.3020 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 2.3065 - accuracy: 0.0889
|
||||
45/45 [==============================] - 4s 78ms/step - loss: 0.0060 - accuracy: 1.0000
|
||||
12/12 [==============================] - 1s 62ms/step - loss: 0.2141 - accuracy: 0.9528
|
||||
45/45 [==============================] - 3s 76ms/step - loss: 0.0368 - accuracy: 0.9930
|
||||
12/12 [==============================] - 1s 65ms/step - loss: 0.2714 - accuracy: 0.9472
|
||||
45/45 [==============================] - 4s 80ms/step - loss: 0.1343 - accuracy: 0.9910
|
||||
12/12 [==============================] - 1s 68ms/step - loss: 0.2996 - accuracy: 0.9556
|
||||
45/45 [==============================] - 4s 78ms/step - loss: 0.4220 - accuracy: 0.9207
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 0.6088 - accuracy: 0.8611
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 1.6795 - accuracy: 0.6764
|
||||
12/12 [==============================] - 1s 61ms/step - loss: 1.7069 - accuracy: 0.6556
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 2.3020 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 67ms/step - loss: 2.3077 - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 80ms/step - loss: nan - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 68ms/step - loss: nan - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 81ms/step - loss: 21.9981 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 67ms/step - loss: 22.0022 - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 44.1977 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 67ms/step - loss: 44.2070 - accuracy: 0.0778
|
||||
45/45 [==============================] - 3s 77ms/step - loss: 6.3493 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 68ms/step - loss: 6.3536 - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 80ms/step - loss: 2.3030 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 2.3082 - accuracy: 0.0889
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 2.3029 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 2.3126 - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 78ms/step - loss: nan - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 64ms/step - loss: nan - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 79ms/step - loss: nan - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 66ms/step - loss: nan - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 79ms/step - loss: 6130353.0000 - accuracy: 0.1009
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 6130353.0000 - accuracy: 0.1056
|
||||
45/45 [==============================] - 3s 77ms/step - loss: 388451.4375 - accuracy: 0.1016
|
||||
12/12 [==============================] - 1s 68ms/step - loss: 388451.5000 - accuracy: 0.0917
|
||||
45/45 [==============================] - 4s 80ms/step - loss: 2.4241 - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 66ms/step - loss: 2.4314 - accuracy: 0.0889
|
||||
45/45 [==============================] - 4s 81ms/step - loss: 2.4394 - accuracy: 0.1037
|
||||
12/12 [==============================] - 1s 62ms/step - loss: 2.5014 - accuracy: 0.0889
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="output stream highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>45/45 [==============================] - 4s 79ms/step - loss: nan - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 65ms/step - loss: nan - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 81ms/step - loss: nan - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 64ms/step - loss: nan - accuracy: 0.0778
|
||||
45/45 [==============================] - 4s 78ms/step - loss: nan - accuracy: 0.1044
|
||||
12/12 [==============================] - 1s 67ms/step - loss: nan - accuracy: 0.0778
|
||||
</pre></div>
|
||||
</div>
|
||||
<img alt="_images/week44_135_2.png" src="_images/week44_135_2.png" />
|
||||
<img alt="_images/week44_135_3.png" src="_images/week44_135_3.png" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="the-cifar01-data-set">
|
||||
@@ -2403,23 +2516,26 @@ exclusive and there is no overlap between them.</p>
|
||||
<p>To verify that the dataset looks correct, let’s plot the first 25 images from the training set and display the class name below each image.</p>
|
||||
<div class="cell docutils container">
|
||||
<div class="cell_input docutils container">
|
||||
<div class="highlight-ipython3 notranslate"><div class="highlight"><pre><span></span>class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer',
|
||||
'dog', 'frog', 'horse', 'ship', 'truck']
|
||||
|
||||
plt.figure(figsize=(10,10))
|
||||
for i in range(25):
|
||||
plt.subplot(5,5,i+1)
|
||||
plt.xticks([])
|
||||
plt.yticks([])
|
||||
plt.grid(False)
|
||||
plt.imshow(train_images[i], cmap=plt.cm.binary)
|
||||
# The CIFAR labels happen to be arrays,
|
||||
# which is why you need the extra index
|
||||
plt.xlabel(class_names[train_labels[i][0]])
|
||||
plt.show()
|
||||
<div class="highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">class_names</span> <span class="o">=</span> <span class="p">[</span><span class="s1">'airplane'</span><span class="p">,</span> <span class="s1">'automobile'</span><span class="p">,</span> <span class="s1">'bird'</span><span class="p">,</span> <span class="s1">'cat'</span><span class="p">,</span> <span class="s1">'deer'</span><span class="p">,</span>
|
||||
<span class="s1">'dog'</span><span class="p">,</span> <span class="s1">'frog'</span><span class="p">,</span> <span class="s1">'horse'</span><span class="p">,</span> <span class="s1">'ship'</span><span class="p">,</span> <span class="s1">'truck'</span><span class="p">]</span>
|
||||
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">figure</span><span class="p">(</span><span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span><span class="mi">10</span><span class="p">))</span>
|
||||
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">25</span><span class="p">):</span>
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">subplot</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="n">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span>
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">xticks</span><span class="p">([])</span>
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">yticks</span><span class="p">([])</span>
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">grid</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">imshow</span><span class="p">(</span><span class="n">train_images</span><span class="p">[</span><span class="n">i</span><span class="p">],</span> <span class="n">cmap</span><span class="o">=</span><span class="n">plt</span><span class="o">.</span><span class="n">cm</span><span class="o">.</span><span class="n">binary</span><span class="p">)</span>
|
||||
<span class="c1"># The CIFAR labels happen to be arrays, </span>
|
||||
<span class="c1"># which is why you need the extra index</span>
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="n">class_names</span><span class="p">[</span><span class="n">train_labels</span><span class="p">[</span><span class="n">i</span><span class="p">][</span><span class="mi">0</span><span class="p">]])</span>
|
||||
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cell_output docutils container">
|
||||
<img alt="_images/week44_139_0.png" src="_images/week44_139_0.png" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="set-up-the-model">
|
||||
@@ -2441,6 +2557,31 @@ plt.show()
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cell_output docutils container">
|
||||
<div class="output stream highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>Model: "sequential_49"
|
||||
_________________________________________________________________
|
||||
Layer (type) Output Shape Param #
|
||||
=================================================================
|
||||
conv2d_49 (Conv2D) (None, 30, 30, 32) 896
|
||||
|
||||
max_pooling2d_49 (MaxPoolin (None, 15, 15, 32) 0
|
||||
g2D)
|
||||
|
||||
conv2d_50 (Conv2D) (None, 13, 13, 64) 18496
|
||||
|
||||
max_pooling2d_50 (MaxPoolin (None, 6, 6, 64) 0
|
||||
g2D)
|
||||
|
||||
conv2d_51 (Conv2D) (None, 4, 4, 64) 36928
|
||||
|
||||
=================================================================
|
||||
Total params: 56,320
|
||||
Trainable params: 56,320
|
||||
Non-trainable params: 0
|
||||
_________________________________________________________________
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<p>You can see that the output of every Conv2D and MaxPooling2D layer is a 3D tensor of shape (height, width, channels). The width and height dimensions tend to shrink as you go deeper in the network. The number of output channels for each Conv2D layer is controlled by the first argument (e.g., 32 or 64). Typically, as the width and height shrink, you can afford (computationally) to add more output channels in each Conv2D layer.</p>
|
||||
</div>
|
||||
@@ -2458,12 +2599,43 @@ layer with 10 outputs and a softmax activation.</p>
|
||||
<div class="highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">layers</span><span class="o">.</span><span class="n">Flatten</span><span class="p">())</span>
|
||||
<span class="n">model</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">layers</span><span class="o">.</span><span class="n">Dense</span><span class="p">(</span><span class="mi">64</span><span class="p">,</span> <span class="n">activation</span><span class="o">=</span><span class="s1">'relu'</span><span class="p">))</span>
|
||||
<span class="n">model</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">layers</span><span class="o">.</span><span class="n">Dense</span><span class="p">(</span><span class="mi">10</span><span class="p">))</span>
|
||||
<span class="n">Here</span><span class="s1">'s the complete architecture of our model.</span>
|
||||
<span class="c1">#Here's the complete architecture of our model.</span>
|
||||
|
||||
<span class="n">model</span><span class="o">.</span><span class="n">summary</span><span class="p">()</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cell_output docutils container">
|
||||
<div class="output stream highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>Model: "sequential_49"
|
||||
_________________________________________________________________
|
||||
Layer (type) Output Shape Param #
|
||||
=================================================================
|
||||
conv2d_49 (Conv2D) (None, 30, 30, 32) 896
|
||||
|
||||
max_pooling2d_49 (MaxPoolin (None, 15, 15, 32) 0
|
||||
g2D)
|
||||
|
||||
conv2d_50 (Conv2D) (None, 13, 13, 64) 18496
|
||||
|
||||
max_pooling2d_50 (MaxPoolin (None, 6, 6, 64) 0
|
||||
g2D)
|
||||
|
||||
conv2d_51 (Conv2D) (None, 4, 4, 64) 36928
|
||||
|
||||
flatten_49 (Flatten) (None, 1024) 0
|
||||
|
||||
dense_98 (Dense) (None, 64) 65600
|
||||
|
||||
dense_99 (Dense) (None, 10) 650
|
||||
|
||||
=================================================================
|
||||
Total params: 122,570
|
||||
Trainable params: 122,570
|
||||
Non-trainable params: 0
|
||||
_________________________________________________________________
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<p>As you can see, our (4, 4, 64) outputs were flattened into vectors of shape (1024) before going through two Dense layers.</p>
|
||||
</div>
|
||||
@@ -2471,12 +2643,36 @@ layer with 10 outputs and a softmax activation.</p>
|
||||
<h2>Compile and train the model<a class="headerlink" href="#compile-and-train-the-model" title="Permalink to this headline">¶</a></h2>
|
||||
<div class="cell docutils container">
|
||||
<div class="cell_input docutils container">
|
||||
<div class="highlight-ipython3 notranslate"><div class="highlight"><pre><span></span>model.compile(optimizer='adam',
|
||||
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
|
||||
metrics=['accuracy'])
|
||||
|
||||
history = model.fit(train_images, train_labels, epochs=10,
|
||||
validation_data=(test_images, test_labels))
|
||||
<div class="highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="n">optimizer</span><span class="o">=</span><span class="s1">'adam'</span><span class="p">,</span>
|
||||
<span class="n">loss</span><span class="o">=</span><span class="n">tf</span><span class="o">.</span><span class="n">keras</span><span class="o">.</span><span class="n">losses</span><span class="o">.</span><span class="n">SparseCategoricalCrossentropy</span><span class="p">(</span><span class="n">from_logits</span><span class="o">=</span><span class="kc">True</span><span class="p">),</span>
|
||||
<span class="n">metrics</span><span class="o">=</span><span class="p">[</span><span class="s1">'accuracy'</span><span class="p">])</span>
|
||||
|
||||
<span class="n">history</span> <span class="o">=</span> <span class="n">model</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">train_images</span><span class="p">,</span> <span class="n">train_labels</span><span class="p">,</span> <span class="n">epochs</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
|
||||
<span class="n">validation_data</span><span class="o">=</span><span class="p">(</span><span class="n">test_images</span><span class="p">,</span> <span class="n">test_labels</span><span class="p">))</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cell_output docutils container">
|
||||
<div class="output stream highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>Epoch 1/10
|
||||
1563/1563 [==============================] - 28s 15ms/step - loss: 1.5353 - accuracy: 0.4394 - val_loss: 1.2184 - val_accuracy: 0.5616
|
||||
Epoch 2/10
|
||||
1563/1563 [==============================] - 18s 12ms/step - loss: 1.1560 - accuracy: 0.5909 - val_loss: 1.0712 - val_accuracy: 0.6214
|
||||
Epoch 3/10
|
||||
1563/1563 [==============================] - 20s 13ms/step - loss: 1.0176 - accuracy: 0.6411 - val_loss: 1.0012 - val_accuracy: 0.6527
|
||||
Epoch 4/10
|
||||
1563/1563 [==============================] - 18s 12ms/step - loss: 0.9234 - accuracy: 0.6788 - val_loss: 0.9674 - val_accuracy: 0.6599
|
||||
Epoch 5/10
|
||||
1563/1563 [==============================] - 18s 12ms/step - loss: 0.8524 - accuracy: 0.7033 - val_loss: 0.8982 - val_accuracy: 0.6890
|
||||
Epoch 6/10
|
||||
1563/1563 [==============================] - 18s 11ms/step - loss: 0.7966 - accuracy: 0.7203 - val_loss: 0.9145 - val_accuracy: 0.6835
|
||||
Epoch 7/10
|
||||
1563/1563 [==============================] - 18s 11ms/step - loss: 0.7483 - accuracy: 0.7407 - val_loss: 0.9275 - val_accuracy: 0.6849
|
||||
Epoch 8/10
|
||||
1563/1563 [==============================] - 17s 11ms/step - loss: 0.7049 - accuracy: 0.7532 - val_loss: 0.9460 - val_accuracy: 0.6781
|
||||
Epoch 9/10
|
||||
1563/1563 [==============================] - 21s 13ms/step - loss: 0.6663 - accuracy: 0.7696 - val_loss: 0.8528 - val_accuracy: 0.7078
|
||||
Epoch 10/10
|
||||
1563/1563 [==============================] - 19s 12ms/step - loss: 0.6297 - accuracy: 0.7788 - val_loss: 0.8747 - val_accuracy: 0.7032
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -2499,6 +2695,13 @@ history = model.fit(train_images, train_labels, epochs=10,
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cell_output docutils container">
|
||||
<div class="output stream highlight-myst-ansi notranslate"><div class="highlight"><pre><span></span>313/313 - 2s - loss: 0.8747 - accuracy: 0.7032 - 2s/epoch - 5ms/step
|
||||
0.7031999826431274
|
||||
</pre></div>
|
||||
</div>
|
||||
<img alt="_images/week44_149_1.png" src="_images/week44_149_1.png" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="building-our-own-cnn-code">
|
||||
@@ -5318,10 +5521,10 @@ optimization technique.</p>
|
||||
<p class="prev-next-title">Week 43: Deep Learning: Constructing a Neural Network code and solving differential equations</p>
|
||||
</div>
|
||||
</a>
|
||||
<a class='right-next' id="next-link" href="project1.html" title="next page">
|
||||
<a class='right-next' id="next-link" href="week45.html" title="next page">
|
||||
<div class="prev-next-info">
|
||||
<p class="prev-next-subtitle">next</p>
|
||||
<p class="prev-next-title">Project 1 on Machine Learning, deadline October 9 (midnight), 2023</p>
|
||||
<p class="prev-next-title">Week 45, Recurrent Neural Networks</p>
|
||||
</div>
|
||||
<i class="fas fa-angle-right"></i>
|
||||
</a>
|
||||
|
||||
Reference in New Issue
Block a user