IRC logs of #shogun for Friday, 2012-02-17

--- Log opened Fri Feb 17 00:00:19 2012
-!- n4nd0 [~n4nd0@s83-179-44-135.cust.tele2.se] has quit [Ping timeout: 245 seconds]01:20
-!- wiking [~wiking@huwico/staff/wiking] has quit [Quit: wiking]05:11
-!- blackburn [~qdrgsm@188.168.2.140] has joined #shogun06:05
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun08:00
-!- blackburn [~qdrgsm@188.168.2.140] has quit [Quit: Leaving.]08:09
-!- Ram108 [~amma@14.96.154.124] has joined #shogun08:16
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun08:20
-!- peter_berlin [5ce7d8eb@gateway/web/freenode/ip.92.231.216.235] has joined #shogun09:47
peter_berlinhi09:48
peter_berlinI've got a question concerning shogun for python09:48
peter_berlinCan I somehow access the neighbors in kNN or the distance from the hyperplane in SVM?09:49
peter_berlinI need a confidence measure for my prediction and thought those information could be useful09:50
-!- wiking_ [~wiking@huwico/staff/wiking] has joined #shogun09:53
-!- wiking [~wiking@huwico/staff/wiking] has quit [Read error: Connection reset by peer]09:53
-!- wiking_ is now known as wiking09:53
sonne|workpeter_berlin: svms give you just real values outputs so yes10:22
sonne|workpeter_berlin: for KNN you would need to modify code ..10:23
peter_berlinokay10:34
peter_berlindoes the multiclass svm give also real value output?10:34
peter_berlinI think I only got the labels10:34
-!- Ram108 [~amma@14.96.154.124] has quit [Ping timeout: 260 seconds]11:03
n4nd0peter_berlin: hey! I think you should get a real value using the method apply11:22
peter_berlinah, okay. I'll hceck that11:32
peter_berlinthx11:33
n4nd0no problem11:45
sonne|workpeter_berlin: labels.get_labels() gives you the real valued vector11:47
-!- peter_berlin [5ce7d8eb@gateway/web/freenode/ip.92.231.216.235] has quit [Ping timeout: 245 seconds]12:40
wikingsonne|work: around?13:32
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has quit [Quit: leaving]13:37
sonne|work?13:37
-!- n4nd0 [~n4nd0@s83-179-44-135.cust.tele2.se] has joined #shogun13:41
wikingi know i could dig it out from the sources but in case a preprocessor is defined and i do the following: feats_train.add_preprocessor(preprocessor)    feats_train.apply_preprocessor()13:42
wikingwhat function is being called in preprocessor13:42
sonne|workapply?13:56
sonne|workactually it depends on the feature type... apply_to_feature_matrix() for simple features IIRC13:57
wikingmmm13:58
wikingi wonder then why my preprocessor doesn't make it13:58
wikingsince i've defined both apply_to_feature_matrix and apply_to_feature_vector13:58
sonne|workyou have to in-place modify the matrix13:59
sonne|workcould that be the reason?13:59
wikingah13:59
wikingi'm creating a new matrix13:59
wikingas the preprocessor changes the matrix dimension13:59
wikingshould i just change the reference within the supplied matrix the data array?14:00
sonne|workthat won't do any change (local variable)14:00
sonne|workyou could use set_feature_matrix to replace the feature matrix14:02
wikingdoes it do the memory management?14:04
wikingi.e. freeing the previous matrix14:04
wikingdoh i'm confused now... if i create a kernel with 2 feature sets and then call get_kernel_matrix... in the resulting matrix m, m_i,j = k (featureSet1_i, featureSet2_j) or?14:11
-!- Ram108 [~amma@14.99.219.214] has joined #shogun14:44
wikingyey14:58
wikingadded new preprocessor \o/14:58
CIA-18shogun: Soeren Sonnenburg master * rd7d10b9 / src/shogun/mathematics/Math.cpp : fix PI -> M_PI - http://git.io/jHmeIw15:26
sonne|workwiking: ^ I hope that fixes the PI issue15:28
wikingsonne|work: yeps15:31
wikingthat's what i did here locally as well15:32
sonne|workargh I missed that15:33
wikingif u have any time to comment on my pull request i'd really appreciate it... i've tested the method15:33
wikingthe error rate is very good15:33
sonne|workwell even better when you did the same thing :)15:33
wikingi.e. 1e-315:33
wikingi mean comparing a kernel and the generated homogeneous mapping and using linear kernel on that15:33
sonne|workwhich kernel did you compare it with?15:35
CIA-18shogun: Soeren Sonnenburg master * r9abe870 / (8 files in 4 dirs):15:36
CIA-18shogun: Merge pull request #374 from vigsterkr/master15:36
CIA-18shogun: Add Homogeneous Kernel Mapping preprocessor - http://git.io/JRJ-oQ15:36
wikingJensenShannon15:36
sonne|workok15:37
wikingsince in shogun the Chi2 is exponential15:37
wikingand the one implemented in the homogeneous mapping is not15:37
sonne|workwiking: one question - how difficult would it be to do the mapping on-the-fly as in CDotFeatures? - I mean would that be fast or is the result about same dimensional and dense?15:37
wikingaaah15:38
wikinghaven't timed the thingy15:38
wikingi mean how long would it take to do the mapping15:38
wikingimho not that much15:38
wikingas there's a precomputed lookup tabe15:38
wiking*table15:38
wikingyou are thinking about adding an option to the given kernels, whether one wants to use the approximation or the real kernel?15:39
sonne|workwiking: no there are various *fast* linear methods for which it might be beneficial to on-demand compute these Jensenshannonfeatures15:40
sonne|workthis makes sense if data woudl become to big to fit in memory15:40
sonne|work(with your preprocessor)15:40
wikingah yeah15:40
wikingdoable15:41
sonne|workwiking: btw you should add yourself as copyright holder15:41
wikingshould i ?15:41
wikingi thought the (C) goes for the original implementation15:41
sonne|workyou wrote the shogun adjustments code right?15:41
wikingtrue :P15:41
wikingbtw i don't know about the licensing header15:41
wikingas the original code was BSD licensed15:41
wikingand now the 'wrapper' code is in gplv315:42
wikingis it ok?15:42
sonne|workwiking: one more thing please don't do m_table.vector == NULL checks15:42
sonne|workyes just put your gpl copyright header on top of the BSD one15:42
wikingSG_*ALLOC will do it for me?15:42
sonne|workyes15:42
wikingok i'll drop it then15:42
wikingand there's still of course some problem15:42
sonne|workand if you need to throw errors use SG_ERROR("bla\n")15:42
wikingah one thing!15:42
wikinghow do i turn on debugging in c++/15:42
wikingi've tried this15:43
-!- n4nd0 [~n4nd0@s83-179-44-135.cust.tele2.se] has quit [Quit: Leaving]15:43
wiking CHomogeneousKernelMap hkm (HomogeneousKernelChi2, HomogeneousKernelMapWindowUniform, 1, 1, -1);15:43
wiking hkm.io->set_target_to_stdout ();15:43
wikinghkm.io->set_loglevel (MSG_DEBUG);15:43
wikingbut i'm not getting any debugging message :(15:43
sonne|workwiking: let me guess you are doing this from C++15:53
wikingyeps15:53
sonne|workthen you probably did call init_shogun() with no args?15:54
sonne|workso you should call init_shogun_with_defaults() or use proper args (to register print functions)15:54
wikingi had troubles with the python api before and couldn't debug only with std::cout in CHomogeneousKernelMap that actually the my problem was that PI=0 ;P15:54
wikingoh yeah i've just called init_shogun15:54
sonne|workyeah weird - with PI16:01
wikinganyhow now it works... thnx for the tip... so next time i can debug better :)16:02
-!- blackburn [~qdrgsm@109.226.88.39] has joined #shogun18:44
blackburnwiking: nice work!18:44
wikingblackburn: yeah18:44
blackburndid you try it already?18:44
wikingu should pull the last two commits as well from my repo18:45
wikingshould i do a pull request18:45
wiking?18:45
blackburnyeah do please18:45
Ram108hi18:46
Ram108blackburn: can i email u my code?18:46
blackburnRam108: sure, what is the code?18:47
Ram108back propagation algorithm18:47
Ram108i used a pdf file as refrence and worked on the calculations manually but there seems to be somethn wrong.........18:48
wikingblackburn: done18:49
Ram108could u help me rectify that if u r free?18:49
wikingblackburn: only tested it on dummy dataset till now18:49
blackburnwiking: ok thanks18:50
blackburnRam108: ok I'll check18:50
Ram108thanks a lot :)18:52
Ram108i have sent it :)18:52
CIA-18shogun: Sergey Lisitsyn master * rab828dc / : Merge branch 'master' of github.com:shogun-toolbox/shogun - http://git.io/6u7giQ18:53
CIA-18shogun: Viktor Gal master * reb1eff2 / src/shogun/preprocessor/HomogeneousKernelMap.cpp :18:53
CIA-18shogun: Remove memory allocation check18:53
CIA-18shogun: SG_MALLOC checks itself if the memory allocation was successful18:53
CIA-18shogun: or not - http://git.io/-GCJKA18:53
CIA-18shogun: Viktor Gal master * re3b7d0e / src/shogun/preprocessor/HomogeneousKernelMap.cpp :18:53
CIA-18shogun: HKM: set reference in apply_to_feature_matrix func18:53
CIA-18shogun: Althouth the reference for the new feature matrix has been returned18:53
CIA-18shogun: it hasn't been set for the supplied SimpleFeatures class. - http://git.io/ZUq_ZQ18:53
blackburnwiking: merged18:54
wikingcheers18:54
Ram108blackburn: did u get my email? :)18:56
blackburnRam108: have you checked e.g. this: arctrix.com/nas/python/bpnn.py?18:57
Ram108no i havent18:57
Ram108i ll do that now18:57
blackburnI mean better compare with existent implementations18:58
Ram108oh okay i ll do that18:58
Ram108thanks anyway :)18:58
Ram108lol18:58
Ram108compared to his i think mines so messy...........19:07
blackburnheh19:07
Ram108lol i mean my code is big and totally messed up19:08
blackburnseems so19:08
Ram108:( lol19:09
Ram108its just the error in the reverse propagation method, it seems to go smaller and smaller19:10
Ram108i tried manually working out the calculations using pen and paper they yield the same results.........19:11
Ram108dunno what really went wrong19:11
blackburnme neither :)19:15
Ram108lol i ll sit on it till it works..........19:16
wikingblackburn: do u know any good GMM clustering implementation?19:16
blackburnwiking: we have one here, no idea whether it is good :)19:16
blackburnshould be good19:16
wikingin shogun?19:16
blackburnyeah didn't you notice? ;)19:16
wikingoh eah19:17
wikingfuck19:17
wikingit's there19:17
wikinghahahah19:17
blackburnit was gsoc 2011 project btw19:17
wikingok let's test it then :)))19:18
blackburnyeah try it19:18
blackburn(I never did)19:18
blackburnwiking: going to try homogay map now!19:25
wikingletmeknow how it works out19:26
wiking:)19:26
wikinghaven't tested it myself yet19:26
blackburnI still believe it should be called homogay19:26
wikingi mean on real data19:26
wiking:))19:26
blackburnhomogayfag19:26
blackburn:D19:26
wikingi should test it myself as well19:26
wikingtime to switch to vpn then19:27
blackburnwe will know soon19:27
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection]19:27
-!- wiking [~wiking@vpnj177.ugent.be] has joined #shogun19:27
-!- wiking [~wiking@vpnj177.ugent.be] has quit [Changing host]19:27
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun19:27
wikinghehe i need a recompile still19:28
blackburnwiking: damn I like your codestyle19:28
wikingcheers19:28
blackburnthe only problem19:28
wikingwhichwhat19:28
blackburnvoid blabla() {19:29
blackburn}19:29
blackburnplease use19:29
blackburn{19:29
blackburn}19:29
wikingah ok19:29
wikingold habbit19:29
wikingi really prefer that one19:29
wikingbut i'll do it for shogun then \n{\n} :P19:29
blackburnjust global codestyle19:30
blackburnwell that compact style is rather java19:30
blackburnwe are hardcore oldschool (C)19:30
blackburndamn haha we have no multiclass linear svm19:31
wikinghahahah19:32
wikingwhy not use multi class whatever svm19:32
wikingwith linear kernel?19:32
blackburnmuch slower19:32
wikingheheh true19:32
wiking:)19:32
wikingthen give us multi class linear svm NOW19:32
wikingi think liblinear can do it19:32
blackburnyes19:32
blackburnbut a little work19:33
wikingbut there's no wrapper for it i guess?19:33
blackburnexactly19:33
wikingdoooit! :>19:34
wikingdaaamn java is killing me19:39
blackburnwiking: could you please tell me what is approximation order here?19:41
wikingwell just put it 119:41
wikingthe higher the bigger the vector gets19:41
wikingbut the better the approx is19:41
blackburnah I see19:41
blackburnwould 1 be sufficient??19:42
wikingwell according to the vlfeat implementatation19:42
wikingyest19:42
blackburnit maps each feature to vector of size #order, right?19:42
wikingyes19:42
wiking2*order+119:42
blackburnah, then with 119:42
blackburnit is 319:42
wikingy19:43
wikingi mean each feature!19:43
wikingso if your dim(featureVector)=n then the output will be n*(2*order+1)19:44
blackburnyeah, I got it19:44
blackburnthanks19:44
wikingok cool19:44
blackburnI have checked19:44
blackburnnice19:45
blackburnokay looks like it is working19:45
blackburnlets run it on THE BIG DATA19:45
blackburn:D19:45
-!- Ram108 [~amma@14.99.219.214] has quit [Quit: Ex-Chat]19:46
wikingheheh19:48
wikingi'm running as well19:48
wikingnot much faster19:48
wikingalthough as you said19:48
wikingi'm using a slow multi class svm19:48
wikingindeed it's slow19:48
wikingok19:50
wikingdone19:50
wikingfaster though19:50
wikingi've lost about 0.1 accuracy19:50
wiking0.1%19:50
wikingbut yeah it's linear19:50
wikingand i wasn't fine-tuning the parameters either :P19:50
blackburnwell it would be MUCH faster than JS anyway?19:53
wikingye19:54
blackburnwiking: did I tell you walltime of applying libsvm multiclass with JS to 2000 vectors?19:55
wikingstill running? :)20:21
-!- wiking_ [~wiking@huwico/staff/wiking] has joined #shogun20:21
wiking_blackburn: oh yeah one more little thing.... there's a little bit of problem still with the implementation20:23
wiking_maybe you could give tips the smoothest way to solve it20:23
blackburnwhat's the problem?20:23
wiking_if you create the HKM with default constructor20:23
wiking_and then u use setter functions for defining the various parameters20:24
wiking_the ::init is not called20:24
wiking_because it should be only called after at least 2 parameters are set20:24
wiking_i.e setKernel and setWindow20:24
wiking_but let's say u do setKernel and setWindow and then after that init20:24
wiking_but later on u do a setGamma20:24
wiking_then the thing should be reinitialised...20:25
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 244 seconds]20:25
-!- wiking_ is now known as wiking20:25
wikingthe init sets up a n SGVector... which is sort of a lookuptable20:25
wikinge20:25
wikingso now the only way to have HKM in a proper way is to call the 'long' constructor...20:26
wikingkernel type, window...20:26
blackburnwiking: then feel free to reinitialize on every set20:26
wikingthat's a bit hardcore :P20:26
blackburnwhy? I thought you have init there20:27
wikingyeah i mean not because of that20:27
wikingbut it's not so nice20:27
blackburnbecause of what?20:27
wikingif you know what i mean20:27
blackburnI'd suggest to not care about it20:27
wikingso if you call 3 different setters20:27
wikingthen 3 times it'll do an init20:27
wikinginstead of doing only once20:28
wikingbut i guess yeah that way i can assure that there's no fuckup :P20:28
blackburnanyway you can't detemine where was last one setter20:28
wikingi'll just then modify this a little bit and do a commit soon20:28
blackburnI don't think somebody would want to use setters20:29
blackburninstead of constructors20:29
blackburnhhmm taking a look on liblinear now20:29
wikinggreat!20:30
blackburnthere is cramer-singer20:30
blackburneven in shogun already20:30
blackburnbut not finished20:30
wikingmm20:36
wikingrealloc will shrink the memory if i give a small memory size than the original?20:37
-!- Ram108 [~amma@14.99.219.214] has joined #shogun20:41
Ram108blackburn:there?20:41
blackburnyes20:41
blackburnwiking: yes20:42
Ram108sorry20:42
Ram108blackburn: carry on i guess u r busy20:42
blackburnnot really20:42
Ram108oh thanks....... i have been trying to debug my code..........20:43
Ram108culdnt find anything wrong with its execution20:43
Ram108i tried it out with a calculator manually......... yeilds the same results as the computer20:43
Ram108atleast for the first cycle20:44
blackburnthen why do you think it is wrong?20:44
Ram108well i think the algorithm given in the book might be wrong....... but its a very simple algorithm and nothing seems wrong20:44
blackburnno idea :)20:45
Ram108thanks :) i ll fix it sooner or later.........20:45
Ram108by the way hw r u? and hws life?20:46
wikingblackburn: ok question... when i do m_parameters->add the variable's value is actually not saved... only that there is such a variable... right?20:49
blackburnRam108: fine, and what about you?20:49
blackburnwiking: it just saves reference to this variable20:50
wikingok cool20:50
Ram108blackburn:lol exhausting.......... c u tomorrow......... its getting late here........ bye :)20:50
blackburnsee you20:50
Ram108:)20:51
-!- Ram108 [~amma@14.99.219.214] has quit [Quit: Ex-Chat]20:51
wikingblackburn: ok soon there's gonna be then a final pull request20:51
blackburnnice20:51
blackburnthanks!20:52
@sonney2kblackburn, wiking liblinear/ocas could in principle do it but i didn't integrate these in shogun ...yet20:57
wikingmmm yeah20:58
blackburnsonney2k: what is the problem with MCSVM thing?20:58
blackburnmarked as FIXME20:58
@sonney2kno problem - just work20:58
blackburnsonney2k: shogun/classifier/svm/SVM_linear.cpp:46120:59
blackburnsonney2k: is it related to no support of MC for linear machines?21:00
blackburnbtw do would you like some MulticlassLinearMachine?21:00
blackburnno do21:00
blackburn:D21:00
wikingyes21:01
wikinggimmie21:01
blackburnwiking: you would like to have some?;)21:01
wikingwill u do it? :P21:01
blackburndo you want? :D21:01
@sonney2kblackburn, I guess we should use the BTS more :)21:02
@sonney2kwe need the updated version of liblinear (read multiclass) and ocas21:02
@sonney2kblackburn, also I was discussing with heiko and I think we should change SGVecto/Matrix again21:02
@sonney2kintroducing a reference count like we have for SGObject instead of do_free crap21:02
@sonney2knot difficult but work (as usual)21:02
blackburnsonney2k: exactly21:03
@sonney2kblackburn, I guess we first need BinaryLables / MultiClassLabels :)21:04
@sonney2kthen MultiClassMachine / LinearMultiClassMachine :)21:04
@sonney2kanother bug :)21:04
@sonney2kwiking, btw did you submit a small example for python_modular illustrating how things work with the new preprocessor?21:04
blackburnsonney2k: binary/MC is pain in the ass thing21:04
@sonney2k?21:05
blackburnsonney2k: we have to keep back-compatibility I guess21:05
wikingsonney2k: not yet... made a lil example locally... i'll clean it up and add it to the examples.21:05
@sonney2kblackburn, not sure what you mean?21:05
blackburnsonney2k: all the python/octave/... should be changed?21:05
@sonney2kwiking, thanks - much appreciated21:06
wikingsonney2k: nw21:06
blackburnsonney2k: btw he did very nice thing21:06
@sonney2kblackburn, no for the static interfaces it won't change a thing21:06
blackburnyou should try it21:06
blackburnsonney2k:  but for modular21:06
@sonney2kfor the modular ones it would though21:06
wikingbtw i've found shogun the first ML framework that i can actually work with normally and even add new code... so it's cool what you've guys done till now21:06
@sonney2ktime to try out heikos migrations even :)21:06
blackburnwiking: thanks, I hope you will collaborate more :)21:07
wikinghehehe trying my best over here ;P21:07
@sonney2kwiking, any contributions are highly welcome - so keep it going!21:07
blackburnsonney2k: is there any alternative to alex-binder21:08
blackburnehm21:08
blackburnalex binder21:08
blackburn:D21:08
blackburnfor latent21:08
@sonney2kwhy?21:08
blackburnsvms21:08
wikingah yeah21:08
blackburnhmm sorry I guess I mixed things21:08
@sonney2khe still wanted to mentor this IIRC21:08
blackburnwho was potential mentor for latent SVMs?21:08
wikinglatent-ssvm i'd really like to get in21:08
blackburnsonney2k: is he?21:08
@sonney2kblackburn, wasn't it in the updated list I did?21:09
blackburnlemme check21:09
@sonney2kbtw please polish / xxx21:09
blackburnyes I will do soon21:09
@sonney2kI have to leave the train - cu21:09
blackburnsee you21:09
wikingblackburn: u r up for l-ssvm?21:09
wikingcya21:09
blackburnwiking: what do you mean?21:09
wikingimplementing it...21:09
blackburnno, I care about you ;)21:10
wikinghahaha cheers21:10
wikingplease find me somebody21:10
wikingwho can help me out if i have questions21:10
blackburnyou are strange candidate indeed21:10
blackburnstrange?21:10
blackburnI said strange?21:10
blackburn:D21:10
wikingstrange? :)21:10
blackburnstrong21:10
wikinghahaha21:10
wikingcheers21:10
blackburnsorry haha21:10
wikingnw21:10
wikinganyhow u have my email from the commit21:10
wikinglog21:10
wikingso if u find somebody and he is not coming around on irc21:11
wikingjust give him that addr21:11
blackburnI think you should contact :)21:11
wikingah ok21:11
wikinggimme email21:11
wiking;)21:11
blackburnyou may do it just now21:11
blackburnwait a min21:11
wikingokkey21:11
blackburnhttp://www.ml.tu-berlin.de/menue/mitglieder/alexander_binder/21:12
blackburnwiking: please contact him then :)21:12
wikingokeeey21:13
blackburnidea is not in the updated list but ask him whether he wants to mentor it21:13
wikingi'll say that you've given me the contact21:13
blackburnhe doesn't know me :D21:13
wikingok21:15
wikingso here's the last fix for HKM21:15
wikingthere you go21:17
wikingHKM should be complete for now21:17
blackburnone more thing21:17
blackburncould you please add some (at least dummy) doc for methods21:18
wikingwhich ones?21:18
blackburnto avoid warnings21:18
wikingi've tried for the constructors :P21:18
blackburnget/set21:18
wikingah ok21:18
wikingi'll do it then ... :>21:18
wikingbut maybe not now21:18
blackburnthanks!21:18
wikingi want to test some new stuff21:18
wikingi had some ideas21:18
blackburnhmm21:18
blackburnI can21:18
blackburn:)21:18
wikingbut i wanted to fix HKM ASAP21:19
wikingso i've tossed everything aside21:19
blackburnsure21:19
blackburnI'll add doc21:19
wikingcheers21:19
wikingemailsent21:25
wikingmean i'm now waiting for a paper notification for almost about a week21:25
wikingfuckers21:25
blackburnwhich email?21:25
blackburnwiking: you are a joker, used uint64 for order ;)21:26
wikingwhat's the problem21:26
wiking?21:26
blackburnnot a problem ;)21:27
wikingi know21:27
blackburnjust joking about size21:27
wikingwell if they have enough memory ;)21:27
blackburnI mean 210430240324034023 would be pretty good approximation21:27
blackburn:D21:27
wikingheheh yeah21:27
CIA-18shogun: Viktor Gal master * rc9ab1fb / (2 files):21:29
CIA-18shogun: HKM: fix variable init in case of setter calls21:29
CIA-18shogun: And trying to comply with shogun's coding style - http://git.io/2xul9g21:29
CIA-18shogun: Sergey Lisitsyn master * re4b8a73 / (2 files): Merge branch 'master' of https://github.com/vigsterkr/shogun - http://git.io/VGjeDw21:29
CIA-18shogun: Sergey Lisitsyn master * rf7e33a8 / src/shogun/preprocessor/HomogeneousKernelMap.h : Added some doc for #376 - http://git.io/faPw0A21:29
blackburnhere you are21:29
blackburnwiking: should vectors be normalized after HKM?21:30
wikingi don't think so21:30
wikingbut try :D21:31
blackburn167m already21:31
blackburnLibSVM linear21:31
blackburnokay in next two days I shall finish liblinear mc things21:31
wiking:>>21:32
wikinggreat21:32
blackburnbioinformatics legacy21:33
blackburnonly two classes everywhere21:33
wikinghahahhaha21:42
wikingone more thing21:42
wikinglemme find the code21:43
wikingas we were talking here about fast svm21:43
wikingsgd based SVM?21:43
blackburnhmm yes there are some21:43
wikingthey are really fast and21:44
wikingperforms very well21:44
blackburnbut no multiclass21:44
wikingah yeah21:44
wikingso do you know this21:44
blackburnokay I guess it is time to write some generic multiclass thing21:44
wikinghttp://leon.bottou.org/projects/sgd21:45
blackburnwiking: yes it is integrated21:45
wikingreally? :)21:45
wikingwow i love shogun21:45
wikingi mean both?21:45
wikingasgd and sgd?21:45
wikingand which is the class21:46
blackburnwiking: I am afraid only second21:46
blackburnSVMSGD21:46
wikingand why doesn't it do multi class then? :)21:46
blackburndoes it support MC?21:47
wikingwell the original one yes21:47
wikingi mean they do benchmarking21:47
wikingon21:47
wikingRCV121:47
wikingthat is a multi class problem afaik21:47
blackburnmaybe just OvR ensemble21:49
wikingand even21:50
wikingdo benchmarking on PASCAL dataset21:50
wikingso it should most def be multiclass21:50
@sonney2kwiking, nope it doesn't21:50
wikingi mean the original implementation21:50
@sonney2kyes21:50
@sonney2kit doesn't21:50
wikingreally?21:50
@sonney2kyes21:50
@sonney2kbelieve me21:50
wikingmy bad i mean sure i believe21:50
wikingbut i though that they are benchmarking on multclass dataset21:51
wikingthat they support multi class categorization21:51
@sonney2kthey all do ovr21:51
blackburnsonney2k: we need design decision on MC things21:51
blackburnI have design catatonia21:51
blackburn:D21:51
wikingahhahaha: "A word of advice to research asst job applicants in the sciences: don't use the words "rat murderer" in your cover letter. Wow"21:52
@sonney2kblackburn, what design decision?21:52
@sonney2k1) do binary/multiclass label21:52
@sonney2kthan multiclassmachine21:52
@sonney2kand linearmulticlassmachine21:52
blackburnstoop21:53
blackburnsonney2k: okay imagine you want to use OvR SGD21:53
blackburnwhat is python code you would probably write?21:53
@sonney2km=OneVSRestMultiClassMachine(SGD)21:54
@sonney2km.train(feats)21:54
@sonney2kor MulticlassMachine(OVR, SGD)21:55
blackburnMulticlassMachine(OVR,SVMSGD())21:55
blackburn?21:55
blackburnthe problem is:21:55
blackburnwhich class should be base for LaRank ?21:55
blackburnGMNPSVM?21:55
@sonney2kblackburn, these are both doing OVR21:56
blackburnbut training is not OvR21:56
@sonney2kno but it is overloaded21:56
@sonney2kso no problem21:56
blackburnnot really21:57
blackburnwe should have some thing21:57
blackburnindicating if it supports MC training21:57
@sonney2kI would say basically move MultiClassSVM into MultiClassMachine21:57
blackburnyes21:57
blackburngenerally yes21:57
blackburnokay clearer now21:58
blackburnsonney2k: what do you prefer22:01
blackburnMulticlassMachine(OVR,SGD)22:01
blackburnor SGD()?22:01
@sonney2kMulticlassMachine(OVR, SGD())22:03
blackburnsonney2k: then we need clone :D22:03
blackburnmoving to java22:03
blackburnhah22:03
@sonney2kclone?22:04
blackburnsonney2k: yes, we would need K SGD()s?22:04
@sonney2kno just one22:05
@sonney2kwe set features / labels + train22:06
@sonney2kstore w22:06
@sonney2kdone22:06
blackburnlinear case ok22:06
blackburnbut kernel?22:06
@sonney2ksame thing - store alphas (look at MultiClassSVM - it is doing that already)22:06
blackburnhmm yes agree22:07
blackburnnot very flexible though22:07
blackburnbut okay22:07
@sonney2kwhy not?22:07
@sonney2kit is the same like Machine / KernelMachine / LinearMachine22:07
blackburnnot flexible cause can't set different Cs22:08
blackburnor etc22:08
@sonney2kMultiClassMachine/MulticlassKernelMachine/MultiClassLInearMachine22:08
@sonney2kwe could but this is hardly feasible anyway when you have many classes22:08
blackburnsonney2k: btw scikits have examples weighting22:09
blackburndo you know how it is done?22:09
@sonney2kwe have that too for svms22:09
blackburnreally? how to use it?22:09
@sonney2kyeah differnt C for each example22:09
blackburnhmm I see22:09
@sonney2kdoesn't really help in practise22:10
blackburnis it a common way to do weighting?22:10
blackburnreally?22:10
blackburnhmm I thought it would be useful22:10
blackburnbut didn't try22:10
@sonney2kas always there might be some cases where it helps a lot22:10
@sonney2kI have yet to see a case where setting different Cs helps at all22:10
blackburnsonney2k: btw do you use hog now? I just recalled it can be calculated as integral image22:10
blackburndo you know?22:11
@sonney2kno idea22:11
blackburnno idea about?22:11
blackburnI mean it is useful thing :)22:12
blackburnsonney2k: about alex binder, his task is not in updated list22:13
blackburnwhy?22:13
blackburnI suggested wiking to write to him22:13
wikingi've sent him an email already22:14
@sonney2kwiking, very good22:14
@sonney2kdid alex reply?22:14
blackburnI guess 30m wouldn't be enough for reply22:14
blackburn;)22:14
blackburnsonney2k: will vojtech's task be related to integration of kozinec/mdm/etc stuff?22:15
@sonney2khe is usually very fast - might not be only now though22:16
@sonney2kno it is about his libqp / shogun integration22:16
@sonney2kbasically developing /integrating qp solvers that we have in shogun in libqp under a general framework and exposing this general framework in shogun22:17
blackburnhmm looks like hard task22:17
@sonney2kso one could solve general problems and make use of the qp solvers in SG's algorithms22:17
@sonney2kwouldn't say so22:17
@sonney2kthings are mostly there22:17
@sonney2kand vojtech is optimization guru22:18
@sonney2kso he will help22:18
wikingsonney2k: not yet22:18
blackburnI wish I had some discussion with vojtech about multiclass thing :D22:18
blackburnI just wonder why his way of solving (like in GMNPSVM) is not widely known?22:20
blackburnsonney2k: are you any familiar with ECOC?22:20
blackburnI need some advice22:21
wikingdamn i need gmm clusterer in mahout...22:26
wikingshogun just cannot handle... i mean memory cannot handle it :(22:26
blackburnwiking: we would die trying to compete with mahout :)22:27
wikingahahha22:27
wikingit's ok22:27
wikingon the end part when i do classification22:27
wikingit's a quite small problem...22:27
wikingso shogun can handle it22:28
wikingbut preprocessing...22:28
wikinganybody read this/opinion: An Ensemble of Deep Support Vector Machines for Image Categorization22:28
blackburnno, I didn't22:28
wikinghahah github is being ddos-ed22:31
blackburnworks for me22:32
blackburnwho would ever ddos github?22:32
blackburnwe have a lot of DDoS here in *.ru zone btw :D22:34
wikingheheh22:34
blackburnpro-government bitches do some virtual war with any opposition22:34
wikingi mean mahout is funny... i've found a major stupid bug in their TFIDF vectorizer and even sent the patch for fixing it... that was like 2 weeks ago..22:34
wikingstill waiting for getting it applied..22:35
blackburndo they like to do it slow?22:35
wikingseems22:36
blackburnwe (2 busy developers) manage to do it faster haha22:37
blackburnhow many mahout has?22:37
wikinga lot22:38
wikingat least 5-7 commiters for sure22:38
blackburnand one russian too heh22:41
wikingok22:56
wikingi've found a cuda based gmm22:56
wikingand i have access to a tesla22:56
wiking:D22:56
wikinglet's see how this will work out22:56
blackburn337m22:57
wikingmmm this is cool: long __builtin_expect (long exp, long c)22:58
wikingthis is a must have function :>23:00
blackburnwhat is it?23:00
wikinga gcc function23:01
blackburnno idea what it does23:01
wiking"You may use __builtin_expect to provide the compiler with branch prediction information"23:02
blackburnhmm23:02
wiking. The semantics of the built-in are that it is expected that exp == c. For example:23:02
wiking          if (__builtin_expect (x, 0))23:02
wiking            foo ();23:02
wiking     23:02
wikingwould indicate that we do not expect to call foo, since we expect x to be zero23:02
blackburnhmm23:03
blackburnwell do you care so much about branch mispredictions?23:03
wikingsometimes yes23:03
wikingsometimes it's really annoying to see an if branch in a loop23:03
wikingthat u know that will be missed most of the time..23:03
blackburnthe worst misprediction I got was23:04
blackburnmatrix[i*N+j] = ...23:04
blackburnmatrix[j*N+i] = ...23:04
blackburnhave you ever noticed how slow it is?23:04
wikinglol23:05
blackburnnot branch but cache23:05
wikingyep23:05
blackburnmiss23:05
wikingsure23:05
wikingi mean it's jumping around the memory23:05
wikingso caching would be hard23:05
blackburnyeah may be 2-3x times slower23:05
-!- blackburn [~qdrgsm@109.226.88.39] has quit [Quit: Leaving.]23:22
--- Log closed Sat Feb 18 00:00:19 2012

Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!