Bases: Module
A sequential container that applies modules in the order they are passed.
Parameters:
| Name |
Type |
Description |
Default |
*modules
|
Module
|
Any number of Module instances to chain together.
|
()
|
Example
model = Sequential(Linear(4, 8), ReLU(), Linear(8, 2))
output = model(x)
Source code in simplegrad/nn/sequential.py
| class Sequential(Module):
"""A sequential container that applies modules in the order they are passed.
Args:
*modules: Any number of Module instances to chain together.
Example:
```python
model = Sequential(Linear(4, 8), ReLU(), Linear(8, 2))
output = model(x)
```
"""
def __init__(self, *modules: Module) -> None:
super().__init__()
self.modules = modules
def forward(self, x: Tensor) -> Tensor:
"""Pass input through each module in sequence.
Args:
x: Input tensor.
Returns:
Output tensor after all modules have been applied.
"""
for module in self.modules:
x = module(x)
return x
def __str__(self):
res = "Sequential(\n"
for module in self.modules:
res += f" {str(module)},\n"
res += ")"
return res
|
forward(x: Tensor) -> Tensor
Pass input through each module in sequence.
Parameters:
| Name |
Type |
Description |
Default |
x
|
Tensor
|
|
required
|
Returns:
| Type |
Description |
Tensor
|
Output tensor after all modules have been applied.
|
Source code in simplegrad/nn/sequential.py
| def forward(self, x: Tensor) -> Tensor:
"""Pass input through each module in sequence.
Args:
x: Input tensor.
Returns:
Output tensor after all modules have been applied.
"""
for module in self.modules:
x = module(x)
return x
|