pub struct AdaptiveMaxPool2d {
pub output_size: (usize, usize),
}Expand description
2D adaptive max pooling layer.
Dynamically computes window boundaries to produce the target output_size
regardless of input spatial dimensions. Returns the pooled tensor and
stores indices internally for gradient routing.
Input shape: [B, C, H, W]
Output shape: [B, C, output_size.0, output_size.1]
Fields§
§output_size: (usize, usize)Implementations§
Trait Implementations§
Source§impl Clone for AdaptiveMaxPool2d
impl Clone for AdaptiveMaxPool2d
Source§fn clone(&self) -> AdaptiveMaxPool2d
fn clone(&self) -> AdaptiveMaxPool2d
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AdaptiveMaxPool2d
impl Debug for AdaptiveMaxPool2d
Source§impl<T: Float> Module<T> for AdaptiveMaxPool2d
impl<T: Float> Module<T> for AdaptiveMaxPool2d
Source§fn forward(&self, input: &Tensor<T>) -> FerrotorchResult<Tensor<T>>
fn forward(&self, input: &Tensor<T>) -> FerrotorchResult<Tensor<T>>
Forward pass. Takes input tensor, returns output tensor.
Source§fn parameters(&self) -> Vec<&Parameter<T>>
fn parameters(&self) -> Vec<&Parameter<T>>
Iterate over all learnable parameters.
Source§fn parameters_mut(&mut self) -> Vec<&mut Parameter<T>>
fn parameters_mut(&mut self) -> Vec<&mut Parameter<T>>
Iterate over all learnable parameters mutably.
Source§fn named_parameters(&self) -> Vec<(String, &Parameter<T>)>
fn named_parameters(&self) -> Vec<(String, &Parameter<T>)>
Named parameters for state dict serialization. Read more
Source§fn is_training(&self) -> bool
fn is_training(&self) -> bool
Whether the module is in training mode.
Source§fn to_device(&mut self, device: Device) -> FerrotorchResult<()>
fn to_device(&mut self, device: Device) -> FerrotorchResult<()>
Move all parameters and buffers to a device. Read more
Source§fn state_dict(&self) -> StateDict<T>
fn state_dict(&self) -> StateDict<T>
Export parameters and buffers as a state dict (torch parity). Read more
Source§fn buffers(&self) -> Vec<&Buffer<T>>
fn buffers(&self) -> Vec<&Buffer<T>>
Iterate over all non-trainable buffers (e.g. running mean / variance
in BatchNorm). Default returns empty — concrete modules with buffers
override.
Source§fn buffers_mut(&mut self) -> Vec<&mut Buffer<T>>
fn buffers_mut(&mut self) -> Vec<&mut Buffer<T>>
Mutable iteration over all buffers. Default returns empty.
Source§fn named_buffers(&self) -> Vec<(String, &Buffer<T>)>
fn named_buffers(&self) -> Vec<(String, &Buffer<T>)>
Named buffers (dot-separated paths for nested modules). Default
returns empty.
Source§fn as_any(&self) -> Option<&dyn Any>
fn as_any(&self) -> Option<&dyn Any>
Downcast hook for type-erased buffer-loader dispatch. (#984) Read more
Source§fn children(&self) -> Vec<&dyn Module<T>>
fn children(&self) -> Vec<&dyn Module<T>>
Direct child modules. Default returns empty (leaf module).
Source§fn named_children(&self) -> Vec<(String, &dyn Module<T>)>
fn named_children(&self) -> Vec<(String, &dyn Module<T>)>
Direct child modules with their attribute names. Default returns
empty.
Source§fn modules(&self) -> Vec<&dyn Module<T>>where
Self: Sized,
fn modules(&self) -> Vec<&dyn Module<T>>where
Self: Sized,
All modules in this subtree, depth-first (self first, then each
child’s descendants in order). Read more
Source§fn descendants_dyn(&self) -> Vec<&dyn Module<T>>
fn descendants_dyn(&self) -> Vec<&dyn Module<T>>
All strict descendants of
self in depth-first order. Object-safe.Source§fn named_modules(&self) -> Vec<(String, &dyn Module<T>)>where
Self: Sized,
fn named_modules(&self) -> Vec<(String, &dyn Module<T>)>where
Self: Sized,
All modules in this subtree with dot-separated path names. The root
is named
""; children paths are joined with ..Source§fn named_descendants_dyn(&self) -> Vec<(String, &dyn Module<T>)>
fn named_descendants_dyn(&self) -> Vec<(String, &dyn Module<T>)>
Strict descendants with dot-paths. Object-safe.
Source§fn with_forward_hook(
self,
hook: ForwardHook<T>,
) -> (HookedModule<Self, T>, HookHandle)where
Self: Sized,
fn with_forward_hook(
self,
hook: ForwardHook<T>,
) -> (HookedModule<Self, T>, HookHandle)where
Self: Sized,
Wrap this module in a
HookedModule and register a forward hook.
Returns the wrapper paired with a HookHandle that can be used to
remove the hook later. The wrapper implements Module<T> itself, so
it slots into any place the original module did. Mirrors
torch.nn.Module.register_forward_hook.Source§fn with_forward_pre_hook(
self,
hook: ForwardPreHook<T>,
) -> (HookedModule<Self, T>, HookHandle)where
Self: Sized,
fn with_forward_pre_hook(
self,
hook: ForwardPreHook<T>,
) -> (HookedModule<Self, T>, HookHandle)where
Self: Sized,
Wrap this module in a
HookedModule and register a forward
pre-hook. See Self::with_forward_hook. Mirrors
torch.nn.Module.register_forward_pre_hook.Source§fn with_backward_hook(
self,
hook: BackwardHook<T>,
) -> (HookedModule<Self, T>, HookHandle)where
Self: Sized,
fn with_backward_hook(
self,
hook: BackwardHook<T>,
) -> (HookedModule<Self, T>, HookHandle)where
Self: Sized,
Wrap this module in a
HookedModule and register a backward hook.
See Self::with_forward_hook. Mirrors
torch.nn.Module.register_backward_hook.Source§fn zero_grad(&self) -> FerrotorchResult<()>
fn zero_grad(&self) -> FerrotorchResult<()>
Set the gradient of every parameter to
None. Read moreSource§fn requires_grad_(&mut self, requires_grad: bool)
fn requires_grad_(&mut self, requires_grad: bool)
Toggle
requires_grad on every parameter (freeze / unfreeze the
module). Mirrors torch.nn.Module.requires_grad_.Source§fn apply_to_parameters(&mut self, f: &mut dyn FnMut(&mut Parameter<T>))
fn apply_to_parameters(&mut self, f: &mut dyn FnMut(&mut Parameter<T>))
Apply a function to every parameter in this module. Mirrors
torch.nn.Module.apply for the parameter case (true apply recurses
over all submodules; the recursive form requires &mut dyn Module
which conflicts with this trait’s &mut self borrow). Read moreSource§fn load_state_dict(
&mut self,
state: &StateDict<T>,
strict: bool,
) -> FerrotorchResult<()>
fn load_state_dict( &mut self, state: &StateDict<T>, strict: bool, ) -> FerrotorchResult<()>
Load parameters from a state dict. Read more
Auto Trait Implementations§
impl Freeze for AdaptiveMaxPool2d
impl RefUnwindSafe for AdaptiveMaxPool2d
impl Send for AdaptiveMaxPool2d
impl Sync for AdaptiveMaxPool2d
impl Unpin for AdaptiveMaxPool2d
impl UnsafeUnpin for AdaptiveMaxPool2d
impl UnwindSafe for AdaptiveMaxPool2d
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more