Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:

caffe::Batch< Dtype > |
caffe::Blob< Dtype > | A wrapper around SyncedMemory holders serving as the basic computational unit through which Layers, Nets, and Solvers interact
caffe::Blob< int > |
caffe::Blob< unsigned int > |
caffe::BlockingQueue< T > |
caffe::BlockingQueue< caffe::Batch< Dtype > * > |
caffe::Caffe |
caffe::Net< Dtype >::Callback |
caffe::Solver< Dtype >::Callback |
caffe::db::Cursor |
caffe::DataTransformer< Dtype > | Applies common transformations to the input data, such as scaling, mirroring, substracting the image mean..
caffe::db::DB |
caffe::Filler< Dtype > | Fills a Blob with constant or randomly-generated data
caffe::BilinearFiller< Dtype > | Fills a Blob with coefficients for bilinear interpolation
caffe::ConstantFiller< Dtype > | Fills a Blob with constant values
caffe::GaussianFiller< Dtype > | Fills a Blob with Gaussian-distributed values
caffe::MSRAFiller< Dtype > | Fills a Blob with values where is set inversely proportional to number of incoming nodes, outgoing nodes, or their average
caffe::PositiveUnitballFiller< Dtype > | Fills a Blob with values such that
caffe::UniformFiller< Dtype > | Fills a Blob with uniformly distributed values
caffe::XavierFiller< Dtype > | Fills a Blob with values where is set inversely proportional to number of incoming nodes, outgoing nodes, or their average
caffe::Caffe::RNG::Generator |
caffe::InternalThread |
caffe::BasePrefetchingDataLayer< Dtype > |
caffe::DataLayer< Dtype > |
caffe::ImageDataLayer< Dtype > | Provides data to the Net from image files
caffe::WindowDataLayer< Dtype > | Provides data to the Net from windows of images files, specified by a window data file. This layer is DEPRECATED and only kept for archival purposes for use by the original R-CNN
caffe::Layer< Dtype > | An interface for the units of computation which can be composed into a Net
caffe::AccuracyLayer< Dtype > | Computes the classification accuracy for a one-of-many classification task
caffe::ArgMaxLayer< Dtype > | Compute the index of the max values for each datum across all dimensions
caffe::BaseConvolutionLayer< Dtype > | Abstract base class that factors out the BLAS code common to ConvolutionLayer and DeconvolutionLayer
caffe::ConvolutionLayer< Dtype > | Convolves the input image with a bank of learned filters, and (optionally) adds biases
caffe::DeconvolutionLayer< Dtype > | Convolve the input with a bank of learned filters, and (optionally) add biases, treating filters and convolution parameters in the opposite sense as ConvolutionLayer
caffe::BaseDataLayer< Dtype > | Provides base for data layers that feed blobs to the Net
caffe::BasePrefetchingDataLayer< Dtype > |
caffe::MemoryDataLayer< Dtype > | Provides data to the Net from memory
caffe::BatchNormLayer< Dtype > | Normalizes the input to have 0-mean and/or unit (1) variance across the batch
caffe::BatchReindexLayer< Dtype > | Index into the input blob along its first axis
caffe::BiasLayer< Dtype > | Computes a sum of two input Blobs, with the shape of the latter Blob "broadcast" to match the shape of the former. Equivalent to tiling the latter Blob, then computing the elementwise sum
caffe::ConcatLayer< Dtype > | Takes at least two Blobs and concatenates them along either the num or channel dimension, outputting the result
caffe::CropLayer< Dtype > | Takes a Blob and crop it, to the shape specified by the second input Blob, across all dimensions after the specified axis
caffe::DummyDataLayer< Dtype > | Provides data to the Net generated by a Filler
caffe::EltwiseLayer< Dtype > | Compute elementwise operations, such as product and sum, along multiple input Blobs
caffe::EmbedLayer< Dtype > | A layer for learning "embeddings" of one-hot vector input. Equivalent to an InnerProductLayer with one-hot vectors as input, but for efficiency the input is the "hot" index of each column itself
caffe::FilterLayer< Dtype > | Takes two+ Blobs, interprets last Blob as a selector and filter remaining Blobs accordingly with selector data (0 means that the corresponding item has to be filtered, non-zero means that corresponding item needs to stay)
caffe::FlattenLayer< Dtype > | Reshapes the input Blob into flat vectors
caffe::HDF5DataLayer< Dtype > | Provides data to the Net from HDF5 files
caffe::HDF5OutputLayer< Dtype > | Write blobs to disk as HDF5 files
caffe::Im2colLayer< Dtype > | A helper for image operations that rearranges image regions into column vectors. Used by ConvolutionLayer to perform convolution by matrix multiplication
caffe::InnerProductLayer< Dtype > | Also known as a "fully-connected" layer, computes an inner product with a set of learned weights, and (optionally) adds biases
caffe::InputLayer< Dtype > | Provides data to the Net by assigning tops directly
caffe::LossLayer< Dtype > | An interface for Layers that take two Blobs as input – usually (1) predictions and (2) ground-truth labels – and output a singleton Blob representing the loss
caffe::ContrastiveLossLayer< Dtype > | Computes the contrastive loss where . This can be used to train siamese networks
caffe::EuclideanLossLayer< Dtype > | Computes the Euclidean (L2) loss for real-valued regression tasks
caffe::HingeLossLayer< Dtype > | Computes the hinge loss for a one-of-many classification task
caffe::InfogainLossLayer< Dtype > | A generalization of SoftmaxWithLossLayer that takes an "information gain" (infogain) matrix specifying the "value" of all label pairs
caffe::MultinomialLogisticLossLayer< Dtype > | Computes the multinomial logistic loss for a one-of-many classification task, directly taking a predicted probability distribution as input
caffe::SigmoidCrossEntropyLossLayer< Dtype > | Computes the cross-entropy (logistic) loss , often used for predicting targets interpreted as probabilities
caffe::SoftmaxWithLossLayer< Dtype > | Computes the multinomial logistic loss for a one-of-many classification task, passing real-valued predictions through a softmax to get a probability distribution over classes
caffe::LRNLayer< Dtype > | Normalize the input in a local region across or within feature maps
caffe::LSTMUnitLayer< Dtype > | A helper for LSTMLayer: computes a single timestep of the non-linearity of the LSTM, producing the updated cell and hidden states
caffe::MVNLayer< Dtype > | Normalizes the input to have 0-mean and/or unit (1) variance
caffe::NeuronLayer< Dtype > | An interface for layers that take one blob as input ( ) and produce one equally-sized blob as output ( ), where each element of the output depends only on the corresponding input element
caffe::AbsValLayer< Dtype > | Computes
caffe::BNLLLayer< Dtype > | Computes if ; otherwise
caffe::ClipLayer< Dtype > | Clip:
caffe::DropoutLayer< Dtype > | During training only, sets a random portion of to 0, adjusting the rest of the vector magnitude accordingly
caffe::ELULayer< Dtype > | Exponential Linear Unit non-linearity
caffe::ExpLayer< Dtype > | Computes , as specified by the scale , shift , and base
caffe::LogLayer< Dtype > | Computes , as specified by the scale , shift , and base
caffe::PowerLayer< Dtype > | Computes , as specified by the scale , shift , and power
caffe::PReLULayer< Dtype > | Parameterized Rectified Linear Unit non-linearity . The differences from ReLULayer are 1) negative slopes are learnable though backprop and 2) negative slopes can vary across channels. The number of axes of input blob should be greater than or equal to 2. The 1st axis (0-based) is seen as channels
caffe::ReLULayer< Dtype > | Rectified Linear Unit non-linearity . The simple max is fast to compute, and the function does not saturate
caffe::SigmoidLayer< Dtype > | Sigmoid function non-linearity , a classic choice in neural networks
caffe::SwishLayer< Dtype > | Swish non-linearity . A novel activation function that tends to work better than ReLU [1]
caffe::TanHLayer< Dtype > | TanH hyperbolic tangent non-linearity , popular in auto-encoders
caffe::ThresholdLayer< Dtype > | Tests whether the input exceeds a threshold: outputs 1 for inputs above threshold; 0 otherwise
caffe::ParameterLayer< Dtype > |
caffe::PoolingLayer< Dtype > | Pools the input image by taking the max, average, etc. within regions
caffe::PythonLayer< Dtype > |
caffe::ReductionLayer< Dtype > | Compute "reductions" – operations that return a scalar output Blob for an input Blob of arbitrary size, such as the sum, absolute sum, and sum of squares
caffe::ReshapeLayer< Dtype > |
caffe::ScaleLayer< Dtype > | Computes the elementwise product of two input Blobs, with the shape of the latter Blob "broadcast" to match the shape of the former. Equivalent to tiling the latter Blob, then computing the elementwise product. Note: for efficiency and convenience, this layer can additionally perform a "broadcast" sum too when `bias_term: true` is set
caffe::SilenceLayer< Dtype > | Ignores bottom blobs while producing no top blobs. (This is useful to suppress outputs during testing.)
caffe::SliceLayer< Dtype > | Takes a Blob and slices it along either the num or channel dimension, outputting multiple sliced Blob results
caffe::SoftmaxLayer< Dtype > | Computes the softmax function
caffe::SplitLayer< Dtype > | Creates a "split" path in the network by copying the bottom Blob into multiple top Blobs to be used by multiple consuming layers
caffe::SPPLayer< Dtype > | Does spatial pyramid pooling on the input image by taking the max, average, etc. within regions so that the result vector of different sized images are of the same size
caffe::TileLayer< Dtype > | Copy a Blob along specified dimensions
caffe::LayerRegisterer< Dtype > |
caffe::LayerRegistry< Dtype > |
caffe::Net< Dtype > | Connects Layers together into a directed acyclic graph (DAG) specified by a NetParameter
caffe::RecurrentLayer< Dtype > | An abstract class for implementing recurrent behavior inside of an unrolled network. This Layer type cannot be instantiated – instead, you should use one of its implementations which defines the recurrent architecture, such as RNNLayer or LSTMLayer
caffe::LSTMLayer< Dtype > | Processes sequential inputs using a "Long Short-Term Memory" (LSTM) [1] style recurrent neural network (RNN). Implemented by unrolling the LSTM computation through time
caffe::RNNLayer< Dtype > | Processes time-varying inputs using a simple recurrent neural network (RNN). Implemented as a network unrolling the RNN computation in time
caffe::Caffe::RNG |
caffe::SignalHandler |
caffe::Solver< Dtype > | An interface for classes that perform optimization on Nets
caffe::SGDSolver< Dtype > | Optimizes the parameters of a Net using stochastic gradient descent (SGD) with momentum
caffe::AdaDeltaSolver< Dtype > |
caffe::AdaGradSolver< Dtype > |
caffe::AdamSolver< Dtype > | AdamSolver, an algorithm for first-order gradient-based optimization of stochastic objective functions, based on adaptive estimates of lower-order moments. Described in [1]
caffe::NesterovSolver< Dtype > |
caffe::RMSPropSolver< Dtype > |
caffe::SolverRegisterer< Dtype > |
caffe::SolverRegistry< Dtype > |
caffe::BlockingQueue< T >::sync |
caffe::SyncedMemory | Manages memory allocation and synchronization between the host (CPU) and device (GPU)
caffe::Timer |
caffe::CPUTimer |
caffe::db::Transaction |