Email discussion lists for the UK Education and Research communities

## SUPPORT-VECTOR-MACHINES@JISCMAIL.AC.UK

#### View:

 Message: [ First | Previous | Next | Last ] By Topic: [ First | Previous | Next | Last ] By Author: [ First | Previous | Next | Last ] Font: Proportional Font

#### Options

Subject:

A high-performance SVM DLL

From:

Date:

Tue, 20 Aug 2002 22:41:13 -0400

Content-Type:

TEXT/PLAIN

Parts/Attachments:

 TEXT/PLAIN (124 lines)
 Hello,     Support vector machine represents the state-of-the-art technique for classification. But training SVM on a large training set has become a bottleneck. At the beginning of this year I proposed a fast SVM training algorithm to successfully sovle this problem. For example, the total time for training ten binary Svms on MNIST handwritten digit database (60,000 training samples) just needs 0.75hours Recently I designed a high-performance SVM package called HeroSvm which is designed using object-oriented method in order to facilitate the maintainness and portability. Also, I also add error handling to make software more robust. HeroSVM has no restriction of the size of training set and dimension of feature vector. It is especially suitable for training SVM on a very large training set. For example, I trained SVM on non-public character database (1,380,000 training samples, 120 dimensional feature vectors) on P4 1.7G just took about 6 hours. HeroSVM can be used for research and is free of charge. Anybody who uses it for a commercial purpose must get the permission from the author. If you like to use this software, you need to send (or fax) me a letter with an official title including affiliation information to request it. Then I can send HeroSVM package to you by email. If you like to know more information about this package, please visit the website: http://www.cenparmi.concordia.ca/~people/jdong/HeroSvm.html I expect that people can use this package to solve real-world problems in various engineering fields. > Date: Fri, 16 Aug 2002 13:46:44 +0200 > From: Goekhan Bakir <[log in to unmask]> > Reply-To: The Support Vector Machine discussion list > <[log in to unmask]> > To: [log in to unmask] > Subject: Re: calculating dot products with mmx oder isse routines > > Hi, > > If I got you right, you are interested in faster evaluation of the > decision function. > Hence training is offline, the kernel computation is mostly cached and not > the main computing factor in training svm. > In evaluation the decision function, the mean cost factor is always > the number of support vectors. > > If you reduced this via your desired method, ( v-svm / reduces set method) > there are several things which are possible to speed up classification > time. > > If you have large input vectors, you can try to implement faster > products. ( unrolling the loop , etc. see for example "ODE" under > sourceforge.net ) Then indeed ( for large input vectors) mmx could bring > some tiny benefit. ( Thats an issue of the optimizer normally) > > > Another issue is that if you only want to classify, you could > instead evaluating sign(\sum_i^n ... ), order the sum into two parts > (positive and negative) and check which one has larger value. > There exist a way to answer this decision without calculating dot product > with every support vector. But I dont know if the approach is working for > any case or only approximately. > > ciao goekhan. > > > > On Fri, 16 Aug 2002, Martin Schulze wrote: > > > Hello together, > > > > i wanted to know, if someone knows, wheater small assembler routines to the > > multimedia extensions of mmx or isse can be > > applied to compute dot products in the svm kernel. > > > > i mean in a efficient way? > > (only a vew word can be computed at once, > > so there might be a overload for loading the registers over and over, > > especially for large feature vectors..) > > > > for instance in the linear kernel, dot products are computed only. > > > > hence, i do not know exactly, how much time is spend in the dot product > > computation, in comparison to the whole problem solving. > > but i should be quite a lot... > > > > i have got libsvm, and it takes me about a day to compute a trainingset of > > the size of 7 Megabytes. > > it is the linear and polynomial case. > > the rbf-kernel works fast, but produces a large amount of support vectors. > > > > but i want a fast prediction, since my classification should be realtime. > > > > so i wanted to speed the training up, to use the linear and polynomial kernel. > > > > is there a svm-implementation out, which is does this fast? > > or does someone know functions to use in c++ (assembler or library) which > > compute sparse feature vectors, > > so i could put it into libsvm? > > > > thanks > > > > Martin > > > -- //////////////////////////////////////////////////////////////  DONG JIANXIONG  Centre for Pattern Recognition and Machine Intelligence  GM606, Concordia University  1455 de Maisonneuve Blvd. West  Montreal Quebec H3G 1M8, Canada  Tel: (Office) (514)848-7953  Fax: (514)848-4522  E-mail: [log in to unmask]  homepage: http://www.cenparmi.concordia.ca/~people/jdong //////////////////////////////////////////////////////////////