/////////////////////////////////////////////////////////////////////////////// //Copyright (C) 2003 Thomas Morton // //This library is free software; you can redistribute it and/or //modify it under the terms of the GNU Lesser General Public //License as published by the Free Software Foundation; either //version 2.1 of the License, or (at your option) any later version. // //This library is distributed in the hope that it will be useful, //but WITHOUT ANY WARRANTY; without even the implied warranty of //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //GNU General Public License for more details. // //You should have received a copy of the GNU Lesser General Public //License along with this program; if not, write to the Free Software //Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ////////////////////////////////////////////////////////////////////////////// package opennlp.maxent; /** Object which compresses events in memory and performs feature selection. */ public interface DataIndexer { /** * Returns the array of predicates seen in each event. * @return a 2-D array whose first dimenstion is the event index and array this refers to contains * the contexts for that event. */ public int[][] getContexts(); /** * Returns an array indicating the number of times a particular event was seen. * @return an array indexed by the event index indicating the number of times a particular event was seen. */ public int[] getNumTimesEventsSeen(); /** * Returns an array indicating the outcome index for each event. * @return an array indicating the outcome index for each event. */ public int[] getOutcomeList(); /** * Returns an array of predicate/context names. * @return an array of predicate/context names indexed by context index. These indices are the * value of the array returned by <code>getContexts</code>. */ public String[] getPredLabels(); /** * Returns an array of the count of each predicate in the events. * @return an array of the count of each predicate in the events. */ public int[] getPredCounts(); /** * Returns an array of outcome names. * @return an array of outcome names indexed by outcome index. */ public String[] getOutcomeLabels(); /** * Returns the values associated with each event context or null if integer values are to be used. * @return the values associated with each event context. */ public float[][] getValues(); }