Example usage for org.apache.mahout.classifier.sgd OnlineLogisticRegression stepOffset

List of usage examples for org.apache.mahout.classifier.sgd OnlineLogisticRegression stepOffset

Introduction

In this page you can find the example usage for org.apache.mahout.classifier.sgd OnlineLogisticRegression stepOffset.

Prototype

int stepOffset

To view the source code for org.apache.mahout.classifier.sgd OnlineLogisticRegression stepOffset.

Click Source Link

Usage

From source file:org.wso2.siddhi.extension.ModelInitializer.java

License:Open Source License

public static OnlineLogisticRegression InitializeLogisticRegression(String modelPath) {
    OnlineLogisticRegression LRmodel = null;
    FileInputStream fileInputStream = null;
    ObjectInputStream objectInputStream = null;
    double[][] modelWeights = null;
    LogisticRegressionModel LRmodelObject;
    try {/*ww  w .j a  v  a2s .c o  m*/
        // get the values for hyper-parameters from model file.
        fileInputStream = new FileInputStream(modelPath);
        objectInputStream = new ObjectInputStream(fileInputStream);
        LRmodelObject = (LogisticRegressionModel) objectInputStream.readObject();
        LRmodel = new OnlineLogisticRegression(LRmodelObject.getNumCategories(), LRmodelObject.getNumFeatures(),
                new L2(1));
        LRmodel.learningRate(LRmodelObject.getLearningRate());
        LRmodel.lambda(LRmodelObject.getLambda());
        LRmodel.alpha(LRmodelObject.getAlpha());
        LRmodel.stepOffset(LRmodelObject.getStepOffset());
        LRmodel.decayExponent(LRmodelObject.getDecayExponent());
        modelWeights = LRmodelObject.getWeights();
        fileInputStream.close();
        objectInputStream.close();
        for (int i = 0; i < modelWeights.length; i++) {
            for (int j = 0; j < modelWeights[0].length; j++) {
                LRmodel.setBeta(i, j, modelWeights[i][j]);
            }
        }
    } catch (Exception e) {
        logger.error("Failed to create a Logistic Regression model from the file \"" + modelPath + "\"", e);
    } finally {
        try {
            fileInputStream.close();
            objectInputStream.close();
        } catch (IOException e) {
            logger.error("Failed to close the model input stream!", e);
        }
    }
    logger.info("Logistic Regression model execution plan successfully intialized for \"" + modelPath
            + "\" model file.");
    return LRmodel;
}