--- Log opened Mon Sep 24 00:00:17 2012 | ||
-!- blackburn [~blackburn@188.168.2.50] has quit [Quit: Leaving.] | 00:03 | |
shogun-buildbot_ | build #111 of nightly_default is complete: Failure [failed test] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_default/builds/111 | 04:14 |
---|---|---|
-!- hoijui [~hoijui@dslb-088-074-107-101.pools.arcor-ip.net] has joined #shogun | 08:02 | |
-!- sonne|work [~sonnenbu@194.78.35.195] has joined #shogun | 08:41 | |
-!- ptizoom [4f475132@gateway/web/freenode/ip.79.71.81.50] has joined #shogun | 09:41 | |
-!- heiko [~heiko@host86-180-121-44.range86-180.btcentralplus.com] has joined #shogun | 11:44 | |
-!- heiko1 [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has joined #shogun | 13:10 | |
-!- heiko [~heiko@host86-180-121-44.range86-180.btcentralplus.com] has quit [Ping timeout: 244 seconds] | 13:10 | |
-!- heiko1 [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has quit [Remote host closed the connection] | 13:54 | |
-!- blackburn [5bdfb203@gateway/web/freenode/ip.91.223.178.3] has joined #shogun | 14:15 | |
blackburn | sonne|work: lua appears to recursively call typemap on my machine | 14:16 |
blackburn | did that ever happen to you? | 14:16 |
-!- heiko [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has joined #shogun | 14:50 | |
blackburn | heiko: hey | 15:10 |
heiko | blackburn hi | 15:10 |
blackburn | how are you? | 15:10 |
heiko | blackburn, thanks I am fine how are you? | 15:10 |
blackburn | fine but I am about to fall asleep right now :D | 15:11 |
blackburn | anything new with shogun stuff you do? | 15:11 |
blackburn | last days I have changed SGSttring a little | 15:11 |
heiko | I saw that, nice | 15:11 |
blackburn | now lua fails thoguh | 15:11 |
heiko | I postponed the labels stuff | 15:12 |
heiko | since we need to discuss that properly | 15:12 |
heiko | with others | 15:12 |
blackburn | after vodka | 15:12 |
heiko | switched to making statistical tests work with streaming features | 15:12 |
blackburn | to make that more productive | 15:12 |
heiko | lol :) yeah | 15:12 |
heiko | I find it is a serious problem that we cannot do structures of SG* data so I dont want to touch that yet | 15:12 |
heiko | all this effort went into serialization, would be a stupid to just drop that now | 15:13 |
blackburn | heiko: are you having more time now? | 15:13 |
heiko | blackburn, kind of yes | 15:13 |
blackburn | may be we could get back to kaggle? | 15:13 |
blackburn | or rather say to kaggle idea | 15:14 |
heiko | oh yeah, tell me about it | 15:14 |
heiko | I dont know if I have *that* much time, but its interesting anyways | 15:14 |
blackburn | well - what can I tell - we join a team and attack some problem | 15:14 |
blackburn | and probably earn money and all hail to shogun :D | 15:14 |
heiko | probably? :) | 15:15 |
heiko | I participated earlier this year | 15:15 |
heiko | and got to place 150 or so | 15:15 |
heiko | so no money :) | 15:16 |
blackburn | nah don't be so pessimistic, there is always a chance | 15:16 |
heiko | there is | 15:16 |
blackburn | recently one guy that used scikits reported that he won something | 15:16 |
heiko | just my experience | 15:17 |
heiko | I wont do it for the money anyways | 15:17 |
heiko | there are much better ways getting to money ;) | 15:17 |
heiko | but its fun! | 15:17 |
heiko | and one learns something | 15:17 |
blackburn | yeah it is always wrong to do anything for money :) | 15:17 |
blackburn | lets talk about that once again this week | 15:18 |
blackburn | I will check any competitions we could take participance in | 15:18 |
heiko | ah you haven't got something particular yet? | 15:18 |
blackburn | heh no, did you think I have? | 15:19 |
blackburn | my mistake :) | 15:19 |
blackburn | no, nothing yet | 15:19 |
heiko | ok so just an idea | 15:20 |
heiko | well ok | 15:20 |
blackburn | exactly | 15:20 |
heiko | say blackburn, do you know the streaming features a bit? | 15:20 |
blackburn | yeah a bit | 15:20 |
heiko | I wonder if there is the possibility to compute kernel values with them | 15:20 |
heiko | using the CStreamingFeatures interface only | 15:20 |
heiko | without knowing the type of features | 15:21 |
heiko | I just want to compute kernel values of features that I stream | 15:22 |
heiko | and then forget | 15:22 |
blackburn | it seems that no, we can't | 15:22 |
heiko | strange | 15:22 |
blackburn | well first of all it should be | 15:22 |
heiko | thats the whole point of having streaming features | 15:22 |
blackburn | dotfeatures not just features | 15:22 |
heiko | what do you mean? | 15:23 |
blackburn | do you need some custom kernel for that? | 15:23 |
blackburn | or dot-based? | 15:23 |
heiko | no a shogun kernel is fine | 15:23 |
heiko | no any type please | 15:23 |
heiko | CKernel interface | 15:23 |
blackburn | ah so any possible shogun kernel | 15:23 |
blackburn | that's a problem | 15:23 |
heiko | Gaussian kernel as a working example | 15:24 |
blackburn | why do you need that at all? | 15:24 |
blackburn | :D | 15:24 |
heiko | when feature data is too large to fit in memory | 15:24 |
heiko | I want to stream it | 15:24 |
heiko | and I only need kernel values of certain pairs | 15:24 |
heiko | and I want to stream these | 15:25 |
heiko | large - scale stuff | 15:25 |
blackburn | currently we pull vectors one by one | 15:25 |
heiko | I only need sums of kernel values | 15:25 |
blackburn | from features | 15:25 |
blackburn | is that ok for you? | 15:25 |
heiko | I would prefer some blocks but one by one is fine to start with | 15:25 |
heiko | I have two streaming features | 15:26 |
heiko | and need two samples from each | 15:26 |
heiko | and then kernel of all combinations, that are 4 values | 15:26 |
blackburn | are you sure you need streaming but not just file features? | 15:26 |
heiko | is there a difference? | 15:26 |
blackburn | yeah streaming is not really for random access | 15:27 |
heiko | why? | 15:27 |
heiko | I just need "one more" functionality | 15:27 |
blackburn | it is rather something for online learning when examples come all the time | 15:27 |
heiko | yeah thats what I need | 15:27 |
heiko | do you got another idea? | 15:28 |
blackburn | let me make it more clear - do you have unknown stream of features? | 15:28 |
blackburn | or just big data | 15:28 |
heiko | I need this: "give me four more examples from features" | 15:28 |
blackburn | there is a difference | 15:28 |
blackburn | well I am unsure streaming is what you need still | 15:28 |
heiko | whats the difference? | 15:28 |
blackburn | streaming known only one feature vector - current | 15:29 |
blackburn | and it just gives you more current vectors one by one | 15:29 |
heiko | but thats what I need, I just need 4 at once | 15:29 |
heiko | or two from each feature instance | 15:29 |
blackburn | but why do you need streaming then? | 15:30 |
heiko | I need 4 at once for many many times | 15:30 |
blackburn | ah wait | 15:31 |
blackburn | so you have two current vectors | 15:31 |
blackburn | and compute kernel values? | 15:31 |
heiko | yes | 15:31 |
heiko | then forget these | 15:31 |
heiko | and repeat | 15:31 |
blackburn | ah okay then it is the streaming thing | 15:31 |
blackburn | but I don't think you can handle that in general way | 15:31 |
blackburn | at least currently | 15:32 |
heiko | strange | 15:32 |
heiko | online kernel algorithms face exactly the same problem | 15:32 |
blackburn | we have only linear algorithms | 15:33 |
blackburn | or even algorithm | 15:33 |
heiko | ah we dont have kernel on-line stuff? | 15:33 |
heiko | though so | 15:34 |
heiko | thought | 15:34 |
heiko | what about adding something like this | 15:34 |
heiko | let me think | 15:35 |
heiko | maybe add a method to CKernel | 15:35 |
heiko | get_kernel_matrix(num_streaming_samples) | 15:35 |
heiko | which only works if underlying features are streams | 15:35 |
blackburn | kernel matrix? | 15:36 |
heiko | or even overload old one | 15:36 |
heiko | yeah in case one wants to sample multiple features at once | 15:36 |
blackburn | I do not understand that cause we are assumed to have kind of infinite examples | 15:36 |
blackburn | in case of streaming features | 15:36 |
heiko | which is a single scalar in case of one sample | 15:36 |
heiko | yeah but you want kernel matrices on small subsets in streaming | 15:36 |
heiko | extreme case is one example from each stream -1x1 kernel matrix | 15:36 |
heiko | to make it easier | 15:37 |
blackburn | I don't mind to add some | 15:37 |
heiko | overload CKernel::kernel | 15:37 |
blackburn | StreamingKernel | 15:37 |
blackburn | no idea how should that work though | 15:37 |
heiko | but then we would have to create a new subclass for each existing kernel or? | 15:37 |
blackburn | yeah that's the worst ever way | 15:37 |
heiko | or we pass an existing kernel to StreamingKernel | 15:38 |
heiko | that is then used for evaluation | 15:38 |
heiko | CStreamingKernel(CKernel* single_kernel, CStreamingFeatures* p, CStreamingFeatures* q) | 15:38 |
heiko | and if you call CStreamingKernel::kernel(index_t m) you get a mxm matrix for streamed values | 15:39 |
blackburn | oops I've got an email about my appliance to new job | 15:39 |
blackburn | :D | 15:39 |
heiko | ? | 15:39 |
blackburn | I sent my CV to some company | 15:40 |
heiko | congrats then! | 15:41 |
blackburn | let me phone them to ask when can I be interviewed | 15:42 |
heiko | okay, good luck | 15:43 |
blackburn | oops I have interview tomorrow | 15:48 |
heiko | wow | 15:52 |
blackburn | heiko: so you want to have a method that computes mxm for first streaming vectors, right? | 15:53 |
heiko | yeah | 15:53 |
heiko | I think I have a solution: | 15:53 |
heiko | CStreamingKernel as described above | 15:53 |
heiko | which you can ask for an mxn matrix on streamed samples | 15:54 |
heiko | and this is computed as follows: | 15:54 |
heiko | I add a get_features_bla method to CStreamingFeatures, which returns a non-streaming feature object with samples from the stream | 15:54 |
heiko | and these "normal" features (e.g. dense) are then put into kernel and matrix is computed | 15:55 |
heiko | do you see any problems with that? | 15:55 |
heiko | blackburn, I dont see any, should work | 15:58 |
blackburn | yes good idea I think | 15:59 |
blackburn | two features at the time | 16:00 |
heiko | or even more (may be set by a method) | 16:00 |
heiko | in case one needs blocks | 16:00 |
blackburn | blocks like? | 16:09 |
heiko | say 100 features at once | 16:12 |
blackburn | features ? or feature vectors? | 16:14 |
heiko | I am currently using both terms for the same thing | 16:23 |
-!- sonne|work [~sonnenbu@194.78.35.195] has left #shogun [] | 16:54 | |
heiko | blackburn, I made a draft and sent a PR. Let me know what you think | 17:03 |
blackburn | heiko: looks valid | 17:05 |
heiko | blackburn, from my class I can then just ask for 2x2 kernel matrices on the streaming data and work with that | 17:05 |
heiko | will leave it open for some time for sonney2k to have a look at it, maybe he has suggestions. | 17:05 |
blackburn | okay | 17:06 |
-!- blackburn [5bdfb203@gateway/web/freenode/ip.91.223.178.3] has quit [Quit: Page closed] | 17:10 | |
-!- heiko [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has quit [Quit: Leaving.] | 18:18 | |
-!- blackburn [~blackburn@37.61.181.31] has joined #shogun | 18:50 | |
wiking | blackburn: yo | 19:48 |
wiking | seems it works | 19:48 |
blackburn | wiking: your code? | 19:54 |
wiking | yep | 19:54 |
wiking | it did converge | 19:54 |
blackburn | what is it btw? | 19:54 |
blackburn | SO latent svm? | 19:54 |
wiking | based on bmrm | 19:54 |
wiking | yeah | 19:54 |
blackburn | nice | 19:55 |
-!- audy [~audy@heyaudy.com] has quit [Changing host] | 20:12 | |
-!- audy [~audy@unaffiliated/audy] has joined #shogun | 20:12 | |
-!- ptizoom [4f475132@gateway/web/freenode/ip.79.71.81.50] has quit [Ping timeout: 245 seconds] | 20:46 | |
-!- heiko [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has joined #shogun | 20:54 | |
-!- romi__ [~mizobe@187.74.0.20] has joined #shogun | 20:56 | |
-!- romi_ [~mizobe@187.74.0.20] has quit [Ping timeout: 246 seconds] | 20:56 | |
-!- CIA-47 [cia@cia.vc] has joined #shogun | 21:13 | |
-!- heiko [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has quit [Ping timeout: 274 seconds] | 21:13 | |
-!- hoijui [~hoijui@dslb-088-074-107-101.pools.arcor-ip.net] has quit [Ping timeout: 274 seconds] | 21:13 | |
-!- CIA-31 [cia@cia.vc] has quit [Ping timeout: 274 seconds] | 21:13 | |
-!- hoijui [~hoijui@dslb-088-074-107-101.pools.arcor-ip.net] has joined #shogun | 21:14 | |
-!- heiko [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has joined #shogun | 21:14 | |
-!- heiko [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has quit [Ping timeout: 241 seconds] | 22:14 | |
-!- heiko [~heiko@host86-182-162-130.range86-182.btcentralplus.com] has joined #shogun | 22:16 | |
-!- naywhayare [~ryan@spoon.lugatgt.org] has joined #shogun | 22:55 | |
-!- voket [26688042@gateway/web/freenode/ip.38.104.128.66] has joined #shogun | 23:05 | |
voket | Hey all. I am attempting to serialize a CRelaxedTree. The built-in print_serialized was hitting an infinite loop, so I am writing my own visiting function, but I am puzzled by the printed kernels -- in my two node tree, the second node has a three dimensional kernel when I expected a two dimensional one like the root. Any ideas? | 23:07 |
voket | I am using a LinearKernel and calling its save method with a CAsciiFile | 23:07 |
blackburn | voket: hey.. let me check | 23:08 |
blackburn | voket: you meant save_serializable, right? | 23:10 |
voket | not on the kernel. Should I be using save_serializable instead of save()? | 23:10 |
voket | blackburn: save_serializable looked like it had a thornier interface, but I can switch over. I'll try that and get back to you. | 23:11 |
blackburn | voket: well yes, the method you should rather use is save_serializable | 23:12 |
blackburn | voket: save(FILE* f) is something deprecated like actually | 23:13 |
voket | blackburn: Ok. I will switch over and see if I can get it to behave. Thanks for the help. | 23:14 |
blackburn | however we need to assure that RelaxedTree registers its parameters properly | 23:14 |
blackburn | voket: what do you need to store? | 23:14 |
voket | blackburn: It looks like it is using SG_ADD in its constructor, but when I print i just get a mess of growing ascii. | 23:14 |
blackburn | are you features big? | 23:15 |
blackburn | we have one problem I didn't manage to find time to solve | 23:15 |
voket | blackburn: I want the trained learner from each level, so: For each node, Left classes, right classes, support vectors, alphas, bias | 23:16 |
-!- shogun-buildbot [~shogun-bu@7nn.de] has joined #shogun | 23:16 | |
blackburn | the problem is that all submachines (tree nodes) should have a copy of features | 23:16 |
blackburn | it can become huge.. | 23:16 |
voket | Submachines get a local copy of the features? Why can't they just have a view? | 23:17 |
-!- shogun-buildbot_ [~shogun-bu@7nn.de] has quit [Ping timeout: 240 seconds] | 23:17 | |
blackburn | voket: no technical problem - just a thing to be improved | 23:18 |
voket | At the moment I am testing with a small toy dataset, but it's good to know that I may run into scaling issues. | 23:18 |
blackburn | it is on our todo list | 23:19 |
blackburn | so I hope we will fix that somehow - I don't mind to patch multiclass machines somehow for now | 23:19 |
voket | Ohhhh. The reason the print_serializable is infinitely looping is that children have their parent as one of their serialized parameters. | 23:21 |
blackburn | oops | 23:21 |
voket | I'll fix it and pull request | 23:21 |
blackburn | thanks, we'd appreciate any improvements | 23:21 |
voket | I am happy to help - one of my pull requests was merged in this weekend (aasted on github) | 23:22 |
blackburn | ahh so now I recognize you better :) | 23:22 |
blackburn | I am lisitsyn at github | 23:23 |
voket | Nice to meet you. I am looking at the serialization code -- is there a reason that print is not just a save using stdout? | 23:27 |
voket | Also, is there a quick way to break this recursion loop? I could just unregister the parent parameter, but it would be better if the parameter printer just detected cycles. | 23:32 |
blackburn | re | 23:32 |
blackburn | let me check what print does | 23:32 |
blackburn | voket: yes we need to handle cycles there | 23:32 |
blackburn | but it is a nightmare :) | 23:32 |
-!- shogun-t1olbox [~shogun@7nn.de] has quit [Ping timeout: 240 seconds] | 23:32 | |
--- Log closed Mon Sep 24 23:32:59 2012 | ||
--- Log opened Mon Sep 24 23:33:06 2012 | ||
-!- shogun-toolbox [~shogun@7nn.de] has joined #shogun | 23:33 | |
-!- Irssi: #shogun: Total of 13 nicks [1 ops, 0 halfops, 0 voices, 12 normal] | 23:33 | |
-!- Irssi: Join to #shogun was synced in 6 secs | 23:33 | |
voket | Yes, huge nightmare. So long as print/save are not generating objects it could be just be a hash map by memory location stored in the CSerializableFile. But that's kind of ugly. | 23:35 |
voket | Is there any way I can mark a parameter to be excluded from serialization? Also it looks like the person who wrote the tree class knew about this since they wrote their own debug_print function. | 23:36 |
blackburn | well with brute force it could be excluded for sure | 23:38 |
blackburn | voket: the author of this code is chiyuan zhang, our gsoc 2012 student | 23:40 |
blackburn | you may attempt to talk to him using mailing list actually - not sure if he has time now - he joined phd at MIT | 23:41 |
voket | Ok. For now I will write a workaround in my local code and then see if I can write a better workaround in general to push upstream. | 23:43 |
blackburn | yeah that's what I wanted to suggest for now | 23:44 |
voket | I'll only bug Chiyuan Zhang if I need to -- the first month of a PhD is a bad time to get a hold of someone. | 23:44 |
blackburn | heh yeah | 23:45 |
blackburn | are you applying these complicated tree methods? | 23:45 |
voket | I had planned on it. Is that a mistake? | 23:46 |
blackburn | no,no, I just wanted to know if it works in practice well | 23:47 |
blackburn | I never tried | 23:47 |
--- Log closed Mon Sep 24 23:53:30 2012 | ||
--- Log opened Mon Sep 24 23:53:40 2012 | ||
-!- shogun-t1olbox [~shogun@7nn.de] has joined #shogun | 23:53 | |
-!- Irssi: #shogun: Total of 14 nicks [1 ops, 0 halfops, 0 voices, 13 normal] | 23:53 | |
!hitchcock.freenode.net [freenode-info] why register and identify? your IRC nick is how people know you. http://freenode.net/faq.shtml#nicksetup | 23:53 | |
-!- Irssi: Join to #shogun was synced in 8 secs | 23:53 | |
blackburn | voket: why do you stick to trees btw? | 23:53 |
-!- shogun-toolbox [~shogun@7nn.de] has quit [Ping timeout: 252 seconds] | 23:54 | |
blackburn | okay, I'm leaving now | 23:59 |
blackburn | see you | 23:59 |
voket | ok. thanks for your help | 23:59 |
--- Log closed Tue Sep 25 00:00:17 2012 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!