On Mon, May 30, 2011 at 2:30 AM, Ted Dunning <[email protected]> wrote: > Target values 1 ... n-1 correspond to columns 0 ... n-2 of the beta matrix. > classifyFull puts a synthetic result at location 0.
I think Target values 1 ... n-1 correspond to row 0, ... n-1 of the beta matrix, is it ? > > If you can afford the (very small) cost of allocating a larger vector, I > recommend using classifyFull to make your life simpler. I almost regret > using the simpler name for the method that imposes complexity on the user. > > On Sun, May 29, 2011 at 12:57 AM, XiaoboGu <[email protected]> wrote: > >> Then which value is missed in the beta matrix of OnlineLogisticRegression, >> the last value of the target present to LR.train(), that is n - 1 is missed? >> >> >> > -----Original Message----- >> > From: Ted Dunning [mailto:[email protected]] >> > Sent: Sunday, May 29, 2011 1:44 PM >> > To: [email protected] >> > Subject: Re: Are the OnlineLogisticRegression s of a CrossFolderLearner >> object equal after >> > training? >> > >> > I think not. >> > >> > When you present the first symbol to the Dictionary, dict.size() will be >> > zero. That value will be inserted into the table under that symbol. >> Each >> > new symbol will be inserted with the size of the table as it was *before* >> > that symbol was inserted. >> > >> > I have added a line to CsvRecordFactoryTest.testDictionaryOrder to >> > demonstrate and enforce this. It won't be committed until the current >> > release goes out. >> > >> > On Sat, May 28, 2011 at 9:57 PM, XiaoboGu <[email protected]> >> wrote: >> > > >> > > >> > > Ok, then target values are always more than 0, I refer to this >> > > >> > > public class Dictionary { >> > > private final Map<String, Integer> dict = Maps.newLinkedHashMap(); >> > > >> > > public int intern(String s) { >> > > if (!dict.containsKey(s)) { >> > > dict.put(s, dict.size()); >> > > } >> > > return dict.get(s); >> > > } >> > > >> > > >> > > >> >> >
