Example usage for weka.filters Filter toString

List of usage examples for weka.filters Filter toString

Introduction

In this page you can find the example usage for weka.filters Filter toString.

Prototype

@Override
public String toString() 

Source Link

Document

Returns a description of the filter, by default only the classname.

Usage

From source file:adams.flow.template.MyTransformer.java

License:Open Source License

/**
 * Generates a random list of Weka filters
 * /*from w ww.ja  v  a2 s .  c om*/
 * @param classes
 *          List of all available weka filters
 * @param numOfFilters
 *          Size of the list to generate
 * @return random list of Weka filters
 */
private WekaFilter[] getRandomFilters(List<Class<?>> classes, int numOfFilters) {
    WekaFilter[] filterList = new WekaFilter[numOfFilters];

    for (int i = 0; i < numOfFilters; i++) {
        int randomNumber = randInt(0, classes.size());
        try {
            Filter randomFilter = (Filter) classes.get(randomNumber).newInstance();
            System.out.println(randomFilter.toString());
            filterList[i] = new WekaFilter();
            filterList[i].setFilter(randomFilter);
        } catch (InstantiationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    return filterList;
}

From source file:adams.flow.template.RandomPreprocessingFlowGenerator.java

License:Open Source License

/**
 * Generates a random list of Weka filters
 * /*from   w  w  w  .  j  a v a 2s  . c  o m*/
 * @param classes
 *          List of all available weka filters
 * @param numOfFilters
 *          Size of the list to generate
 * @return random list of Weka filters
 */
private WekaFilter[] getRandomFilters(List<Class<?>> classes, int numOfFilters) {
    WekaFilter[] filterList = new WekaFilter[numOfFilters];

    for (int i = 0; i < numOfFilters; i++) {

        try {
            Filter randomFilter;
            Integer filterOccurrence;
            String filterName;

            int[] discard = new int[classes.size()];

            do {
                int randomNumber = randInt(0, classes.size() - 1);
                randomFilter = (Filter) classes.get(randomNumber).newInstance();
                filterName = randomFilter.toString();

                // Increment counter of occurrences for the current filter
                filterOccurrence = counter.get(filterName);
                if (filterOccurrence == null) {
                    filterOccurrence = 0;
                }

                // Control if the max number of occurrences have been reached by all the filters 
                discard[randomNumber] = 1;
                if (sum(discard) == discard.length) {
                    throw new Exception(
                            "All filters have been already used and it is not possible to add more");
                }
            } while (filterOccurrence > maxNumOccurrences);

            counter.put(filterName, ++filterOccurrence);

            System.out.println(filterName);
            filterList[i] = new WekaFilter();
            filterList[i].setFilter(randomFilter);
            // Initialize only with the initial batch
            filterList[i].setInitializeOnce(true);
            // filterList[i].setStopFlowOnError(false);
        } catch (InstantiationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    return filterList;
}

From source file:etc.aloe.cscw2013.FeatureExtractionImpl.java

License:Open Source License

@Override
public ExampleSet extractFeatures(ExampleSet basicExamples, FeatureSpecification spec) {
    ExampleSet examples = basicExamples;

    if (this.verbosity.ordinal() > Verbosity.Quiet.ordinal()) {
        System.out.print("Extracting features for " + examples.size() + " examples... ");
    }/*from   www .  j  a v  a2  s. c  o  m*/

    for (Filter filter : spec.getFilters()) {
        try {
            Instances instances = Filter.useFilter(examples.getInstances(), filter);
            examples = new ExampleSet(instances);
        } catch (Exception e) {
            System.err.println("Unable to apply filter: " + filter.toString());
            System.err.println("\t" + e.getMessage());
            return null;
        }
    }

    if (this.verbosity.ordinal() > Verbosity.Quiet.ordinal()) {
        System.out.println("done.");
    }

    return examples;
}