![]() |
pydeepity
Python bindings for Deepity
|
Public Member Functions | |
| None | __init__ (self, *Layer|Activation architecture, tuple[int, int, int] input_shape, Optional[int] batch_size=None) |
| None | configure (self, float learning_rate=1e-6, float inference_rate=0.1, float lmbda=1e-2, str optimizer="SGD") |
| None | set_learning_rate (self, float lr) |
| None | set_inference_rate (self, float ir) |
| None | set_lambda (self, float lmbda) |
| None | set_optimizer (self, str optimizer) |
| float | train_step (self, npt.NDArray[np.float32] X, npt.NDArray[np.float32] Y, int steps) |
| npt.NDArray[np.float32] | predict (self, npt.NDArray[np.float32] X, int steps) |
| float | train_step_with_projection (self, npt.NDArray[np.float32] X, npt.NDArray[np.float32] Y, int steps) |
| npt.NDArray[np.float32] | predict_with_projection (self, npt.NDArray[np.float32] X, int steps) |
| "SimpleConvolutionalPCN" | fit (self, npt.NDArray[np.float32] X, npt.NDArray[np.float32] Y, int epochs, int steps, Optional[float] initial_lr=None, float decay_rate=1.0, bool shuffle=True) |
Public Attributes | |
| architecture = architecture | |
| input_shape = input_shape | |
| layers | |
Protected Member Functions | |
| None | _validate_architecture (self) |
| None | _build_backend (self) |
| None | _require_configured (self) |
Protected Attributes | |
| Optional[float] | _learning_rate = None |
| Optional[float] | _inference_rate = None |
| Optional[float] | _lambda = None |
| Optional[str] | _optimizer = None |
| bool | _configured = False |
Simple convolutional Predictive Coding Network. The architecture is declared using Convolution and Activation objects, while optimization and inference parameters are supplied through configure().
| None deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.__init__ | ( | self, | |
| *Layer | Activation | architecture, | ||
| tuple[int, int, int] | input_shape, | ||
| Optional[int] | batch_size = None ) |
|
protected |
|
protected |
|
protected |
| None deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.configure | ( | self, | |
| float | learning_rate = 1e-6, | ||
| float | inference_rate = 0.1, | ||
| float | lmbda = 1e-2, | ||
| str | optimizer = "SGD" ) |
Configure network hyperparameters and initialize the backend. Must be called once, before train_step()/predict(). @param learning_rate Learning rate for the forward weights. @param inference_rate Inference/settling rate. @param lmbda Regularization parameter. @param optimizer Optimizer used for the forward weights.
| "SimpleConvolutionalPCN" deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.fit | ( | self, | |
| npt.NDArray[np.float32] | X, | ||
| npt.NDArray[np.float32] | Y, | ||
| int | epochs, | ||
| int | steps, | ||
| Optional[float] | initial_lr = None, | ||
| float | decay_rate = 1.0, | ||
| bool | shuffle = True ) |
Train for multiple epochs over (X, Y), batching by `self.batch_size` and printing a progress bar.
| npt.NDArray[np.float32] deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.predict | ( | self, | |
| npt.NDArray[np.float32] | X, | ||
| int | steps ) |
Run inference on `X`, settling for `steps` iterations. @return The terminal layer's beliefs.
| npt.NDArray[np.float32] deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.predict_with_projection | ( | self, | |
| npt.NDArray[np.float32] | X, | ||
| int | steps ) |
Same as predict(), but initializes every layer's beliefs via a forward projection pass first.
| None deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.set_inference_rate | ( | self, | |
| float | ir ) |
Set the inference/settling rate on every layer.
| None deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.set_lambda | ( | self, | |
| float | lmbda ) |
Set the regularization parameter on every layer.
| None deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.set_learning_rate | ( | self, | |
| float | lr ) |
Set the learning rate on every layer.
| None deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.set_optimizer | ( | self, | |
| str | optimizer ) |
Set the optimizer used for the forward weights.
| float deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.train_step | ( | self, | |
| npt.NDArray[np.float32] | X, | ||
| npt.NDArray[np.float32] | Y, | ||
| int | steps ) |
Run one training step on a single batch, settling for `steps` iterations before updating weights. @return Total settling energy accumulated over `steps`.
| float deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.train_step_with_projection | ( | self, | |
| npt.NDArray[np.float32] | X, | ||
| npt.NDArray[np.float32] | Y, | ||
| int | steps ) |
Same as train_step(), but initializes every layer's beliefs via a forward projection pass first.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
| deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.architecture = architecture |
| deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.input_shape = input_shape |
| deepity.SimpleConvolutionalPCN.SimpleConvolutionalPCN.layers |