org.encog.ensemble

## Class Ensemble

- java.lang.Object
- - org.encog.ensemble.Ensemble

- Direct Known Subclasses:
    AdaBoost, Bagging, Stacking

      public abstract class Ensemble
      extends Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Ensemble.NotPossibleInThisMethod`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected EnsembleAggregator` | `aggregator`
    `protected MLDataSet` | `aggregatorDataSet`
    `protected EnsembleDataSetFactory` | `dataSetFactory`
    `protected ArrayList<EnsembleML>` | `members`
    `protected EnsembleMLMethodFactory` | `mlFactory`
    `protected EnsembleTrainFactory` | `trainFactory`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Ensemble()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addMember(EnsembleML newMember)` Add a member to the ensemble
    `MLData` | `compute(MLData input)` Compute the output for a specific input
    `EnsembleAggregator` | `getAggregator()`
    `EnsembleML` | `getMember(int memberNumber)` Extract a specific MLMethod
    `abstract EnsembleTypes.ProblemType` | `getProblemType()` Return what type of problem this Ensemble is solving
    `MLDataSet` | `getTrainingSet(int setNumber)` Extract a specific training set from the Ensemble
    `abstract void` | `initMembers()` Initialise ensemble components
    `void` | `initMembersBySplits(int splits)`
    `void` | `setAggregator(EnsembleAggregator aggregator)` Sets the ensemble aggregation method
    `void` | `setTrainingData(MLDataSet data)` Set which training data to base the training on
    `void` | `setTrainingDataFactory(EnsembleDataSetFactory dataSetFactory)` Set which dataSetFactory to use to create the correct tranining sets
    `void` | `setTrainingMethod(EnsembleTrainFactory newTrainFactory)` Set the training method to use for this ensemble
    `void` | `train(double targetError, double selectionError, EnsembleDataSet testset)` Train the ensemble to a target accuracy
    `void` | `train(double targetError, double selectionError, EnsembleDataSet testset, boolean verbose)` Train the ensemble to a target accuracy

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### dataSetFactory

          protected EnsembleDataSetFactory dataSetFactory

    - #### trainFactory

          protected EnsembleTrainFactory trainFactory

    - #### aggregator

          protected EnsembleAggregator aggregator

    - #### members

          protected ArrayList<EnsembleML> members

    - #### mlFactory

          protected EnsembleMLMethodFactory mlFactory

    - #### aggregatorDataSet

          protected MLDataSet aggregatorDataSet

  - ### Constructor Detail

    - #### Ensemble

          public Ensemble()

  - ### Method Detail

    - #### initMembers

          public abstract void initMembers()

      Initialise ensemble components

    - #### initMembersBySplits

          public void initMembersBySplits(int splits)

    - #### setTrainingMethod

          public void setTrainingMethod(EnsembleTrainFactory newTrainFactory)

      Set the training method to use for this ensemble
      Parameters:
        `newTrainFactory` - The training factory.

    - #### setTrainingData

          public void setTrainingData(MLDataSet data)

      Set which training data to base the training on
      Parameters:
        `data` - The training data.

    - #### setTrainingDataFactory

          public void setTrainingDataFactory(EnsembleDataSetFactory dataSetFactory)

      Set which dataSetFactory to use to create the correct tranining sets
      Parameters:
        `dataSetFactory` - The data set factory.

    - #### train

          public void train(double targetError,
                   double selectionError,
                   EnsembleDataSet testset,
                   boolean verbose)

      Train the ensemble to a target accuracy
      Parameters:
        `targetError` - The target error.
        `selectionError` - The selection error.
        `testset` - The test set.
        `verbose` - Verbose mode?

    - #### train

          public void train(double targetError,
                   double selectionError,
                   EnsembleDataSet testset)

      Train the ensemble to a target accuracy
      Parameters:
        `targetError` - The target error.
        `selectionError` - The selection error.
        `testset` - The test set.

    - #### getTrainingSet

          public MLDataSet getTrainingSet(int setNumber)

      Extract a specific training set from the Ensemble
      Parameters:
        `setNumber` -
      Returns:
        The training set.

    - #### getMember

          public EnsembleML getMember(int memberNumber)

      Extract a specific MLMethod
      Parameters:
        `memberNumber` -
      Returns:
        The MLMethod.

    - #### addMember

          public void addMember(EnsembleML newMember)
                         throws Ensemble.NotPossibleInThisMethod

      Add a member to the ensemble
      Parameters:
        `newMember` -
      Throws:
        `Ensemble.NotPossibleInThisMethod`

    - #### compute

          public MLData compute(MLData input)

      Compute the output for a specific input
      Parameters:
        `input` -
      Returns:
        The data.

    - #### getAggregator

          public EnsembleAggregator getAggregator()

      Returns:
        Returns the ensemble aggregation method

    - #### setAggregator

          public void setAggregator(EnsembleAggregator aggregator)

      Sets the ensemble aggregation method
      Parameters:
        `aggregator` -

    - #### getProblemType

          public abstract EnsembleTypes.ProblemType getProblemType()

      Return what type of problem this Ensemble is solving
      Returns:
        The problem type.

Copyright © 2014. All Rights Reserved.