Convolution

lamp.autograd.Convolution
case class Convolution(scope: Scope, input: Variable, weight: Variable, bias: Variable, stride: Array[Long], padding: Array[Long], dilation: Array[Long], transposed: Boolean, outputPadding: Array[Long], groups: Long) extends Op

1D/2D/3D convolution

Value parameters

bias

out_channels

input

batch x in_channels x height x width

weight

out_channels x in_channels x kernel_size x kernel_size

Attributes

Returns

Variable with Tensor of size batch x out_channels x L' (length depends on stride/padding/dilation)

Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Op
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product

Concrete fields

override val params: List[(Variable, (STen, STen) => Unit)]

Implementation of the backward pass

Implementation of the backward pass

A list of input variables paired up with an anonymous function computing the respective partial derivative. With the notation in the documentation of the trait lamp.autograd.Op: dy/dw2 => dy/dw2 * dw2/dw1. The first argument of the anonymous function is the incoming partial derivative (dy/dw2), the second argument is the output tensor into which the result (dy/dw2 * dw2/dw1) is accumulated (added).

If the operation does not support computing the partial derivative for some of its arguments, then do not include that argument in this list.

Attributes

See also

The documentation on the trait lamp.autograd.Op for more details and example.

The value of this operation

The value of this operation

Attributes

Inherited fields

val joinedBackward: Option[STen => Unit]

Attributes

Inherited from:
Op