--- Log opened Tue May 08 00:00:37 2012 | ||
wiking | https://github.com/shogun-toolbox/shogun/pull/508 | 00:02 |
---|---|---|
wiking | now it's good... no leak with xval | 00:02 |
CIA-113 | shogun: Viktor Gal master * rc132e97 / src/shogun/machine/MulticlassMachine.cpp : | 00:02 |
CIA-113 | shogun: Fix mem-leak in MulticlassMachine | 00:02 |
CIA-113 | shogun: apply() had an extra SG_REF on the returned CLables - http://git.io/-iQ12g | 00:02 |
CIA-113 | shogun: Soeren Sonnenburg master * r9d6bd98 / (35 files in 15 dirs): introduce ref counted SGMatrix - http://git.io/ivMJSQ | 00:03 |
wiking | mmm classifier_multiclasslinearmachine.cpp is not leaking anymore | 00:03 |
@sonney2k | the madness continues | 00:08 |
PhilTillet | madness ? This is spartaaaaaa | 00:11 |
PhilTillet | Oh hi everybody :P | 00:11 |
blackburn | :D | 00:12 |
PhilTillet | I have found a magic paper for SVM on CUDA, which provides also GPL code ! | 00:13 |
@sonney2k | PhilTillet, hehe | 00:16 |
@sonney2k | did you try it yet? | 00:17 |
PhilTillet | as soon as my robot competition is over i'll probably start from that, port that code to OpenCL and integrate it into Shogun (and also integrate the CUDA version) | 00:17 |
wiking | sonney2k: http://pastebin.com/qaGqMmyX | 00:17 |
PhilTillet | sonney2k, not yet, my laptop has some problems :p | 00:17 |
PhilTillet | http://nagoya.uchicago.edu/~cotter/projects/gtsvm/ | 00:17 |
PhilTillet | but the benchmarks are encouraging :p | 00:17 |
PhilTillet | and it's only one year old, so very recent | 00:18 |
@sonney2k | hmmh tiny data sets though | 00:18 |
@sonney2k | wiking, yeah fixes welcome ... it will take another few days to fix them I guess | 00:19 |
PhilTillet | well, true, but bigger size should not cause any issue | 00:19 |
@sonney2k | but probably not as long as SGVector | 00:19 |
wiking | "Google breached Oracle's Java copyright, US jury finds" | 00:19 |
wiking | yeeeeeey | 00:19 |
wiking | API is copyrightable.:DDDDD | 00:19 |
@sonney2k | sparse* / stringlist shold be no problem | 00:19 |
@sonney2k | OMFG | 00:19 |
wiking | welcome to hell :> | 00:20 |
PhilTillet | omg | 00:20 |
PhilTillet | :o | 00:20 |
@sonney2k | ok bed time | 00:25 |
wiking | "Oracle's lawyers compared the creation of APIs to writing a piece of music, going further to say that API's are not just "ideas," but creative, copyrightable works that require significant expertise and time to develop" | 00:25 |
wiking | wooohooooo | 00:25 |
wiking | we are writing here music apparently | 00:25 |
wiking | \o/ | 00:26 |
PhilTillet | X-D | 00:26 |
PhilTillet | gn sonney2k | 00:26 |
wiking | holycow these lawyers are idiots | 00:26 |
blackburn | I really hate oracle | 00:26 |
wiking | it'll be really funny now | 00:27 |
blackburn | everything is so cumbersome | 00:27 |
blackburn | and a lot of lawyers | 00:27 |
wiking | seeing all kinds of cases when they start to sue each other by using the same api | 00:27 |
blackburn | phew | 00:27 |
wiking | :))) | 00:27 |
wiking | so i just wonder | 00:27 |
blackburn | wiking: what is API they are so proud of? | 00:27 |
wiking | if i can copyright | 00:27 |
wiking | print (string a) | 00:28 |
wiking | :> | 00:28 |
blackburn | yeah that's crazy expertise-requiring pattern | 00:28 |
wiking | because as soon as i can can acquire the copyright for thaaaat!!! | 00:28 |
wiking | i'm gonna sue each and every motherfucker trying to print :D | 00:28 |
blackburn | wiking: I believe it took a few years to come up with this api | 00:28 |
wiking | blackburn: :>>> | 00:29 |
wiking | i wonder if this would be the same | 00:29 |
wiking | print (string a) | 00:29 |
wiking | print (char* a) | 00:29 |
wiking | :P | 00:29 |
-!- karlnapf [~heiko@host86-182-166-18.range86-182.btcentralplus.com] has quit [Quit: Leaving.] | 00:29 | |
blackburn | no char* goes for me | 00:29 |
blackburn | I need money too :D | 00:29 |
blackburn | totally different API | 00:29 |
wiking | ahahhahaa | 00:29 |
wiking | ok | 00:30 |
wiking | deal | 00:30 |
blackburn | wiking: you can take all the print API market | 00:30 |
blackburn | can't* | 00:30 |
blackburn | small companies need they own print API | 00:30 |
PhilTillet | I take the operator= market | 00:30 |
wiking | i think after a while technological companies will have to move out of the USA | 00:30 |
PhilTillet | :D | 00:30 |
wiking | i mean like this there's not much thing u can actually use | 00:31 |
wiking | without license | 00:31 |
wiking | :) | 00:31 |
blackburn | hmm my brain is low-power | 00:33 |
wiking | need store_model_features nooow :D | 00:37 |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Quit: wiking] | 00:50 | |
cronor | can somebody help me with combined kernels for MKL? If i append one kernel it works fine, if i add the same kernel again, it doesn't work anymore. | 00:52 |
cronor | this is my code: http://paste2.org/p/2013130 | 00:55 |
cronor | minimal working code | 00:55 |
-!- av3ngr [av3ngr@nat/redhat/x-ggqpgdgimwhbvflr] has joined #shogun | 00:57 | |
-!- blackburn [~qdrgsm@83.234.54.222] has left #shogun [] | 01:13 | |
-!- cronor [~cronor@g225030209.adsl.alicedsl.de] has quit [Read error: Connection reset by peer] | 02:11 | |
-!- vikram360 [~vikram360@117.192.164.157] has joined #shogun | 02:47 | |
-!- PhilTillet [~philippe@vir78-1-82-232-38-145.fbx.proxad.net] has quit [Remote host closed the connection] | 02:49 | |
-!- vikram360 [~vikram360@117.192.164.157] has quit [Ping timeout: 245 seconds] | 04:07 | |
-!- puffin444 [62e3926e@gateway/web/freenode/ip.98.227.146.110] has joined #shogun | 05:31 | |
puffin444 | Hey | 05:32 |
-!- wiking [~wiking@78-23-189-112.access.telenet.be] has joined #shogun | 06:18 | |
-!- wiking [~wiking@78-23-189-112.access.telenet.be] has quit [Changing host] | 06:18 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 06:18 | |
puffin444 | Hi wiking | 06:33 |
-!- gsomix [~gsomix@178.45.68.193] has joined #shogun | 06:55 | |
-!- gsomix [~gsomix@178.45.68.193] has quit [Client Quit] | 06:57 | |
-!- gsomix [~gsomix@178.45.68.193] has joined #shogun | 06:57 | |
gsomix | hi | 07:02 |
-!- vikram360 [~vikram360@117.192.164.157] has joined #shogun | 07:07 | |
-!- sonney2k_ [~shogun@7nn.de] has joined #shogun | 07:12 | |
-!- abn_ [av3ngr@nat/redhat/session] has joined #shogun | 07:14 | |
-!- Netsplit *.net <-> *.split quits: @sonney2k, naywhayare, av3ngr, puffin444 | 07:21 | |
-!- Netsplit over, joins: naywhayare | 07:22 | |
-!- abn_ [av3ngr@nat/redhat/session] has quit [Changing host] | 07:22 | |
-!- abn_ [av3ngr@nat/redhat/x-sjdrwpxzkatjgopq] has joined #shogun | 07:22 | |
-!- puffin444 [62e3926e@gateway/web/freenode/ip.98.227.146.110] has joined #shogun | 07:24 | |
puffin444 | hey | 07:24 |
-!- puffin444 [62e3926e@gateway/web/freenode/ip.98.227.146.110] has quit [Ping timeout: 245 seconds] | 07:28 | |
sonne|work | wiking: the rationale is: when you return a newly created SGObject but don't need it internally you should *NOT* SG_REF it! | 08:42 |
* sonne|work sigh | 08:42 | |
sonne|work | the biggest consumer of SGMatrix is SimpleFeatures | 08:42 |
sonne|work | and that one doesn't internally use it yet | 08:43 |
sonne|work | so it needs a BIG effort to convert it to use these things | 08:43 |
-!- cronor [~cronor@g225030209.adsl.alicedsl.de] has joined #shogun | 08:57 | |
wiking | sonne|work: ok | 09:23 |
sonne|work | wiking: btw shouldn't we rename CSimpleFeatures to CDenseFeatures | 09:24 |
sonne|work | ? | 09:24 |
wiking | yep | 09:25 |
sonne|work | we are breaking too much anyways so we can aswell fix legacy naming bugs | 09:25 |
wiking | that would be more appropriate | 09:25 |
-!- n4nd0 [~nando@190.Red-2-137-59.dynamicIP.rima-tde.net] has joined #shogun | 09:32 | |
wiking | sonne|work: ideas for the store model features in case of kernelMC? | 09:39 |
sonne|work | wiking: same way as in KernelMachine | 09:39 |
wiking | well yeah that's the problem | 09:39 |
wiking | svs | 09:39 |
sonne|work | but you should try to avoid storing them more than once | 09:40 |
wiking | currently we don't store svs within the clas | 09:41 |
wiking | s | 09:41 |
sonne|work | wiking: but we should... | 09:42 |
sonne|work | more work but I guess pluskid can help here too | 09:42 |
wiking | ok | 09:43 |
wiking | i'll see about it then | 09:43 |
sonne|work | it will need some discussion how to do it most efficiently | 09:44 |
sonne|work | as in no / little code duplication | 09:44 |
wiking | and as i can see we can suppose that any kernelMC machine will have SVs | 09:44 |
wiking | just like in binary case | 09:45 |
sonne|work | and no memory overhead | 09:45 |
sonne|work | yeah but there are different schemes | 09:45 |
sonne|work | one vs one | 09:45 |
sonne|work | one vs rest | 09:45 |
sonne|work | etc | 09:45 |
wiking | yep | 09:45 |
sonne|work | and general ECOC | 09:45 |
wiking | maybe then | 09:46 |
sonne|work | so we need a way to store only the required SVs - but *once* | 09:46 |
wiking | implementing the data_lock mechanism would be faster? :) | 09:46 |
sonne|work | don't see how it is related | 09:46 |
wiking | well i want to have xval for kernelMC | 09:47 |
wiking | that's it | 09:47 |
wiking | it's either via implementing data_lock et al or doing the store_model_features | 09:47 |
sonne|work | hehe it is clear that we need both | 09:48 |
wiking | heheh in a long run yeah | 09:51 |
wiking | but i just want to have xval support for MC kernel machines kind of like now | 09:51 |
-!- cronor [~cronor@g225030209.adsl.alicedsl.de] has quit [Quit: cronor] | 10:02 | |
sonne|work | wiking: I guess you have only few examples so precomputing is no problem | 10:22 |
-!- n4nd0 [~nando@190.Red-2-137-59.dynamicIP.rima-tde.net] has quit [Ping timeout: 272 seconds] | 10:28 | |
wiking | sonne|work: you mean by splitting the dataset by hand? :) | 10:35 |
sonne|work | how big is it? | 10:35 |
wiking | 200k examples | 10:36 |
wiking | with 20+ labels | 10:36 |
sonne|work | then data lock won't help you | 10:37 |
sonne|work | IIRC that will precompute the kernel matrix | 10:37 |
sonne|work | -> boom boom | 10:37 |
sonne|work | but I would rather use a linear method for that... | 10:38 |
-!- abn_ [av3ngr@nat/redhat/x-sjdrwpxzkatjgopq] has quit [Quit: That's all folks!] | 10:42 | |
wiking | btw i was thinking to extend CrossValidationResult for MC case | 10:43 |
wiking | so that we'll be able to print as well not just the mean accuracy | 10:43 |
wiking | but lets say mean accuracy per class | 10:43 |
wiking | any objetions | 10:43 |
wiking | ? | 10:43 |
wiking | and actually have the possibility for per class precision, recall, F1 for mc as well... that could be done today imho | 10:45 |
sonne|work | wiking: feel free... maybe add some flag or so to dis/enable to. not sure exactly whether this should not be sth in evaluation | 10:46 |
sonne|work | I mean like we have contingencytable evaluation | 10:46 |
wiking | sonne|work: ok | 10:46 |
sonne|work | with f1/accuracty/.. for binary classification | 10:46 |
sonne|work | you could do the same for mc | 10:46 |
wiking | yep | 10:46 |
wiking | that's what i thought | 10:46 |
wiking | follow the same idea | 10:46 |
wiking | for MC | 10:46 |
sonne|work | yeah | 10:47 |
wiking | ok i'm off for 2 hours for a meeting | 10:47 |
wiking | and i'll be doing these after that | 10:47 |
wiking | and help u out as well in the leaking of matrix | 10:47 |
wiking | and i guess i should rather write an email about store_models_feature on the mailing list | 10:47 |
wiking | since pluskid is not around | 10:48 |
wiking | i guess he is still sick or something | 10:48 |
sonne|work | yeah - lets hope he recovers soon | 10:51 |
wiking | ok email sent to the mailing list | 10:53 |
wiking | lets see the reactions | 10:53 |
wiking | ok i'm off. bbl | 10:53 |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Quit: wiking] | 11:04 | |
-!- naywhayare [~ryan@spoon.lugatgt.org] has quit [Ping timeout: 240 seconds] | 11:09 | |
-!- naywhayare [~ryan@spoon.lugatgt.org] has joined #shogun | 11:09 | |
-!- cronor [~cronor@141.23.80.206] has joined #shogun | 11:25 | |
cronor | Would somebody check my code (20 lines) for CombinedKernel? If I use one Kernel in MKL everything works fine, if I add the same kernel again, the results become really bad. I guess I use CombinedKernels wrong but can't find help in the examples or documentation. Code: http://pastebin.com/Y4UhAWsu | 11:38 |
-!- blackburn [~qdrgsm@83.234.54.222] has joined #shogun | 11:38 | |
blackburn | f | 11:39 |
blackburn | r | 11:39 |
blackburn | e | 11:39 |
blackburn | e | 11:39 |
blackburn | d | 11:39 |
blackburn | o | 11:39 |
blackburn | m | 11:39 |
cronor | you're done with your exam? | 11:40 |
cronor | congrats | 11:40 |
blackburn | yeah | 11:43 |
blackburn | cronor: you had some mkl trouble, right? | 11:44 |
cronor | yes, i just posted before you came in | 11:47 |
cronor | Would somebody check my code (20 lines) for CombinedKernel? If I use one Kernel in MKL everything works fine, if I add the same kernel again, the results become really bad. I guess I use CombinedKernels wrong but can't find help in the examples or documentation. Code: http://pastebin.com/Y4UhAWsu | 11:47 |
blackburn | sonne|work: densefeatures | 11:54 |
cronor | blackburn: do I have to use CombinedFeatures, too? | 11:54 |
blackburn | cronor: ok looks ok.. | 11:56 |
blackburn | I am not sure while you use custom kernels | 11:57 |
cronor | hm | 11:57 |
blackburn | cronor: but why do you attach *same* kernels? | 11:58 |
cronor | blackburn: just for testing. if it works with one kernel and i attach the same kernel again, the results should be exactly the same. but they are not | 11:58 |
cronor | so i know there is something wrong with the code and not with features | 11:59 |
blackburn | cronor: it seems to be a little confusing for me | 12:02 |
blackburn | what should be weights then? | 12:02 |
cronor | the weights should be 0.7 and 0.7 for 2-norm. this works, shogun gets this | 12:03 |
blackburn | cronor: so weight are correct? | 12:05 |
cronor | blackburn: yes weight's are correct. but i don't think this is relevant. the results for using 2 kernels should not be worse than for using 1 kernel | 12:06 |
blackburn | but apply is wrong? | 12:07 |
blackburn | cronor: what do you compare, accuracy? | 12:08 |
cronor | blackburn: relative absolute error | 12:08 |
cronor | the error with one kernel is 0.12, with two kernels 0.8, there must be something wrong | 12:09 |
blackburn | ah regression | 12:12 |
blackburn | mse? | 12:12 |
cronor | no i take abs(truth-pred)/max(abs(truth), abs(pred)) | 12:13 |
cronor | but mse has the same problem | 12:14 |
blackburn | cronor: what if you manually set weights to 1.0, 0.0? | 12:17 |
cronor | how do you set manually? | 12:17 |
cronor | i can't find a function for that | 12:20 |
blackburn | cronor: set_subkernel_weights in kernel | 12:23 |
cronor | blackburn: ah were do i set that? after mkl.train()? | 12:24 |
blackburn | cronor: yeah you can try it before apply just to check whether with two kernels but one zero-weighted you have the same result | 12:24 |
cronor | blackburn: ok, i'm a little confused as to how the test kernel would get to know about the weights for example. maybe there is more wrong, can you check the added lines? http://pastebin.com/MvcseVwC | 12:26 |
blackburn | cronor: btw are your kernels proper normalized? | 12:28 |
cronor | i use the same kernel twice, so i don't need to worry about that here, right? in general i do generalize | 12:29 |
cronor | s/generalize/normalize | 12:29 |
cronor | blackburn: i have to leave for lunch, but i'll be back in 30 min. then i'll try the manuel setting of sub kernel weights | 12:30 |
-!- cronor [~cronor@141.23.80.206] has quit [Quit: cronor] | 12:30 | |
blackburn | cronor: yes it should disable second kernel, does it make sense? | 12:30 |
blackburn | ok | 12:31 |
-!- blackburn [~qdrgsm@83.234.54.222] has quit [Ping timeout: 244 seconds] | 12:35 | |
-!- blackburn [~qdrgsm@83.234.54.222] has joined #shogun | 12:36 | |
-!- blackburn [~qdrgsm@83.234.54.222] has quit [Ping timeout: 244 seconds] | 12:50 | |
-!- gsomix [~gsomix@178.45.68.193] has quit [Quit: Ex-Chat] | 12:50 | |
-!- gsomix [~gsomix@178.45.68.193] has joined #shogun | 12:50 | |
-!- blackburn [~qdrgsm@83.234.54.222] has joined #shogun | 12:52 | |
-!- blackburn [~qdrgsm@83.234.54.222] has quit [Ping timeout: 244 seconds] | 12:59 | |
-!- blackburn [~qdrgsm@83.234.54.222] has joined #shogun | 13:01 | |
-!- blackburn [~qdrgsm@83.234.54.222] has quit [Ping timeout: 244 seconds] | 13:10 | |
-!- blackburn [~qdrgsm@83.234.54.222] has joined #shogun | 13:10 | |
sonne|work | blackburn: you like the name DenseFeatures too? | 13:27 |
blackburn | sonne|work: sure | 13:27 |
blackburn | it is dense why simple? | 13:27 |
sonne|work | because it was dense :D | 13:28 |
blackburn | it is dense but called simple humm | 13:28 |
blackburn | sonne|work: I was pretty near to fail exam ;d | 13:29 |
blackburn | :D | 13:29 |
blackburn | well not fail but bad grade | 13:29 |
gsomix | blackburn, 3? | 13:30 |
blackburn | no, got 4 | 13:30 |
gsomix | huh | 13:30 |
gsomix | botan | 13:30 |
blackburn | I don't care at all - but no 3 grades allowed :D | 13:31 |
-!- cronor [~cronor@fb.ml.tu-berlin.de] has joined #shogun | 13:32 | |
cronor | blackburn: when i set the kernel weight in K_tr, does it affect the kernel weight in K_te? | 13:33 |
blackburn | how do they relate? | 13:34 |
cronor | I do mkl.set_kernel(K_tr), mkl.train(), mkl.set_kernel(K_te), mkl.apply().get_labels(). I can imagine that the kernel weights that where learned for combined kernel K_tr do not affect the kernel weights for K_te | 13:35 |
blackburn | yeah makes no sense to train one kernel and set another one later | 13:36 |
cronor | so how could i do this? use test and train kernel in MKL? | 13:36 |
sonne|work | cronor: well you can check this - just get the kernel weight and compare if it is differnt | 13:38 |
cronor | sonne|work: yes, i'll try | 13:38 |
-!- vikram360 [~vikram360@117.192.164.157] has quit [Ping timeout: 260 seconds] | 13:39 | |
-!- vikram360 [~vikram360@117.192.177.96] has joined #shogun | 13:39 | |
-!- wiking [~wiking@78-23-189-112.access.telenet.be] has joined #shogun | 13:41 | |
-!- wiking [~wiking@78-23-189-112.access.telenet.be] has quit [Changing host] | 13:41 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 13:41 | |
wiking | yooo back! | 13:42 |
-!- vikram360 [~vikram360@117.192.177.96] has quit [Ping timeout: 260 seconds] | 13:49 | |
-!- vikram360 [~vikram360@117.192.165.215] has joined #shogun | 13:50 | |
-!- pluskid [~pluskid@111.120.31.4] has joined #shogun | 13:50 | |
wiking | pluskid: hey how are you? any better? | 13:52 |
pluskid | wiking: hmm, better, maybe :) | 13:52 |
pluskid | wiking: reading the email | 13:52 |
wiking | pluskid: yeah we need you :) | 13:53 |
pluskid | why do we need to store the features in store_model_features? | 13:53 |
wiking | so take your time, get better first! | 13:53 |
wiking | pluskid: xval | 13:53 |
wiking | w/o that function we cannot do cross validation now | 13:53 |
wiking | on MC kernel machines | 13:54 |
pluskid | I mean, why not store index into the big kernel matrix? | 13:54 |
pluskid | we have the kernel for all data, don't we? | 13:54 |
wiking | honestly this is not really my 'genre', so i guess you should rather talk about this with heiko or sonne|work | 13:54 |
sonne|work | pluskid: let me explain | 13:54 |
-!- vikram360 [~vikram360@117.192.165.215] has quit [Ping timeout: 260 seconds] | 13:55 | |
wiking | i just want xval support :) | 13:55 |
sonne|work | for kernel machines we have the vectors and their coefficients | 13:55 |
sonne|work | so that is what in the end makes up the machine | 13:55 |
sonne|work | so if you did a training you in the end need both for a functioning machine | 13:55 |
pluskid | yeah | 13:55 |
sonne|work | we started with having just the indices into training data | 13:56 |
pluskid | so why can't we do this in cross validation? | 13:56 |
sonne|work | but that is no good in most common cases | 13:56 |
sonne|work | for multiclass the picture is different | 13:56 |
sonne|work | it is much more efficient to just store the relevant support vectors once and indices into them | 13:57 |
pluskid | I see | 13:58 |
sonne|work | or keep the training set and the index if there are too many | 13:58 |
pluskid | I mean, if we forget about cross-validation for a moment | 13:58 |
sonne|work | however currently we have several SVMs | 13:58 |
sonne|work | which are the result of a multiclass training | 13:59 |
pluskid | for multiclass kernel machine | 13:59 |
sonne|work | and all of them store the features | 13:59 |
sonne|work | and that is not efficient | 13:59 |
pluskid | sonne|work: so we need to make it efficient | 13:59 |
pluskid | isn't it? | 13:59 |
sonne|work | so we need a general scheme to only store the indices and the training data as union of all SVs (or as a whole) | 13:59 |
sonne|work | pluskid: well it is not implemented because of this | 14:00 |
pluskid | so this is not (only) relevant to cross validation, am I correct? | 14:00 |
sonne|work | and this should work with general ecoc schemes then ... | 14:00 |
sonne|work | yes | 14:00 |
pluskid | OK, I see | 14:00 |
sonne|work | in x-val it is more important though because you modify training data all the time | 14:00 |
sonne|work | (by setting different subsets) | 14:00 |
pluskid | we are using a single copy of features, and subset to index into them in MC training | 14:02 |
sonne|work | yes | 14:02 |
pluskid | can we do this for support vectors? | 14:02 |
sonne|work | ? | 14:02 |
pluskid | I mean only store the SV as subset into the training data, instead of making a copy | 14:03 |
sonne|work | pluskid: no because when the subset is changed the indices become invalid | 14:05 |
sonne|work | we would need support for multiple subsets (aka views) for data | 14:05 |
pluskid | I guess I saw something like subset_stack somewhere? | 14:06 |
pluskid | sonne|work: why subset changes? do you re-train the model? | 14:07 |
sonne|work | pluskid: yeah but that is just one subset consisting of a couple of stacked subsets | 14:07 |
pluskid | sonne|work: oh, I see, we need two subset, one for features, one for SVs, right? | 14:09 |
pluskid | currently they can't exist at the same time | 14:09 |
sonne|work | one for cross validation subset | 14:10 |
pluskid | hmm | 14:10 |
sonne|work | on top of it we have just some int32_t* into the subset | 14:10 |
pluskid | we need something like feature_views ? | 14:10 |
pluskid | brb | 14:11 |
sonne|work | pluskid: or we just store all SVs in the trained mc machine as copy | 14:12 |
sonne|work | and all good | 14:12 |
blackburn | sonne|work: as is? | 14:12 |
blackburn | or indices? | 14:12 |
sonne|work | as is | 14:12 |
blackburn | sonne|work: 100000 svs? | 14:12 |
sonne|work | plus indices for each ecoc scheme | 14:12 |
sonne|work | sure | 14:12 |
sonne|work | blackburn: that is the way we do it for binary now | 14:13 |
sonne|work | if data gets bigger no one will use x-val anyways | 14:13 |
blackburn | hmm right | 14:13 |
blackburn | but still can be more efficient | 14:13 |
sonne|work | yeah but in the end the trained model is: all SVs, + their coefficient | 14:14 |
sonne|work | s | 14:14 |
blackburn | sonne|work: do we need to unref matrix members? | 14:15 |
sonne|work | ? | 14:15 |
blackburn | sonne|work: in case we have m_matrix in class | 14:15 |
blackburn | do we need to unref it on destruction of class? | 14:15 |
sonne|work | no | 14:15 |
blackburn | ok | 14:15 |
sonne|work | same for sgvector | 14:15 |
blackburn | magic | 14:16 |
blackburn | sonne|work: so dense features are b0rken right now? | 14:16 |
blackburn | everything fails.. | 14:16 |
sonne|work | blackburn: we need to convert simple features to use SGMatrix internally | 14:17 |
sonne|work | otherwise everything fails | 14:17 |
blackburn | I can try | 14:17 |
blackburn | if you didnot start yet | 14:17 |
blackburn | however I got almost no sleep tonight - can be powered off anytime :D | 14:18 |
sonne|work | I know what you mean... | 14:18 |
pluskid | I'll look at some of current code first, not quite familiar with our current way | 14:19 |
blackburn | I invented sleep study method :D read lecture notes - sleep - read lecture notes - sleep | 14:20 |
sonne|work | blackburn: or do some simple thing first please and remove SG_VUNREF and replace it with vec.unref() | 14:23 |
blackburn | sonne|work: ok | 14:24 |
sonne|work | I think this only appears in simple features and at some point we don't really need it :) | 14:24 |
blackburn | sonne|work: I should try to help as much as I can next days because it really breaks workflow | 14:25 |
-!- emrecelikten [~Anubis@92.44.117.75] has joined #shogun | 14:25 | |
sonne|work | blackburn: yeah we also need SGSparseMatrix conversion, Stringlist etc | 14:25 |
blackburn | hmm vunref appears once | 14:26 |
sonne|work | SparseVector | 14:26 |
sonne|work | SGStrunk | 14:26 |
blackburn | sonne|work: strunkwhat? | 14:26 |
sonne|work | SGString | 14:26 |
sonne|work | hah | 14:26 |
blackburn | is it german word for that? | 14:26 |
sonne|work | typo | 14:26 |
blackburn | sonne|work: SGStroka ;) | 14:26 |
sonne|work | SGStroika :) | 14:26 |
emrecelikten | hi all | 14:27 |
blackburn | sonne|work: ah btw | 14:28 |
blackburn | in kernels I believe we need to change compute | 14:28 |
blackburn | I think to reduce code it would be nice to redefine method that works in vectors context already | 14:28 |
pluskid | sonne|work> pluskid: or we just store all SVs in the trained mc machine as copy | 14:28 |
pluskid | ^^^^^^ this is our current impl, right? | 14:28 |
pluskid | for both binary and mc | 14:29 |
blackburn | pluskid: yes for binary | 14:29 |
sonne|work | pluskid: no we don't have anything for mc | 14:29 |
blackburn | for mc notimplemented you know | 14:29 |
blackburn | for linear mc you don't need to store any model in means of vectors | 14:29 |
-!- karlnapf [~heiko@host86-181-155-203.range86-181.btcentralplus.com] has joined #shogun | 14:29 | |
pluskid | hmm | 14:29 |
pluskid | for kernel mc, store for each binary machine | 14:30 |
blackburn | uuhhhh | 14:30 |
sonne|work | no better store all required SVs once | 14:30 |
sonne|work | and in the binary submachines just the indices | 14:30 |
blackburn | makes sense | 14:31 |
blackburn | but pretty complex thing | 14:31 |
pluskid | might have to store an extra copy of Features | 14:31 |
sonne|work | yes | 14:32 |
blackburn | one would need to collect all indexes of SVs | 14:32 |
sonne|work | requires an extra copy | 14:32 |
blackburn | copy these vectors from lhs features | 14:32 |
blackburn | and setup indices in each machine | 14:32 |
gsomix | karlnapf, hey. | 14:32 |
karlnapf | hey gsomix | 14:32 |
sonne|work | you could use gsomix' CSet to obtain the features | 14:33 |
sonne|work | the indices | 14:33 |
sonne|work | and then just create the copy | 14:33 |
blackburn | no cset anymore? :D | 14:33 |
sonne|work | ? | 14:33 |
blackburn | it is map :D | 14:33 |
sonne|work | nah it will come back | 14:33 |
pluskid | maybe need to make a whole copy, because we don't know which features are needed at first | 14:34 |
blackburn | to obtain features std's set is ok ;) | 14:34 |
gsomix | sonne|work, it will come back | ok. | 14:34 |
blackburn | sonne|work: to make you feel more comfortable | 14:34 |
-!- vikram360 [~vikram360@117.192.181.73] has joined #shogun | 14:34 | |
blackburn | I'll #define CSet std::set | 14:34 |
blackburn | ;) | 14:35 |
sonne|work | pluskid: ? | 14:35 |
sonne|work | pluskid: you know after training which vectors are needed | 14:35 |
gsomix | karlnapf, what about trace? it works? | 14:35 |
sonne|work | you have the indices | 14:35 |
karlnapf | gsomix, trace? | 14:35 |
sonne|work | trace-mallocs | 14:35 |
pluskid | sonne|work: need to do union for all cross-valid trains | 14:35 |
karlnapf | ah | 14:35 |
sonne|work | pluskid: no | 14:35 |
sonne|work | per machine | 14:35 |
pluskid | per mc-machine? | 14:36 |
sonne|work | karlnapf: right? x-val stores model features per trained machine? | 14:36 |
sonne|work | yes | 14:36 |
karlnapf | gsomix, havent checked yesterday, will try now | 14:36 |
sonne|work | karlnapf: beware of SGMatrix transition | 14:37 |
karlnapf | sonne|work, yes model features per trained machine | 14:37 |
sonne|work | pluskid: see ^ | 14:37 |
karlnapf | sonne|work, oh this will get messy :) There arent all memory leaks yet fixed, the SGVector transition kind of fucked up the migration parameter stuff, Ill have to get into it again :( | 14:37 |
sonne|work | karlnapf: would it be possible to drop the trained machine? | 14:37 |
karlnapf | gsomix, yes trace -mallocs works | 14:38 |
karlnapf | at least there are less errors | 14:38 |
karlnapf | but still lots of | 14:38 |
pluskid | ok | 14:38 |
blackburn | karlnapf: can you please formulate algorithm requiring store model features? | 14:38 |
blackburn | step by step :D | 14:38 |
blackburn | to clarify that | 14:38 |
karlnapf | yes sure, give me a second | 14:39 |
sonne|work | karlnapf: I mean then you could determine optimal parameters | 14:39 |
sonne|work | but don't have the machine afterwards | 14:39 |
sonne|work | but you could get it by training again | 14:39 |
karlnapf | ehm, you lost me ;) | 14:39 |
-!- vikram360 [~vikram360@117.192.181.73] has quit [Ping timeout: 240 seconds] | 14:39 | |
sonne|work | woudl be useful if you don't have enough memory to store machines for 1000 parameter settings | 14:39 |
karlnapf | gsomix, seems like trace-mallocs gives the same number of errors as without it :) nice | 14:40 |
gsomix | karlnapf, which tests? | 14:41 |
karlnapf | libshogun | 14:41 |
karlnapf | sonne|work, blackburn could you summarize the problem once more for me? | 14:41 |
sonne|work | karlnapf: there is no problem | 14:42 |
sonne|work | at least from my side | 14:42 |
sonne|work | we just need store model features for mc | 14:42 |
karlnapf | and store_model_features basically has to make sure that the data that represents the model is stored internally, so kernel machine stores all features corresponding to SV in the LHS of the kernel | 14:42 |
karlnapf | ah ok | 14:42 |
sonne|work | and to do that efficiently we need to store all SVs once | 14:42 |
sonne|work | and indices for each sub machine | 14:42 |
karlnapf | what about the way I suggested in the mail this morning? | 14:42 |
sonne|work | I am just asking if one could avoid storing the machine at all | 14:43 |
karlnapf | yes fo course, but then x-val vanishes | 14:43 |
sonne|work | karlnapf: isn't your mail the same I suggested | 14:43 |
sonne|work | except that it doesn't use subsets? | 14:43 |
sonne|work | karlnapf: why? | 14:43 |
sonne|work | x-val could compute output score and good | 14:44 |
karlnapf | yes, might be | 14:44 |
sonne|work | so you know the best parameter setting | 14:44 |
karlnapf | x-val needs to use a trained model to apply | 14:44 |
karlnapf | which is done by subsetted features | 14:44 |
karlnapf | when you then switch to another subset and apply this doesnt work | 14:45 |
karlnapf | unless you store the data | 14:45 |
sonne|work | karlnapf: ahh you mean because of train/test data split? | 14:45 |
karlnapf | yes | 14:45 |
sonne|work | ok | 14:45 |
sonne|work | but do you drop the machine afterwards? | 14:45 |
karlnapf | you can only apply on training data if store_model_features is not implemented | 14:46 |
sonne|work | I mean SG_UNREF ? | 14:46 |
karlnapf | after training? | 14:46 |
sonne|work | training -> evalution -> SGUNREF ? | 14:46 |
karlnapf | mmh, not sure, let me check | 14:46 |
blackburn | simple -> dense | 14:46 |
sonne|work | blackburn: ? | 14:47 |
blackburn | sonne|work: doing ;) | 14:47 |
sonne|work | blackburn: did you remove the VUNREF first? | 14:47 |
sonne|work | (and commit?) | 14:47 |
blackburn | sonne|work: yes I removed the only VUNREF | 14:47 |
sonne|work | and the macro too I hope | 14:47 |
karlnapf | sonne|work, the machine is stored in the X-Val class | 14:47 |
blackburn | yes | 14:47 |
karlnapf | so not, its not dropped | 14:47 |
karlnapf | only if you drop x-val class by hand | 14:48 |
sonne|work | karlnapf: so what I am saying is that we need an option | 14:48 |
sonne|work | to automagically drop it | 14:48 |
sonne|work | things might get to big otherwise | 14:48 |
karlnapf | I dont get this | 14:48 |
sonne|work | karlnapf: think of training on 10k examples with several classes 1000 times :) | 14:48 |
blackburn | oops I was editing shogun on different machine :D | 14:49 |
sonne|work | (1000 parameter combinations) | 14:49 |
sonne|work | so we don't want to store the 3000 SVs 1000 times | 14:49 |
karlnapf | but only the current SV set is stored | 14:49 |
sonne|work | ? | 14:50 |
sonne|work | karlnapf: so only a single machine is kept? | 14:50 |
karlnapf | I am not sure if I get the problem though | 14:50 |
sonne|work | not one for each parameter setting | 14:50 |
karlnapf | ah wait | 14:50 |
karlnapf | so you mean you have multiclass with 1000 machines | 14:50 |
karlnapf | and each stores the SVs | 14:50 |
karlnapf | and we dont want that | 14:50 |
sonne|work | lets talk binary class for simplicity | 14:51 |
* pluskid starts to understand what to be done after scanning some code of cmachine and crossvalidation | 14:51 | |
sonne|work | yes we cannot store them all because they don't fit in memory | 14:51 |
pluskid | sonne|work: I think only "current" and "best" machines are stored along model selection | 14:52 |
karlnapf | but if we cannot store the SVs in memory, we were not able to store data in memory before right? | 14:52 |
sonne|work | karlnapf: is it true what pluskid says - because that is what I am asking | 14:52 |
CIA-113 | shogun: Sergey Lisitsyn master * r3abc1ea / (2 files in 2 dirs): Removed vunref - http://git.io/sTevmQ | 14:52 |
sonne|work | if yes then all good | 14:53 |
karlnapf | are we talking about model-selection or cross-validation? | 14:53 |
blackburn | I am completely fucking lost with it | 14:53 |
sonne|work | model selection | 14:53 |
karlnapf | ah ok, sorry then | 14:53 |
sonne|work | with grid search | 14:53 |
karlnapf | there is only one machine | 14:53 |
karlnapf | parameters are applied to machine | 14:54 |
sonne|work | ok then all good | 14:54 |
karlnapf | evaluation | 14:54 |
karlnapf | results are stored | 14:54 |
sonne|work | \o/ | 14:54 |
karlnapf | next parameter combination | 14:54 |
karlnapf | see CGridSearchModelSelection::select_model | 14:54 |
karlnapf | btw store_model_features is related to x-val | 14:55 |
karlnapf | not to model selection | 14:55 |
sonne|work | pluskid: ok but then I would say we collect all indices, store the needed vectors as copy in memory and in submachines the adjusted indices | 14:55 |
sonne|work | and then all good | 14:55 |
karlnapf | sonne|work, gsomix, yes, I think thats the best way :) | 14:56 |
pluskid | sonne|work: ok, I'll do this now | 14:56 |
wiking | mmm | 14:58 |
wiking | we have an agreement? :) | 14:58 |
pluskid | wiking: as heiko's solution in the mailing list | 14:59 |
sonne|work | looks like :) | 14:59 |
wiking | yeeeey | 14:59 |
wiking | pluskid: r u implementing it now? | 14:59 |
sonne|work | pluskid: but w/o subsets right? | 14:59 |
pluskid | wiking: yes | 14:59 |
blackburn | the most painful thing to come in a hour! | 14:59 |
blackburn | :D | 14:59 |
sonne|work | I mean we have individual kernel machines anyways | 14:59 |
wiking | pluskid: awesome!!! | 14:59 |
pluskid | sonne|work: no subset, an extra copy of features | 14:59 |
sonne|work | so we can use their set_support_vecvtor stuff | 15:00 |
blackburn | prepare to change all your C++ shogun scripts :D | 15:00 |
sonne|work | pluskid: err but only in MulticlassKErnelMachien | 15:00 |
wiking | :>> | 15:00 |
pluskid | sonne|work: yes, he will then adjust index for sub-machines | 15:00 |
sonne|work | yes | 15:00 |
sonne|work | blackburn: DenseFeatures are coming? | 15:00 |
blackburn | sonne|work: can I remove align_char_feautreS? | 15:01 |
blackburn | yes | 15:01 |
wiking | pluskid: i've already prepared a libshogun example for MC kernel machine xval | 15:01 |
sonne|work | blackburn: is this uses anywaher | 15:01 |
wiking | so i'm waiting for your commit :) | 15:01 |
sonne|work | wiking: is the latent svm ready? | 15:01 |
sonne|work | :P | 15:01 |
blackburn | sonne|work: no it is uflly ommcented | 15:01 |
wiking | sonne|work: oh yeah ! | 15:01 |
wiking | sonne|work: it works :> | 15:02 |
wiking | sonne|work: but only for this one and only example :))) | 15:02 |
wiking | and i need to reflect on your email about PSI | 15:02 |
sonne|work | like the xval for mc here | 15:02 |
wiking | since i have a request there to do | 15:02 |
pluskid | wiking: haha, cool! | 15:03 |
blackburn | sonne|work: so ok to remove? | 15:04 |
blackburn | simple preprocessor goes to dense too | 15:04 |
sonne|work | yes | 15:05 |
blackburn | blood | 15:07 |
wiking | sonne|work: now it's time for some extra evaluation statistics for MC | 15:08 |
sonne|work | splattered all over | 15:08 |
blackburn | 'simple' word holocaust | 15:10 |
-!- emrecelikten is now known as emre-away | 15:10 | |
blackburn | gsomix: when will you be ready for some bloody task? | 15:11 |
sonne|work | blackburn: I think you should stick with stalin | 15:14 |
blackburn | yeah he is bloody enough to support me here | 15:15 |
sonne|work | the battle of stalingrad... | 15:17 |
sonne|work | no but actually that would be when I start to like std:: crap | 15:17 |
blackburn | sonne|work: today could be a great day to defeat and start to like std ;) | 15:23 |
wiking | :>> | 15:27 |
wiking | mmm shit i cannot set a topic ;P | 15:27 |
wiking | sonne|work: can u just append to the topic: | some of us hates std namespace here so don't even try ;) | 15:28 |
blackburn | any sed expert here? | 15:31 |
wiking | blackburn: what do u need? | 15:31 |
blackburn | qdrgsm@qdrgsm-laptop:~/Shogun/shogun/src$ find shogun/converter | sed 's/<shogun/features/SimpleFeatures.h>/<shogun/features/DenseFeatures.h>/g' | 15:31 |
blackburn | sed: -e expression #1, char 20: unknown option to `s' | 15:31 |
blackburn | wiking: ^ what is wrong? | 15:32 |
wiking | i would say | 15:32 |
wiking | u need to escape < and > | 15:32 |
wiking | and / | 15:32 |
wiking | r | sed 's/\<shogun\/features\/SimpleFeatures.h\>/\<shogun\/features\/DenseFeatures.h\>/g' | 15:32 |
blackburn | thanks | 15:33 |
blackburn | wiking: hmm how to replace in each file? | 15:34 |
wiking | well first of all use -i | 15:34 |
sonne|work | blackburn: find ./ -type f -exec sed -i ... {} \; | 15:35 |
wiking | so that u do inplace replacement | 15:35 |
blackburn | o! | 15:35 |
wiking | and yeah that should be fine what sonne|work says | 15:35 |
blackburn | what does he say? | 15:35 |
wiking | that do exec with find | 15:35 |
blackburn | oh | 15:35 |
blackburn | :D | 15:35 |
blackburn | I did not mention it was sonne|work | 15:36 |
blackburn | errr | 15:36 |
blackburn | noticed | 15:36 |
blackburn | ok my brain is damaged | 15:36 |
blackburn | :D | 15:36 |
wiking | but u could do first a grep | 15:36 |
blackburn | yeah I did | 15:36 |
wiking | so that run the sed command only on the necessary files ;) | 15:36 |
blackburn | sonne|work: thanks | 15:36 |
wiking | but that makes it a little more complicated so just go with applying that on every file | 15:37 |
wiking | blackburn: but why don't u simply do sed -i -e 's/SimpleFeatures/DenseFeatures/g' ? | 15:38 |
blackburn | yes I did it | 15:38 |
blackburn | wanted to start with includes for some reason :D | 15:38 |
wiking | well this way u do the replacement everywhere not only with includes... ;P | 15:39 |
blackburn | yes | 15:39 |
cronor | what SVR does MKLRegression use, LibSVR or SVRlight? | 15:42 |
blackburn | SVRLigth | 15:42 |
blackburn | ht | 15:42 |
cronor | blackburn: thaks | 15:42 |
pluskid | wiking: https://github.com/shogun-toolbox/shogun/pull/509 | 15:54 |
pluskid | I hate SG_UNREF as much as sonne|work hate stl | 15:54 |
wiking | hahahahah | 15:54 |
pluskid | compiled but not tested | 15:55 |
wiking | pluskid: checking | 15:56 |
wiking | ahhahahah | 15:56 |
wiking | pluskid: went with std::set | 15:56 |
wiking | :D | 15:56 |
pluskid | didn't find CSet | 15:56 |
wiking | heheh it has become CMap ;P | 15:57 |
wiking | pluskid: commented | 16:01 |
pluskid | wiking: got it | 16:02 |
wiking | and added about includes as well | 16:04 |
wiking | i don't see u using std::vector anywhere | 16:04 |
wiking | but yeah i see u using map | 16:04 |
pluskid | wiking: was using vector, but later find copy_subset requires a SGVector, so replaced | 16:05 |
pluskid | I'll fix the include | 16:05 |
wiking | okey | 16:06 |
wiking | no worries i'm just saying | 16:06 |
wiking | sonne|work: i think this goes against the policy about SG_REF that u were mentioning in the morning: inline CFeatures* get_rhs() { SG_REF(rhs); return rhs; } | 16:07 |
wiking | or not... | 16:07 |
wiking | :D | 16:07 |
wiking | sorry | 16:07 |
wiking | sonne|work: btw: what has been the outcome of the conversation with vojtech about libqp? | 16:08 |
wiking | pluskid: anyhow i'll download the patch and test it here locally | 16:09 |
pluskid | wiking: tell me sth about SG_REF policy, I'm always confusing at this. Each time I have to open the source of the function I'm calling to see whether it did SG_REF or not, to determine whether I have to do SG_UNREF or not | 16:09 |
wiking | how can i download this commit as a raw file? | 16:10 |
pluskid | wiking: maybe you can create a local branch and merge this | 16:10 |
pluskid | this might be easier | 16:10 |
pluskid | git remote add ...; git pull ... | 16:11 |
wiking | pluskid: can u do this for me | 16:11 |
wiking | git format-patch -3 | 16:11 |
pluskid | ok | 16:11 |
wiking | and send the three 000* files to me | 16:11 |
wiking | wiking@maeth.com | 16:11 |
pluskid | send you an email? | 16:11 |
wiking | thnx a lot | 16:11 |
wiking | yeps | 16:11 |
wiking | got it i'll do the tests now | 16:15 |
blackburn | anybody aware of tool for resolving includes? | 16:17 |
wiking | ? | 16:17 |
blackburn | unnecessary ones for example | 16:17 |
wiking | blackburn: http://stackoverflow.com/questions/614794/c-c-detecting-superfluous-includes | 16:18 |
wiking | :D | 16:18 |
pluskid | blackburn: my friend wrote a script for vim: https://github.com/quark-zju/vim-cpp-auto-include , though I didn't tested it | 16:18 |
wiking | pluskid: hehehe i've got a segfault | 16:18 |
-!- karlnapf [~heiko@host86-181-155-203.range86-181.btcentralplus.com] has left #shogun [] | 16:19 | |
pluskid | wiking: can you send me your test code for me to debug? | 16:19 |
wiking | yep just doing it | 16:19 |
wiking | pluskid: this is from gdb: http://pastebin.com/FwqqzUBX | 16:19 |
wiking | and i'm just sending u now the code | 16:19 |
wiking | pluskid: sent | 16:20 |
pluskid | wiking: thanks | 16:20 |
pluskid | seems sub-machine don't have a kernel? ... | 16:21 |
wiking | yeah that's what it is saying | 16:21 |
-!- vikram360 [~vikram360@117.192.176.103] has joined #shogun | 16:38 | |
gsomix | blackburn, a? | 16:41 |
blackburn | gsomix: bloody task? | 16:41 |
pluskid | wiking: when I call kernel->init(lhs, rhs), lhs and rhs are SG_REF-ed, so I don't have to SG_REF them manually right? | 16:41 |
blackburn | pluskid: right | 16:41 |
wiking | pluskid: imho yes you shouldn't | 16:42 |
gsomix | blackburn, not now, but you may talk about it. | 16:42 |
sonne|work | pluskid: yes | 16:42 |
blackburn | when? | 16:42 |
pluskid | wiking: I think I fixed this | 16:42 |
wiking | ok | 16:42 |
wiking | send me the patch | 16:42 |
wiking | :D | 16:42 |
sonne|work | pluskid: only ever call SG_REF when you later want to use the object | 16:42 |
pluskid | though it is still crashing, but everything is crashing now ... | 16:42 |
pluskid | crashing somewhere else | 16:43 |
sonne|work | blackburn: done with DenseMatrix? | 16:43 |
sonne|work | blackburn: please commit... | 16:43 |
blackburn | sonne|work: almost.. | 16:43 |
pluskid | sonne|work: I see | 16:43 |
sonne|work | pluskid: we are in SGMatrix transition... in case you use latest git everything crashes | 16:43 |
pluskid | sonne|work: yes, I'm using latest git | 16:44 |
pluskid | so survived SGVector hell and enters SGMatrix hell? Haha | 16:44 |
sonne|work | pluskid: then don't use simplefeatures ... | 16:44 |
wiking | pluskid: oh i see ok i'll just apply these changes manually :) | 16:44 |
sonne|work | pluskid: and then the remaining SGString/StringList/SparseVector/SparseMatrix | 16:44 |
pluskid | wiking: I can send you patch, a minute | 16:45 |
wiking | that's alright i see it in the pull request :) | 16:45 |
pluskid | wiking: ah, OK | 16:45 |
pluskid | sonne|work: and then SGObject :D :D :D | 16:46 |
pluskid | wiking: if I do SG_REF(sv_features) manually, a crash can be avoided, but yet another crash will occur | 16:47 |
pluskid | so I guess it is related to SGMatrix | 16:48 |
blackburn | sonne|work: almost done | 16:52 |
blackburn | it seems to be compileable at least | 16:52 |
blackburn | gsomix: pluskid: sonne|work: wiking: recall we planned doc weeks? | 16:54 |
pluskid | blackburn: yeah | 16:55 |
blackburn | I wish to create a list of responsible classes to doc | 16:55 |
blackburn | for each of you | 16:55 |
sonney2k_ | blackburn, done? | 17:02 |
sonney2k_ | blackburn, I need to do massive changes to simplefeatures... | 17:03 |
blackburn | sonney2k_: some issue, 5 mins more | 17:03 |
sonney2k_ | bahh | 17:03 |
sonney2k_ | don't have 5 min | 17:03 |
blackburn | sonney2k_: you always can merge it | 17:03 |
blackburn | internals can be easy mergred | 17:04 |
sonney2k_ | no way | 17:04 |
sonney2k_ | you can always merge it | 17:04 |
blackburn | :D | 17:04 |
blackburn | okay I can | 17:04 |
pluskid | sonney2k_ still on the train? :p | 17:06 |
sonney2k_ | pluskid, yes | 17:06 |
pluskid | train is slow today | 17:06 |
pluskid | time to sleep here | 17:06 |
pluskid | good night guys | 17:06 |
blackburn | nite | 17:06 |
-!- pluskid [~pluskid@111.120.31.4] has quit [Quit: Leaving] | 17:06 | |
blackburn | sonney2k_: how much time you would need? should I wait with this commit for now? | 17:07 |
blackburn | it is not ready though | 17:07 |
wiking | maaatrix is crashing!!! | 17:07 |
blackburn | a lot of includes | 17:07 |
sonney2k_ | blackburn, yeah commit now | 17:07 |
wiking | dejavu everywhere :D | 17:07 |
sonney2k_ | it is broken everywhere anyways... | 17:08 |
CIA-113 | shogun: Soeren Sonnenburg master * r9e4616e / src/shogun/machine/MulticlassMachine.cpp : minor whitespace changes - http://git.io/BTgA_w | 17:08 |
CIA-113 | shogun: Soeren Sonnenburg master * rcf5e351 / src/shogun/multiclass/ConjugateIndex.cpp : fix crasher in conjugate index - http://git.io/5v-B3Q | 17:08 |
CIA-113 | shogun: Soeren Sonnenburg master * r7bb62a6 / (3 files): don't call destroy_matrix() - SGMatrix cleans up itself - http://git.io/k-wFWg | 17:08 |
blackburn | sonney2k_: do you have anything more to commit? | 17:23 |
CIA-113 | shogun: Sergey Lisitsyn master * rb4ef345 / (234 files in 17 dirs): Simple to Dense renaming - http://git.io/nPnQsg | 17:28 |
blackburn | oops | 17:29 |
CIA-113 | shogun: Sergey Lisitsyn master * r81a30d8 / examples/undocumented/libshogun/regression_gaussian_process.cpp : Restored gp example - http://git.io/VoaNwg | 17:31 |
wiking | sonne|work: where can i define DEBUG_SGVECTOR ? | 17:38 |
wiking | or how do u turn it own...? | 17:38 |
wiking | on | 17:38 |
blackburn | wiking: config.h | 17:39 |
blackburn | lib/config.h | 17:39 |
wiking | thnx | 17:41 |
wiking | letseewhatcouldbe | 17:41 |
wiking | sonne|work: so what's the idea with the referenced object, should i call SG_UNREF on it or we assume that it automagical? | 18:00 |
wiking | since now i have a double free on an SGMatrix... | 18:00 |
blackburn | wiking: what do you mean? | 18:00 |
wiking | so the thing is that i have malloc: *** error for object 0x10207c800: pointer being freed was not allocated | 18:01 |
wiking | so for sure i have a double free | 18:01 |
wiking | and it's with an SGMatrix | 18:01 |
blackburn | wiking: do you use simplefeatures? | 18:01 |
wiking | yes | 18:01 |
blackburn | it will fail | 18:01 |
blackburn | unconditional | 18:01 |
blackburn | :D | 18:01 |
blackburn | let me try to fix it | 18:02 |
wiking | so the thing here is | 18:02 |
blackburn | wiking: dense features should use sgmatrix internally | 18:02 |
blackburn | so after get feature matrix is called | 18:02 |
wiking | so if i comment out | 18:02 |
wiking | the SG_UNREF for the simple features | 18:03 |
wiking | then the whole thing runs ok | 18:03 |
wiking | so this is why i think that the unreferencing/deleting is done automagically via the destructor | 18:03 |
wiking | so i don't need to explicitly call sg_unref on the features | 18:04 |
blackburn | wiking: no it is related to matrix | 18:04 |
wiking | so i'm creating the simplefeautres like this: CSimpleFeatures< float64_t >* features = new CSimpleFeatures< float64_t >(mat.matrix, num_feats, num_vectors); | 18:05 |
wiking | and the mat is an SGMatrix that has been allocated in the same function call before | 18:05 |
wiking | so that's why i think i should not call an SG_UNREF (features) | 18:05 |
blackburn | wiking: you should after this issue is fixed | 18:06 |
wiking | i should??/ | 18:06 |
wiking | lol | 18:06 |
wiking | ok | 18:06 |
wiking | let me grab the last commits | 18:06 |
blackburn | wiking: no it is not fixed yet | 18:07 |
wiking | ok anyhow i want to see what's happening | 18:07 |
blackburn | wiking: the problem is that after gotten feature matrix | 18:07 |
blackburn | is destroyed | 18:07 |
blackburn | it destroys matrix in features | 18:07 |
blackburn | and features destroy it once again | 18:07 |
blackburn | shiiiit 1K LoC | 18:10 |
wiking | ? | 18:11 |
* wiking porting the code to densefeatures | 18:11 | |
blackburn | wiking: I wanted to fix that issue in densefeatures.. | 18:15 |
wiking | blackburn: CStreamingSimpleFeatures -> CStreamingDenseFeatures | 18:15 |
wiking | ? | 18:15 |
blackburn | yes | 18:15 |
wiking | ok works | 18:16 |
wiking | now i have to see what's the problem with | 18:16 |
wiking | pluskid's patches | 18:16 |
-!- puffin444 [62e3926e@gateway/web/freenode/ip.98.227.146.110] has joined #shogun | 18:46 | |
puffin444 | Hi! | 18:46 |
sonney2k_ | wiking, blackburn touch Simple^H^H^HDenseFeatures and die! | 18:47 |
sonney2k_ | I am working on them | 18:47 |
puffin444 | How's everyone doing? | 18:48 |
cronor | How can i find out which indexes are support vectors? | 18:49 |
sonney2k_ | cronor, get_support_vectors() | 18:50 |
sonney2k_ | puffin444, peace, rock&roll and love - we have it all | 18:51 |
puffin444 | That sounds great! I'm sorry I haven't been in IRC for the last two weeks. I had an awful end of the semester. But now I can say that I am liberated from my scholastic duties for the time being. :) | 18:53 |
sonney2k_ | puffin444, very good - we are in the middle of a couple of transitions but hopefully we are back to normal in 1-2 weeks | 18:56 |
puffin444 | By the way I was invited to a GSoC meeting at Google Chicago | 18:57 |
puffin444 | Students are giving talks about their project. Would you mind if I gave one about my Project in Shogun? | 19:00 |
-!- vikram360 [~vikram360@117.192.176.103] has quit [Ping timeout: 255 seconds] | 19:02 | |
blackburn | puffin444: I would even help you with presentation | 19:04 |
blackburn | if you want | 19:05 |
blackburn | :) | 19:05 |
sonney2k_ | puffin444, and I still have slides about a shogun talk I gave... | 19:05 |
sonney2k_ | but I guess you want to present your project... | 19:05 |
puffin444 | It's not until May 23rd, so I have a good amount of time to prepare. | 19:07 |
cronor | So, if i append only one Kernel to a CombinedKernel and do MKLRegression i get worse results and totally different alphas than using this kernel in SVRLight. Is it save to assume that there is either an error in my code or in shogun? | 19:11 |
sonney2k_ | cronor, and if you use svmlight + combined kernel? | 19:28 |
cronor | sonney2k_: same result | 19:29 |
sonney2k_ | cronor, like? | 19:29 |
cronor | worse results and totally different alphas | 19:30 |
sonney2k_ | cronor, different parameters/ | 19:30 |
sonney2k_ | ? | 19:30 |
cronor | sonney2k_: no, same C, same epsilon | 19:31 |
wiking | sonney2k_: hehehe ok | 19:31 |
cronor | i tried cross validating C again, but it did not improve | 19:31 |
sonney2k_ | blackburn, in LinearLocalTangentSpaceAlignment you call get_feature_matrix | 19:31 |
blackburn | sonney2k_: yes? | 19:31 |
-!- emre-away [~Anubis@92.44.117.75] has quit [Ping timeout: 248 seconds] | 19:32 | |
sonney2k_ | do you keep it constant | 19:32 |
sonney2k_ | or modify it? | 19:32 |
blackburn | sonney2k_: yes center it | 19:32 |
sonney2k_ | blackburn, or shall I commit and you fix things | 19:32 |
sonney2k_ | wait no | 19:32 |
sonney2k_ | you center matrix.matrix | 19:32 |
sonney2k_ | not feature_matrix | 19:32 |
blackburn | sonney2k_: daxpies after are mean subtraction | 19:32 |
blackburn | mean feature vector | 19:33 |
sonney2k_ | blackburn, so you need a copy | 19:33 |
blackburn | yes or find a way to do it implicitly | 19:33 |
blackburn | I can fix it | 19:33 |
sonney2k_ | ok let me commit then | 19:33 |
blackburn | ok | 19:33 |
blackburn | anyway it is all useless shit | 19:34 |
blackburn | :D | 19:34 |
CIA-113 | shogun: Soeren Sonnenburg master * r56661f3 / (2 files): WIP: use SGMatrix inside of SimpleFeatures - http://git.io/rB2kKg | 19:34 |
sonney2k_ | I know | 19:34 |
sonney2k_ | blackburn, can you please fix it *now* | 19:34 |
blackburn | yes | 19:34 |
blackburn | sonney2k_: you want to remove get_feature_matrix(&)? | 19:35 |
cronor | sonney2k_: this are the two functions i use, they should output the same results (in theory) http://pastebin.com/Kydx5WUW | 19:35 |
shogun-buildbot | build #877 of libshogun is complete: Failure [failed compile] Build details are at http://www.shogun-toolbox.org/buildbot/builders/libshogun/builds/877 blamelist: sonne@debian.org | 19:37 |
sonney2k_ | blackburn, I already did | 19:40 |
blackburn | sonney2k_: please do not fix gui I am working on it | 19:41 |
blackburn | sonney2k_: how matrix should be destroyed? | 19:42 |
sonney2k_ | blackburn, not at all | 19:43 |
sonney2k_ | or amtrix.unref() | 19:43 |
sonney2k_ | matrix | 19:43 |
blackburn | sonney2k_: SG_FREE(feature_matrix) in topfeatures | 19:43 |
blackburn | unref? | 19:43 |
sonney2k_ | blackburn, please commit again | 19:44 |
blackburn | ok | 19:44 |
CIA-113 | shogun: Sergey Lisitsyn master * r02efa8e / (4 files in 3 dirs): A bunch of fastfixes - http://git.io/0h0-Cw | 19:46 |
blackburn | sonney2k_: kind of pair programming lol | 19:46 |
sonney2k_ | blackburn, free_feature_matrix() | 19:46 |
sonney2k_ | would be the call | 19:46 |
blackburn | oops | 19:46 |
sonney2k_ | oops? | 19:46 |
blackburn | sonney2k_: commited | 19:47 |
blackburn | https://github.com/shogun-toolbox/shogun/commit/02efa8e23b594a2ce78fe0a1fa4b0e7d2a7b5c3d | 19:47 |
blackburn | could you please check? | 19:47 |
sonney2k_ | hmmhh a better name for the commit would have been better | 19:47 |
blackburn | sonney2k_: do you care about commit msgs right now? :D | 19:48 |
sonney2k_ | blackburn, yes | 19:48 |
sonney2k_ | blackburn, please check that in GUI | 19:48 |
blackburn | check what? | 19:48 |
sonney2k_ | fmatrix is not SG_FREEd | 19:48 |
sonney2k_ | because SGMatrix(fmatrix,...) will do that | 19:48 |
sonney2k_ | (double free...) | 19:48 |
blackburn | how should it look like? | 19:48 |
sonney2k_ | blackburn, please add a clone() method to SGMatrix() | 19:49 |
sonney2k_ | SG_FRee(fmatrix) | 19:50 |
CIA-113 | shogun: Sergey Lisitsyn master * r248d9a8 / src/shogun/ui/SGInterface.cpp : Proper matrix handling in SGInterface - now clones matrices and frees given ones - http://git.io/Cs7-uQ | 19:52 |
blackburn | sonney2k_: happy with msg? :D | 19:52 |
blackburn | in the next one I'll write a poem for you ;) | 19:57 |
sonney2k_ | http://www.reuters.com/article/2012/05/08/uk-germany-airport-berlin-idUSLNE84701620120508 | 19:58 |
sonney2k_ | yay | 19:58 |
sonney2k_ | I am so happy | 19:58 |
sonney2k_ | one more summer where I can sit outside | 19:58 |
wiking | :))) | 19:58 |
blackburn | are you near to that airport? | 19:59 |
wiking | blackburn: are we there yet? :) | 19:59 |
sonney2k_ | blackburn, I am not exactly near that airport but near to berlin's biggest lake | 20:01 |
blackburn | does it produce echo of that kind of sounds? | 20:01 |
sonney2k_ | and they decided just last year that over hundred planes will go over the lake and the place where I am living | 20:01 |
sonney2k_ | night and day | 20:01 |
blackburn | :D | 20:01 |
blackburn | I listen to ambulance cars night and day | 20:02 |
sonney2k_ | and actually for the last 10 years no one ever mentioned that - all plans were showing other routes | 20:02 |
wiking | blackburn sonney2k_ classifier/NearestCentroid.cpp:107:45: error: too many arguments to function call, expected 1, have 3 | 20:03 |
blackburn | wiking: cool | 20:03 |
blackburn | :D | 20:03 |
wiking | :> | 20:03 |
wiking | i'mjustsayin' sorry | 20:03 |
sonney2k_ | http://g.co/maps/9muj9 | 20:03 |
sonney2k_ | that's the lake | 20:04 |
sonney2k_ | very nice there | 20:04 |
blackburn | what is muggel? | 20:04 |
wiking | sonney2k_: you live quite outside of berlin :) | 20:04 |
sonney2k_ | mueggelsee :) | 20:04 |
sonney2k_ | the name | 20:04 |
sonney2k_ | no idea | 20:05 |
wiking | sonney2k_: how much is the commuting time? | 20:05 |
sonney2k_ | wiking, still berlin :) | 20:05 |
sonney2k_ | 20 minutes | 20:05 |
wiking | sonney2k_: yeah i know berlin is huge | 20:05 |
wiking | u take the 'metro' :) | 20:05 |
sonney2k_ | wiking, was living next to the tv-tower for many years | 20:05 |
sonney2k_ | so enough | 20:05 |
sonney2k_ | wiking, no s-bahn | 20:05 |
wiking | sonney2k_: Heye s-bahn that is :) | 20:05 |
wiking | *yeye | 20:05 |
* sonney2k_ checks the water temperature of the lake | 20:06 | |
wiking | i liked the east part only of berlin | 20:06 |
-!- PhilTillet [~Philippe@157.159.42.46] has joined #shogun | 20:06 | |
wiking | had some funny nights while i was there :D | 20:06 |
sonney2k_ | 15 C | 20:06 |
sonney2k_ | very soon I know how to spend my evenings :D | 20:06 |
wiking | can u sail on it? | 20:06 |
sonney2k_ | yes | 20:06 |
sonney2k_ | but I usually swim across it | 20:07 |
wiking | then it must be the ideal place | 20:07 |
wiking | u live in berlin | 20:07 |
wiking | and have a lake | 20:07 |
blackburn | sonney2k_: 2 km?? | 20:07 |
wiking | where u can swim/sail | 20:07 |
wiking | sonney2k_: is it as cheap as berlin :DDD | 20:07 |
wiking | ? | 20:07 |
sonney2k_ | blackburn, in total - yes about that | 20:07 |
sonney2k_ | prizes did increase... | 20:07 |
wiking | the rents must be higher than in the downtown | 20:08 |
blackburn | that would be crazy difficult to swim 2km for me :D | 20:08 |
wiking | i mean the last time i was in berlin (2010) the rent was ridicolous | 20:08 |
sonney2k_ | blackburn, you know I am doing all kinds of long distance swimming | 20:08 |
sonney2k_ | so not for me | 20:08 |
sonney2k_ | I think I am developing into a whale | 20:08 |
wiking | i mean compared to other cities in EU or in germany... | 20:09 |
blackburn | I heard something about it once :) | 20:09 |
sonney2k_ | slow once on land | 20:09 |
blackburn | wiking: what is life costs in belgium then? ;) | 20:10 |
wiking | a lot | 20:10 |
wiking | it's really insane here | 20:10 |
blackburn | wiking: is phd well paid? | 20:10 |
wiking | the shittiest studio in a smaller town (not brussels) is around 500 euros/month | 20:10 |
wiking | + utilities | 20:10 |
wiking | blackburn: not really... | 20:11 |
blackburn | wiking: small one room flat in moscow costs ~1000$ per month :D | 20:11 |
wiking | but i wonder where it is well paid :) | 20:11 |
wiking | blackburn: hahahah yeah that's moscow... | 20:12 |
wiking | it's fucking insane there | 20:12 |
blackburn | here it is 300-400$ | 20:12 |
wiking | i've heard that it's getting more expensive than tokyo | 20:12 |
blackburn | wiking: I am happy to live here almost for free :D 40$ per month | 20:13 |
puffin444 | That much in Moscow? | 20:13 |
blackburn | puffin444: yes, avg salary is about 2-2.5K$ | 20:14 |
blackburn | and rent can take 50% of it :D | 20:15 |
puffin444 | How does that economics of that work if rent is .5 of salary? | 20:15 |
wiking | blackburn: ahahahaha 40$ :) | 20:15 |
blackburn | puffin444: no idea I never lived there and do not want to :D | 20:16 |
wiking | blackburn: but for example back in serbia i know people renting a 300 sqrmeter house for 80 euros | 20:16 |
puffin444 | It seems that enough people want to though to drive up the rent. | 20:16 |
blackburn | wiking: yeah it just depends on local insanity | 20:17 |
sonney2k_ | rent in berlin used to be cheap - I used to live in a 85sqm flat for 450 EUR | 20:18 |
blackburn | I have 12 sqm room here :D :D | 20:18 |
sonney2k_ | but last year prizes went up quite a bit | 20:18 |
sonney2k_ | they basically doubled | 20:18 |
wiking | sonney2k_: heheh that's insane. i knew people paying the double price for the same size in wien | 20:18 |
wiking | and that was about 6 years ago | 20:19 |
wiking | and wien is a shittier place than berlin in my opinion | 20:19 |
sonney2k_ | I guess someone should continue sgmatrix bugfixing | 20:19 |
puffin444 | Are people just coming in droves to live in these cities? I wonder whats driving up the rent. | 20:19 |
-!- cronor [~cronor@fb.ml.tu-berlin.de] has left #shogun [] | 20:19 | |
wiking | sonney2k_: can I TOUCH IT THEN?! | 20:19 |
wiking | i thought i shouldn't | 20:19 |
wiking | "sonney2k_: wiking, blackburn touch Simple^H^H^HDenseFeatures and die!" | 20:20 |
wiking | :D | 20:20 |
sonney2k_ | something wicked is going on with my connection to github again | 20:21 |
blackburn | nein ich moechte nicht to die | 20:22 |
blackburn | wiking: iz dat speling correkt? | 20:22 |
wiking | yes | 20:22 |
wiking | gestorben | 20:23 |
blackburn | gestorben? | 20:23 |
blackburn | sonney2k_: gestorben! | 20:23 |
blackburn | :D | 20:23 |
wiking | but i think that is died | 20:23 |
wiking | for sure past tense | 20:23 |
wiking | sterben is the present tense | 20:24 |
blackburn | sonney2k_: sterben! | 20:24 |
wiking | hahahah | 20:24 |
wiking | but that means to die | 20:24 |
wiking | but actually if u use moechte | 20:24 |
wiking | then it should be alright | 20:24 |
wiking | since it should be in infinitive mode | 20:24 |
wiking | or wtf | 20:24 |
wiking | :) | 20:24 |
blackburn | I will let soeren know of new words I get to know | 20:24 |
wiking | hahahhaha | 20:24 |
blackburn | sonney2k_: moechte! | 20:25 |
wiking | blackburn: http://www.salon.com/2012/05/08/chomsky_jobs_arent_coming_back/singleton/ | 20:25 |
wiking | read some chomsky noam | 20:25 |
sonney2k_ | blackburn, did you do sGMatrix.clone()? | 20:25 |
wiking | it'll be good for you :D | 20:25 |
sonney2k_ | or shall I | 20:25 |
sonney2k_ | ? | 20:25 |
blackburn | sonney2k_: where? | 20:25 |
wiking | blackburn: but remember this name when u will learn about formal languages ;) | 20:25 |
sonney2k_ | blackburn, that says it all | 20:26 |
sonney2k_ | let me do it | 20:26 |
wiking | S->SaSb and such | 20:26 |
blackburn | sonney2k_: I did it in sginterface already | 20:26 |
CIA-113 | shogun: Soeren Sonnenburg master * r70b2c60 / src/shogun/lib/SGMatrix.h : add clone() method to SGMatrix - http://git.io/754vgg | 20:29 |
blackburn | sonney2k_: ah we had no clone :D | 20:29 |
blackburn | I didn't know tha | 20:29 |
wiking | hahah lol: Jesus has been in Tesco again http://pic.twitter.com/ZKgSZt5d | 20:32 |
blackburn | lol | 20:32 |
sonney2k_ | return SGMatrix<float64_t>(res,num_vectors,cur_dim_feature_space); | 20:35 |
sonney2k_ | blackburn, ^ | 20:35 |
sonney2k_ | that seems wrong | 20:35 |
sonney2k_ | it is rows,cols | 20:35 |
sonney2k_ | and dims == rows | 20:35 |
sonney2k_ | RandomFourierGaussPreproc.cpp | 20:36 |
sonney2k_ | anyway | 20:36 |
sonney2k_ | fixed | 20:36 |
sonney2k_ | gsomix, any news about CSet returning? | 20:37 |
sonney2k_ | blackburn, ahh btw did you see wikings msg - we cannot get rid of some of the load/save stuff | 20:38 |
gsomix | sonney2k_, tomorrow, at morning | 20:39 |
gsomix | sonney2k_, I'm making some progress with Array#->DynamicArray. | 20:39 |
sonney2k_ | gsomix, ok | 20:39 |
sonney2k_ | thx | 20:39 |
gsomix | but my android phone have said that I should go to bed :) | 20:40 |
sonney2k_ | gsomix, I need to talk to google about some kind of remote patch :D | 20:40 |
blackburn | sonney2k_: why you complain about random fourier to me? ;) | 20:40 |
wiking | NearestCentroid ! | 20:41 |
sonney2k_ | ALL YOUR FAULT :D | 20:41 |
blackburn | sonney2k_: which msg? | 20:41 |
blackburn | sonney2k_: I would rather remove it at all - too hard to support | 20:41 |
blackburn | and random fourier is not cool anymore | 20:42 |
sonney2k_ | blackburn, you always want to remove everything | 20:42 |
sonney2k_ | until we are stuck at int main() {} | 20:42 |
blackburn | sonney2k_: lie :) | 20:43 |
sonney2k_ | someone grep the logs | 20:43 |
sonney2k_ | :D | 20:43 |
gsomix | good night guys | 20:43 |
sonney2k_ | nite | 20:43 |
blackburn | sonney2k_: I want to remove only stuff I can't support | 20:44 |
blackburn | and you don't have time to support too | 20:44 |
wiking | bazdmeg a joisten faszat | 20:45 |
wiking | hath nem igaz hogy nem latod hogy a rohadt mocskos nearestcentroid se mukodik bassza meg | 20:46 |
* wiking is on the rage | 20:46 | |
blackburn | wiking: hungrian obscene? | 20:47 |
blackburn | :D | 20:47 |
wiking | no not at all :D | 20:48 |
blackburn | wiking: do you know russian strong words? :D | 20:48 |
wiking | no just serbian :> | 20:48 |
blackburn | how it sounds like? | 20:49 |
CIA-113 | shogun: Soeren Sonnenburg master * rde8733d / (7 files in 5 dirs): various sgmatrix compile fixes - http://git.io/boU_Ig | 20:49 |
wiking | jebem ti mater | 20:50 |
wiking | picka ti materina | 20:50 |
blackburn | :D | 20:50 |
blackburn | ?? ?? ???? ????! | 20:51 |
sonney2k_ | blackburn, do things compile for you too? | 20:51 |
blackburn | sonney2k_: ?????? ??????? | 20:51 |
wiking | ask me sonney2k_ !!! | 20:51 |
gsomix | blackburn, ?? ????????, ?????. | 20:52 |
sonney2k_ | wiking, ! | 20:52 |
sonney2k_ | yes everything crashes now! | 20:52 |
blackburn | sonney2k_: ????? | 20:52 |
-!- puffin444 [62e3926e@gateway/web/freenode/ip.98.227.146.110] has quit [Ping timeout: 245 seconds] | 20:52 | |
sonney2k_ | converting simplefeatures to sgmatrix is probably more intrusive than sgvectro transition | 20:52 |
sonney2k_ | but hey multiclasslibsvm works | 20:53 |
sonney2k_ | ahh examples don't compile | 20:53 |
sonney2k_ | vim | 20:53 |
blackburn | what vim? | 20:53 |
sonney2k_ | mine | 20:55 |
wiking | sonney2k_: lib compiled | 20:55 |
sonney2k_ | python examles seem to run mostly too | 20:55 |
shogun-buildbot | build #881 of libshogun is complete: Success [build successful] Build details are at http://www.shogun-toolbox.org/buildbot/builders/libshogun/builds/881 | 20:55 |
sonney2k_ | blackburn, can you have a look at failing python examples | 20:56 |
sonney2k_ | lots of converters fail | 20:56 |
* sonney2k_ continues with libshogun examples | 20:56 | |
blackburn | sonney2k_: yeap | 20:57 |
-!- gsomix [~gsomix@178.45.68.193] has quit [Ping timeout: 252 seconds] | 20:57 | |
sonney2k_ | yes sir shogun sir! | 20:57 |
sonney2k_ | next time please | 20:57 |
blackburn | noo way | 20:57 |
sonney2k_ | resistance is futile! | 20:57 |
wiking | my example works \o/ | 20:59 |
wiking | now i have to check pluskid's patches | 20:59 |
-!- blackburn1 [~qdrgsm@83.234.54.222] has joined #shogun | 21:01 | |
blackburn1 | la restistance! | 21:02 |
-!- blackburn [~qdrgsm@83.234.54.222] has quit [Read error: Connection reset by peer] | 21:02 | |
wiking | ok i don't get this | 21:03 |
wiking | WTF is the concept here please somebody enlighten me | 21:03 |
sonney2k_ | wiking, ??? | 21:03 |
wiking | well | 21:03 |
wiking | i use an SGMatrix for a densefeature | 21:04 |
wiking | if i SG_UNREF the densefeatures | 21:04 |
sonney2k_ | yes | 21:04 |
wiking | then i get a double free error | 21:04 |
wiking | if i don't SG_UNREF | 21:04 |
wiking | then valgrind says that there's a leak | 21:04 |
wiking | with DenseFeatures | 21:04 |
sonney2k_ | you should unref | 21:04 |
wiking | ok unref kills it | 21:04 |
wiking | error for object 0x7ffe9c07c800: pointer being freed was not allocated | 21:04 |
wiking | and it's because if i call SG_UNREF on the features | 21:05 |
wiking | then it'll free the sgmatrix | 21:05 |
sonney2k_ | blackburn1, you missed a couple of SimpleFeatures | 21:05 |
wiking | but then on the end when the function ends the SGMatrix's | 21:05 |
wiking | dstor is being called | 21:06 |
wiking | and that tries to free as well | 21:06 |
blackburn1 | sonney2k_: hmm where? | 21:06 |
sonney2k_ | blackburn1, in libshogun examples ... fixing | 21:06 |
sonney2k_ | wiking, sounds impossible | 21:06 |
blackburn1 | how can that be.. I replaced Simple->Dense | 21:06 |
sonney2k_ | wiking, check with valgrind | 21:06 |
wiking | sonney2k_: http://pastebin.com/r1v9FxRC | 21:07 |
wiking | (gdb) bt | 21:07 |
wiking | #0 0x00007fff980cbce2 in __pthread_kill () | 21:07 |
wiking | #1 0x00007fff8f0ec7d2 in pthread_kill () | 21:07 |
wiking | #2 0x00007fff8f0dda7a in abort () | 21:07 |
wiking | #3 0x00007fff8f13c84c in free () | 21:07 |
wiking | #4 0x0000000100002c90 in shogun::SGMatrix<double>::free_data (this=0x7fff5fbfe528) at SGMatrix.h:149 | 21:07 |
wiking | #5 0x0000000100002dba in shogun::SGReferencedData::unref (this=0x7fff5fbfe528) at SGReferencedData.h:110 | 21:07 |
wiking | #6 0x0000000100002e36 in shogun::SGMatrix<double>::~SGMatrix (this=0x7fff5fbfe528) at SGMatrix.h:52 | 21:07 |
wiking | #7 0x00000001000027e5 in shogun::SGMatrix<double>::~SGMatrix (this=0x7fff5fbfe528) at SGMatrix.h:51 | 21:07 |
wiking | #8 0x0000000100002454 in test_cross_validation () at evaluation_cross_validation_multiclass.cpp:146 | 21:07 |
wiking | #9 0x000000010000252e in main (argc=1, argv=0x7fff5fbfe620) at evaluation_cross_validation_multiclass.cpp:154 | 21:07 |
wiking | so that's what's really happening | 21:07 |
blackburn1 | ah | 21:08 |
blackburn1 | GPs | 21:08 |
blackburn1 | ok can be | 21:08 |
-!- blackburn1 is now known as blackburn | 21:08 | |
blackburn | I did some mess there when merging | 21:08 |
wiking | unless i should call an SG_REF on the SGMatrix before passing it to DenseFeatures | 21:09 |
sonney2k_ | tat! | 21:09 |
wiking | but i guess i shouldn't do that... | 21:09 |
sonney2k_ | things compile again :) | 21:10 |
CIA-113 | shogun: Soeren Sonnenburg master * r9c81f4e / (18 files): | 21:11 |
CIA-113 | shogun: fix compilation of libshogun examples | 21:11 |
CIA-113 | shogun: - http://git.io/l0yC8A | 21:11 |
wiking | ok so in DenseFeatures.cpp:275 ::set_feature_matrix, shouldn't there be a SG_REF(matrix) somewhere within that function? | 21:11 |
sonney2k_ | wiking, no why? | 21:12 |
wiking | sonney2k_: well then it'll happen what i'm having now | 21:12 |
wiking | you'll have a double free | 21:13 |
sonney2k_ | the copy constructor/assignment operator take care of that.. | 21:14 |
wiking | i mean if u pass a matrix to a feature that will use the matrix | 21:14 |
wiking | imho if we follow what ref counting means | 21:14 |
blackburn | ref is +1 on copy | 21:14 |
blackburn | so set feature matrix increases ref count | 21:15 |
wiking | then we should increment the reference counter on the matrix | 21:15 |
wiking | well yeah let's say it should take care of it | 21:15 |
wiking | it does not | 21:15 |
sonney2k_ | wiking SGMatrix a,b | 21:15 |
sonney2k_ | a=b | 21:15 |
sonney2k_ | will destroy a | 21:15 |
sonney2k_ | and inc refcoutn of b | 21:15 |
sonney2k_ | same with sgvector | 21:15 |
wiking | moreover if i use new CDenseFeatures< float64_t >(mat); | 21:15 |
wiking | mat is an SGMatrix | 21:16 |
wiking | the whole thing crashes | 21:16 |
sonney2k_ | trace it down! | 21:16 |
wiking | trying | 21:16 |
blackburn | fixing converters | 21:17 |
sonney2k_ | wiking, please paste your minimal example | 21:22 |
wiking | i'm tracing | 21:22 |
wiking | so now i've ended up currently | 21:22 |
wiking | that the matrix's ref counter is 1 | 21:23 |
wiking | before it's dtor is being called | 21:23 |
wiking | and that should be the ideal case | 21:23 |
sonney2k_ | except if someone else still has a ptr to the object and wants to destroy it | 21:24 |
wiking | well not anymore... | 21:24 |
wiking | since the dtor is being called because the function returns | 21:24 |
sonney2k_ | blackburn, converter_isomap | 21:25 |
sonney2k_ | ==27272== HEAP SUMMARY: | 21:25 |
sonney2k_ | ==27272== ERROR SUMMARY: 301 errors from 3 contexts (suppressed: 4 from 4) | 21:25 |
blackburn | sonney2k_: IKNOW | 21:25 |
sonney2k_ | holds the record! | 21:25 |
blackburn | :D | 21:25 |
blackburn | sonney2k_: I reuse matrices => double frees | 21:25 |
wiking | so somebody somehow already frees | 21:25 |
wiking | i mean freed the memory | 21:26 |
wiking | although the ref count was >0 | 21:26 |
sonney2k_ | maybe we have a conceptional bug | 21:26 |
-!- cronor [~cronor@vpn12.hotsplots.net] has joined #shogun | 21:27 | |
sonney2k_ | wiking, calling matrix.unref() | 21:27 |
sonney2k_ | will set the matrix ptr and everything to NULL | 21:27 |
blackburn | my ccache cache is not filling up | 21:28 |
blackburn | sonney2k_: how did you config it? | 21:28 |
sonney2k_ | so calling unref() again is not a problem | 21:28 |
sonney2k_ | blackburn, we have to move code back to .cpp (in sgvectr/matrix ...) | 21:28 |
blackburn | sonney2k_: why? | 21:28 |
sonney2k_ | wiking, except if the refcount ptr is not set to NULL | 21:28 |
sonney2k_ | then unref could be done twice | 21:28 |
* sonney2k_ checks | 21:29 | |
-!- cronor [~cronor@vpn12.hotsplots.net] has quit [Quit: cronor] | 21:30 | |
-!- cronor [~cronor@vpn12.hotsplots.net] has joined #shogun | 21:30 | |
-!- cronor [~cronor@vpn12.hotsplots.net] has quit [Client Quit] | 21:30 | |
sonney2k_ | wiking, seems like I didn't set m_refcount to NULL | 21:31 |
sonney2k_ | so an x.unref() followed by another x.unref() will decr. the counter twice | 21:31 |
sonney2k_ | which doesn't make sense | 21:31 |
sonney2k_ | x should have no content/refcount after calling x.unref() | 21:32 |
sonney2k_ | other y=x ' should | 21:32 |
sonney2k_ | I guess we should make the ref function private to indicate that it is not necessary to use it | 21:33 |
sonney2k_ | from the outside | 21:33 |
sonney2k_ | nice | 21:36 |
sonney2k_ | only converters fail now | 21:36 |
sonney2k_ | all the rest is good | 21:36 |
-!- cwidmer [~chris@p548B6357.dip.t-dialin.net] has joined #shogun | 21:36 | |
blackburn | sonney2k_: yes yes will fix in a min | 21:36 |
sonney2k_ | well almost | 21:36 |
sonney2k_ | bah | 21:36 |
CIA-113 | shogun: Sergey Lisitsyn master * r67b73a2 / src/shogun/converter/LocallyLinearEmbedding.cpp : Fixed LLE/HLLE/LTSA crashers - http://git.io/PJSyZg | 21:41 |
wiking | how the hell did i managed this: "pure virtual method called" | 21:48 |
-!- cronor [~cronor@vpn12.hotsplots.net] has joined #shogun | 21:48 | |
blackburn | :D | 21:48 |
blackburn | rebuild | 21:49 |
wiking | hhahahah | 21:49 |
wiking | if i use the kernel in an svm | 21:49 |
wiking | and then on the end i call sg_unref on that kernel | 21:49 |
wiking | i get this error | 21:49 |
wiking | buuut | 21:50 |
wiking | i must say | 21:50 |
wiking | that https://github.com/shogun-toolbox/shogun/pull/509 | 21:50 |
wiking | can be applied | 21:50 |
wiking | it works | 21:50 |
CIA-113 | shogun: Soeren Sonnenburg master * r9490ebe / (4 files in 4 dirs): | 21:50 |
CIA-113 | shogun: unref'ing SGReferenced data twice is OK now | 21:50 |
CIA-113 | shogun: - http://git.io/5zfPQA | 21:50 |
blackburn | sonney2k_: need help there | 21:54 |
blackburn | accuracy = 0.89 | 21:54 |
blackburn | auROC = 1.0 | 21:54 |
blackburn | possible?? | 21:54 |
sonney2k_ | no | 21:54 |
sonney2k_ | or is this rounding error? | 21:54 |
sonney2k_ | like 0.999999 | 21:54 |
blackburn | sonney2k_: we have a bug in ROC | 21:54 |
blackburn | :D | 21:54 |
sonney2k_ | ohhh no | 21:54 |
blackburn | sonney2k_: I had a test for that | 21:55 |
blackburn | let me try to check if it still coincides | 21:55 |
blackburn | sonney2k_: fully coincides | 21:56 |
sonney2k_ | what are the labels? | 21:56 |
blackburn | sonney2k_: where? | 21:56 |
sonney2k_ | you calc acc/roc | 22:00 |
sonney2k_ | so you need two label objects | 22:00 |
blackburn | sonney2k_: in case of 1.0 roc? | 22:01 |
sonney2k_ | y | 22:01 |
blackburn | sec | 22:01 |
sonney2k_ | blackburn, btw there are very few errors left in examples/libshogun | 22:01 |
sonney2k_ | wiking, if you want to have a look... | 22:02 |
wiking | sonney2k_: testing it | 22:02 |
wiking | i mean my example | 22:02 |
wiking | just doing the valgrinding | 22:02 |
blackburn | 1.20814879 -1.20519035 1.18351523 1.30408547 -0.829074 0.34399558 | 22:03 |
blackburn | 1. -1. 1. 1. -1. -1 | 22:03 |
sonney2k_ | what is ground truth? | 22:03 |
blackburn | first 6 of result and ground truth | 22:03 |
sonney2k_ | acc cannot be 1 | 22:04 |
sonney2k_ | last is wrong | 22:04 |
blackburn | sonney2k_: auroc? | 22:04 |
blackburn | accuracy is not 1.0 | 22:04 |
sonney2k_ | ah | 22:04 |
sonney2k_ | yes | 22:04 |
wiking | mmm | 22:04 |
wiking | valgrind is giving me a headache with the bad frees | 22:04 |
wiking | :( | 22:04 |
sonney2k_ | wiking, I dont' have any now | 22:05 |
sonney2k_ | blackburn, but 0.8333 right? | 22:05 |
blackburn | accuracy = 0.89 | 22:05 |
blackburn | auROC = 1.0 | 22:05 |
wiking | sonney2k_: same story as i've explained before... double freeing | 22:06 |
sonney2k_ | blackburn, but only 1/6th is wrong so 1-1/6=0.83 | 22:06 |
blackburn | sonney2k_: 400 labels | 22:06 |
sonney2k_ | wiking, are you sure you use latest git? | 22:06 |
wiking | yep | 22:06 |
blackburn | I printed only 6 | 22:06 |
sonney2k_ | bah | 22:06 |
blackburn | sonney2k_: ROC looks like | 22:06 |
blackburn | y axis | 22:06 |
wiking | commit 9490ebe98295796cf3a9fc5ed69b8c5dd6a6a354 | 22:07 |
blackburn | and x axis | 22:07 |
sonney2k_ | blackburn, sgvector related bug? | 22:07 |
blackburn | sonney2k_: https://gist.github.com/2638909 | 22:08 |
sonney2k_ | is auroc now always 1.0? | 22:08 |
blackburn | sonney2k_: now | 22:08 |
blackburn | no | 22:08 |
blackburn | accuracy = 0.8125 | 22:08 |
blackburn | auROC = 0.925625 | 22:08 |
blackburn | different setting | 22:08 |
sonney2k_ | blackburn, and valgrind gives no errors? | 22:08 |
blackburn | hmm let me try mldata script | 22:08 |
blackburn | with this ouputs | 22:08 |
wiking | sonney2k_: http://pastebin.com/3PDqqxtB | 22:12 |
wiking | enough dense/short? | 22:12 |
sonney2k_ | wiking, obviously wrong | 22:17 |
sonney2k_ | https://gist.github.com/2638963 | 22:17 |
sonney2k_ | and btw you can use init_shogun_with_defaults() | 22:17 |
sonney2k_ | then you don't need print msg etc | 22:17 |
wiking | this all was copied from an example... | 22:18 |
wiking | i just densed it down... | 22:18 |
sonney2k_ | which example? | 22:18 |
wiking | classifier_multiclasslinearmachine.cpp | 22:19 |
sonney2k_ | fixing it there | 22:19 |
-!- cwidmer [~chris@p548B6357.dip.t-dialin.net] has quit [Quit: Konversation terminated!] | 22:21 | |
CIA-113 | shogun: Soeren Sonnenburg master * r1306d2d / examples/undocumented/libshogun/classifier_multiclasslinearmachine.cpp : fix double free in example - http://git.io/A6a4qA | 22:21 |
wiking | sonney2k_: have u tried running that code with that fix? | 22:24 |
wiking | since it's going to fail | 22:24 |
blackburn | sonney2k_: defeated! | 22:25 |
blackburn | :D | 22:25 |
sonney2k_ | https://gist.github.com/2638963 | 22:26 |
sonney2k_ | nope | 22:26 |
sonney2k_ | blackburn, what was it? | 22:26 |
blackburn | sonney2k_: russia 2-0 germany @ IIHF world championship :P | 22:26 |
wiking | sonney2k_: i meant your last fix for classifier_multiclasslinearmachine.cpp | 22:26 |
sonney2k_ | why? | 22:27 |
sonney2k_ | wiking, it works w/o valgrind errors here | 22:28 |
wiking | [ERROR] assertion labels.vector && idx<get_num_labels() failed in file features/Labels.cpp line 231 | 22:28 |
wiking | :D | 22:28 |
wiking | amaaazing | 22:28 |
wiking | :) | 22:28 |
wiking | if i apply that last patch | 22:28 |
blackburn | sonney2k_: no bug in roc | 22:29 |
blackburn | https://gist.github.com/2638909 | 22:29 |
sonney2k_ | whatever | 22:30 |
sonney2k_ | feel free to fix | 22:30 |
* sonney2k_ ZZZzzzzz.... | 22:30 | |
blackburn | no bug! | 22:30 |
blackburn | :D | 22:30 |
blackburn | hooray | 22:30 |
wiking | :>>>>> | 22:30 |
sonney2k_ | blackburn, tomorrow can you help w/ sgstringlist / sparse vector? | 22:30 |
blackburn | yes | 22:31 |
sonney2k_ | blackburn, do you prefer to do SparseVector/Matirx | 22:31 |
sonney2k_ | or string/stringlist? | 22:31 |
blackburn | yes | 22:31 |
blackburn | no | 22:31 |
blackburn | string is your expertise :) | 22:31 |
sonney2k_ | ok then I will do strings | 22:31 |
blackburn | ok | 22:31 |
sonney2k_ | you do sparse | 22:31 |
blackburn | right | 22:31 |
sonney2k_ | and then we commit and break everything again | 22:31 |
blackburn | okay time to finally fix isomap/mds | 22:32 |
blackburn | yes | 22:32 |
blackburn | BREAK | 22:32 |
blackburn | BLOOD | 22:32 |
sonney2k_ | blackburn, have a look at libshogun examples ... maybe you can fix the remaining err's | 22:32 |
sonney2k_ | cu | 22:32 |
blackburn | I'll do | 22:32 |
sonney2k_ | wiking, and you too | 22:32 |
blackburn | converters | 22:32 |
blackburn | :) | 22:32 |
wiking | sonney2k_: i know what's the error | 22:32 |
wiking | i'll give you a pull req | 22:32 |
wiking | num_cols = number of vectors in the matrix right? | 22:34 |
wiking | https://github.com/shogun-toolbox/shogun/pull/510 | 22:36 |
wiking | fix | 22:36 |
CIA-113 | shogun: Viktor Gal master * r520fb0c / examples/undocumented/libshogun/classifier_multiclasslinearmachine.cpp : | 22:37 |
CIA-113 | shogun: Fix the number of vectors in the matrix | 22:37 |
CIA-113 | shogun: - http://git.io/TJs25Q | 22:37 |
wiking | "pure virtual method called" | 22:47 |
wiking | YES | 22:47 |
wiking | :>> | 22:47 |
-!- cronor [~cronor@vpn12.hotsplots.net] has quit [Quit: cronor] | 22:48 | |
wiking | blackburn: ok so here comes a new example | 23:05 |
wiking | https://github.com/shogun-toolbox/shogun/pull/511 | 23:07 |
wiking | and it'll work with kernel MC as well as soon as pluskid's pull req is applied | 23:08 |
wiking | hahaha heiko got the credit for this example in the licensing but yeah it's alright ;) | 23:09 |
CIA-113 | shogun: Viktor Gal master * re5d216a / examples/undocumented/libshogun/evaluation_cross_validation_multiclass.cpp : Add Multiclass cross-validation example to libshogun - http://git.io/nhmJTA | 23:10 |
wiking | thgnx | 23:11 |
wiking | blackburn: aroud? | 23:34 |
blackburn | yes | 23:34 |
wiking | *around? | 23:34 |
wiking | so i was debugging ./classifier_mklmulticlass | 23:35 |
wiking | and realized in the error messages | 23:35 |
wiking | that get_name is not overridden | 23:35 |
blackburn | huh | 23:35 |
wiking | just a sec | 23:35 |
wiking | i'll give u a fix | 23:35 |
blackburn | I can fix it | 23:36 |
blackburn | to avoid moar pull requests :D | 23:36 |
wiking | heheh nooo | 23:36 |
wiking | i want my commits! | 23:36 |
blackburn | heheh sure | 23:36 |
wiking | but the weirder error is that the kernel doesn't have lhs | 23:39 |
wiking | after train :( | 23:39 |
wiking | https://github.com/shogun-toolbox/shogun/pull/512 | 23:41 |
wiking | [ERROR] MKLMulticlass: No left hand side specified :( | 23:41 |
blackburn | wiking: yeap | 23:41 |
CIA-113 | shogun: Viktor Gal master * r82cc060 / src/shogun/classifier/mkl/MKLMulticlass.h : Override get_name in MKLMulticlass - http://git.io/D4Sl2Q | 23:42 |
wiking | still debugging | 23:42 |
wiking | blackburn: just for you: "You've got to love Vladimir Putin. Otherwise you die in an unexplained accident." | 23:47 |
blackburn | hopefully no | 23:47 |
wiking | :)) | 23:47 |
blackburn | opposition guys play some crazy games with police right now | 23:48 |
wiking | mmm | 23:53 |
wiking | wtf can happen with this mkl's kernel | 23:53 |
--- Log closed Wed May 09 00:00:37 2012 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!