Documentation of 'jsat.classifiers.linear.kernelized.ALMA2K' Java class
ALMA2K
jsat.classifiers.linear.kernelized

Class ALMA2K

    • Constructor Detail

      • ALMA2K

        public ALMA2K(KernelTrick kernel,
                      double alpha)
        Creates a new kernelized ALMA2 object
        Parameters:
        kernel - the kernel function to use
        alpha - the alpha parameter of ALMA
    • Method Detail

      • setAveraged

        public void setAveraged(boolean averaged)
        ALMA2K supports taking the averaged output of all previous hypothesis weighted by the number of successful uses of the hypothesis during training. This effectively reduces the variance of the classifier. It has no impact on the training / update phase, only the classification results are impacted.

        Unlike most algorithms, this can be changed at any time without issue - even after the algorithm has been trained the type of output (averaged or last) can be switched on the fly.
        Parameters:
        averaged - true to use the averaged out, false to only use the last hypothesis
      • isAveraged

        public boolean isAveraged()
        Returns whether or not the averaged or last hypothesis is used
        Returns:
        whether or not the averaged or last hypothesis is used
      • setKernelTrick

        public void setKernelTrick(KernelTrick K)
        Sets the kernel to use
        Parameters:
        K - the kernel to use
      • getKernelTrick

        public KernelTrick getKernelTrick()
        Returns the kernel in use
        Returns:
        the kernel in use
      • setAlpha

        public void setAlpha(double alpha)
        Alpha controls the approximation of the large margin formed by ALMA, with larger values causing more updates. A value of 1.0 will update only on mistakes, while smaller values update if the error was not far enough away from the margin.

        NOTE: Whenever alpha is set, the value of B will also be set to an appropriate value. This is not the only possible value that will lead to convergence, and can be set manually after alpha is set to another value.
        Parameters:
        alpha - the approximation scale in (0.0, 1.0]
      • getAlpha

        public double getAlpha()
        Returns the approximation coefficient used
        Returns:
        the approximation coefficient used
      • setB

        public void setB(double B)
        Sets the B variable of the ALMA algorithm, this is set automatically by setAlpha(double).
        Parameters:
        B - the value for B
      • getB

        public double getB()
        Returns the B value of the ALMA algorithm
        Returns:
        the B value of the ALMA algorithm
      • setC

        public void setC(double C)
        Sets the C value of the ALMA algorithm. The default value is the one suggested in the paper.
        Parameters:
        C - the C value of ALMA
      • getC

        public double getC()
      • update

        public void update(DataPoint dataPoint,
                           int targetClass)
        Description copied from interface: UpdateableClassifier
        Updates the classifier by giving it a new data point to learn from.
        Specified by:
        update in interface UpdateableClassifier
        Parameters:
        dataPoint - the data point to learn
        targetClass - the target class of the data point
      • classify

        public CategoricalResults classify(DataPoint data)
        Description copied from interface: Classifier
        Performs classification on the given data point.
        Specified by:
        classify in interface Classifier
        Parameters:
        data - the data point to classify
        Returns:
        the results of the classification.
      • getScore

        public double getScore(DataPoint dp)
        Description copied from interface: BinaryScoreClassifier
        Returns the numeric score for predicting a class of a given data point, where the sign of the value indicates which class the data point is predicted to belong to.
        Specified by:
        getScore in interface BinaryScoreClassifier
        Parameters:
        dp - the data point to predict the class label of
        Returns:
        the score for the given data point
      • supportsWeightedData

        public boolean supportsWeightedData()
        Description copied from interface: Classifier
        Indicates whether the model knows how to train using weighted data points. If it does, the model will train assuming the weights. The values returned by this method may change depending on the parameters set for the model.
        Specified by:
        supportsWeightedData in interface Classifier
        Returns:
        true if the model supports weighted data, false otherwise
      • guessAlpha

        public static Distribution guessAlpha(DataSet d)
        Guesses the distribution to use for the α parameter
        Parameters:
        d - the dataset to get the guess for
        Returns:
        the guess for the α parameter
        See Also:
        setAlpha(double)

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.