--- Log opened Tue Apr 10 00:00:19 2012 | ||
harshit_ | n4nd0: hey do you know how to open libSVM format files in libshogun ? | 00:01 |
---|---|---|
n4nd0 | harshit_: I didn't know that libSVM has its own format :P | 00:01 |
n4nd0 | harshit_: do you know if there is something about that in LibSVM files? | 00:02 |
-!- harshit_ [~harshit@182.64.221.94] has quit [Ping timeout: 244 seconds] | 00:08 | |
-!- harshit_ [~harshit@182.64.221.94] has joined #shogun | 00:08 | |
-!- harshit_ [~harshit@182.64.221.94] has quit [Remote host closed the connection] | 00:43 | |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has quit [Quit: leaving] | 01:43 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Quit: wiking] | 01:46 | |
-!- wiking [~wiking@78-23-191-201.access.telenet.be] has joined #shogun | 02:13 | |
-!- wiking [~wiking@78-23-191-201.access.telenet.be] has quit [Changing host] | 02:13 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 02:13 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 02:13 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 02:14 | |
-!- wiking_ [~wiking@78-23-191-201.access.telenet.be] has joined #shogun | 02:17 | |
-!- wiking_ [~wiking@78-23-191-201.access.telenet.be] has quit [Changing host] | 02:17 | |
-!- wiking_ [~wiking@huwico/staff/wiking] has joined #shogun | 02:17 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 244 seconds] | 02:21 | |
-!- wiking_ is now known as wiking | 02:21 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Quit: wiking] | 02:43 | |
-!- av3ngr [av3ngr@nat/redhat/x-uzcgjuqrebqavizk] has joined #shogun | 03:21 | |
-!- av3ngr [av3ngr@nat/redhat/x-uzcgjuqrebqavizk] has quit [Quit: That's all folks!] | 03:57 | |
-!- muddo [~muddo@gateway/tor-sasl/muddo] has quit [Quit: Leaving] | 04:34 | |
-!- pluskid [~chatzilla@173.254.214.60] has joined #shogun | 05:01 | |
-!- av3ngr [av3ngr@nat/redhat/x-hzfodrrevubortjd] has joined #shogun | 05:32 | |
-!- blackburn [~qdrgsm@83.234.54.186] has joined #shogun | 06:09 | |
CIA-64 | shogun: Viktor Gal master * r58ebbf0 / (3 files in 2 dirs): PNorm: changes suggested by Soeren - http://git.io/xkyXqQ | 06:13 |
CIA-64 | shogun: Viktor Gal master * r67aca90 / src/shogun/mathematics/Math.h : | 06:13 |
CIA-64 | shogun: Fix qnorm calculation | 06:13 |
CIA-64 | shogun: absolute value should be taken of each element before calculating | 06:13 |
CIA-64 | shogun: the q power of the element - http://git.io/wUJupQ | 06:13 |
CIA-64 | shogun: Sergey Lisitsyn master * ra690dd7 / (3 files in 2 dirs): Merge branch 'nearest_centroid' of git://github.com/PhilippeTillet/shogun - http://git.io/Cs7HqA | 06:13 |
CIA-64 | shogun: Sergey Lisitsyn master * r73db76e / (7 files in 3 dirs): Merge branch 'master' of git://github.com/vigsterkr/shogun - http://git.io/TCSD1g | 06:13 |
-!- blackburn [~qdrgsm@83.234.54.186] has quit [Ping timeout: 244 seconds] | 06:28 | |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun | 07:56 | |
-!- genix [~gsomix@188.168.4.3] has quit [Ping timeout: 240 seconds] | 08:06 | |
@sonney2k | n4nd0, btw did you try to get OvO to work with heikos new subsetting stuff? | 08:19 |
n4nd0 | sonney2k: blackburn told me that there was still one thing missing, that it had to be added for the labels too | 08:20 |
n4nd0 | sonney2k: he said he would take care of it | 08:20 |
n4nd0 | sonney2k: I am working with JL's cover tree for the moment | 08:22 |
-!- genix [~gsomix@188.168.128.186] has joined #shogun | 08:22 | |
n4nd0 | have to go, see you later | 08:25 |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has quit [Quit: leaving] | 08:25 | |
-!- av3ngr [av3ngr@nat/redhat/x-hzfodrrevubortjd] has quit [Remote host closed the connection] | 08:50 | |
-!- sonne|work [~sonnenbu@194.78.35.195] has joined #shogun | 08:53 | |
-!- pluskid [~chatzilla@173.254.214.60] has quit [Remote host closed the connection] | 09:24 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 09:34 | |
sonne|work | wiking: so the qnorm was b0rken? | 09:42 |
wiking | a bit | 09:42 |
sonne|work | a bit? | 09:42 |
sonne|work | either broken or working :) | 09:42 |
sonne|work | what was wrong? | 09:42 |
wiking | CMath::pow(x[i], q) | 09:43 |
wiking | for q mod 2 =0 it was working | 09:43 |
wiking | for q mod 2 =1 it was wrong | 09:43 |
wiking | as it should have been CMath::pow(fabs(x[i]), q) | 09:43 |
wiking | http://upload.wikimedia.org/wikipedia/en/math/d/5/a/d5a50569adc0dfadfb38dcba038f1e30.png | 09:44 |
sonne|work | so the fabs was missing? | 09:44 |
wiking | yes | 09:44 |
sonne|work | uhh oh | 09:44 |
sonne|work | that would explain why we had some instability in the MKL algorithm | 09:45 |
sonne|work | getting NaNs | 09:45 |
* sonne|work smacks head | 09:45 | |
wiking | :P | 09:45 |
sonne|work | s/mkl/q-norm mkl/ | 09:45 |
wiking | but now my cluster's hard drive is broken | 09:46 |
wiking | and i have 2 days to submit my paper | 09:46 |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 09:47 | |
-!- wiking [~wiking@vpna157.ugent.be] has joined #shogun | 09:47 | |
-!- wiking [~wiking@vpna157.ugent.be] has quit [Changing host] | 09:47 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 09:47 | |
wiking | :> | 09:47 |
-!- wiking_ [~wiking@huwico/staff/wiking] has joined #shogun | 09:55 | |
-!- wiking_ [~wiking@huwico/staff/wiking] has quit [Client Quit] | 09:55 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 244 seconds] | 09:58 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has quit [Quit: Leaving.] | 10:11 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has joined #shogun | 10:12 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has quit [Client Quit] | 10:14 | |
-!- Marty28 [~chatzilla@pD9FC935E.dip.t-dialin.net] has joined #shogun | 11:18 | |
Marty28 | hiho | 11:19 |
genix | hi all | 11:20 |
Marty28 | The R?tsch group page at T?bingen is gone as the group is gone. This affects some shogun tutorial pages. When will you move the links? | 11:22 |
-!- Marty28 [~chatzilla@pD9FC935E.dip.t-dialin.net] has quit [Ping timeout: 245 seconds] | 11:43 | |
-!- Marty28 [~chatzilla@pD9FC935E.dip.t-dialin.net] has joined #shogun | 11:51 | |
-!- PSmitAalto [82e9b263@gateway/web/freenode/ip.130.233.178.99] has joined #shogun | 11:54 | |
sonne|work | Marty28: I guess we will just remove these links - shogun doc has the tutorial now | 12:00 |
PSmitAalto | Hey all | 12:03 |
PSmitAalto | Small question about the cache size of a kernel | 12:03 |
PSmitAalto | how should I chose this, and how can I check how much cache was actually used? | 12:03 |
sonne|work | PSmitAalto: the more the better - it will limit requirements by #elements in kernel :) | 12:04 |
PSmitAalto | But if I define more then necessary, will I be wasting memory? | 12:06 |
sonne|work | no | 12:07 |
Marty28 | sonne: thx | 12:11 |
PSmitAalto | Thanks! | 12:15 |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun | 12:20 | |
-!- Marty28 [~chatzilla@pD9FC935E.dip.t-dialin.net] has quit [Quit: ChatZilla 0.9.88.2 [Firefox 11.0/20120312181643]] | 12:21 | |
sonne|work | n4nd0: so how does the covercode look like? | 12:26 |
n4nd0 | sonne|work: it is taking me some time to get used to the code and how to use it | 12:26 |
n4nd0 | sonne|work: I am preparing a small test to benchmark JL's code and compare it to shogun so we will know how much improvement we should expect | 12:27 |
sonne|work | I can imagine so.. | 12:27 |
n4nd0 | sonne|work: for the tests I have done so far it looks pretty fast, the construction was taking nothing compared to the previous one | 12:27 |
n4nd0 | less than 0.1 (s) if I remember correctly | 12:28 |
sonne|work | nice | 12:28 |
n4nd0 | sonne|work: the query time was nice too | 12:28 |
n4nd0 | I am going to try to compare the output now ... apart from being fast it would be interesting if it gives the correct results :D | 12:29 |
sonne|work | I can design arbitrarily fast algorithms that produce wrong results :D | 12:30 |
n4nd0 | haha exactly | 12:30 |
n4nd0 | I want to be sure that this cover tree is not one of those | 12:30 |
n4nd0 | sonne|work: so it is tonight when they say about the number of slots for each organization, isn't it? | 12:33 |
sonne|work | no tomorrow | 12:34 |
-!- wiking [~wiking@vpnb041.ugent.be] has joined #shogun | 12:35 | |
-!- wiking [~wiking@vpnb041.ugent.be] has quit [Changing host] | 12:35 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 12:35 | |
n4nd0 | aham, ok | 12:36 |
sonne|work | Carol said: I will announce slot allocations Wednesday, 11 April after the close of business pacific time. | 12:50 |
sonne|work | so it will even be April 12 | 12:50 |
sonne|work | n4nd0: ^ | 12:51 |
genix | n4nd0, hello | 12:52 |
wiking | :) | 12:52 |
n4nd0 | sonne|work: the 12th then | 12:52 |
n4nd0 | genix: hey! | 12:52 |
wiking | sonney2k: u reckon mkl would get better results now with the qnorm being fixed? | 12:52 |
-!- PSmitAalto [82e9b263@gateway/web/freenode/ip.130.233.178.99] has quit [Quit: Page closed] | 12:52 | |
wiking | although i guess it'll only matter in case of q being odd | 12:53 |
sonne|work | so how much? | 12:53 |
sonne|work | anyway I only have good experience with q=2 | 12:53 |
genix | n4nd0, what about memory leaks in covertree? | 12:53 |
n4nd0 | genix: well, I got pretty lost there | 12:54 |
wiking | although i cannot run any tests now since my cluster died and the raid is just rebuilding itself... | 12:54 |
n4nd0 | genix: valgrind didn't help me that much either | 12:55 |
wiking | so i have to wait at least 6 hours to get it fixed... | 12:55 |
n4nd0 | genix: so I started to look at JL's implementation, the one on his webpage | 12:55 |
-!- genix is now known as gsomix | 13:05 | |
-!- PhilTillet [~android@92.90.16.16] has joined #shogun | 13:13 | |
-!- pluskid [~chatzilla@173.254.214.60] has joined #shogun | 13:14 | |
-!- n4nd0_ [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun | 13:33 | |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has quit [Ping timeout: 246 seconds] | 13:34 | |
-!- n4nd0_ [~nando@s83-179-44-135.cust.tele2.se] has quit [Client Quit] | 13:38 | |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun | 13:38 | |
-!- PhilTillet2 [~android@92.90.16.16] has joined #shogun | 13:51 | |
-!- PhilTillet [~android@92.90.16.16] has quit [Ping timeout: 244 seconds] | 13:51 | |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has quit [Read error: Connection reset by peer] | 13:51 | |
-!- PhilTillet2 [~android@92.90.16.16] has quit [Remote host closed the connection] | 13:51 | |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun | 13:56 | |
-!- wiking_ [~wiking@huwico/staff/wiking] has joined #shogun | 14:22 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 252 seconds] | 14:25 | |
-!- wiking_ is now known as wiking | 14:25 | |
-!- muddo [~muddo@gateway/tor-sasl/muddo] has joined #shogun | 14:35 | |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection] | 15:28 | |
-!- wiking [~wiking@vpnb186.ugent.be] has joined #shogun | 15:28 | |
-!- wiking [~wiking@vpnb186.ugent.be] has quit [Changing host] | 15:28 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 15:28 | |
gsomix | sonney2k, sonne|work around? | 15:28 |
-!- Marty28 [~chatzilla@pD9FC935E.dip.t-dialin.net] has joined #shogun | 15:49 | |
Marty28 | re | 15:49 |
-!- Marty28 [~chatzilla@pD9FC935E.dip.t-dialin.net] has quit [Remote host closed the connection] | 15:53 | |
-!- blackburn [5bdfb203@gateway/web/freenode/ip.91.223.178.3] has joined #shogun | 16:01 | |
blackburn | sonne|work: we definitely need your help there with traffic | 16:02 |
n4nd0 | gsomix: hey, I have some problems with the cover tree, do you have a moment? | 16:08 |
gsomix | n4nd0, yep | 16:09 |
n4nd0 | gsomix: did you manage to make tests with JL's tree to see what are the nearest neigbors of some query points? | 16:10 |
n4nd0 | gsomix: I am trying to make that now, it should be easy, but the output I get makes no sense to me | 16:10 |
blackburn | n4nd0: uh complicated task right? ;) | 16:10 |
gsomix | >> makes no sense to me | 16:11 |
gsomix | what do you mean? | 16:11 |
n4nd0 | blackburn: I feel completely retarded for real :S | 16:11 |
blackburn | n4nd0: you always can leave it if you feel unhappy with it | 16:11 |
n4nd0 | gsomix: so to start with, I query 10 points with k 10 | 16:12 |
n4nd0 | gsomix: that should ouput 100 points, 10 nearest neighbors for each one of the query points | 16:12 |
n4nd0 | gsomix: I don't know why but I get only 19 points | 16:12 |
n4nd0 | gsomix: 10 for the first one, and one for each of the others | 16:13 |
blackburn | n4nd0: at university I had a spare time and tried that precompute stuff on lle | 16:13 |
n4nd0 | gsomix: and other thing that makes probably no much sense is that the first two points that are output are always the same | 16:13 |
blackburn | n4nd0: surprisingly w/o precomputing it is faster | 16:13 |
n4nd0 | blackburn: haha really? | 16:14 |
blackburn | n4nd0: yes, do you have any explanation? I have | 16:14 |
n4nd0 | blackburn: it might be that all the distances that are computed are not used | 16:15 |
blackburn | n4nd0: no they are and not only once | 16:15 |
blackburn | something more interesting | 16:15 |
n4nd0 | blackburn: that it is not so different to do vector[i + j*N] than to compute the distance between two vectors? | 16:15 |
gsomix | n4nd0, strange | 16:16 |
n4nd0 | blackburn: low dimensional vectors maybe? | 16:16 |
gsomix | n4nd0, unfortunately, my queries were composed of a single point | 16:16 |
blackburn | yes 3d | 16:16 |
blackburn | but why is it faster then? | 16:16 |
blackburn | hint | 16:16 |
blackburn | [i,j] and [j,i] | 16:16 |
n4nd0 | blackburn: is the matrix computed without taking into account that it is triangular? | 16:17 |
n4nd0 | symmetric is the word for that sorry, not triangular | 16:17 |
n4nd0 | gsomix: but using just one point, did you get coherent results? | 16:17 |
blackburn | n4nd0: not really I think it is | 16:18 |
blackburn | n4nd0: cache misses | 16:18 |
gsomix | n4nd0, yep. however, covertree returns the nearest neighbors are not in order. | 16:19 |
blackburn | it sets [i,j] and [j,i] | 16:19 |
blackburn | and it takes a WHILE | 16:19 |
blackburn | ;) | 16:19 |
n4nd0 | what? | 16:19 |
n4nd0 | blackburn: it takes a while to set the value in a matrix? | 16:19 |
blackburn | n4nd0: to jump from [i,j] to [j,i] | 16:19 |
n4nd0 | blackburn: aham, ok I see | 16:20 |
n4nd0 | blackburn: lot of jumps to far places | 16:20 |
blackburn | yeah and while it is predicted that you will go to [i,j+1] | 16:20 |
blackburn | you have to jump again | 16:21 |
n4nd0 | blackburn: but anyway, my intuition is that it shouldn't make a big difference for low dimensional vectors | 16:21 |
n4nd0 | blackburn: to re-compute distances there is not very expencise | 16:21 |
n4nd0 | expensive* | 16:21 |
blackburn | yes it is faster w/o precomputing that stuff | 16:21 |
blackburn | however if distance are really expensive it worths trying | 16:21 |
n4nd0 | yes, I agree | 16:21 |
n4nd0 | gsomix: ok, but even if they are not in order, it is given me twice the same point for example, weird thing | 16:22 |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has joined #shogun | 16:31 | |
sonne|work | blackburn: will you look at pluskid's LARS stuff | 16:48 |
blackburn | sonne|work: yes | 16:48 |
sonne|work | thx | 16:48 |
sonne|work | gtg | 16:48 |
n4nd0 | blackburn: alternative solution | 16:50 |
blackburn | n4nd0: for? | 16:51 |
blackburn | sonne|work: it is in progress so we can wait a little more | 16:52 |
n4nd0 | blackburn: cover tree, the code that pluskid suggested, the one that is in github is pretty neat and clear | 16:52 |
blackburn | n4nd0: feel free :) | 16:52 |
n4nd0 | blackburn: I think I'll port that one :) | 16:53 |
n4nd0 | blackburn: the code uses boost quite a bit and stuff | 16:56 |
n4nd0 | blackburn: what do you think is best, to do some wrappers or to adapt it to shogun? | 16:56 |
blackburn | which boost things? | 16:56 |
n4nd0 | blackburn: it is about 200 lines of understandable code so it shouldn't be a madness to port it | 16:56 |
n4nd0 | blackburn: hash table (unordered map) and smart pointers | 16:57 |
blackburn | just be sure it is rather fast than not :) | 16:57 |
n4nd0 | blackburn: yes, it comes with a test to compare it to brute force and it is faster than that | 16:57 |
n4nd0 | in any case | 16:57 |
n4nd0 | I will first compare it to our KNN | 16:58 |
n4nd0 | before starting to port and stuff | 16:58 |
blackburn | n4nd0: it is strange still for me | 16:58 |
blackburn | LLE takes 4.16s to embed 10000 vectors | 16:58 |
blackburn | with k = 10 | 16:58 |
n4nd0 | I don't really understand it | 16:59 |
n4nd0 | gtg now | 17:00 |
n4nd0 | see you later! | 17:00 |
blackburn | see you | 17:00 |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has quit [Ping timeout: 265 seconds] | 17:06 | |
pluskid | what's wrong with JL's cover tree? | 17:06 |
blackburn | pluskid: wrong karma probably :) | 17:07 |
pluskid | blackburn: karma? | 17:07 |
blackburn | it gives headache for ever one trying to integrate it to shogun | 17:08 |
pluskid | oh | 17:08 |
pluskid | so is it actually faster? | 17:08 |
blackburn | no idea | 17:08 |
blackburn | can be | 17:08 |
pluskid | haven't tested yet? | 17:08 |
pluskid | I scanned the previous log | 17:09 |
blackburn | I didn't | 17:09 |
pluskid | it produce strange result? | 17:09 |
blackburn | yes | 17:09 |
pluskid | BTW, have you guys finally got JL's reply (and my reply) in the mailing list? | 17:09 |
blackburn | no there were only your messages | 17:10 |
pluskid | strange... | 17:10 |
pluskid | anyway, if there's problems, maybe we can seek him for help | 17:10 |
pluskid | he seems to be a nice person | 17:10 |
pluskid | and cares about cover tree | 17:10 |
blackburn | yeah but we need to formulate the problem | 17:11 |
pluskid | hmm, seem not an easy task | 17:11 |
blackburn | time to go home ! | 17:12 |
blackburn | see you | 17:12 |
pluskid | got to sleep now | 17:12 |
-!- blackburn [5bdfb203@gateway/web/freenode/ip.91.223.178.3] has quit [Quit: Page closed] | 17:12 | |
pluskid | cu | 17:12 |
-!- pluskid [~chatzilla@173.254.214.60] has quit [Quit: ChatZilla 0.9.88.2 [Firefox 11.0/20120314124128]] | 17:22 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has quit [Quit: Leaving.] | 17:29 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has joined #shogun | 17:36 | |
wiking | mmm is there a chance that GMM clusterer can handle 5*10^6 vectors and do the clustering on it? | 17:54 |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has quit [Quit: Leaving.] | 18:17 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has joined #shogun | 18:56 | |
@sonney2k | nahh I don't like having boost as yet another dependency | 19:13 |
@sonney2k | we already have too many of them | 19:13 |
@sonney2k | does anyone want to fix some warnings http://shogun-toolbox.org/buildbot/builders/python_modular/builds/466/steps/compile/logs/warnings%20%2829%29 ? | 19:14 |
@sonney2k | btw wiking they are also in your code ^ :) | 19:14 |
wiking | checkoing | 19:15 |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun | 19:18 | |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has quit [Client Quit] | 19:19 | |
gsomix | sonney2k, hey | 19:23 |
@sonney2k | hey | 19:24 |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has quit [Quit: Leaving.] | 19:24 | |
gsomix | sonney2k, I'm glad to see you. I have some questions. | 19:25 |
gsomix | >> then first thing to do is to convert everything from returning copies of SGVector to references | 19:25 |
gsomix | why should we use references instead of pointers? | 19:25 |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has joined #shogun | 19:26 | |
@sonney2k | gsomix, I think it would be nice if one can just do a[0] for an SGVector | 19:27 |
@sonney2k | so when SGVector& a is a parameter one can do this | 19:27 |
@sonney2k | for SGVector* a one woul dhave to (*a)[0] ... | 19:28 |
@sonney2k | gsomix, would you prefer pointers? | 19:28 |
@sonney2k | the other reason next to this is that one doesn't have to change current code | 19:28 |
@sonney2k | just adding a & won't hurt *that* much | 19:29 |
gsomix | sonney2k, yes, I would prefer pointers. I think SGVector* is more "transparent". | 19:30 |
gsomix | >> one doesn't have to change current code | 19:30 |
gsomix | Hmm. | 19:30 |
gsomix | sonney2k, I think it's wrong. We'll have to fix all SGVector variables on SGVector&. | 19:34 |
gsomix | it's equivalent to SGVector -> SGVector* corrections | 19:37 |
gsomix | sonney2k, isn't it? | 19:37 |
gsomix | sorry. I forgot about dereferencing. =___= | 19:39 |
gsomix | anyway I prefer pointers | 19:39 |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has quit [Quit: Leaving.] | 19:40 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has joined #shogun | 19:41 | |
@sonney2k | gsomix, hmmhh talk to n4nd0 / blackburn / wiking and convince them :) | 19:49 |
@sonney2k | sry gtg | 19:49 |
@sonney2k | cu | 19:49 |
wiking | convince me | 19:50 |
gsomix | sonney2k, ok. su | 19:50 |
wiking | :) | 19:50 |
gsomix | wiking, yo. we want to make reference counting for the SGVector. | 19:52 |
gsomix | which is better: all of the SGVectors in code is a reference or a pointer? | 19:52 |
wiking | aaah that'd be great | 19:52 |
gsomix | *are | 19:52 |
wiking | pointer | 19:52 |
wiking | i know people hate pointers and c++ has a fancy reference shit | 19:53 |
wiking | but i prefer pointers | 19:54 |
wiking | although yeah if you change everything to pointers | 19:54 |
wiking | you'll have trouble with rewriting some code... | 19:54 |
wiking | while having a reference it'll just be fine | 19:54 |
wiking | so sonney2k is right about & being an easier solution | 19:54 |
wiking | and you don't have to care about null pointer references :P | 19:55 |
wiking | like | 19:55 |
wiking | somepointer->callfunction | 19:55 |
wiking | and 'somepointer' is either a null pointer or a bad mem addr | 19:55 |
wiking | i mean what you could do with a pointer case of course that when you do the script for doing the SGVector<>* a for the function argument | 19:57 |
wiking | then simply add something like this right after the function call | 19:57 |
wiking | i mean function definition | 19:58 |
gsomix | wiking, I see | 19:58 |
wiking | ASSERT(pointer check); | 19:58 |
wiking | SGVector<> = *a; | 19:58 |
wiking | SGVector<>b = *a; | 19:58 |
wiking | and then u use b normally ;) | 19:58 |
wiking | so that you can do b[0] | 19:58 |
wiking | as is | 19:58 |
wiking | so it's really a matter of taste... but if you follow c++ standards and check STL things as well | 19:59 |
wiking | you usually pass containers by their reference | 19:59 |
wiking | very seldomly you do something like function (std::vector<double>* a); | 20:00 |
wiking | but anyhow having either of them will save us a lot of memory on the stack ;) | 20:00 |
wiking | so now if you ask me again i'd vote as well for reference... :P | 20:00 |
wiking | even if i prefer pointers more | 20:00 |
gsomix | wiking, hah. :) thank you very much | 20:01 |
wiking | gsomix: sorry :( | 20:02 |
gsomix | wiking, wut? | 20:02 |
wiking | as you saw i wanted to go with pointers as well... but then again if you consider now redoing all the coooode.... it's safer to go with a reference :( | 20:02 |
gsomix | wiking, you and sonney2k are saying the right things. :) | 20:07 |
-!- n4nd0 [~nando@s83-179-44-135.cust.tele2.se] has joined #shogun | 20:21 | |
n4nd0 | gsomix: I vote for references too :) | 20:28 |
gsomix | n4nd0, ok. thanks | 20:29 |
n4nd0 | gsomix: will you try to convince for pointers? :) | 20:29 |
gsomix | n4nd0, no, I will not :) | 20:31 |
-!- harshit_ [~harshit@182.68.210.237] has joined #shogun | 20:48 | |
n4nd0 | harshit_: hey! how is it going with semi-supervised learning? | 20:49 |
harshit_ | n4nd0: Almost done ! But there is one problem though | 20:49 |
n4nd0 | harshit_: oh! that was fast man | 20:49 |
harshit_ | SVMlin website has a broken link to its examples | 20:50 |
n4nd0 | too bad | 20:50 |
harshit_ | have a look:http://vikas.sindhwani.org/svmlin.html | 20:50 |
-!- PhilTillet [~Philippe@npasserelle10.minet.net] has joined #shogun | 20:50 | |
harshit_ | try to download examples.tar.gz | 20:50 |
harshit_ | I have sent a mail to its author, Hope he replies and take action! | 20:51 |
n4nd0 | yeah, those links are dead | 20:52 |
harshit_ | n4nd0: And the task was not too difficult, I just had to create a wrapper class | 20:52 |
n4nd0 | harshit_: aham, ok | 20:52 |
harshit_ | :( cant succeed without those :( | 20:52 |
harshit_ | will ask blackburn, maybe he have the archived files with him | 20:53 |
harshit_ | n4nd0: Whats the status of your covertree ? | 20:53 |
harshit_ | I think thats merged, am I right ? | 20:54 |
n4nd0 | harshit_: well the thing that is merged is integration in KNN | 20:54 |
n4nd0 | harshit_: but our current cover tree structure is too slow | 20:54 |
n4nd0 | at least according to my tests | 20:54 |
harshit_ | ohk..Is that the problem with the algo or implementation ? | 20:54 |
n4nd0 | so I am working on the port of another cover tree | 20:55 |
harshit_ | nice. | 20:56 |
harshit_ | Any news about gsoc | 20:56 |
n4nd0 | none AFAIK | 20:56 |
harshit_ | hope shogun gets enough seats ! | 20:57 |
n4nd0 | yeah | 20:58 |
n4nd0 | harshit_: cruza los dedos ;) | 20:58 |
harshit_ | yo tambian :) | 20:59 |
shogun-buildbot | build #205 of nightly_none is complete: Failure [failed compile] Build details are at http://www.shogun-toolbox.org/buildbot/builders/nightly_none/builds/205 | 21:00 |
n4nd0 | oops | 21:00 |
-!- PhilTillet [~Philippe@npasserelle10.minet.net] has quit [Ping timeout: 260 seconds] | 21:03 | |
wiking | :))) | 21:11 |
-!- muddo [~muddo@gateway/tor-sasl/muddo] has quit [Ping timeout: 276 seconds] | 21:22 | |
-!- PhilTillet [~Philippe@npasserelle10.minet.net] has joined #shogun | 21:41 | |
-!- V[i]ctor [~victor@host-176-100-246-254.masterbit.su] has quit [Ping timeout: 240 seconds] | 21:44 | |
wiking | mmmm iterative pca? :) | 22:00 |
wiking | anyone ?:) | 22:00 |
wiking | i mean sequential :))) | 22:00 |
wiking | i ran out of ram :> | 22:00 |
gsomix | offtop http://piccy.info/view3/2875029/997ca62bb577e291c96083cd2c399564/ | 22:13 |
n4nd0 | wtf | 22:16 |
gsomix | nitrogen | 22:17 |
n4nd0 | aaah | 22:18 |
-!- blackburn [5bde8018@gateway/web/freenode/ip.91.222.128.24] has joined #shogun | 22:24 | |
blackburn | hey there | 22:25 |
blackburn | wiking: having problems with kinda largescale? | 22:26 |
wiking | hehehe yeah | 22:26 |
blackburn | wiking: well I have some tools for DR however would not work on such sizes | 22:33 |
wiking | what is the ascii code for scroll lock :))) | 22:33 |
blackburn | no idea heh | 22:34 |
blackburn | wiking: are you aware of some *dynamic* sparse matrix class/struct in C/C++? | 22:46 |
wiking | mmm not really | 22:46 |
wiking | brb | 22:47 |
wiking | rboot | 22:47 |
harshit_ | blackburn: Is there any built in function in shogun, Which can open and parse libsvm data files ? | 22:47 |
blackburn | harshit_: yes, libsvmfile | 22:48 |
blackburn | hmmm | 22:48 |
harshit_ | okay, thanks ..! | 22:48 |
blackburn | harshit_: I am afraid it is not complete | 22:49 |
blackburn | only headers there | 22:49 |
harshit_ | then I think i should use libsvm's mex file | 22:49 |
harshit_ | in octave | 22:49 |
blackburn | yeah probably | 22:49 |
harshit_ | But I wanted to make an example which could be portable .. ! | 22:50 |
harshit_ | blackburn: Any idea on how to convert libsvm datafiles to normal txt format | 22:50 |
harshit_ | ohh sry I think i can do that | 22:50 |
harshit_ | octave can help me save | 22:51 |
blackburn | well if you can read it from octave just save from octave ;) | 22:51 |
harshit_ | yeah exactly | 22:51 |
-!- wiking [~wiking@huwico/staff/wiking] has quit [Quit: wiking] | 22:52 | |
blackburn | sonney2k: here? | 22:54 |
gsomix | good night, guys | 23:03 |
n4nd0 | good night gsomix | 23:04 |
blackburn | n4nd0: how are your covertreeing? | 23:04 |
n4nd0 | blackburn: awesome :D | 23:05 |
blackburn | does it work? | 23:05 |
n4nd0 | yes | 23:06 |
gsomix | n4nd0, great! | 23:06 |
blackburn | n4nd0: any preliminary speedup rate? | 23:06 |
n4nd0 | blackburn: not yet :( | 23:06 |
n4nd0 | blackburn: I need a bit more time | 23:07 |
blackburn | no problem :) | 23:07 |
n4nd0 | blackburn: take a look here a moment, KNN.cpp:157 | 23:07 |
n4nd0 | I don't think that ASSERT makes sense | 23:07 |
n4nd0 | it is like number of neighbors k has to be equal than the number of points to query | 23:08 |
n4nd0 | but we may want to find out the 2-nearest neigbors of just one point | 23:08 |
n4nd0 | neighbors* | 23:08 |
-!- wiking [~wiking@78-23-191-201.access.telenet.be] has joined #shogun | 23:10 | |
-!- wiking [~wiking@78-23-191-201.access.telenet.be] has quit [Changing host] | 23:10 | |
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun | 23:10 | |
n4nd0 | blackburn: do you see what I mean? | 23:10 |
-!- blackburn [5bde8018@gateway/web/freenode/ip.91.222.128.24] has quit [Ping timeout: 245 seconds] | 23:11 | |
-!- blackburn [5bde8018@gateway/web/freenode/ip.91.222.128.24] has joined #shogun | 23:11 | |
blackburn | damned connection | 23:11 |
blackburn | okay | 23:11 |
blackburn | n4nd0: what s up with 157 | 23:11 |
n4nd0 | I don't think that ASSERT makes sense | 23:12 |
n4nd0 | it is like number of neighbors k has to be equal than the number of points to query | 23:12 |
n4nd0 | but we may want to find out the 2-nearest neighbors of just one point | 23:12 |
n4nd0 | (I just copied+pasted :)) | 23:13 |
blackburn | how can k be greater than total number of objects? | 23:13 |
n4nd0 | because rhs is not the number of training objects | 23:14 |
n4nd0 | but the number of test objects | 23:14 |
n4nd0 | think of it | 23:14 |
blackburn | oh | 23:14 |
blackburn | hah yes sure you are right | 23:14 |
n4nd0 | :) | 23:14 |
n4nd0 | after 5 trials of doing 2-nearest neighbor of one vector I realized | 23:15 |
n4nd0 | :P | 23:15 |
n4nd0 | do you want to change it and we save ourselves pull request and stuff? | 23:15 |
n4nd0 | I can do it otherwise, it would be no problem | 23:16 |
blackburn | yes but next morning probably | 23:16 |
n4nd0 | sure, no problem | 23:16 |
blackburn | n4nd0: I don't like 217 line also | 23:17 |
blackburn | I did add that but that makes no sense for me now | 23:17 |
blackburn | it is kind of weighting | 23:17 |
blackburn | q q^2 q^3 ... | 23:17 |
blackburn | actually it is ~ 1-NN I think | 23:18 |
blackburn | will remove that | 23:18 |
blackburn | okay only one more day and one more night and things will become clearer | 23:19 |
n4nd0 | yeah, the weighting | 23:20 |
n4nd0 | apart that I think that it doesn't match with the one it is presented in the doxygen documentation | 23:21 |
n4nd0 | there it appears that there is one different weight | 23:21 |
blackburn | n4nd0: why? | 23:21 |
blackburn | q^i stil | 23:21 |
blackburn | l | 23:21 |
n4nd0 | I mean one different for every neighbor | 23:21 |
n4nd0 | maybe I read it bad | 23:21 |
blackburn | correct for me | 23:22 |
n4nd0 | ok | 23:22 |
n4nd0 | some results | 23:22 |
n4nd0 | Shogun's time: 00:00:00.466508 | 23:22 |
n4nd0 | Build time 00:00:00.060963 | 23:22 |
blackburn | however | 23:22 |
n4nd0 | CoverTree time (cover_tree) 00:00:00.078839 | 23:22 |
blackburn | not example but neighbor | 23:22 |
blackburn | (should be) | 23:22 |
n4nd0 | I have to double checked that everything is correct though | 23:23 |
blackburn | n4nd0: 0.07s? | 23:23 |
blackburn | N? | 23:23 |
n4nd0 | yes, it is .5 agains .07 | 23:24 |
n4nd0 | 1000 training | 23:24 |
n4nd0 | 1000 queries | 23:24 |
n4nd0 | 3-dimensional | 23:24 |
blackburn | >5 times faster? | 23:24 |
n4nd0 | K = 5 | 23:24 |
n4nd0 | yeah | 23:24 |
n4nd0 | not taking into account build time | 23:25 |
blackburn | try 10000? ;) | 23:25 |
n4nd0 | training? | 23:25 |
n4nd0 | for 10000 queries | 23:25 |
n4nd0 | Shogun's time: 00:00:04.804862 | 23:26 |
n4nd0 | Build time 00:00:00.067134 | 23:26 |
n4nd0 | Out time (cover_tree) 00:00:00.772408 | 23:26 |
n4nd0 | really nice | 23:26 |
blackburn | hmmm it scales linearly | 23:26 |
n4nd0 | but let's wait until I've double check the results | 23:26 |
blackburn | n4nd0: do you test it standalone now? | 23:26 |
n4nd0 | blackburn: do you mean not integrated in shogun? | 23:27 |
n4nd0 | and it is not that it scales linearly | 23:27 |
n4nd0 | I just increased the number of queries | 23:27 |
n4nd0 | i.e. the size of the cover tree is the same | 23:27 |
blackburn | n4nd0: why? N=10*N and time is similar | 23:28 |
n4nd0 | yes but I mean | 23:28 |
n4nd0 | in # queries is obvious that it is going t oscale linearly | 23:28 |
n4nd0 | it is like shogun's time | 23:28 |
n4nd0 | it "scaled linearly" even if doing quicksort is N?log(N) | 23:29 |
blackburn | ah sure I'm stupid a little | 23:29 |
blackburn | how does it scale wrt to trainset? | 23:29 |
n4nd0 | it is just late :) | 23:29 |
n4nd0 | it scales to a seg fault :P | 23:30 |
blackburn | interesting things are | 23:30 |
n4nd0 | I am doing something wrong in my example | 23:30 |
blackburn | scalability wrt to K | 23:30 |
blackburn | and wrt to train N | 23:30 |
blackburn | lol large-fault learning | 23:31 |
n4nd0 | I think I am wasting too much memory in my example | 23:31 |
blackburn | however this constant plays a role sure | 23:31 |
n4nd0 | but let me try with the example that it is not compared to shogun's | 23:31 |
n4nd0 | this is one query when we manage 1000 training vectors | 23:32 |
n4nd0 | Build time 00:00:00.215972 | 23:32 |
n4nd0 | Out time (linear) 00:00:00.001665 | 23:32 |
n4nd0 | Out time (cover_tree) 00:00:00.000629 | 23:32 |
n4nd0 | linear is doing something similar to the quick sort approx | 23:32 |
blackburn | no, one query is not so informative | 23:33 |
blackburn | can bump :) | 23:33 |
n4nd0 | in any case if you want to see | 23:33 |
n4nd0 | Build time 00:00:15.868034 | 23:33 |
n4nd0 | Out time (linear) 00:00:00.018845 | 23:33 |
n4nd0 | Out time (cover_tree) 00:00:00.003390 | 23:33 |
n4nd0 | I think it is informative though | 23:33 |
n4nd0 | the increment with brute force is bigger than the increment with cover tree | 23:34 |
n4nd0 | in proportion | 23:34 |
blackburn | yes | 23:34 |
n4nd0 | but here you can see the big disadvantage of this cover tree implementation | 23:34 |
n4nd0 | with 1000 | 23:34 |
n4nd0 | Build time 00:00:00.215972 | 23:34 |
n4nd0 | with 10000 | 23:34 |
n4nd0 | Build time 00:00:15.868034 | 23:34 |
n4nd0 | it is crazy | 23:34 |
blackburn | wow | 23:35 |
n4nd0 | for 100000 it took like 20 minutes | 23:35 |
blackburn | wtf | 23:35 |
n4nd0 | yeah | 23:35 |
blackburn | why so? strange | 23:35 |
n4nd0 | well | 23:35 |
n4nd0 | I have been doing some research on cover tree | 23:35 |
n4nd0 | (there is a nice video lecture by JL) | 23:35 |
n4nd0 | there are different methods to build it | 23:35 |
n4nd0 | the best is one call | 23:35 |
n4nd0 | batch construction | 23:36 |
n4nd0 | the best in that it is the fastest | 23:38 |
n4nd0 | in JL's code it was all the time below 0.0 (s) | 23:38 |
blackburn | n4nd0: oh may be this weekend if I manage to complete some univ stuff I'll try to integrate JL's again | 23:38 |
n4nd0 | I think that maybe I can start porting this one I am using | 23:40 |
n4nd0 | and later we could include batch construction and other stuff | 23:40 |
blackburn | may be we will get insight and it will become clear how JL's one works | 23:41 |
n4nd0 | yes | 23:41 |
n4nd0 | and as I told you I consider that it shouldn't take much time to port this cover tree | 23:43 |
blackburn | which this? | 23:44 |
n4nd0 | the one I am using now | 23:44 |
blackburn | aha | 23:44 |
n4nd0 | https://github.com/mbrucher/CoverTree | 23:44 |
blackburn | but no batch there? | 23:44 |
n4nd0 | no batch there | 23:44 |
blackburn | bad, right? | 23:45 |
n4nd0 | mmm idk | 23:45 |
n4nd0 | construction is just construction | 23:45 |
n4nd0 | it shouldn't be that important | 23:45 |
blackburn | important for me - I need to construct covertree each time I do embedding | 23:46 |
n4nd0 | aham | 23:46 |
n4nd0 | then it is important too | 23:46 |
--- Log closed Wed Apr 11 00:00:00 2012 |
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!