📄 ensembleselection.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!--NewPage--><HTML><HEAD><!-- Generated by javadoc (build 1.5.0_10) on Fri Jan 26 16:34:44 NZDT 2007 --><TITLE>EnsembleSelection</TITLE><META NAME="keywords" CONTENT="weka.classifiers.meta.EnsembleSelection class"><LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){ parent.document.title="EnsembleSelection";}</SCRIPT><NOSCRIPT></NOSCRIPT></HEAD><BODY BGCOLOR="white" onload="windowTitle();"><!-- ========= START OF TOP NAVBAR ======= --><A NAME="navbar_top"><!-- --></A><A HREF="#skip-navbar_top" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="http://www.cs.waikato.ac.nz/ml/weka/" target="_blank"><FONT CLASS="NavBarFont1"><B>Weka's home</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../weka/classifiers/meta/END.html" title="class in weka.classifiers.meta"><B>PREV CLASS</B></A> <A HREF="../../../weka/classifiers/meta/FilteredClassifier.html" title="class in weka.classifiers.meta"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../index.html?weka/classifiers/meta/EnsembleSelection.html" target="_top"><B>FRAMES</B></A> <A HREF="EnsembleSelection.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_top"></A><!-- ========= END OF TOP NAVBAR ========= --><HR><!-- ======== START OF CLASS DATA ======== --><H2><FONT SIZE="-1">weka.classifiers.meta</FONT><BR>Class EnsembleSelection</H2><PRE>java.lang.Object <IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../weka/classifiers/Classifier.html" title="class in weka.classifiers">weka.classifiers.Classifier</A> <IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../weka/classifiers/RandomizableClassifier.html" title="class in weka.classifiers">weka.classifiers.RandomizableClassifier</A> <IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>weka.classifiers.meta.EnsembleSelection</B></PRE><DL><DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable, java.lang.Cloneable, <A HREF="../../../weka/core/CapabilitiesHandler.html" title="interface in weka.core">CapabilitiesHandler</A>, <A HREF="../../../weka/core/OptionHandler.html" title="interface in weka.core">OptionHandler</A>, <A HREF="../../../weka/core/Randomizable.html" title="interface in weka.core">Randomizable</A>, <A HREF="../../../weka/core/TechnicalInformationHandler.html" title="interface in weka.core">TechnicalInformationHandler</A></DD></DL><HR><DL><DT><PRE>public class <B>EnsembleSelection</B><DT>extends <A HREF="../../../weka/classifiers/RandomizableClassifier.html" title="class in weka.classifiers">RandomizableClassifier</A><DT>implements java.io.Serializable, <A HREF="../../../weka/core/TechnicalInformationHandler.html" title="interface in weka.core">TechnicalInformationHandler</A></DL></PRE><P><!-- globalinfo-start --> Combines several classifiers using the ensemble selection method. For more information, see: Caruana, Rich, Niculescu, Alex, Crew, Geoff, and Ksikes, Alex, Ensemble Selection from Libraries of Models, The International Conference on Machine Learning (ICML'04), 2004. Implemented in Weka by Bob Jung and David Michael. <p/> <!-- globalinfo-end --> <!-- technical-bibtex-start --> BibTeX: <pre> @inproceedings{RichCaruana2004, author = {Rich Caruana, Alex Niculescu, Geoff Crew, and Alex Ksikes}, booktitle = {21st International Conference on Machine Learning}, title = {Ensemble Selection from Libraries of Models}, year = {2004} } </pre> <p/> <!-- technical-bibtex-end --> Our implementation of ensemble selection is a bit different from the other classifiers because we assume that the list of models to be trained is too large to fit in memory and that our base classifiers will need to be serialized to the file system (in the directory listed in the "workingDirectory option). We have adopted the term "model library" for this large set of classifiers keeping in line with the original paper. <p/> If you are planning to use this classifier, we highly recommend you take a quick look at our FAQ/tutorial on the WIKI. There are a few things that are unique to this classifier that could trip you up. Otherwise, this method is a great way to get really great classifier performance without having to do too much parameter tuning. What is nice is that in the worst case you get a nice summary of how s large number of diverse models performed on your data set. <p/> This class relies on the package weka.classifiers.meta.ensembleSelection. <p/> When run from the Explorer or another GUI, the classifier depends on the package weka.gui.libraryEditor. <p/> <!-- options-start --> Valid options are: <p/> <pre> -L </path/to/modelLibrary> Specifies the Model Library File, continuing the list of all models.</pre> <pre> -W </path/to/working/directory> Specifies the Working Directory, where all models will be stored.</pre> <pre> -B <numModelBags> Set the number of bags, i.e., number of iterations to run the ensemble selection algorithm.</pre> <pre> -E <modelRatio> Set the ratio of library models that will be randomly chosen to populate each bag of models.</pre> <pre> -V <validationRatio> Set the ratio of the training data set that will be reserved for validation.</pre> <pre> -H <hillClimbIterations> Set the number of hillclimbing iterations to be performed on each model bag.</pre> <pre> -I <sortInitialization> Set the the ratio of the ensemble library that the sort initialization algorithm will be able to choose from while initializing the ensemble for each model bag</pre> <pre> -X <numFolds> Sets the number of cross-validation folds.</pre> <pre> -P <hillclimbMettric> Specify the metric that will be used for model selection during the hillclimbing algorithm. Valid metrics are: accuracy, rmse, roc, precision, recall, fscore, all</pre> <pre> -A <algorithm> Specifies the algorithm to be used for ensemble selection. Valid algorithms are: "forward" (default) for forward selection. "backward" for backward elimination. "both" for both forward and backward elimination. "best" to simply print out top performer from the ensemble library "library" to only train the models in the ensemble library</pre> <pre> -R Flag whether or not models can be selected more than once for an ensemble.</pre> <pre> -G Whether sort initialization greedily stops adding models when performance degrades.</pre> <pre> -O Flag for verbose output. Prints out performance of all selected models.</pre> <pre> -S <num> Random number seed. (default 1)</pre> <pre> -D If set, classifier is run in debug mode and may output additional info to the console</pre> <!-- options-end --><P><P><DL><DT><B>Version:</B></DT> <DD>$Revision: 1.2 $</DD><DT><B>Author:</B></DT> <DD>Robert Jung, David Michael</DD><DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#weka.classifiers.meta.EnsembleSelection">Serialized Form</A></DL><HR><P><!-- =========== FIELD SUMMARY =========== --><A NAME="field_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"><B>Field Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#ALGORITHM_BACKWARD">ALGORITHM_BACKWARD</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#ALGORITHM_BEST">ALGORITHM_BEST</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#ALGORITHM_BUILD_LIBRARY">ALGORITHM_BUILD_LIBRARY</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#ALGORITHM_FORWARD">ALGORITHM_FORWARD</A></B></CODE><BR> The "enumeration" of the algorithms we can use.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#ALGORITHM_FORWARD_BACKWARD">ALGORITHM_FORWARD_BACKWARD</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static <A HREF="../../../weka/core/Tag.html" title="class in weka.core">Tag</A>[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#TAGS_ALGORITHM">TAGS_ALGORITHM</A></B></CODE><BR> defines metrics that can be chosen for hillclimbing</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static <A HREF="../../../weka/core/Tag.html" title="class in weka.core">Tag</A>[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#TAGS_METRIC">TAGS_METRIC</A></B></CODE><BR> defines metrics that can be chosen for hillclimbing</TD></TR></TABLE> <!-- ======== CONSTRUCTOR SUMMARY ======== --><A NAME="constructor_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"><B>Constructor Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#EnsembleSelection()">EnsembleSelection</A></B>()</CODE><BR> </TD></TR></TABLE> <!-- ========== METHOD SUMMARY =========== --><A NAME="method_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"><B>Method Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> java.lang.String</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#algorithmTipText()">algorithmTipText</A></B>()</CODE><BR> Returns the tip text for this property</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#buildClassifier(weka.core.Instances)">buildClassifier</A></B>(<A HREF="../../../weka/core/Instances.html" title="class in weka.core">Instances</A> trainData)</CODE><BR> Buildclassifier selects a classifier from the set of classifiers by minimising error on the training data.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> double[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#distributionForInstance(weka.core.Instance)">distributionForInstance</A></B>(<A HREF="../../../weka/core/Instance.html" title="class in weka.core">Instance</A> instance)</CODE><BR> Calculates the class membership probabilities for the given test instance.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> <A HREF="../../../weka/core/SelectedTag.html" title="class in weka.core">SelectedTag</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#getAlgorithm()">getAlgorithm</A></B>()</CODE><BR> Gets the algorithm</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> <A HREF="../../../weka/core/Capabilities.html" title="class in weka.core">Capabilities</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#getCapabilities()">getCapabilities</A></B>()</CODE><BR> We return true for basically everything except for Missing class values, because we can't really answer for all the models in our library.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static java.lang.String</CODE></FONT></TD><TD><CODE><B><A HREF="../../../weka/classifiers/meta/EnsembleSelection.html#getDefaultWorkingDirectory()">getDefaultWorkingDirectory</A></B>()</CODE>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -