Skip to content

Latest commit

 

History

History
98 lines (76 loc) · 6.82 KB

File metadata and controls

98 lines (76 loc) · 6.82 KB
title ALGORITHMS

Learning Algorithms

Here is a list of learning algorithm in LBJava.

Classification

Regression

Class Architecture Structure

Note on Binary & Multiclass Classification

Please use SparseNetworkLearner for both binary and multiclass classification.
Please avoid using learning algorithms, such as SparseWinnow, SparsePerceptron, and SparseAveragedPerceptron directly.

The code snippets below demonstrated how to use learning algorithms inside SparseNetworkLearner programmatically, and how to set parameters accordingly.

Declarations in .lbj file, with only SparseNetworkLearner

discrete SparseNetworkClassifier(Post post) <-
    learn NewsgroupLabel
    using BagOfWords

    with SparseNetworkLearner {}

end

Declarations in .lbj file, with SparseAveragedPerceptron inside SparseNetworkLearner

discrete SAPClassifier(Post post) <-
    learn NewsgroupLabel
    using BagOfWords


    with SparseNetworkLearner {
        SparseAveragedPerceptron.Parameters p = new SparseAveragedPerceptron.Parameters();
        p.learningRate = .1;
        p.thickness = 3;
        baseLTU = new SparseAveragedPerceptron(p);
    }

end

Programmatically use SparseAveragedPerceptron inside SparseNetworkLearner

SparseNetworkClassifier swn = new SparseNetworkClassifier();
SparseNetworkLearner.Parameters snp = new SparseNetworkLearner.Parameters();
SparseAveragedPerceptron sap = new SparseAveragedPerceptron();
SparseAveragedPerceptron.Parameters sapp = new SparseAveragedPerceptron.Paramters();
sapp.learningRate = .1;
sapp.thickness = 3;
sap.setParameters(sapp);
snp.baseLTU = sap;
swn.setParameters(snp);