mirror of
https://github.com/wassname/pytorch-lightning.git
synced 2026-09-09 11:32:07 +08:00
Deployed 0eb6950 with MkDocs version: 1.0.4
This commit is contained in:
@@ -34,7 +34,7 @@
|
||||
<meta name="lang:search.tokenizer" content="[\s\-]+">
|
||||
|
||||
<link rel="shortcut icon" href="../../assets/images/favicon.png">
|
||||
<meta name="generator" content="mkdocs-1.0.4, mkdocs-material-4.4.0">
|
||||
<meta name="generator" content="mkdocs-1.0.4, mkdocs-material-4.4.2">
|
||||
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
|
||||
|
||||
|
||||
<link rel="stylesheet" href="../../assets/stylesheets/application.0284f74d.css">
|
||||
<link rel="stylesheet" href="../../assets/stylesheets/application.30686662.css">
|
||||
|
||||
|
||||
|
||||
@@ -171,7 +171,7 @@
|
||||
|
||||
|
||||
|
||||
<main class="md-main">
|
||||
<main class="md-main" role="main">
|
||||
<div class="md-main__inner md-grid" data-md-component="container">
|
||||
|
||||
|
||||
@@ -276,21 +276,21 @@
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#minimal-example" title="Minimal example" class="md-nav__link">
|
||||
<a href="#minimal-example" class="md-nav__link">
|
||||
Minimal example
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#how-do-these-methods-fit-into-the-broader-training" title="How do these methods fit into the broader training?" class="md-nav__link">
|
||||
<a href="#how-do-these-methods-fit-into-the-broader-training" class="md-nav__link">
|
||||
How do these methods fit into the broader training?
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#required-methods" title="Required Methods" class="md-nav__link">
|
||||
<a href="#required-methods" class="md-nav__link">
|
||||
Required Methods
|
||||
</a>
|
||||
|
||||
@@ -298,14 +298,14 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#training_step" title="training_step" class="md-nav__link">
|
||||
<a href="#training_step" class="md-nav__link">
|
||||
training_step
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#train_dataloader" title="train_dataloader" class="md-nav__link">
|
||||
<a href="#train_dataloader" class="md-nav__link">
|
||||
train_dataloader
|
||||
</a>
|
||||
|
||||
@@ -313,7 +313,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return" title="Return" class="md-nav__link">
|
||||
<a href="#return" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -325,7 +325,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#configure_optimizers" title="configure_optimizers" class="md-nav__link">
|
||||
<a href="#configure_optimizers" class="md-nav__link">
|
||||
configure_optimizers
|
||||
</a>
|
||||
|
||||
@@ -333,7 +333,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_1" title="Return" class="md-nav__link">
|
||||
<a href="#return_1" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -350,7 +350,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#optional-methods" title="Optional Methods" class="md-nav__link">
|
||||
<a href="#optional-methods" class="md-nav__link">
|
||||
Optional Methods
|
||||
</a>
|
||||
|
||||
@@ -358,35 +358,35 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#validation_step" title="validation_step" class="md-nav__link">
|
||||
<a href="#validation_step" class="md-nav__link">
|
||||
validation_step
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#validation_end" title="validation_end" class="md-nav__link">
|
||||
<a href="#validation_end" class="md-nav__link">
|
||||
validation_end
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#test_step" title="test_step" class="md-nav__link">
|
||||
<a href="#test_step" class="md-nav__link">
|
||||
test_step
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#test_end" title="test_end" class="md-nav__link">
|
||||
<a href="#test_end" class="md-nav__link">
|
||||
test_end
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#on_save_checkpoint" title="on_save_checkpoint" class="md-nav__link">
|
||||
<a href="#on_save_checkpoint" class="md-nav__link">
|
||||
on_save_checkpoint
|
||||
</a>
|
||||
|
||||
@@ -394,7 +394,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_2" title="Return" class="md-nav__link">
|
||||
<a href="#return_2" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -406,7 +406,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#on_load_checkpoint" title="on_load_checkpoint" class="md-nav__link">
|
||||
<a href="#on_load_checkpoint" class="md-nav__link">
|
||||
on_load_checkpoint
|
||||
</a>
|
||||
|
||||
@@ -414,7 +414,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_3" title="Return" class="md-nav__link">
|
||||
<a href="#return_3" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -426,7 +426,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#val_dataloader" title="val_dataloader" class="md-nav__link">
|
||||
<a href="#val_dataloader" class="md-nav__link">
|
||||
val_dataloader
|
||||
</a>
|
||||
|
||||
@@ -434,7 +434,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_4" title="Return" class="md-nav__link">
|
||||
<a href="#return_4" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -446,7 +446,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#test_dataloader" title="test_dataloader" class="md-nav__link">
|
||||
<a href="#test_dataloader" class="md-nav__link">
|
||||
test_dataloader
|
||||
</a>
|
||||
|
||||
@@ -454,7 +454,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_5" title="Return" class="md-nav__link">
|
||||
<a href="#return_5" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -466,7 +466,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#add_model_specific_args" title="add_model_specific_args" class="md-nav__link">
|
||||
<a href="#add_model_specific_args" class="md-nav__link">
|
||||
add_model_specific_args
|
||||
</a>
|
||||
|
||||
@@ -474,7 +474,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_6" title="Return" class="md-nav__link">
|
||||
<a href="#return_6" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -731,21 +731,21 @@
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#minimal-example" title="Minimal example" class="md-nav__link">
|
||||
<a href="#minimal-example" class="md-nav__link">
|
||||
Minimal example
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#how-do-these-methods-fit-into-the-broader-training" title="How do these methods fit into the broader training?" class="md-nav__link">
|
||||
<a href="#how-do-these-methods-fit-into-the-broader-training" class="md-nav__link">
|
||||
How do these methods fit into the broader training?
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#required-methods" title="Required Methods" class="md-nav__link">
|
||||
<a href="#required-methods" class="md-nav__link">
|
||||
Required Methods
|
||||
</a>
|
||||
|
||||
@@ -753,14 +753,14 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#training_step" title="training_step" class="md-nav__link">
|
||||
<a href="#training_step" class="md-nav__link">
|
||||
training_step
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#train_dataloader" title="train_dataloader" class="md-nav__link">
|
||||
<a href="#train_dataloader" class="md-nav__link">
|
||||
train_dataloader
|
||||
</a>
|
||||
|
||||
@@ -768,7 +768,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return" title="Return" class="md-nav__link">
|
||||
<a href="#return" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -780,7 +780,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#configure_optimizers" title="configure_optimizers" class="md-nav__link">
|
||||
<a href="#configure_optimizers" class="md-nav__link">
|
||||
configure_optimizers
|
||||
</a>
|
||||
|
||||
@@ -788,7 +788,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_1" title="Return" class="md-nav__link">
|
||||
<a href="#return_1" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -805,7 +805,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#optional-methods" title="Optional Methods" class="md-nav__link">
|
||||
<a href="#optional-methods" class="md-nav__link">
|
||||
Optional Methods
|
||||
</a>
|
||||
|
||||
@@ -813,35 +813,35 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#validation_step" title="validation_step" class="md-nav__link">
|
||||
<a href="#validation_step" class="md-nav__link">
|
||||
validation_step
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#validation_end" title="validation_end" class="md-nav__link">
|
||||
<a href="#validation_end" class="md-nav__link">
|
||||
validation_end
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#test_step" title="test_step" class="md-nav__link">
|
||||
<a href="#test_step" class="md-nav__link">
|
||||
test_step
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#test_end" title="test_end" class="md-nav__link">
|
||||
<a href="#test_end" class="md-nav__link">
|
||||
test_end
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#on_save_checkpoint" title="on_save_checkpoint" class="md-nav__link">
|
||||
<a href="#on_save_checkpoint" class="md-nav__link">
|
||||
on_save_checkpoint
|
||||
</a>
|
||||
|
||||
@@ -849,7 +849,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_2" title="Return" class="md-nav__link">
|
||||
<a href="#return_2" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -861,7 +861,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#on_load_checkpoint" title="on_load_checkpoint" class="md-nav__link">
|
||||
<a href="#on_load_checkpoint" class="md-nav__link">
|
||||
on_load_checkpoint
|
||||
</a>
|
||||
|
||||
@@ -869,7 +869,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_3" title="Return" class="md-nav__link">
|
||||
<a href="#return_3" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -881,7 +881,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#val_dataloader" title="val_dataloader" class="md-nav__link">
|
||||
<a href="#val_dataloader" class="md-nav__link">
|
||||
val_dataloader
|
||||
</a>
|
||||
|
||||
@@ -889,7 +889,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_4" title="Return" class="md-nav__link">
|
||||
<a href="#return_4" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -901,7 +901,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#test_dataloader" title="test_dataloader" class="md-nav__link">
|
||||
<a href="#test_dataloader" class="md-nav__link">
|
||||
test_dataloader
|
||||
</a>
|
||||
|
||||
@@ -909,7 +909,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_5" title="Return" class="md-nav__link">
|
||||
<a href="#return_5" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -921,7 +921,7 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#add_model_specific_args" title="add_model_specific_args" class="md-nav__link">
|
||||
<a href="#add_model_specific_args" class="md-nav__link">
|
||||
add_model_specific_args
|
||||
</a>
|
||||
|
||||
@@ -929,7 +929,7 @@
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#return_6" title="Return" class="md-nav__link">
|
||||
<a href="#return_6" class="md-nav__link">
|
||||
Return
|
||||
</a>
|
||||
|
||||
@@ -1175,10 +1175,15 @@
|
||||
<td>Y</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>progress</td>
|
||||
<td>progress_bar</td>
|
||||
<td>Dict for progress bar display. Must have only tensors</td>
|
||||
<td>N</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>log</td>
|
||||
<td>Dict of metrics to add to logger. Must have only tensors (no images, etc)</td>
|
||||
<td>N</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p><strong>Example</strong></p>
|
||||
@@ -1195,7 +1200,8 @@
|
||||
11
|
||||
12
|
||||
13
|
||||
14</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">training_step</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">batch</span><span class="p">,</span> <span class="n">batch_nb</span><span class="p">):</span>
|
||||
14
|
||||
15</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">training_step</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">batch</span><span class="p">,</span> <span class="n">batch_nb</span><span class="p">):</span>
|
||||
<span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">z</span> <span class="o">=</span> <span class="n">batch</span>
|
||||
|
||||
<span class="c1"># implement your own</span>
|
||||
@@ -1204,7 +1210,8 @@
|
||||
|
||||
<span class="n">output</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="s1">'loss'</span><span class="p">:</span> <span class="n">loss</span><span class="p">,</span> <span class="c1"># required</span>
|
||||
<span class="s1">'progress'</span><span class="p">:</span> <span class="p">{</span><span class="s1">'training_loss'</span><span class="p">:</span> <span class="n">loss</span><span class="p">}</span> <span class="c1"># optional (MUST ALL BE TENSORS)</span>
|
||||
<span class="s1">'progress_bar'</span><span class="p">:</span> <span class="p">{</span><span class="s1">'training_loss'</span><span class="p">:</span> <span class="n">loss</span><span class="p">},</span> <span class="c1"># optional (MUST ALL BE TENSORS)</span>
|
||||
<span class="s1">'log'</span><span class="p">:</span> <span class="p">{</span><span class="s1">'training_loss'</span><span class="p">:</span> <span class="n">loss</span><span class="p">}</span> <span class="c1"># optional (MUST ALL BE TENSORS)</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="c1"># return a dict</span>
|
||||
@@ -1227,6 +1234,8 @@
|
||||
</pre></div>
|
||||
</td></tr></table>
|
||||
|
||||
<p>You can also return a -1 instead of a dict to stop the current loop. This is useful if you want to
|
||||
break out of the current training epoch early.</p>
|
||||
<hr />
|
||||
<h3 id="train_dataloader">train_dataloader</h3>
|
||||
<table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre>1
|
||||
@@ -1270,7 +1279,8 @@ If you want to change the data during every epoch DON'T use the data_loader deco
|
||||
|
||||
<p>Set up as many optimizers and (optionally) learning rate schedulers as you need. Normally you'd need one. But in the case of GANs or something more esoteric you might have multiple.
|
||||
Lightning will call .backward() and .step() on each one in every epoch. If you use 16 bit precision it will also handle that.</p>
|
||||
<p><strong>Note:</strong> If you use multiple optimizers, training_step will have an additional <code>optimizer_idx</code> parameter. </p>
|
||||
<p><strong>Note:</strong> If you use multiple optimizers, training_step will have an additional <code>optimizer_idx</code> parameter. <br />
|
||||
<strong>Note 2:</strong> If you use LBFGS lightning handles the closure function automatically for you.</p>
|
||||
<h5 id="return_1">Return</h5>
|
||||
<p>Return any of these 3 options: <br />
|
||||
Single optimizer <br />
|
||||
@@ -1368,8 +1378,8 @@ If you don't need to validate you don't need to implement this method. In this s
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>dict</td>
|
||||
<td>Dict or OrderedDict with metrics to display in progress bar. All keys must be tensors.</td>
|
||||
<td>Y</td>
|
||||
<td>Dict or OrderedDict - passed to the validation_end step</td>
|
||||
<td>N</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -1412,7 +1422,7 @@ If you don't need to validate you don't need to implement this method. In this s
|
||||
<span class="c1"># or generated text... or whatever</span>
|
||||
<span class="n">sample_imgs</span> <span class="o">=</span> <span class="n">x</span><span class="p">[:</span><span class="mi">6</span><span class="p">]</span>
|
||||
<span class="n">grid</span> <span class="o">=</span> <span class="n">torchvision</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">make_grid</span><span class="p">(</span><span class="n">sample_imgs</span><span class="p">)</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">experiment</span><span class="o">.</span><span class="n">add_image</span><span class="p">(</span><span class="s1">'example_images'</span><span class="p">,</span> <span class="n">grid</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">logger</span><span class="o">.</span><span class="n">experiment</span><span class="o">.</span><span class="n">add_image</span><span class="p">(</span><span class="s1">'example_images'</span><span class="p">,</span> <span class="n">grid</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># calculate acc</span>
|
||||
<span class="n">labels_hat</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">argmax</span><span class="p">(</span><span class="n">out</span><span class="p">,</span> <span class="n">dim</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
|
||||
@@ -1465,19 +1475,25 @@ If you don't need to validate you don't need to implement this method. In this s
|
||||
</tbody>
|
||||
</table>
|
||||
<p><strong>Return</strong> </p>
|
||||
<p>Dictionary or OrderedDict </p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Return</th>
|
||||
<th>description</th>
|
||||
<th>optional</th>
|
||||
<th>key</th>
|
||||
<th>value</th>
|
||||
<th>is required</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>dict</td>
|
||||
<td>Dict of OrderedDict with metrics to display in progress bar</td>
|
||||
<td>Y</td>
|
||||
<td>progress_bar</td>
|
||||
<td>Dict for progress bar display. Must have only tensors</td>
|
||||
<td>N</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>log</td>
|
||||
<td>Dict of metrics to add to logger. Must have only tensors (no images, etc)</td>
|
||||
<td>N</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -1498,7 +1514,13 @@ If you don't need to validate you don't need to implement this method. In this s
|
||||
13
|
||||
14
|
||||
15
|
||||
16</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">validation_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
16
|
||||
17
|
||||
18
|
||||
19
|
||||
20
|
||||
21
|
||||
22</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">validation_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Called at the end of validation to aggregate outputs</span>
|
||||
<span class="sd"> :param outputs: list of individual outputs of each validation step</span>
|
||||
@@ -1513,7 +1535,13 @@ If you don't need to validate you don't need to implement this method. In this s
|
||||
<span class="n">val_loss_mean</span> <span class="o">/=</span> <span class="nb">len</span><span class="p">(</span><span class="n">outputs</span><span class="p">)</span>
|
||||
<span class="n">val_acc_mean</span> <span class="o">/=</span> <span class="nb">len</span><span class="p">(</span><span class="n">outputs</span><span class="p">)</span>
|
||||
<span class="n">tqdm_dict</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'val_loss'</span><span class="p">:</span> <span class="n">val_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">(),</span> <span class="s1">'val_acc'</span><span class="p">:</span> <span class="n">val_acc_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="k">return</span> <span class="n">tqdm_dict</span>
|
||||
|
||||
<span class="c1"># show val_loss and val_acc in progress bar but only log val_loss</span>
|
||||
<span class="n">results</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="s1">'progress_bar'</span><span class="p">:</span> <span class="n">tqdm_dict</span><span class="p">,</span>
|
||||
<span class="s1">'log'</span><span class="p">:</span> <span class="p">{</span><span class="s1">'val_loss'</span><span class="p">:</span> <span class="n">val_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="p">}</span>
|
||||
<span class="k">return</span> <span class="n">results</span>
|
||||
</pre></div>
|
||||
</td></tr></table>
|
||||
|
||||
@@ -1538,7 +1566,13 @@ each validation step for that dataloader.</p>
|
||||
16
|
||||
17
|
||||
18
|
||||
19</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">validation_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
19
|
||||
20
|
||||
21
|
||||
22
|
||||
23
|
||||
24
|
||||
25</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">validation_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Called at the end of validation to aggregate outputs</span>
|
||||
<span class="sd"> :param outputs: list of list of individual outputs of each validation step</span>
|
||||
@@ -1556,7 +1590,13 @@ each validation step for that dataloader.</p>
|
||||
<span class="n">val_loss_mean</span> <span class="o">/=</span> <span class="n">i</span>
|
||||
<span class="n">val_acc_mean</span> <span class="o">/=</span> <span class="n">i</span>
|
||||
<span class="n">tqdm_dict</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'val_loss'</span><span class="p">:</span> <span class="n">val_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">(),</span> <span class="s1">'val_acc'</span><span class="p">:</span> <span class="n">val_acc_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="k">return</span> <span class="n">tqdm_dict</span>
|
||||
|
||||
<span class="c1"># show val_loss and val_acc in progress bar but only log val_loss</span>
|
||||
<span class="n">results</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="s1">'progress_bar'</span><span class="p">:</span> <span class="n">tqdm_dict</span><span class="p">,</span>
|
||||
<span class="s1">'log'</span><span class="p">:</span> <span class="p">{</span><span class="s1">'val_loss'</span><span class="p">:</span> <span class="n">val_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="p">}</span>
|
||||
<span class="k">return</span> <span class="n">results</span>
|
||||
</pre></div>
|
||||
</td></tr></table>
|
||||
|
||||
@@ -1730,7 +1770,13 @@ If you don't need to test you don't need to implement this method. In this step
|
||||
13
|
||||
14
|
||||
15
|
||||
16</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">test_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
16
|
||||
17
|
||||
18
|
||||
19
|
||||
20
|
||||
21
|
||||
22</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">test_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Called at the end of test to aggregate outputs</span>
|
||||
<span class="sd"> :param outputs: list of individual outputs of each test step</span>
|
||||
@@ -1745,7 +1791,13 @@ If you don't need to test you don't need to implement this method. In this step
|
||||
<span class="n">test_loss_mean</span> <span class="o">/=</span> <span class="nb">len</span><span class="p">(</span><span class="n">outputs</span><span class="p">)</span>
|
||||
<span class="n">test_acc_mean</span> <span class="o">/=</span> <span class="nb">len</span><span class="p">(</span><span class="n">outputs</span><span class="p">)</span>
|
||||
<span class="n">tqdm_dict</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'test_loss'</span><span class="p">:</span> <span class="n">test_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">(),</span> <span class="s1">'test_acc'</span><span class="p">:</span> <span class="n">test_acc_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="k">return</span> <span class="n">tqdm_dict</span>
|
||||
|
||||
<span class="c1"># show test_loss and test_acc in progress bar but only log test_loss</span>
|
||||
<span class="n">results</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="s1">'progress_bar'</span><span class="p">:</span> <span class="n">tqdm_dict</span><span class="p">,</span>
|
||||
<span class="s1">'log'</span><span class="p">:</span> <span class="p">{</span><span class="s1">'test_loss'</span><span class="p">:</span> <span class="n">val_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="p">}</span>
|
||||
<span class="k">return</span> <span class="n">results</span>
|
||||
</pre></div>
|
||||
</td></tr></table>
|
||||
|
||||
@@ -1770,7 +1822,13 @@ each validation step for that dataloader.</p>
|
||||
16
|
||||
17
|
||||
18
|
||||
19</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">test_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
19
|
||||
20
|
||||
21
|
||||
22
|
||||
23
|
||||
24
|
||||
25</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="k">def</span> <span class="nf">test_end</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">outputs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Called at the end of test to aggregate outputs</span>
|
||||
<span class="sd"> :param outputs: list of individual outputs of each test step</span>
|
||||
@@ -1788,7 +1846,13 @@ each validation step for that dataloader.</p>
|
||||
<span class="n">test_loss_mean</span> <span class="o">/=</span> <span class="n">i</span>
|
||||
<span class="n">test_acc_mean</span> <span class="o">/=</span> <span class="n">i</span>
|
||||
<span class="n">tqdm_dict</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'test_loss'</span><span class="p">:</span> <span class="n">test_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">(),</span> <span class="s1">'test_acc'</span><span class="p">:</span> <span class="n">test_acc_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="k">return</span> <span class="n">tqdm_dict</span>
|
||||
|
||||
<span class="c1"># show test_loss and test_acc in progress bar but only log test_loss</span>
|
||||
<span class="n">results</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="s1">'progress_bar'</span><span class="p">:</span> <span class="n">tqdm_dict</span><span class="p">,</span>
|
||||
<span class="s1">'log'</span><span class="p">:</span> <span class="p">{</span><span class="s1">'test_loss'</span><span class="p">:</span> <span class="n">val_loss_mean</span><span class="o">.</span><span class="n">item</span><span class="p">()}</span>
|
||||
<span class="p">}</span>
|
||||
<span class="k">return</span> <span class="n">results</span>
|
||||
</pre></div>
|
||||
</td></tr></table>
|
||||
|
||||
@@ -2050,7 +2114,7 @@ The <a href="https://williamfalcon.github.io/test-tube/hyperparameter_optimizati
|
||||
|
||||
</div>
|
||||
|
||||
<script src="../../assets/javascripts/application.245445c6.js"></script>
|
||||
<script src="../../assets/javascripts/application.c648116f.js"></script>
|
||||
|
||||
<script>app.initialize({version:"1.0.4",url:{base:"../.."}})</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user