--- Log opened Thu Aug 09 00:00:17 2012 | ||
shogun-buildbot_ | build #290 of deb3 - modular_interfaces is complete: Failure [failed compile java_modular] Build details are at http://www.shogun-toolbox.org/buildbot/builders/deb3%20-%20modular_interfaces/builds/290 blamelist: iglesias <fernando.iglesiasg@gmail.com> | 00:14 |
---|---|---|
shogun-buildbot_ | build #291 of deb3 - modular_interfaces is complete: Failure [failed compile java_modular] Build details are at http://www.shogun-toolbox.org/buildbot/builders/deb3%20-%20modular_interfaces/builds/291 blamelist: Sergey Lisitsyn <lisitsyn.s.o@gmail.com> | 00:26 |
-!- blackburn [~blackburn@109.226.80.43] has quit [Quit: Leaving.] | 01:50 | |
shogun-buildbot_ | build #48 of nightly_none is complete: Failure [failed compile] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_none/builds/48 | 03:10 |
shogun-buildbot_ | build #54 of nightly_default is complete: Failure [failed compile] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_default/builds/54 | 03:30 |
shogun-buildbot_ | build #44 of nightly_all is complete: Failure [failed compile] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_all/builds/44 | 03:51 |
-!- zxtx [~zv@ool-457e7550.dyn.optonline.net] has joined #shogun | 04:28 | |
-!- pluskid [~pluskid@111.120.36.226] has joined #shogun | 05:45 | |
pluskid | hi sonney2k | 05:46 |
@sonney2k | pluskid, hi | 05:46 |
@sonney2k | pluskid, not sure if you have seen but we are still fighting with your patch to work/compile on all interfaces | 05:47 |
pluskid | sonney2k: oh, the buildbot seems flooding me by sending lots of emails, so I didn't read them all | 05:47 |
pluskid | maybe I should have a look at the latest buildbot output | 05:48 |
@sonney2k | yeah well for a reason - all your fault ;-) | 05:48 |
@sonney2k | pluskid, no seriously you did add a python_modular example that didn't work | 05:48 |
@sonney2k | so I tried to fix this | 05:48 |
@sonney2k | which creates problems in java_modular (of course :( | 05:48 |
pluskid | sonney2k: http://www.shogun-toolbox.org/buildbot/builders/ this is the latest result right? | 05:48 |
@sonney2k | pluskid, look at waterfall | 05:48 |
@sonney2k | pluskid, but what I wanted to ask - you have a TreeMachine in multiclass that is templated | 05:49 |
@sonney2k | is that really needed | 05:49 |
@sonney2k | pluskid, but maybe let me explain a bit more first | 05:49 |
pluskid | ah, that would be good | 05:49 |
@sonney2k | many modular interfaces dont' support templates at all | 05:49 |
@sonney2k | (python, ruby, ...) | 05:50 |
@sonney2k | so that means for them one has to add an extra line in the corresponding swig .i interface file %template ... | 05:50 |
@sonney2k | so if templates are not *required* or avoid code duplication don't use them | 05:50 |
@sonney2k | next | 05:51 |
pluskid | hmm, I see | 05:51 |
pluskid | next? | 05:51 |
@sonney2k | if we have objects / structs that are not derived from SGObject we currently only have a workaround solution to get java and csharp modular to compile | 05:52 |
pluskid | maybe I should take a look at how to convert the tree-machine into non-template | 05:52 |
@sonney2k | why? because we support serialization of native shogun objects | 05:52 |
@sonney2k | and so we need the functions in SGObjects to be available basically in all classes/structs - which of course they are not | 05:53 |
pluskid | so if the template base class is ignored by SWIG, the inheritance chain will break, right? | 05:54 |
@sonney2k | so we currently have a workaround macro in an .i file where we add SERIALIZABLE_DUMMY(struct) | 05:55 |
@sonney2k | pluskid, for swig to work we need to include all .h's from the inheritance chain (in the right order!) | 05:55 |
pluskid | sonney2k: ah, I see | 05:56 |
@sonney2k | pluskid, if one is a template in between we have to add %template to make it visible | 05:56 |
pluskid | sonney2k: I'll try to remove the template. Luckily there are only two tree machines | 05:57 |
@sonney2k | pluskid, anyway maybe we can resolve this quickly - but I need your help: | 05:57 |
@sonney2k | I added these lines to Multiclass.i: | 05:57 |
@sonney2k | %include <shogun/multiclass/tree/BalancedConditionalProbabilityTree.h> | 05:57 |
@sonney2k | %include <shogun/multiclass/tree/ConditionalProbabilityTree.h> | 05:57 |
@sonney2k | %include <shogun/multiclass/tree/RandomConditionalProbabilityTree.h> | 05:57 |
@sonney2k | %include <shogun/multiclass/tree/RelaxedTree.h> | 05:57 |
@sonney2k | %include <shogun/multiclass/tree/RelaxedTreeNodeData.h> | 05:57 |
@sonney2k | %include <shogun/multiclass/tree/RelaxedTreeUtil.h> | 05:58 |
@sonney2k | %include <shogun/multiclass/tree/TreeMachine.h> | 05:58 |
@sonney2k | %include <shogun/multiclass/tree/TreeMachineNode.h> | 05:58 |
@sonney2k | %include <shogun/multiclass/tree/VwConditionalProbabilityTree.h> | 05:58 |
@sonney2k | pluskid, do we really need all of them to be visible from the interfaces? or are some of them just for internal use? | 05:58 |
pluskid | sonney2k: VwConditionalProbabilityTree cannot work properly because it seems the Vw in shogun isn't working properly, maybe I should remove this one | 05:59 |
pluskid | to make the template work, maybe all of them are needed | 06:00 |
pluskid | except RelaxedTreeUtil.h | 06:00 |
@sonney2k | pluskid, heh - RelaxedTreeUtil.h is to simple to cause trouble :D | 06:01 |
pluskid | sonney2k: so what's the trouble here? | 06:02 |
pluskid | I cannot understand the java_modular compile error | 06:02 |
pluskid | sonney2k: shall we expand with %template the superclass for RelaxedTree and ConditionalProbabilityTree for SWIG? | 06:03 |
-!- naywhayare [~ryan@spoon.lugatgt.org] has quit [Ping timeout: 252 seconds] | 06:03 | |
@sonney2k | pluskid, I am just compiling it locally here... | 06:03 |
@sonney2k | pluskid, which of the classes above are not derived from SGObject? | 06:04 |
pluskid | all derived from SGObject | 06:05 |
-!- naywhayare [~ryan@spoon.lugatgt.org] has joined #shogun | 06:05 | |
pluskid | sonney2k: maybe have a look at TreeMachineNode.h ? | 06:05 |
pluskid | it seemed I got some compile error of the class_list so I play a trick in the syntax of class derivation to avoid it being detected by the script | 06:06 |
@sonney2k | pluskid, if you don't prefix your class with C then it will not be included in class list - also you can add the IGNORE_IN_CLASS_LIST (or so define) | 06:08 |
@sonney2k | pluskid, RelaxedTreeUtil is not derived from sgobject | 06:08 |
@sonney2k | pluskid, why not? | 06:09 |
pluskid | sonney2k: It is just a util, like a struct | 06:09 |
@sonney2k | ok then we %ignore it | 06:09 |
@sonney2k | pluskid, ok so now we have these | 06:13 |
@sonney2k | ../../shogun/multiclass/tree/ConditionalProbabilityTree.h:43: Warning 401: Nothing known about base class 'CTreeMachine< ConditionalProbabilityTreeNodeData >'. Ignored. | 06:13 |
@sonney2k | ../../shogun/multiclass/tree/ConditionalProbabilityTree.h:43: Warning 401: Maybe you forgot to instantiate 'CTreeMachine< ConditionalProbabilityTreeNodeData >' using %template. | 06:13 |
@sonney2k | ../../shogun/multiclass/tree/RelaxedTree.h:34: Warning 401: Nothing known about base class 'CTreeMachine< RelaxedTreeNodeData >'. Ignored. | 06:13 |
@sonney2k | ../../shogun/multiclass/tree/RelaxedTree.h:34: Warning 401: Maybe you forgot to instantiate 'CTreeMachine< RelaxedTreeNodeData >' using %template. | 06:13 |
@sonney2k | so I guess it needs TreeMachine to be included first and node data too | 06:13 |
pluskid | sonney2k: so to make it work, we will use %template here, right? | 06:13 |
pluskid | yes, TreeMachine, and NodeData and then use %template | 06:14 |
pluskid | sonney2k: btw: CondProbTreeNodeData is in the ConditionalProbabilityTree.h file | 06:14 |
@sonney2k | pluskid, any ideas for a name? | 06:15 |
pluskid | TreeMachineWithXXXNodeData? | 06:15 |
@sonney2k | pluskid, so | 06:17 |
@sonney2k | %template(TreeMachineWithConditionalProbabilityTreeNodeData) CTreeMachine<ConditionalProbabilityTreeNodeData>; | 06:17 |
@sonney2k | %template(TreeMachineWithRelaxedTreeNodeData) CTreeMachine< RelaxedTreeNodeData>; | 06:17 |
pluskid | sonney2k: yeah, does it work now? | 06:18 |
@sonney2k | pluskid, of course not o_O | 06:20 |
pluskid | sonney2k: why? | 06:21 |
@sonney2k | pluskid, ohh it is getting better | 06:22 |
@sonney2k | ../../shogun/multiclass/tree/ConditionalProbabilityTree.h:43: Warning 401: Nothing known about base class 'CTreeMachine< ConditionalProbabilityTreeNodeData >'. Ignored. | 06:22 |
@sonney2k | ../../shogun/multiclass/tree/ConditionalProbabilityTree.h:43: Warning 401: Maybe you forgot to instantiate 'CTreeMachine< ConditionalProbabilityTreeNodeData >' using %template. | 06:22 |
pluskid | strange, we've instantiated it | 06:24 |
pluskid | sonney2k: oh, maybe we should put ConditionalProbabilityTreeNodeData in a separate header file | 06:24 |
@sonney2k | pluskid, maybe order of includes is wrong | 06:25 |
* sonney2k checks | 06:25 | |
pluskid | and include that header file | 06:25 |
pluskid | then use %template | 06:25 |
pluskid | then include conditionalprobabilitree.h | 06:25 |
@sonney2k | if I move it up to relaxedtreenode include | 06:25 |
@sonney2k | then I get | 06:25 |
@sonney2k | ../../shogun/multiclass/tree/ConditionalProbabilityTree.h:43: Warning 401: Base class 'CTreeMachine< ConditionalProbabilityTreeNodeData >' undefined. | 06:25 |
@sonney2k | Multiclass.i:73: Warning 401: 'CTreeMachine< ConditionalProbabilityTreeNodeData >' must be defined before it is used as a base class. | 06:25 |
pluskid | sonney2k: sorry, the family is calling me for the lunch, I'll see you later | 06:26 |
@sonney2k | pluskid, kids are waking up here so I will have to stop too ... I will commit what I have maybe you can get it to work... | 06:27 |
CIA-18 | shogun: Soeren Sonnenburg master * r4b11e44 / (5 files in 2 dirs): add a couple of missing %templates to Multiclass.i - http://git.io/C6Gvew | 06:28 |
pluskid | sonney2k: shall I compile with java_modular to test this? | 06:38 |
pluskid | sonney2k: is there something wrong with the git repo? | 07:08 |
pluskid | sonney2k: I get a very long list of applying many patches that are not created by me when I rebase on upstream/master | 07:08 |
shogun-buildbot_ | build #292 of deb3 - modular_interfaces is complete: Failure [failed test java_modular] Build details are at http://www.shogun-toolbox.org/buildbot/builders/deb3%20-%20modular_interfaces/builds/292 blamelist: Soeren Sonnenburg <sonne@debian.org> | 07:09 |
@sonney2k | pluskid: see the new buildbot error running java tests. | 08:41 |
pluskid | sonney2k: I'm getting some trouble with the git repo | 08:41 |
@sonney2k | the eEuclidean example needs to be renamed | 08:42 |
@sonney2k | pluskid: what trouble ? | 08:43 |
pluskid | sonney2k: I run rebase against upstream/master | 08:43 |
pluskid | then it shows a huge amount of patches being applied | 08:43 |
pluskid | I guess something is wrong here | 08:43 |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has joined #shogun | 08:43 | |
pluskid | hi n4nd0 | 08:44 |
n4nd0 | hey pluskid | 08:44 |
n4nd0 | that was fast :) | 08:44 |
pluskid | haha | 08:44 |
pluskid | n4nd0: will you fetch and rebase the latest shogun git repo | 08:44 |
pluskid | to see do you get any trouble? | 08:44 |
n4nd0 | pluskid: sure | 08:44 |
pluskid | thanks | 08:44 |
pluskid | I'm seeing something strange here, but not sure it is bad or ordinary | 08:45 |
n4nd0 | pluskid: what kind of thing? | 08:45 |
n4nd0 | any interface in particular? | 08:45 |
pluskid | n4nd0: I run git rebase | 08:45 |
@sonney2k | pluskid: no idea.. maybe someone forgot to rebase and someone merged such pr | 08:45 |
pluskid | it says a large amount of patches are being made | 08:45 |
pluskid | usually it only apply patches that I made locally | 08:46 |
n4nd0 | pluskid: aham | 08:46 |
@sonney2k | hmmm. | 08:46 |
n4nd0 | I could rebase without problems | 08:46 |
pluskid | n4nd0: OK | 08:46 |
pluskid | then I'll check my repo | 08:46 |
pluskid | maybe the easiest thing is to do a new clone from github | 08:47 |
n4nd0 | no idea | 08:47 |
n4nd0 | pluskid: have you googled the error? | 08:47 |
pluskid | n4nd0: no error, just some strange things | 08:48 |
n4nd0 | ok | 08:48 |
n4nd0 | sonney2k: btw, I asked you yesterday for any reference on risk functions for hm-svm | 08:49 |
n4nd0 | do you know something about it? | 08:49 |
n4nd0 | so far I have just found a Ph.D. thesis: Regularized bundle methods for large-scale learning problems with an | 08:49 |
n4nd0 | application to large margin training of hidden Markov models | 08:49 |
@sonney2k | n4nd0: it is the right part in rhetoric unconstrained formulation | 08:51 |
@sonney2k | scratch rhetoric | 08:51 |
@sonney2k | typing on mobile here | 08:52 |
-!- uricamic [~uricamic@2001:718:2:1634:3078:70c3:e281:1376] has joined #shogun | 08:54 | |
pluskid | sonney2k: I fixed the java euclidian error. Does the output of the buildbot of java mean we are getting tree machine OK there? | 08:56 |
n4nd0 | sonney2k: sorry I didn't get it, should I look for rhetoric unconstrained formulation? scratch unconstrained? | 08:56 |
@sonney2k | pluskid: there is still a warning | 08:57 |
@sonney2k | n4nd0:??? | 08:59 |
n4nd0 | yeah that's how I reacted when I read | 08:59 |
n4nd0 | <@sonney2k> n4nd0: it is the right part in rhetoric unconstrained formulation | 08:59 |
n4nd0 | <@sonney2k> scratch rhetoric | 08:59 |
n4nd0 | :D | 08:59 |
@sonney2k | I said scratch rhetoric | 09:00 |
@sonney2k | remove this word | 09:00 |
n4nd0 | oh shit | 09:00 |
n4nd0 | I am retarded | 09:00 |
n4nd0 | sonney2k: sorry | 09:00 |
pluskid | sonney2k: ah, I finally find it, I will try to compile it locally | 09:00 |
@sonney2k | touchpad typing on mobile is not exactly easy :-/ | 09:02 |
n4nd0 | yeah, I understand. My bad I didn't understand | 09:03 |
@sonney2k | pluskid: thanks | 09:13 |
shogun-buildbot_ | build #55 of nightly_default is complete: Success [build successful] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_default/builds/55 | 09:31 |
-!- nickon [~noneedtok@d54C2DD90.access.telenet.be] has joined #shogun | 09:35 | |
-!- nickon [~noneedtok@d54C2DD90.access.telenet.be] has quit [Client Quit] | 09:35 | |
n4nd0 | sonney2k: around? | 10:07 |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has quit [Ping timeout: 240 seconds] | 10:20 | |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has joined #shogun | 10:22 | |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has quit [Client Quit] | 10:26 | |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has joined #shogun | 10:26 | |
CIA-18 | shogun: Chiyuan Zhang master * re1a50de / (2 files): renaming java modular: euclidian => euclidean - http://git.io/xHS8hw | 10:35 |
CIA-18 | shogun: Chiyuan Zhang master * r490741f / (4 files in 2 dirs): fix template class of CPT in java modular. - http://git.io/nvFyDg | 10:35 |
CIA-18 | shogun: Soeren Sonnenburg master * rd699fc5 / (6 files in 3 dirs): Merge pull request #698 from pluskid/multiclass - http://git.io/WEcyAQ | 10:35 |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has quit [Ping timeout: 268 seconds] | 10:53 | |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has joined #shogun | 10:55 | |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has quit [Quit: leaving] | 11:09 | |
shogun-buildbot_ | build #293 of deb3 - modular_interfaces is complete: Success [build successful] Build details are at http://www.shogun-toolbox.org/buildbot/builders/deb3%20-%20modular_interfaces/builds/293 | 11:13 |
pluskid | :q | 11:34 |
-!- pluskid [~pluskid@111.120.36.226] has quit [Quit: Leaving] | 11:34 | |
-!- blackburn [~blackburn@109.226.80.43] has joined #shogun | 11:39 | |
@sonney2k | shogun-buildbot_, hurray! | 11:49 |
shogun-buildbot_ | What you say! | 11:49 |
wiking | sonney2k: apart from the minor changes u suggested any other requests? | 12:15 |
@sonney2k | wiking, well make sure that current svm ocas gives the same result as the updated one | 12:20 |
wiking | sonney2k: i'll try to define a test for it :D | 12:22 |
shogun-buildbot_ | build #45 of nightly_all is complete: Success [build successful] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_all/builds/45 | 12:25 |
wiking | what was the class name for generating random data by heiko? | 12:33 |
wiking | i thought that it's in statistics... | 12:34 |
shogun-buildbot_ | build #49 of nightly_none is complete: Success [build successful] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_none/builds/49 | 12:38 |
blackburn | wiking: it is in features IIRC | 12:38 |
wiking | mmm let me check | 12:42 |
wiking | mmm i guess it's going to be DataGenerator.h | 12:45 |
blackburn | yeah | 12:45 |
wiking | let's see how it works :) | 12:46 |
wiking | sonney2k: any ideas how svmocas would deal with an input of two normally distributed data? | 12:54 |
wiking | i mean standard distrib.. | 12:54 |
@sonney2k | wiking, ? | 13:27 |
@sonney2k | it will separete the data :D | 13:27 |
-!- blackburn [~blackburn@109.226.80.43] has quit [Quit: Leaving.] | 13:36 | |
-!- blackburn [~blackburn@109.226.80.43] has joined #shogun | 13:41 | |
wiking | yeah 'm just checking it's performance now | 13:47 |
CIA-18 | shogun: Sergey Lisitsyn master * r5e63792 / (8 files in 3 dirs): Added multitask ROC evaluation - http://git.io/PJW7fA | 13:47 |
blackburn | wiking: my self-education made me to dense sift :D | 14:01 |
blackburn | I actually do not think it could be a way for huge data | 14:02 |
wiking | mmm | 14:36 |
wiking | any ideas how i could unit test this | 14:36 |
wiking | because with ROC i get value of 0.4168 -> 0.5532 | 14:37 |
wiking | imho i should create the vectors, otherwise with random ones i won't be able to be deterministic enough | 14:37 |
@sonney2k | wiking, what? | 14:40 |
@sonney2k | I don't get it | 14:40 |
@sonney2k | though for random stuff you should seed the rng | 14:41 |
wiking | sonney2k: well i've used the datagenerator of heiko | 14:42 |
wiking | then i've basically divided the generated matrix into two equally sized feature set | 14:42 |
wiking | i.e. train/test | 14:42 |
wiking | the same amount of each vector in both of the sets | 14:42 |
wiking | then i've ran training and test on those features with ocas | 14:43 |
wiking | and now i'm using ROCEvaluation for checking the classification | 14:43 |
wiking | and the result varies a lot | 14:43 |
wiking | so i was wondering how else i could test svmocas | 14:44 |
wiking | since this doesn't seemed to be too deterministic | 14:44 |
@sonney2k | wiking, well you should seed the rng | 14:44 |
@sonney2k | otherwise it cannot be deterministic | 14:44 |
@sonney2k | and also use *two* gaussians that don't have same mean | 14:45 |
@sonney2k | otherwise you will just get about 50% accuracy | 14:45 |
wiking | as far as i understood | 14:45 |
wiking | datagenerator will generate that | 14:45 |
wiking | Takes each m samples from two distributions p and q, where each element * is standard normally distributed, except for the first dimension of q, * where the mean is shifted by a specified value. | 14:46 |
wiking | that's what generate_mean_data(...) does | 14:46 |
wiking | heh ok this should work | 14:52 |
@sonney2k | wiking, how many dims? | 14:55 |
@sonney2k | if this is low dim you should get 100% acc | 14:55 |
@sonney2k | roc 1.0 | 14:55 |
wiking | sonney2k: i've tried with dim = 10 | 14:58 |
wiking | it's now 0.7684 | 14:58 |
wiking | with a given seed | 14:58 |
blackburn | what are means of gaussians? | 15:00 |
wiking | ok | 15:00 |
wiking | here's a utest for SVMOcas | 15:00 |
wiking | let's see how u like it :)) | 15:01 |
blackburn | wiking: two nonoverlap gaussians should have roc 1.0.. | 15:01 |
wiking | blackburn: ok check the code where i've done then a mistake :) | 15:02 |
wiking | https://github.com/shogun-toolbox/shogun/pull/700 | 15:02 |
blackburn | wiking: generate_mean_data does some strange thing | 15:04 |
blackburn | pretty strange | 15:05 |
blackburn | wiking: in matlab it would be | 15:05 |
blackburn | X = randn(dim,2*m) | 15:05 |
blackburn | X(0,m:2*m) += mean_shift | 15:05 |
blackburn | ehh | 15:06 |
wiking | blackburn: can u try to run this unittest on your machine | 15:07 |
wiking | just to see if it's the same at least :) | 15:07 |
blackburn | wiking: I am not surprised | 15:07 |
blackburn | with 0.7 | 15:07 |
blackburn | because it is the same gaussian | 15:07 |
blackburn | except first variable | 15:07 |
blackburn | just check code of data generator generate mean data | 15:08 |
wiking | pfff | 15:09 |
blackburn | see what I mean? | 15:09 |
blackburn | so the only mistake is to use that method :) | 15:11 |
wiking | adf | 15:11 |
wiking | asdf!@#$ | 15:12 |
CIA-18 | shogun: Sergey Lisitsyn master * r4286ace / (5 files): A few doc improvements for task api - http://git.io/a34bRQ | 15:12 |
CIA-18 | shogun: Sergey Lisitsyn master * r443f89f / doc/tutorial : Updated tutorial submodule - http://git.io/ZW0Lig | 15:12 |
-!- gsomix [~gsomix@109.169.158.254] has joined #shogun | 15:18 | |
gsomix | good day | 15:18 |
wiking | blackburn: ideas? | 15:22 |
blackburn | wiking: thou shalt use da second method | 15:23 |
wiking | :> | 15:23 |
blackburn | generate_sym_mix_gauss | 15:23 |
blackburn | and actually you should compare not the auc | 15:24 |
blackburn | but the solution | 15:24 |
blackburn | it should coincide | 15:24 |
blackburn | wiking: ah generate_sym_mix_gauss is random mixture :D | 15:58 |
CIA-18 | shogun: Sergey Lisitsyn master * r10a0961 / (5 files): A few doc improvements for malsar based multitask algorithms - http://git.io/ib6FlQ | 16:05 |
wiking | blackburn: is there any simple generator in shogun? or shall we add one? :))) | 16:12 |
blackburn | wiking: no, datagenerator is the only | 16:12 |
wiking | maybe then i should extend it with a new fucntion | 16:13 |
wiking | to be able to generate n gaussians | 16:13 |
blackburn | yes | 16:14 |
-!- heiko1 [~heiko@host86-178-85-194.range86-178.btcentralplus.com] has joined #shogun | 16:23 | |
blackburn | heiko1: hey | 16:24 |
heiko1 | blackburn, hi | 16:24 |
blackburn | heiko1: have you ever heard of success of applying svms to boolean domain? | 16:25 |
heiko1 | boolena domains? | 16:25 |
heiko1 | like boolean functions? | 16:25 |
blackburn | yeah, features are {0,1}^d | 16:25 |
heiko1 | not direct | 16:25 |
heiko1 | but perceptrons have been studien well in that context | 16:26 |
heiko1 | actually, I think except for xor and the complent, perceptrons can already learn all boolean functions | 16:26 |
blackburn | heiko1: what is easy to google is a dnf kernel - it appears pretty often | 16:26 |
blackburn | but latest is 2005 | 16:26 |
heiko1 | mmh | 16:26 |
blackburn | doesn't sound like a success story :D | 16:27 |
heiko1 | I mean this topic is like ultra old | 16:27 |
heiko1 | so what do you want to do? | 16:27 |
blackburn | heiko1: I have bit features | 16:27 |
blackburn | now I am learning just a linear svm | 16:27 |
heiko1 | I see | 16:28 |
blackburn | but linear is not enough I guess | 16:28 |
heiko1 | you can linearly discriminate all boolean functions but xor | 16:28 |
heiko1 | so you weould need a kernel | 16:28 |
heiko1 | a kernel that for example allows to distinguish the xor set (plus all others) is (x1, x2, x1*x2) | 16:29 |
blackburn | heiko1: yeah, dnf kernel does that | 16:29 |
heiko1 | but then you are fine | 16:29 |
heiko1 | in this feature space all booleans are linearly distinguishable | 16:29 |
blackburn | super slow, I thought of better way | 16:29 |
heiko1 | I see | 16:29 |
blackburn | :D | 16:29 |
blackburn | dataset is like 40K | 16:30 |
blackburn | road signs that is, again | 16:30 |
blackburn | :D | 16:30 |
gsomix | thunderstorm! | 16:30 |
heiko1 | and the how long does liblinera take? | 16:32 |
blackburn | heiko1: well kind of 5 minutes | 16:32 |
blackburn | heiko1: one problem I don't know how to approach | 16:33 |
blackburn | is | 16:33 |
blackburn | it is defined as -1 + 2^same1(x,y) | 16:33 |
heiko1 | but you dont have kernel parameters | 16:34 |
heiko1 | isnt 5 mins fine then=? | 16:34 |
heiko1 | I suspect this is training time | 16:34 |
heiko1 | what is apply time? | 16:34 |
blackburn | heiko1: yeah but liblinear is linear | 16:34 |
blackburn | with kernel it is kind of infinity | 16:34 |
blackburn | or I am doing something wrong | 16:34 |
heiko1 | what if you dont use a kernel but manually construct new features? What dimension are you in? | 16:35 |
blackburn | heiko1: 512 bits | 16:35 |
heiko1 | mmh, too many | 16:36 |
blackburn | 13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096 is pretty long | 16:36 |
heiko1 | what about Gaussian kernel? :) | 16:36 |
heiko1 | on original features | 16:36 |
blackburn | well I guess it would be the same slow | 16:36 |
heiko1 | or waht about feature selection before that, I guess the important things are happening in a few dimensions only | 16:36 |
blackburn | heiko1: any idea how to normalize -1+2^bignumber? | 16:37 |
heiko1 | no | 16:37 |
blackburn | or rather how to avoid overflow | 16:37 |
blackburn | :D | 16:37 |
blackburn | heiko1: does it mean with kernel mapping to linearly separable space I don't have to use C at all? | 16:38 |
heiko1 | ehm what? | 16:39 |
blackburn | heh | 16:39 |
blackburn | you said boolean functions are linearly separable | 16:39 |
heiko1 | What I meant is that you probably dont need all these dimensions | 16:39 |
blackburn | no, before | 16:39 |
heiko1 | 14/16 are linearly separable in 2 dimenions | 16:39 |
blackburn | I mean if kernel maps to space where features are linearly separable | 16:40 |
blackburn | do I have to regularize at all? | 16:40 |
heiko1 | I see | 16:40 |
heiko1 | if the data is 100% separable | 16:40 |
heiko1 | do dont really need to do that | 16:40 |
heiko1 | however | 16:40 |
heiko1 | (since the test error is 0 anyway) | 16:40 |
heiko1 | but you still get a better margin with reg. | 16:41 |
blackburn | yeah | 16:41 |
heiko1 | so more robustness | 16:41 |
blackburn | PROGRESS: nan -nan seconds remaining -nan seconds total | 16:44 |
blackburn | lol | 16:44 |
blackburn | probably I would have to wait a few lives more | 16:44 |
heiko1 | hehe :) | 16:44 |
blackburn | will try to learn on subset | 16:45 |
heiko1 | do some feature selection | 16:45 |
heiko1 | throw away pointless dimensions | 16:45 |
heiko1 | if that wont help, the problem is unsolvable anyway (which I guess it isnt since my brain can solve it :D) | 16:45 |
blackburn | heiko1: well even dropping 50% of features will speed up it only twice | 16:46 |
heiko1 | sorry, I meant not features in shogun sense | 16:46 |
heiko1 | but dimensions of data | 16:46 |
heiko1 | with that number | 16:46 |
heiko1 | you can probably drop all but a few thousand or eeven hundred | 16:46 |
blackburn | probably my kernel is just wrong | 16:46 |
blackburn | omfg | 16:47 |
blackburn | my features are wrong :D | 16:47 |
blackburn | I forgot to remove bitwise stuff | 16:47 |
blackburn | so I learn on 4K dimension features with kernel = const | 16:47 |
blackburn | :D | 16:47 |
heiko1 | ehm ,what? :) | 16:48 |
blackburn | heiko1: I forgot to remove my map 01010101 -> [0,1,0,1,0,1,0,1] | 16:49 |
heiko1 | and now it works? | 16:51 |
blackburn | no idea it is slow even after reducing :( | 16:51 |
heiko1 | try a PCA | 16:53 |
blackburn | heiko1: will do | 16:55 |
heiko1 | and look at the Eigenspectrum, that will tell you how much it works | 16:55 |
blackburn | heiko1: eigenspectrum of features? | 16:56 |
-!- gsomix [~gsomix@109.169.158.254] has quit [Ping timeout: 245 seconds] | 16:56 | |
blackburn | heiko1: wait, how can I do PCA of boolean features | 16:56 |
blackburn | oops | 16:57 |
heiko1 | the eigenspectrum of the covariance matrix | 16:57 |
blackburn | my kernel is -1.0 constantly | 16:57 |
blackburn | :D | 16:57 |
heiko1 | lol :) | 16:57 |
blackburn | good kernel | 16:57 |
-!- alexlovesdata [~binder@194.95.174.230] has joined #shogun | 16:59 | |
-!- alexlovesdata [~binder@194.95.174.230] has left #shogun [] | 17:00 | |
-!- alexlovesdata [~binder@194.95.174.230] has joined #shogun | 17:00 | |
-!- Jo____ [c3b2a844@gateway/web/freenode/ip.195.178.168.68] has joined #shogun | 17:00 | |
Jo____ | Hello, trying to use the liblinear/libsvm module and have a question if anyone has time for it. | 17:00 |
blackburn | Jo____: sure, ask | 17:00 |
Jo____ | I'm doing document classification, like sports/economy/etc. I'm fully aware how to achieve this but there's a quirk I'm having issues with. probability output. | 17:01 |
blackburn | well we don't compute probabilities right there actually | 17:02 |
blackburn | so you solve multiclass problems, right? | 17:02 |
Jo____ | So far I've used liblinear, this limits me to logic regression, in svm there's more options but not sure of "best practices". | 17:02 |
Jo____ | It's in essence a multiclass problem yes. | 17:03 |
blackburn | probabilistic output can be a problem there.. | 17:03 |
Jo____ | Further down the pipe these values are needed though so not an option to eliminate it regardless of how good the classifier gets :( | 17:04 |
blackburn | heiko1: what would you say there? | 17:05 |
heiko1 | Jo, so you just want to get probability for multiclass SVM right? | 17:06 |
Jo____ | Pretty much yes. | 17:06 |
heiko1 | we dont have this in shogun yet | 17:07 |
heiko1 | however, you can compute that by hand | 17:07 |
heiko1 | let me find you a paper where this is described, I have one somewhere | 17:07 |
Jo____ | ok, thanks! | 17:07 |
heiko1 | Milgram, J., Cheriet, M., Sabourin, R., and Others (2006). "One Against One" or "One Against | 17:08 |
heiko1 | All": Which One is Better for Handwriting Recognition with SVMs? Strategy | 17:08 |
heiko1 | you would have to fit sigmoids to all involved binary svms in order to get binary probabilities | 17:08 |
heiko1 | and with this paper you can combine these to get multiclass probabilities | 17:08 |
heiko1 | Its on my todo list to implement into shogun | 17:08 |
heiko1 | (at least the sigmoid fitting) | 17:08 |
heiko1 | is it urgent? | 17:09 |
Jo____ | Ok I'll give it an read for sure, think alot of people would apriciate that too. | 17:09 |
Jo____ | Isn't it always but not to worry will work around. In the original liblinear/libsvm package there's some support though right? | 17:10 |
heiko1 | sorry phone 2min | 17:12 |
Jo____ | np random people taking time to help me with my little issues, grateful. | 17:13 |
-!- gsomix [~gsomix@95.67.164.157] has joined #shogun | 17:14 | |
heiko1 | re | 17:15 |
heiko1 | yeah I know that this is needed :) | 17:15 |
heiko1 | blackburn, do you think its instantly possible to do this within the current framework? | 17:15 |
blackburn | heiko1: I do not really know what's the way | 17:16 |
heiko1 | I mean computing apply() on all data and then access all svm scores (not just the sign) to estimate a probability which is then saved in the label | 17:16 |
heiko1 | this is first step | 17:16 |
blackburn | problem is the confidence | 17:16 |
blackburn | is not a vector | 17:16 |
heiko1 | second step is (when this is done for all machines in OvO or OvR | 17:16 |
blackburn | for each feature vector I mean | 17:17 |
heiko1 | what? | 17:17 |
heiko1 | Currently, in apply() one can collect all svm scores right? | 17:17 |
heiko1 | for all data | 17:17 |
blackburn | yes, it is done | 17:17 |
blackburn | but they are lost later | 17:18 |
heiko1 | ok | 17:18 |
heiko1 | once one has these | 17:18 |
heiko1 | (for a single svm) | 17:18 |
heiko1 | one can estimate a probability using this plat sigmoid fitting algo | 17:18 |
heiko1 | this is then stored per machine per datum | 17:18 |
heiko1 | possible? | 17:18 |
blackburn | yeah I think so | 17:18 |
heiko1 | and then once all this is done, these can easily combined to one multiclass probability for all data | 17:19 |
heiko1 | Ok, I will have a look later | 17:20 |
heiko1 | blackburn, did you see this guy wanting to have MKL weights in each cross-validation fold saved? | 17:20 |
blackburn | yes | 17:20 |
-!- uricamic [~uricamic@2001:718:2:1634:3078:70c3:e281:1376] has quit [Quit: Leaving.] | 17:26 | |
blackburn | heiko1: | 17:34 |
blackburn | 28 ????????uint8_t* avec = ((CDenseFeatures<uint8_t>*)lhs)->get_feature_vector(i,alen,afree); | 17:34 |
blackburn | 29 ????????uint8_t* bvec = ((CDenseFeatures<uint8_t>*)rhs)->get_feature_vector(i,blen,bfree); | 17:34 |
blackburn | find mistake :D | 17:34 |
heiko1 | no diea | 17:34 |
blackburn | heiko1: i,i :( | 17:34 |
-!- gsomix_ [~gsomix@80.234.28.153] has joined #shogun | 17:35 | |
heiko1 | ah | 17:37 |
heiko1 | lol | 17:37 |
heiko1 | Is it working then now blackburn? :D | 17:37 |
-!- gsomix [~gsomix@95.67.164.157] has quit [Ping timeout: 265 seconds] | 17:38 | |
blackburn | heiko1: it says 37 minutes remaining - that's why I hate kernel methods :D | 17:45 |
heiko1 | whats that for? 37 minutes :) | 17:49 |
-!- gsomix_ [~gsomix@80.234.28.153] has quit [Ping timeout: 244 seconds] | 17:54 | |
blackburn | heiko1: to train on 4300 feature vectors :( | 17:56 |
blackburn | something is totally wrong here | 17:56 |
blackburn | ah yes it is a brain related problem | 17:57 |
-!- puffin444 [62e3926e@gateway/web/freenode/ip.98.227.146.110] has joined #shogun | 17:58 | |
blackburn | terrible brain damage of mine I'd say :D | 17:58 |
blackburn | but I must say one can cast DenseFeatures<float64_t> to DenseFeatures<uint8_t> and it works *somehow* | 17:59 |
alexlovesdata | :D blackburn | 18:01 |
blackburn | alexlovesdata: may be you know how to handle binary descriptors in recognition? | 18:01 |
alexlovesdata | you discover denoising by compression ?! | 18:02 |
blackburn | alexlovesdata: no I mean it doesn't fail neither runtime nor compilation | 18:02 |
alexlovesdata | whta means: to handle binary descriptors? | 18:02 |
alexlovesdata | integer math? | 18:02 |
blackburn | alexlovesdata: well I am trying to make FREAK work with road signs | 18:03 |
alexlovesdata | the normal way is to do convex relaxation from the hypercube edges to the linear domain\ | 18:03 |
blackburn | alexlovesdata: so I have 512 bit features | 18:03 |
blackburn | alexlovesdata: earlier I was just mapping each bit to float (1.0 or 0.0) and learn a linear model | 18:04 |
alexlovesdata | you can encode the 512 bit in one float | 18:04 |
alexlovesdata | val_i=i/512 | 18:04 |
blackburn | alexlovesdata: ehmm? | 18:04 |
alexlovesdata | so a proper machine can use the value for learning | 18:05 |
blackburn | 8 floats you mean? | 18:05 |
alexlovesdata | I mean 512 bit encode a numerical value range | 18:05 |
blackburn | alexlovesdata: do you think it have a chance to work as feature? | 18:06 |
alexlovesdata | you can assign each possible number a float value | 18:06 |
alexlovesdata | then you have a one dim ... or N-dim feature | 18:06 |
alexlovesdata | in which each dim captures one bit range | 18:06 |
alexlovesdata | as you said eg N=512/32 or whatever | 18:07 |
alexlovesdata | so that the range covered by one float is reasonable | 18:07 |
alexlovesdata | it is one form of embedding the thing | 18:07 |
-!- gsomix [~gsomix@109.169.230.254] has joined #shogun | 18:08 | |
gsomix | thunderstorm - horses 1:0 | 18:08 |
gsomix | :( | 18:08 |
alexlovesdata | with N=512/32 each dim encodes a value range of 2^32 or so | 18:08 |
blackburn | alexlovesdata: so you suggest to construct floats from bits | 18:08 |
blackburn | and use it as features? | 18:08 |
alexlovesdata | why not ?! | 18:09 |
-!- Jo____ [c3b2a844@gateway/web/freenode/ip.195.178.168.68] has quit [Ping timeout: 245 seconds] | 18:09 | |
alexlovesdata | N should be large enough so that it is reasonably separable | 18:09 |
blackburn | alexlovesdata: sounds like something crazy actually :) | 18:10 |
alexlovesdata | crazy things often come out of my mind ... O:-) | 18:10 |
alexlovesdata | we can talk about Pascal VOC later | 18:10 |
alexlovesdata | maybe mid of next week? | 18:11 |
alexlovesdata | I need to code some experimental heatmap stuff | 18:11 |
blackburn | alexlovesdata: yeah, I don't mind | 18:11 |
alexlovesdata | right now | 18:11 |
blackburn | I will try that 'embedding' now | 18:12 |
blackburn | alexlovesdata: no that works worse than just bits as features | 18:29 |
heiko1 | blackburn, what about the online pdf of the tutorial, any news on that? | 18:30 |
blackburn | heiko1: well no, I don't have any news | 18:30 |
heiko1 | k | 18:30 |
heiko1 | sonney2k, ^ | 18:31 |
blackburn | alexlovesdata: 15% accuracy lossss | 18:32 |
blackburn | alexlovesdata: no, with a few keypoints it is surprisingly pretty near | 18:38 |
blackburn | alexlovesdata: I did 0/1 to kind of ++/-- mapping - works surprisingly well | 18:47 |
-!- alexlovesdata [~binder@194.95.174.230] has quit [Ping timeout: 245 seconds] | 19:02 | |
-!- alexlovesdata [~binder@194.95.174.230] has joined #shogun | 19:06 | |
alexlovesdata | which kernel did you use? | 19:06 |
blackburn | alexlovesdata: no kernel | 19:07 |
alexlovesdata | I mean after the recoding | 19:07 |
alexlovesdata | or what classification method? | 19:07 |
blackburn | linear crammer-singer | 19:07 |
alexlovesdata | so linear | 19:07 |
blackburn | yes sure | 19:07 |
alexlovesdata | why linear??? | 19:07 |
alexlovesdata | I would say this is always the worst choice | 19:07 |
blackburn | I won't be able to try anything with kernels | 19:08 |
alexlovesdata | not even explicit mappings? | 19:08 |
blackburn | trainset is pretty large | 19:08 |
blackburn | ah with explicit mapping I should try | 19:08 |
heiko1 | blackburn, or anyoidy else, is there an online (latex) generator for doxygen comments? such as online latex renderes? | 19:08 |
blackburn | heiko1: no I don't know any | 19:09 |
-!- alexlovesdata [~binder@194.95.174.230] has left #shogun [] | 19:22 | |
CIA-18 | shogun: Heiko Strathmann master * r5832250 / src/shogun/mathematics/Statistics.h : fixed some warnings and documentation updates in doxygen latex - http://git.io/-ECQlw | 19:29 |
CIA-18 | shogun: Heiko Strathmann master * r8948ff2 / src/shogun/statistics/TwoDistributionsTestStatistic.h : fixed a warning - http://git.io/kGMxUw | 19:29 |
CIA-18 | shogun: Heiko Strathmann master * r7b2a2b8 / (2 files in 2 dirs): Merge pull request #701 from karlnapf/master - http://git.io/5q7oIw | 19:29 |
-!- heiko1 [~heiko@host86-178-85-194.range86-178.btcentralplus.com] has left #shogun [] | 19:30 | |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has joined #shogun | 19:44 | |
n4nd0 | nice, I see that the buildbot is healthy again | 19:46 |
n4nd0 | sonney2k, blackburn: should I do something else about the PR before it gets merged? | 19:48 |
blackburn | n4nd0: I don't know , let me check | 19:48 |
n4nd0 | I updated it and rebased master yesterday IIRC | 19:49 |
blackburn | n4nd0: oh so you did matrix list structure? | 19:52 |
blackburn | did add | 19:52 |
n4nd0 | yes | 19:53 |
n4nd0 | the captain told me to do it :) | 19:53 |
blackburn | it is pretty huge to review ^( | 19:55 |
n4nd0 | I think that sonney2k has already reviewed it | 19:56 |
blackburn | yeah sure | 19:56 |
n4nd0 | I am eager to see it merged :) | 19:57 |
blackburn | it can't be merged :D | 19:57 |
blackburn | need to be rebased | 19:58 |
n4nd0 | whatever :P | 19:58 |
blackburn | let me know when it is rebased | 19:59 |
n4nd0 | I am still looking for some application of this I have done | 19:59 |
blackburn | yeah would be nice to have some example | 20:00 |
-!- n4nd0 [~nando@31.Red-2-137-62.dynamicIP.rima-tde.net] has quit [Quit: leaving] | 20:10 | |
CIA-18 | shogun: Sergey Lisitsyn master * rc3843f9 / (2 files): Reformatted HKM - http://git.io/ihRbwg | 21:11 |
shogun-buildbot_ | build #300 of deb3 - modular_interfaces is complete: Failure [failed test ruby_modular] Build details are at http://www.shogun-toolbox.org/buildbot/builders/deb3%20-%20modular_interfaces/builds/300 blamelist: Heiko Strathmann <heiko.strathmann@gmail.com> | 21:12 |
shogun-buildbot_ | build #301 of deb3 - modular_interfaces is complete: Failure [failed test ruby_modular] Build details are at http://www.shogun-toolbox.org/buildbot/builders/deb3%20-%20modular_interfaces/builds/301 blamelist: Sergey Lisitsyn <lisitsyn.s.o@gmail.com> | 21:51 |
CIA-18 | shogun: Sergey Lisitsyn master * rdf8cd27 / (14 files in 6 dirs): A few warning fixes - http://git.io/PY8W8g | 22:04 |
shogun-buildbot_ | build #302 of deb3 - modular_interfaces is complete: Success [build successful] Build details are at http://www.shogun-toolbox.org/buildbot/builders/deb3%20-%20modular_interfaces/builds/302 | 22:49 |
CIA-18 | shogun: Sergey Lisitsyn master * r356cfcf / src/shogun/transfer/multitask/MultitaskCompositeMachine.cpp : Fixed MultitaskCompositeMachine train locked - http://git.io/5Ff7Vw | 23:02 |
--- Log closed Fri Aug 10 00:00:17 2012 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!