def addition(a,b):
"Adds two numbers together"
return a+b
core
Fill in a module description here
foo
foo ()
def addition(a,b):
"Adds two numbers together"
return a+b
+b a
We take the sum of a and b, which is written in python with the “+” symbol
from torch import nn
from fastcore.foundation import docs
@docs
class A(nn.Module):
def __init__(self):
super().__init__()
= dict(cls_doc="xxx") _docs
A
A ()
xxx
class B(nn.Module):
# A simple comment preceding a simple print statement
def __init__(self):
super().__init__()
B
B ()
Base class for all neural network modules.
Your models should also subclass this class.
Modules can also contain other Modules, allowing to nest them in a tree structure. You can assign the submodules as regular attributes::
import torch.nn as nn
import torch.nn.functional as F
class Model(nn.Module):
def __init__(self):
super().__init__()
self.conv1 = nn.Conv2d(1, 20, 5)
self.conv2 = nn.Conv2d(20, 20, 5)
def forward(self, x):
x = F.relu(self.conv1(x))
return F.relu(self.conv2(x))
Submodules assigned in this way will be registered, and will have their parameters converted too when you call :meth:to
, etc.
.. note:: As per the example above, an __init__()
call to the parent class must be made before assignment on the child.
:ivar training: Boolean represents whether this module is in training or evaluation mode. :vartype training: bool