source: orange/docs/widgets/rst/classify/randomforest.rst @ 11359:8d54e79aa135

Revision 11359:8d54e79aa135, 3.1 KB checked in by Ales Erjavec <ales.erjavec@…>, 14 months ago (diff)

Cleanup of 'Widget catalog' documentation.

Fixed rst text formating, replaced dead hardcoded reference links (now using
:ref:), etc.

Line 
1.. _Random Forest:
2
3Random Forest
4=============
5
6.. image:: ../icons/RandomForest.png
7
8Random forest learner
9
10Signals
11-------
12
13Inputs:
14   - Examples (ExampleTable)
15      A table with training examples
16
17
18Outputs:
19   - Learner
20      The random forest learning algorithm with settings as specified in the
21      dialog
22   - Random Forest Classifier
23      Trained random forest
24   - Choosen Tree
25      One of the classification trees from the random forest classifer
26
27
28Description
29-----------
30
31Random forest is a classification technique that proposed by
32[Breiman2001]_, given the set of class-labeled data, builds a set of
33classification trees. Each tree is developed from a bootstrap sample
34from the training data. When developing individual trees, an arbitrary
35subset of attributes is drawn (hence the term "random") from which the best
36attribute for the split is selected. The classification is based on the
37majority vote from individually developed tree classifiers in the forest.
38
39Random forest widget provides for a GUI to Orange's own implementation of
40random forest (:class:`~Orange.ensemble.forest.RandomForestLearner`). The
41widget output the learner, and, given the training data on its input, the
42random forest. Additional output channel is provided for a selected
43classification tree (from the forest) for the purpose of visualization
44or further analysis.
45
46.. image:: images/RandomForest.png
47
48In the widget, the first field is used to specify the name of the learner
49or classifier. Next block of parameters tells the algorithm how many
50classification trees will be included in the forest
51(:obj:`Number of trees in forest`), and how many attributes will be
52arbitrarily drawn for consideration at each node. If the later is not
53specified (option :obj:`Consider exactly ...` left unchecked), this number
54is equal to square root of number of attributes in the data set. Original
55Brieman's proposal is to grow the trees without any pre-prunning, but since
56this later often works quite well the user can set the depth to which the
57trees will be grown (:obj:`Maximal depth of individual trees`). As another
58pre-pruning option, the stopping condition in terms of minimal number of
59instances in the node before splitting can be set. Finally, if the training
60data is given to the widget, the :obj:`Index of the tree on the output`
61can be specified, instructing the widget to send the requested classifier.
62
63Examples
64--------
65
66Snapshot below shows a standard comparison schema of a random forest and
67a tree learner (in this case, C4.5) on a specific data set.
68
69.. image:: images/RandomForest-Test.png
70   :alt: Random forest evaluation
71
72A simple use of this widget where we wanted to explore how do the actual
73trees in the forest look like is presented in the following snapshot. In
74our case, the 5-th tree from the forest was rendered in the Classification
75Tree Graph widget.
76
77.. image:: images/RandomForest-TreeGraph.png
78   :alt: Visualization of a tree from random forest
79
80References
81----------
82
83.. [Breiman2001] Breiman L (2001) Random Forests. Machine Learning 45 (1), 5-32.
84   (`PDF <http://www.springerlink.com/content/u0p06167n6173512/fulltext.pdf>`_)
Note: See TracBrowser for help on using the repository browser.