Skip to content

Latest commit

 

History

History
50 lines (40 loc) · 1.7 KB

committee-machine.md

File metadata and controls

50 lines (40 loc) · 1.7 KB

[source]

Committee Machine

A voting ensemble that aggregates the predictions of a committee of heterogeneous learners (referred to as experts). The committee employs a user-specified influence scheme to weight the final predictions.

!!! note Influence values can be on any arbitrary scale as they are automatically normalized upon instantiation.

Interfaces: Estimator, Learner, Parallel, Persistable

Data Type Compatibility: Depends on the base learners

Parameters

# Name Default Type Description
1 experts array An array of learner instances that will comprise the committee.
2 influences null array The influence values for each expert in the committee. If null, each expert will be weighted equally.

Example

use Rubix\ML\CommitteeMachine;
use Rubix\ML\Classifiers\GaussianNB;
use Rubix\ML\Classifiers\RandomForest;
use Rubix\ML\Classifiers\ClassificationTree;
use Rubix\ML\Classifiers\KDNeighbors;
use Rubix\ML\Classifiers\SoftmaxClassifier;

$estimator = new CommitteeMachine([
    new GaussianNB(),
    new RandomForest(new ClassificationTree(4), 100, 0.3),
    new KDNeighbors(3),
    new SoftmaxClassifier(100),
], [
    0.2, 0.4, 0.3, 0.1,
]);

Additional Methods

Return the learner instances of the committee:

public experts() : array

Return the normalized influence scores of each expert in the committee:

public influences() : array

References