Class SameDiffOutputLayer

    • Method Detail

      • isPretrainLayer

        public boolean isPretrainLayer()
        Description copied from interface: Layer
        Returns true if the layer can be trained in an unsupervised/pretrain manner (AE, VAE, etc)
        Specified by:
        isPretrainLayer in interface Layer
        Returns:
        true if the layer can be pretrained (using fit(INDArray), false otherwise
      • activate

        public INDArray activate​(boolean training,
                                 LayerWorkspaceMgr workspaceMgr)
        Description copied from interface: Layer
        Perform forward pass and return the activations array with the last set input
        Specified by:
        activate in interface Layer
        Parameters:
        training - training or test mode
        workspaceMgr - Workspace manager
        Returns:
        the activation (layer output) of the last specified input. Note that the returned array should be placed in the ArrayType.ACTIVATIONS workspace via the workspace manager
      • backpropGradient

        public Pair<Gradient,​INDArray> backpropGradient​(INDArray epsilon,
                                                              LayerWorkspaceMgr workspaceMgr)
        Description copied from interface: Layer
        Calculate the gradient relative to the error in the next layer
        Specified by:
        backpropGradient in interface Layer
        Parameters:
        epsilon - w^(L+1)*delta^(L+1). Or, equiv: dC/da, i.e., (dC/dz)*(dz/da) = dC/da, where C is cost function a=sigma(z) is activation.
        workspaceMgr - Workspace manager
        Returns:
        Pair where Gradient is gradient for this layer, INDArray is epsilon (activation gradient) needed by next layer, but before element-wise multiply by sigmaPrime(z). So for standard feed-forward layer, if this layer is L, then return.getSecond() == dL/dIn = (w^(L)*(delta^(L))^T)^T. Note that the returned array should be placed in the ArrayType.ACTIVATION_GRAD workspace via the workspace manager
      • setParams

        public void setParams​(INDArray params)
        Description copied from interface: Model
        Set the parameters for this model. This expects a linear ndarray which then be unpacked internally relative to the expected ordering of the model
        Specified by:
        setParams in interface Model
        Overrides:
        setParams in class AbstractLayer<SameDiffOutputLayer>
        Parameters:
        params - the parameters for the model
      • setParamsViewArray

        public void setParamsViewArray​(INDArray params)
        Description copied from interface: Model
        Set the initial parameters array as a view of the full (backprop) network parameters NOTE: this is intended to be used internally in MultiLayerNetwork and ComputationGraph, not by users.
        Specified by:
        setParamsViewArray in interface Model
        Overrides:
        setParamsViewArray in class AbstractLayer<SameDiffOutputLayer>
        Parameters:
        params - a 1 x nParams row vector that is a view of the larger (MLN/CG) parameters array
      • setBackpropGradientsViewArray

        public void setBackpropGradientsViewArray​(INDArray gradients)
        Description copied from interface: Model
        Set the gradients array as a view of the full (backprop) network parameters NOTE: this is intended to be used internally in MultiLayerNetwork and ComputationGraph, not by users.
        Specified by:
        setBackpropGradientsViewArray in interface Model
        Overrides:
        setBackpropGradientsViewArray in class AbstractLayer<SameDiffOutputLayer>
        Parameters:
        gradients - a 1 x nParams row vector that is a view of the larger (MLN/CG) gradients array
      • paramTable

        public Map<String,​INDArray> paramTable​(boolean backpropParamsOnly)
        Description copied from interface: Model
        Table of parameters by key, for backprop For many models (dense layers, etc) - all parameters are backprop parameters
        Specified by:
        paramTable in interface Model
        Specified by:
        paramTable in interface Trainable
        Overrides:
        paramTable in class AbstractLayer<SameDiffOutputLayer>
        Parameters:
        backpropParamsOnly - If true, return backprop params only. If false: return all params (equivalent to paramsTable())
        Returns:
        Parameter table
      • doInit

        protected void doInit()
      • needsLabels

        public boolean needsLabels()
        Description copied from interface: IOutputLayer
        Returns true if labels are required for this output layer
        Specified by:
        needsLabels in interface IOutputLayer
        Returns:
        true if this output layer needs labels or not
      • computeScore

        public double computeScore​(double fullNetRegTerm,
                                   boolean training,
                                   LayerWorkspaceMgr workspaceMgr)
        Description copied from interface: IOutputLayer
        Compute score after labels and input have been set.
        Specified by:
        computeScore in interface IOutputLayer
        Parameters:
        fullNetRegTerm - Regularization score (l1/l2/weight decay) for the entire network
        training - whether score should be calculated at train or test time (this affects things like application of dropout, etc)
        Returns:
        score (loss function)
      • computeScoreForExamples

        public INDArray computeScoreForExamples​(double fullNetRegTerm,
                                                LayerWorkspaceMgr workspaceMgr)
        Description copied from interface: IOutputLayer
        Compute the score for each example individually, after labels and input have been set.
        Specified by:
        computeScoreForExamples in interface IOutputLayer
        Parameters:
        fullNetRegTerm - Regularization score (l1/l2/weight decay) for the entire network
        Returns:
        A column INDArray of shape [numExamples,1], where entry i is the score of the ith example
      • f1Score

        public double f1Score​(DataSet data)
        Description copied from interface: Classifier
        Sets the input and labels and returns a score for the prediction wrt true labels
        Specified by:
        f1Score in interface Classifier
        Parameters:
        data - the data to score
        Returns:
        the score for the given input,label pairs
      • f1Score

        public double f1Score​(INDArray examples,
                              INDArray labels)
        Description copied from interface: Classifier
        Returns the f1 score for the given examples. Think of this to be like a percentage right. The higher the number the more it got right. This is on a scale from 0 to 1.
        Specified by:
        f1Score in interface Classifier
        Parameters:
        examples - te the examples to classify (one example in each row)
        labels - the true labels
        Returns:
        the scores for each ndarray
      • numLabels

        public int numLabels()
        Description copied from interface: Classifier
        Returns the number of possible labels
        Specified by:
        numLabels in interface Classifier
        Returns:
        the number of possible labels for this classifier
      • fit

        public void fit​(DataSetIterator iter)
        Description copied from interface: Classifier
        Train the model based on the datasetiterator
        Specified by:
        fit in interface Classifier
        Parameters:
        iter - the iterator to train on
      • predict

        public int[] predict​(INDArray examples)
        Description copied from interface: Classifier
        Takes in a list of examples For each row, returns a label
        Specified by:
        predict in interface Classifier
        Parameters:
        examples - the examples to classify (one example in each row)
        Returns:
        the labels for each example
      • predict

        public List<String> predict​(DataSet dataSet)
        Description copied from interface: Classifier
        Takes in a DataSet of examples For each row, returns a label
        Specified by:
        predict in interface Classifier
        Parameters:
        dataSet - the examples to classify
        Returns:
        the labels for each example
      • fit

        public void fit​(INDArray examples,
                        INDArray labels)
        Description copied from interface: Classifier
        Fit the model
        Specified by:
        fit in interface Classifier
        Parameters:
        examples - the examples to classify (one example in each row)
        labels - the example labels(a binary outcome matrix)
      • fit

        public void fit​(DataSet data)
        Description copied from interface: Classifier
        Fit the model
        Specified by:
        fit in interface Classifier
        Parameters:
        data - the data to train on
      • fit

        public void fit​(INDArray examples,
                        int[] labels)
        Description copied from interface: Classifier
        Fit the model
        Specified by:
        fit in interface Classifier
        Parameters:
        examples - the examples to classify (one example in each row)
        labels - the labels for each example (the number of labels must match the number of rows in the example