Open in new window / Try shogun cloud
--- Log opened Wed Jun 22 00:00:50 2016
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has joined #shogun00:27
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has quit [Remote host closed the connection]00:29
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has joined #shogun00:56
HeikoS_mobilebazdmeg: !!!!!!00:56
bazdmegHeikoS_mobile: what00:56
HeikoS_mobileNothing really ;)00:57
HeikoS_mobileDon't work too much00:57
bazdmeghaha00:57
bazdmegHeikoS_mobile: my bachelor student defends something today00:57
bazdmegHeikoS_mobile: spectral mixture!00:58
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has quit [Read error: Connection reset by peer]00:58
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has joined #shogun00:58
bazdmegHeikoS_mobile: spectral mixture!00:59
HeikoS_mobileKernel?00:59
HeikoS_mobileNo please not00:59
HeikoS_mobileThis thing is bazdmeg00:59
HeikoS_mobilebazdmeg^1000:59
bazdmegHeikoS_mobile: 10 hours till his presentation00:59
bazdmeg:D00:59
HeikoS_mobileHis?00:59
HeikoS_mobileIe this00:59
HeikoS_mobileOr this?00:59
bazdmegHeikoS_mobile: my student!01:00
bazdmegbachelors01:00
HeikoS_mobileSpectral mixture. Man it doesn't work. You gotta tell that to someone01:00
bazdmegit does!01:00
bazdmegyou're just lame!01:00
bazdmeg:D01:00
HeikoS_mobileNooooo01:00
bazdmegit is better than ARIMA01:00
bazdmegon our data01:00
bazdmegAT LEASY01:01
HeikoS_mobileWe have a pr for it in shogun btw01:01
bazdmegAT LEAST01:01
HeikoS_mobileAroma?01:01
HeikoS_mobileThis kernel is crap01:01
HeikoS_mobileIt's a crap idea01:01
bazdmegARIMA01:01
HeikoS_mobileJust possible because of nips is a fucking farce01:01
HeikoS_mobileAnd all these papers are just stories that people fake01:02
HeikoS_mobileSpectral mixture is one of them01:02
HeikoS_mobileAroma01:02
HeikoS_mobileWhat is it?01:02
bazdmegautoregressive integrated moving average01:02
HeikoS_mobileUh sounds fancy01:03
HeikoS_mobileHa well01:04
HeikoS_mobileGood luck to you and your student01:04
HeikoS_mobileI'm sure it'll all be good01:04
bazdmegHeikoS_mobile: uhmm how to show you a pic01:05
bazdmegHeikoS_mobile: http://imgur.com/7BVTMG701:06
bazdmegit is not THAT bad01:06
bazdmeghuman feature engineering like linear model on day of week01:07
bazdmegis not even better01:07
HeikoS_mobileOn toy problems like this it works fine01:08
HeikoS_mobileBecause anything works fine there01:08
HeikoS_mobileLinear model on such data is bazdmeg so of course01:08
bazdmegnono01:08
bazdmeglinear model on top of day of week01:08
bazdmegwould be like periodic01:09
bazdmegit is quite hard to beat01:09
HeikoS_mobileBut on any real problem, it is impossible to learn the promoters of this thing01:09
bazdmegit is basically - do the same thing forever01:09
bazdmegwell it is real problem01:09
bazdmegI mean it is real data01:09
HeikoS_mobileA periodic kernel plus rational quadratic as a noise model on linear regression does the same01:09
bazdmegINTERNET BAZDMEG SCALE01:09
HeikoS_mobileBut these are not interesting problems01:09
HeikoS_mobileInternet scale?01:10
HeikoS_mobileWhat's your N?01:10
bazdmeghaha well it is like visits of website01:10
bazdmegI had to reduce shitload of data to get that01:10
HeikoS_mobileInverting kernel matrix?01:10
bazdmeghaha no the data is small I am joking01:10
bazdmegbut you've never seen that much data01:10
bazdmegI had to reduce ;)01:10
HeikoS_mobileWe do these problems in our assignments here01:10
HeikoS_mobileAll periodic models work well01:11
HeikoS_mobileHaha01:11
HeikoS_mobileThing is that the marginal likelihood inherits all the periodicity01:11
HeikoS_mobileSo you immediately get stuck when optimising it01:11
HeikoS_mobileWhich means, you get the solution you put in initially01:12
HeikoS_mobileAnd you can't learn shit01:12
bazdmeghaha01:12
bazdmegHeikoS_mobile: yes that's what he got01:12
bazdmegbut01:12
bazdmeggpatt was much better01:12
HeikoS_mobileYou know this kernel grammar by the Cambridge guys?01:13
bazdmegno01:13
HeikoS_mobileThat's much cooler01:13
HeikoS_mobileLemme check01:13
bazdmegkernels are shit01:13
bazdmeg:D01:13
bazdmegshow me how to run it on my scale01:13
HeikoS_mobileEasy01:15
HeikoS_mobileBtw upload your dataset to the automated statistician01:16
HeikoS_mobileIt uses this kernel grammar01:16
HeikoS_mobileGives you a latex with the same plot you showed me01:16
HeikoS_mobileKinda cute01:16
bazdmegyeah I know01:16
HeikoS_mobileAnd no spectral mixture kernel01:16
bazdmegyeah it just01:17
bazdmeglike adds some sine01:17
HeikoS_mobileYeah they have a generative grammar01:17
HeikoS_mobileAnd are careful about parameters01:17
HeikoS_mobileIt also easily get linear plus periodic01:17
HeikoS_mobileMuch more actually01:17
HeikoS_mobilebazdmeg: and for scale, check random features01:18
HeikoS_mobileOr sonney2k svm tricks01:18
HeikoS_mobileHe did that 15 year ago01:18
bazdmegHeikoS_mobile: vowpal wabbit01:18
bazdmegeverybody use that01:18
HeikoS_mobileWhat nips now raves about01:18
HeikoS_mobileWe should update backend01:18
HeikoS_mobileI guess01:18
HeikoS_mobileIt's good01:18
bazdmegit is not01:19
bazdmegbut everything else is bazdmeg01:19
HeikoS_mobileHaha01:19
HeikoS_mobileYou can use it with random feature kernels btw01:19
bazdmegit fails badly01:19
bazdmegI mean if it doesn't work01:19
bazdmegit segfault or so01:19
HeikoS_mobileIf something as easy as a linear model fails it is almost always the users fault01:20
HeikoS_mobileOh01:20
bazdmegbut it is very versatile01:20
HeikoS_mobileSegfault??01:20
HeikoS_mobileHaha01:20
HeikoS_mobileNice01:20
bazdmegyeah it can segfault on bad input01:20
HeikoS_mobileHappy that shogun got rid of those after all01:20
HeikoS_mobileHad quite a few in the past01:20
HeikoS_mobileBtw01:21
HeikoS_mobileI really like your new parameter map01:21
HeikoS_mobileSuch a relief01:21
HeikoS_mobileLook forward to delete Parameter.cpp01:21
bazdmegwell it is quite obvious01:22
bazdmegit can be much more sophisticated01:22
HeikoS_mobileObvious?01:22
HeikoS_mobileYeah sure01:22
HeikoS_mobileIt's the same idea as is implemented already01:22
HeikoS_mobileJust using c++01:22
HeikoS_mobileRather than c8901:22
bazdmegwell 'any' is a bit fancy01:22
bazdmegit is the best 'any' around there (tm)01:22
HeikoS_mobileYou know how we did it before?01:23
bazdmegyes01:23
HeikoS_mobileHaha :)01:23
HeikoS_mobileVoid pointer01:23
HeikoS_mobilePlus enum01:23
HeikoS_mobileBut was more powerful01:23
HeikoS_mobileWe had strings if sgvector of sgmatrix01:23
bazdmegit is a bit crazy01:24
HeikoS_mobileLet's delete it next week01:24
HeikoS_mobileAfter Sanuj is merged01:25
bazdmegHeikoS_mobile: you can't even imagine what crazy thing I am now doing01:25
HeikoS_mobileThen imagine it for me01:25
HeikoS_mobileWhat isn't01:25
HeikoS_mobileIs it01:25
bazdmegI just wrote an IPython notebook to create 18 adv campaigns01:25
bazdmeg:D01:25
HeikoS_mobileHaha01:25
bazdmegit is like a plumber shit01:26
HeikoS_mobileDon't tell wiking he will bazdmeg you01:26
bazdmegis this I was studying maths for01:26
HeikoS_mobileWell get a better job01:26
bazdmeghahaa01:26
bazdmegwell01:26
HeikoS_mobileDon't sell yourself01:26
bazdmegno I am very good there but I have to do some dirty stuff sometimes01:26
HeikoS_mobileTo me seems like you leave a lot of life energy there01:27
HeikoS_mobileBut can be good of course01:27
HeikoS_mobileJust gotta be careful01:27
HeikoS_mobileAs getting older01:28
bazdmegit is like some cost for doing something meaningful01:28
HeikoS_mobileAnd the corp doesn't give a damn about wasting their wheels, plenty new ones around01:28
HeikoS_mobileWell we better don't discuss this public ;)01:28
HeikoS_mobileYour good there01:28
HeikoS_mobileLong live yandex01:29
bazdmeghah lets switch01:29
HeikoS_mobileLol01:29
HeikoS_mobileNot part of my iPhone duct01:29
HeikoS_mobileDict01:29
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has quit [Read error: Connection reset by peer]01:55
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has joined #shogun01:56
-!- lambday [569de6b3@gateway/web/freenode/ip.86.157.230.179] has quit [Ping timeout: 250 seconds]02:02
-!- HeikoS_mobile [~Mutter@host-92-0-162-192.as43234.net] has quit [Remote host closed the connection]02:09
@wiking:>>>>>>>>>>>>02:28
bazdmegwiking: !02:34
-!- besser82 [~besser82@fedora/besser82] has quit [Ping timeout: 240 seconds]03:06
-!- GandalfTheWizard [~Eva@112.10.171.169] has joined #shogun03:13
-!- GandalfTheWizard [~Eva@112.10.171.169] has quit [Client Quit]03:15
-!- GandalfTheWizard [~Eva@112.10.171.169] has joined #shogun03:25
shogun-buildbotbuild #26 of memleak - valgrind is complete: Failure [failed memory check]  Build details are at http://buildbot.shogun-toolbox.org/builders/memleak%20-%20valgrind/builds/26  blamelist: Heiko Strathmann <heiko.strathmann@gmail.com>, lambday <heavensdevil6909@gmail.com>, Soumyajit De <heavensdevil6909@gmail.com>05:30
shogun-buildbotbuild #1027 of nightly_none is complete: Failure [failed test]  Build details are at http://buildbot.shogun-toolbox.org/builders/nightly_none/builds/1027  blamelist: Heiko Strathmann <heiko.strathmann@gmail.com>, lambday <heavensdevil6909@gmail.com>, Soumyajit De <heavensdevil6909@gmail.com>05:36
-!- GandalfTheWizard [~Eva@112.10.171.169] has quit [Quit: Leaving.]05:36
-!- Saurabh7 [~Saurabh7@117.202.197.85] has joined #shogun06:14
Saurabh7HeikoS_web, still here ? :)06:24
Saurabh7HeikoS_web, get_feature_vector is not working here06:28
Saurabh7its gives us the sample vector for an id06:28
Saurabh7what is needed is vector with values of a particular feature for all sample ids06:30
shogun-buildbotbuild #1157 of nightly_default is complete: Failure [failed test test_1 notebooks]  Build details are at http://buildbot.shogun-toolbox.org/builders/nightly_default/builds/1157  blamelist: Heiko Strathmann <heiko.strathmann@gmail.com>, lambday <heavensdevil6909@gmail.com>, Soumyajit De <heavensdevil6909@gmail.com>06:33
-!- OXPHOS [c68f0c0c@gateway/web/freenode/ip.198.143.12.12] has quit [Ping timeout: 250 seconds]06:39
-!- GandalfTheWizard [~Eva@112.10.171.169] has joined #shogun07:04
-!- OXPHOS [c68f0c0c@gateway/web/freenode/ip.198.143.12.12] has joined #shogun08:25
-!- sanuj [~sanuj@45.127.54.49] has joined #shogun08:42
-!- Saurabh7 [~Saurabh7@117.202.197.85] has quit [Remote host closed the connection]08:53
-!- GandalfTheWizard [~Eva@112.10.171.169] has quit [Quit: Leaving.]09:09
sanujHeikoS_web, there?09:23
-!- besser82 [~besser82@fedora/besser82] has joined #shogun09:43
-!- mode/#shogun [+o besser82] by ChanServ09:43
sanujbazdmeg, yo09:54
-!- HeikoS_mobile [~Mutter@82-132-216-95.dab.02.net] has joined #shogun10:38
-!- HeikoS_mobile [~Mutter@82-132-216-95.dab.02.net] has quit [Remote host closed the connection]10:45
-!- Saurabh7 [~saurabh@1.39.12.41] has joined #shogun11:04
-!- HeikoS_mobile [~Mutter@82-132-216-95.dab.02.net] has joined #shogun11:24
HeikoS_mobileSaurabh7:11:24
HeikoS_mobileSoo11:24
HeikoS_mobileI am on phone so hard to type11:24
HeikoS_mobileBut11:24
HeikoS_mobileCan't you change the loop order11:24
Saurabh7HeikoS_mobile, the problem is we ahve a subset11:24
HeikoS_mobileYou do something with all the features or vector 1 then all features of vector 211:25
HeikoS_mobileEtc right?11:25
Saurabh7we here we need all values of a particular feature11:25
HeikoS_mobileSure11:25
HeikoS_mobileBut you do that with all active vectors right?11:25
Saurabh7yes only with active vectors11:26
HeikoS_mobileAnd what do you do with the first feature?11:26
HeikoS_mobileSomething that affects the others?11:26
Saurabh7get all values11:26
Saurabh7sort it11:26
Saurabh7start with first11:26
Saurabh7caluclate a criteria using it11:26
HeikoS_mobileOk, then just sort all components at once11:26
Saurabh7compare for all features11:26
HeikoS_mobileThis way you can go through the vectors one by one11:27
HeikoS_mobileEvery time you touch a vector11:27
HeikoS_mobileAdd all components to sorted set11:27
HeikoS_mobileOne set for each feature11:27
HeikoS_mobileYou see?11:27
HeikoS_mobileRather than doing features one by one11:27
HeikoS_mobileYou process all at once11:27
HeikoS_mobileAnd then this allows you to traverse data column wise11:28
HeikoS_mobileAt least this is my take on it right now11:28
HeikoS_mobileCan you share a link with the code?11:28
Saurabh7but how do I sort the vlules of features11:28
Saurabh7this are rows11:28
Saurabh7while samples are columns11:28
Saurabh7https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/multiclass/tree/CARTree.cpp#L52411:28
HeikoS_mobile40411:29
Saurabh7what ?:D11:29
Saurabh7HeikoS_mobile, https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/multiclass/tree/CARTree.cpp11:30
Saurabh7524 line11:30
-!- HeikoS_mobile [~Mutter@82-132-216-95.dab.02.net] has quit [Ping timeout: 246 seconds]11:33
-!- HeikoS_mobile [~Mutter@82-132-216-95.dab.02.net] has joined #shogun11:36
HeikoS_mobileBack11:36
-!- HeikoS [~heiko@82.113.183.181] has joined #shogun11:36
-!- mode/#shogun [+o HeikoS] by ChanServ11:36
@HeikoSSaurabh7: jo11:36
Saurabh7wo11:36
@HeikoSnow on train wifi11:36
@HeikoScan you send the link again?11:36
Saurabh7https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/multiclass/tree/CARTree.cpp#L52411:36
@HeikoSok11:37
@HeikoSSaurabh7: so first of all11:37
@HeikoSfeats[j]=mat(i,j);11:38
@HeikoSthis give a double copy11:38
@HeikoSas mat already is a copy11:38
Saurabh7yes11:38
Saurabh7but this has to be done somewhere11:39
Saurabh7I mean if we want to access rows11:39
Saurabh7but double copy is bad11:39
-!- HeikoS_mobile [~Mutter@82-132-216-95.dab.02.net] has quit [Remote host closed the connection]11:39
@HeikoSSaurabh7: so the main thing where you need all data is the sorting11:40
Saurabh7yes and then11:40
Saurabh7do some calculation11:41
Saurabh7but yeah the sorting is main11:41
@HeikoSSaurabh7: very bad :)11:41
@HeikoSas doesnt help at all11:41
@HeikoSonly costs11:41
@HeikoSbut lets see this sorting thing11:41
@HeikoSSaurabh7: so my point is11:41
@HeikoSthe outer loop is over features right?11:41
@HeikoSand all loop iterations are independent11:41
@HeikoSright?11:41
@HeikoScould be done in parallel?11:41
@HeikoSthis means11:41
@HeikoSthat you can think of this differently11:42
@HeikoSrather than doing all features one after another11:42
@HeikoSprocess all of them *at once*11:42
@HeikoSso no loop over features outside11:42
@HeikoSbut a loop over vectors11:42
Saurabh7that will be same as transpose11:42
@HeikoSnonon11:42
@HeikoSit is more a different way of thinking about the computation that is being done11:43
@HeikoSif all iterations of the loop are independent11:43
@HeikoSand inside one iteration of the loop, you touch all vectors (that particular feature of all vectors)11:43
@HeikoSthen you can instead do11:44
@HeikoSyou iterate over all vectors in the outer loop11:44
@HeikoSand inside one iteration, you "update" the things you do for all components of the vector11:44
Saurabh7right now the update is only getting the feature value11:45
@HeikoSneeds quite a bit of re-factoring the code11:45
@HeikoSbut first it is important to understand the high level idea11:45
@HeikoSof processing all features at once11:45
@HeikoSrather than one after another11:45
Saurabh7so if we loop over all vectors in outer loop11:46
@HeikoSSaurabh7: ok lets simplify a bit11:46
@HeikoSI want to get the idea across11:46
@HeikoSit is independent of RF11:46
@HeikoSthink you have a big matrix11:46
Saurabh7ok11:46
@HeikoSyou divide it into 4 blocks11:46
@HeikoSnow you want to compute the sum of each block11:46
@HeikoSyou get 4 numbers11:46
@HeikoSok?11:46
@HeikoSso far so good11:47
Saurabh7ok :)11:47
@HeikoSnow: you want to permute the matrix, and do the same thign again11:47
@HeikoSgives you 4 more numbers11:47
-!- sanuj [~sanuj@45.127.54.49] has quit [Ping timeout: 252 seconds]11:47
@HeikoSnow you want to do this 100s of times11:47
Saurabh7yep11:47
@HeikoSwhich gives you 100s of 4 numbers11:47
@HeikoSget it?11:47
@HeikoSok11:47
@HeikoSrather than having a loop with 100 iterations11:47
@HeikoSwhere inside, you compute the block wise sums11:47
@HeikoS(which is the naive way)11:48
@HeikoSyou can instead do11:48
@HeikoSyou iterate through the matrix *once*11:48
@HeikoSand then for every element you touch, you figure out (for each permutation of the big matrix) to which of the 4 numbers it is added (for all 100 permutations)11:48
@HeikoSso then you have a single pass over the matrix11:49
@HeikoSand compute block wise sums for 100 permutation11:49
@HeikoSs11:49
@HeikoSget that?11:49
Saurabh7ok i see11:49
@HeikoSand it is way faster, as you can go through the matrix in memory order, rather than kind of random access from the permutations11:50
@HeikoSso now for the RF11:50
@HeikoSsimilar idea11:50
@HeikoScurrently, you have a loop over all feautres, and you do something to them, every loop iteration is independent11:50
@HeikoSand one loop iteration touches the particular feature of all vectors11:50
Saurabh7yes11:50
@HeikoSinstead, you can iterate through the vectors, and then update (just like the 100x4 terms in the sum before) the part for the corresponding features11:51
@HeikoSthis way, you cann access data in column wise form11:51
@HeikoSjust need to preallocate some things11:51
@HeikoSjust lik ebefore11:51
@HeikoSwe needed to pre-allocate the 4 numbers for each of the 100 permutations11:51
@HeikoSyou can ask lambday if you have more questions on this11:51
@HeikoSit is a tricky one, but might help11:51
@HeikoSa lot in fact11:51
@HeikoSSaurabh7: back in 5 mins11:51
-!- HeikoS [~heiko@82.113.183.181] has quit [Quit: Leaving.]11:52
Saurabh7yes I understand the idea11:52
-!- HeikoS [~heiko@82.113.183.181] has joined #shogun11:54
-!- mode/#shogun [+o HeikoS] by ChanServ11:54
@HeikoSSaurabh7: so the sorting is the issue11:54
@HeikoSSaurabh7: doing that is hard11:54
@HeikoSas you need to touch all11:54
@HeikoSbut once things are sorted, should be easier11:55
@HeikoSSaurabh7: so I suggest11:55
@HeikoSin the train call11:55
@HeikoSyou create a transposed copy of the features11:55
@HeikoSand then sort each column (that is sortig features)11:55
@HeikoSand then store that somewhere11:56
Saurabh7HeikoS, ok yeah thats one way with transpose11:56
@HeikoSbut this is different to whats currently happening11:56
@HeikoSas you re-sort many times here11:56
@HeikoSI mean, you can just sort *once* at the start11:56
Saurabh7HeikoS, no there is no re sort11:57
@HeikoSand then you can use that sorted matrix everywhere11:57
@HeikoSyou just have to mask it11:57
@HeikoSoh11:57
@HeikoSsorry11:57
@HeikoSlet me read11:57
Saurabh7HeikoS, there is no resort here11:57
Saurabh7each row is accesed once11:57
@HeikoSyou only compute the best feature once?11:57
Saurabh7that row is sorted and the index are traveersed11:58
@HeikoSI thought you did that for multiple subsets11:58
@HeikoSin the RF11:58
Saurabh7no11:58
Saurabh7this thing happens once11:58
Saurabh7on the indices left out11:58
Saurabh7we do it again11:58
@HeikoSyou were talking about changing subsets before?11:59
Saurabh7HeikoS, https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/multiclass/tree/CARTree.cpp#L43711:59
@HeikoSI mean this is cart tree11:59
@HeikoSyeah11:59
@HeikoSbut if you have a RF11:59
@HeikoSdont you do all this multiple times?11:59
Saurabh7ah in rf yes11:59
@HeikoSok11:59
Saurabh7yes we will do multiple times11:59
@HeikoSso my point is11:59
Saurabh7oh yes taht would be good now isee :)11:59
@HeikoSprecompute the sorting11:59
@HeikoSto-reuse in CARTtree12:00
Saurabh7ok now it makes sense12:00
@HeikoSand then inside cart-tree12:00
@HeikoSassume you have the transposed feature matrix sorted12:00
@HeikoSand then go through that vector wise12:00
Saurabh7yes yes thats a good idea12:00
@HeikoSapplying the trick i mentioned12:00
@HeikoSso this is two steps now12:00
@HeikoS1.) precompute sorted transposed matrix (refactoring the existing code to use that), not changing loop order yet, passing tests12:01
@HeikoS2.) change loop order (f still needed)12:01
@HeikoSSaurabh7: sorting and subsets are somehow redundant right?12:01
@HeikoSif you sort all once at beginning12:01
@HeikoSthen applying a subset doesnt change the fact that things are sorted12:02
Saurabh7oh but we need to sort only form active subsets12:02
@HeikoSas long as subset indices are also sorted12:02
@HeikoSyeah but you can mask that easily12:02
@HeikoSlike imagine your data is12:02
@HeikoS[4,3,2,1]12:02
@HeikoSyou sort12:02
@HeikoS[1,2,3,4]12:02
Saurabh7ye skip which are niot needed12:02
@HeikoSyou apply subset [0,2,3] and get [1,3,4]12:02
@HeikoScool12:03
@HeikoSand if you sort the transposed matrix12:03
@HeikoSyou get column wise access for free12:03
@HeikoSBUT I think, you can still do something about your loop12:03
@HeikoSwhich call in CART/RF takes most time? did you profile?12:03
Saurabh7sort12:04
Saurabh7HeikoS, that is here https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/multiclass/tree/CARTree.cpp#L48612:04
Saurabh7same one12:04
@HeikoSok then12:05
-!- sanuj [~sanuj@45.127.54.49] has joined #shogun12:05
@HeikoSthen the speedup for RF should be x-times this is called12:05
@HeikoSand if you iterate in memory order, your cache misses will drop a lot12:05
@HeikoSso thats a good start12:05
@HeikoSSaurabh7: happy?12:06
Saurabh7HeikoS, yes :)12:06
@wikingmuy bien12:06
Saurabh7HeikoS,  the masking is not straight forward tho12:06
Saurabh7for ex above we want 1,2, 4 not 1,3, 4 as output12:07
@HeikoSwiking: jo12:08
@HeikoSSaurabh7: should not be too hard12:08
-!- sanuj [~sanuj@45.127.54.49] has quit [Client Quit]12:08
@HeikoSyou can use a subset stack12:08
@HeikoSor do by hand12:08
@HeikoSsince we dont have subsets on matrices yet12:08
Saurabh7HeikoS, yes need to store indices12:08
@HeikoSSaurabh7: yes12:08
@HeikoSbut keep in mind12:08
@HeikoSyou only need to sort one matrix12:08
@HeikoSand then you can mask that one12:08
@HeikoSwiking: all good?12:09
Saurabh7HeikoS, ok12:09
Saurabh7HeikoS, thanks lot let you know how it goes12:09
@HeikoScool12:09
@HeikoSSaurabh7:  looking forward to see the changes12:10
-!- besser82 [~besser82@fedora/besser82] has quit [Ping timeout: 276 seconds]12:10
@HeikoSwiking: would be cool to have thes ebenchmarks online12:11
@wikingtell me about it :D12:12
OXPHOS@HeikoS: I'm almost done - though the test is failing on LinalgBackendBase*->dot(), LinalgBackendEigen3*->dot() stuff..I think it's some technique details I'm not familiar with. Can I pull now so you can have a look?12:20
@HeikoSOXPHOS: yeah please send a PR for discussion12:21
@HeikoSOXPHOS: awesome!!! :)12:21
@HeikoSOXPHOS: I am in train so my connection might drop12:21
@HeikoSin fact under the ocean right now12:21
@HeikoSbetween france and england :)12:21
OXPHOSHeikoS: don't tell me you live in france but work in england..12:22
@HeikoSnono :)12:22
@HeikoSOXPHOS: just some mini holiday12:22
OXPHOSHeikoS: so convenient..!12:24
@HeikoSOXPHOS: indeed:)12:24
@HeikoSOXPHOS: dont see a PR12:25
OXPHOSHeikoS: I didn't find the feature branch..!12:26
@HeikoSOXPHOS: I can make once12:26
@HeikoSOXPHOS: there is none?12:26
OXPHOSHeikoS: only the old one12:27
@HeikoSOXPHOS: lemme make a new one12:27
@HeikoSOXPHOS: did you ever merge anything to old one?12:27
@HeikoSOXPHOS: because if not, just use that12:27
OXPHOSHeikoS: thx12:27
OXPHOSHeikoS: yes i did..12:27
OXPHOSHeikoS: or maybe you can revert that one12:28
@HeikoSand close your old pr12:28
@HeikoSnow in france12:28
@HeikoSOXPHOS: merged somethig before=12:28
@HeikoS?12:28
@HeikoSin france now12:28
@HeikoSOXPHOS:  no need12:28
@HeikoSOXPHOS: send the PR against develop for now12:29
@HeikoSOXPHOS: i cannot create feature branch12:29
@HeikoSOXPHOS: I asked wiking12:29
@HeikoShe will create one from develop12:29
@HeikoSOXPHOS: he will do in 30 mins12:29
@HeikoSOXPHOS: for now, send to develop12:29
@HeikoSand I can discuss there already with you12:30
@HeikoSsince I got a bit of time in train left12:30
OXPHOSHeikoS: https://github.com/shogun-toolbox/shogun/pull/331012:30
@HeikoSchecking12:32
@HeikoSOXPHOS: good pace that was :)12:32
@wikingmmm12:32
@HeikoStrain internet is too slow for http ;)12:33
@HeikoSloaaaading....12:33
@wikingwwww12:35
@HeikoSOXPHOS: wish I could look at it ;)12:36
@HeikoSf5ing12:36
@HeikoSbazdmeg.github.com12:36
OXPHOSHeikoS: still loading? xd12:37
OXPHOSwiking: no macro?12:37
@HeikoSOXPHOS: it never started12:38
@HeikoSFrench countryside12:38
@HeikoSlove irc12:38
@HeikoSfor its lo-fi minimal bandwidth12:38
@HeikoSworks everywhere12:38
@wiking:>12:38
@wikinghere we go12:38
@wikingbazdmeg.github.com12:39
@wikingI WANT12:39
@wiking:DD12:39
@wikinghow? :)12:39
OXPHOSit's funny i have to use vpn to log onto irc12:39
@wikingor bazdmeg.github.io12:39
@wikingOXPHOS: .cn?12:39
OXPHOSbut i don't need it anymore once i logged in12:39
OXPHOSyep12:39
@wikingHeikoS: ping pong: "12:39
@wikingdo we need this? i mean wasn't the idea for post GSOC stuff was that we will require c++11? @karlnapf12:39
@wiking"12:40
@wiking0/112:40
@wiking?12:40
@wikingwhere is this mister i have irc everywhere?12:40
@HeikoSmacro?12:40
@HeikoScant see the file still12:40
@HeikoSbazdmeg!!!!!!!!!!!!!!!!12:40
@HeikoSmaybe you can paste the PR in here ;)12:41
@HeikoSc++11 +112:41
@HeikoSbut wanted to do a release before12:41
@HeikoSwiking: can we do the templating more elgant?12:41
@HeikoSwas sergeys idea12:41
bazdmegwhatz12:41
@wikingHeikoS: with linalg stuff in it?12:42
@wikingbazdmeg: can we has bazdmeg.github.io? :)12:42
@wikinghttps://github.com/bazdmeg12:42
@wiking40412:42
@wikinghooohohohooooooooooooooooo12:42
@wikingtime to register :)12:42
OXPHOSlol12:42
@wikingHeikoS: so all this stuff that OXPHOS will be doing will only be part post that release no?12:43
bazdmegyes lets register12:43
OXPHOSHeikoS: i'm now doing in init.cpp: #ifdef HAVE_CXX11  if (!sg_linalg)  sg_linalg = std::unique_ptr<SGLinalg>(new shogun::SGLinalg());  #endif12:44
@wikinghttps://github.com/bazdmeg12:44
@wiking:)))12:44
@wikingso12:44
@wikinghow do i create a github.io page bazdmeg ?:)12:44
bazdmeguhmm there is some way12:45
bazdmegyou craete some branch12:45
bazdmegcreate repo12:45
bazdmegbazdmeg.github.io12:45
@HeikoSI wonder whether I get all msgs here12:45
@HeikoSwiking: you seem to be scattering ;)12:45
@HeikoSwiking: yeah hopefully, though we can already put it in now12:45
@HeikoSshow c++11 cleaner way and I am all up for it12:45
@HeikoSf5555512:45
bazdmegand put index.html with BAZDMEG12:45
@HeikoSI guess this is about doing the backend calls12:45
@HeikoSI dont like register, like this template more12:45
@HeikoSbut i like c++1112:45
@HeikoSso share the wisdom12:45
@HeikoSthis is bazdmeg approved12:45
@HeikoSOXPHOS: I have to look later12:45
@HeikoScant discuss right now12:45
OXPHOSHeikoS: also all linalg classes are guarded by  #ifdef HAVE_CXX11 because I want to stay out of the scope of the raw ptr police ;)12:46
@HeikoSsure12:46
OXPHOSHeikoS: sure! i think wiking cares mainly about the C++11 and the macros12:46
@HeikoSyep12:46
@HeikoSseems12:46
@HeikoSbut he speaks in riddles12:46
@HeikoSscatwiking12:47
@wikingno12:47
@wikingwiking mainly cares about the stupid macros for templates12:47
@wiking:)12:47
@wikingthat is sooooo 90s12:47
@wikingsooooooooooooooooooooooooo 90s12:47
@HeikoSI asked 100 times for draft12:47
@HeikoSso this is it, until there is an explcit draft12:47
@wikingit is even more 90s than the friend series12:47
@wikingi never saw there this macro hack12:48
@HeikoScan also copy paste it12:48
@HeikoShaha12:48
@wikingwhich draft had this fucking macro hack?12:48
@wikingyou just said there's a problem12:48
@HeikoSwiking: so I sent it days ago12:48
@wikingwith templated params12:48
@wikingand virtual functions12:48
@wikingthat's all12:48
@HeikoSyesterday the final one12:48
@HeikoSbut idea was ther earlire12:48
@wikingbut i didn't see this macrofucking hack12:48
@wikingidea12:48
@HeikoSyeah templated virtual functions12:48
@wikingidea12:48
@wikingexplicity fuck12:48
@wikingEXPLICIT bazdmeg12:49
@wikingna mind112:49
OXPHOSokay let's do c++17 magic..if any!12:49
@wikingi'lls end the correction12:49
@HeikoSwiking: show12:49
@wikingno need c++1712:49
@HeikoSshow show show12:49
@wiking11 has it12:49
@HeikoScool12:49
@HeikoSI dont like it either12:49
@HeikoSso give better way12:49
@wikinghahaha12:49
@wikingsooooooooo fucking funny12:49
@wikingstd::is gives12:49
@wikingAbout Sexually Transmitted Diseases (STDs) - KidsHealth12:49
@wikinganyhow lemme dig it out12:50
bazdmegyes exactly12:50
@HeikoSlol12:50
@HeikoScool12:50
@HeikoSshould be an easy change12:50
@HeikoSas long as still virtual call of base pointer12:50
@HeikoSah this inet12:52
@HeikoSOXPHOS: I gotta check it later12:52
@HeikoSsorry12:52
@wikingOXPHOS: fix your editor12:52
@wikingfor the weird indents12:52
OXPHOSHeikoS: it's okay. going for dinner soon. also a basic question - sg_linalg->set_gpu_backend(new LinalgBackendViennaCL());12:52
OXPHOSwhen will this pointer be released?12:52
@HeikoSOXPHOS: dont know, details for now12:53
@wikingwhen you set a new one12:53
OXPHOSwiking: i tried. i fix with vim everytime afterwards12:53
@wikingOXPHOS: what r u using for editor?12:53
OXPHOSwiking: atom. recommended by many12:53
@wikingor when the SGLinalg's dtor is called12:53
bazdmegOHOHH12:53
@HeikoSOXPHOS: there is some default backend (eigen3) and then user can change it, thats when the old one goes12:53
@wikingOXPHOS: hahah vim and emacs is recommended by many12:53
bazdmegmy first bachelor student12:53
@wikingatom is not many12:53
@HeikoSyep12:53
@HeikoSbazdmeg: failed? ;:D12:53
bazdmegdefending just now12:53
bazdmeg:D12:53
OXPHOSvim is too geek for me..12:54
bazdmegin the process12:54
@wikingbazdmeg: :)12:54
@wikingOXPHOS: emacs :>12:54
OXPHOSgl!12:54
@HeikoSOXPHOS: gedit12:54
OXPHOSlemme try12:54
@wikingyou just need to find an operating system for it :)12:54
@HeikoSWordPad12:54
@HeikoSnotepad++12:54
@HeikoShahaha12:54
bazdmegtotal commander12:54
@HeikoSamigaShell12:54
@wikingOXPHOS: but yeah any time you set_*_backend12:54
@wikingyou have to release the current one12:55
@wikingor when the dtor is called12:55
OXPHOSwas thinking using unique_ptr for gpubackend12:55
@wikingthat reminds meg12:55
OXPHOSso when set..end is called12:55
OXPHOSi'll copy the backend* to unique_ptr12:55
@wikingOXPHOS: https://github.com/shogun-toolbox/shogun/pull/3310/files#r6803311112:56
@wikingi mean no matter wtf12:56
@wikingyou gotta have a dtor12:56
@wikingto release12:56
@wikingLinalgBackendBase* cpu_backend;12:56
@wikingLinalgBackendBase* gpu_backend;12:56
@wikingright?12:56
OXPHOSyes for now but no for unique_ptr12:57
@wikingi mean those pointers cannot be let there12:57
OXPHOSor just a default one12:57
@wiking?12:57
@wikingque?12:57
@wikingi mean if you have those 2 pointers12:57
@wikingyou should release them12:57
OXPHOSyou are right i should12:58
@wikingonce you release SGLinalg12:58
@wikingperiod12:58
@wiking:)12:58
@wikingmemory is your friend12:58
@wiking:>12:58
OXPHOSyou sure?12:58
OXPHOSi'll take that ;)12:58
@wikingyeah memory is your friend12:59
@wikingjvm is not12:59
@wiking:)12:59
@wikingfuck the gc12:59
@wikingOXPHOS: so for the time being you opted for unaligned memory right?12:59
@wikingand you'll fix that laterz?13:00
OXPHOSwiking: i can fix that once this thing works13:00
@wikingkk13:00
@wikingcommented some stuff13:00
@wikingmore than some13:00
@wikingso fix those minors13:00
OXPHOSwiking: sure thx!13:02
@HeikoSook I am off13:03
@HeikoSthis doesnt lead anywhere13:03
@HeikoSsee you later13:04
@HeikoSOXPHOS: saw my email?13:04
@wikingHeikoS: what does?13:04
@wikingor doesn't?13:04
@wikingyour internet?13:04
@HeikoSwiking: f5555513:04
@wikingbazdmeg what? :D13:04
@HeikoSYEAP :)13:04
@wikingheheh ok13:04
@wikingviva la france13:04
@wikingand the fourier transform13:04
@wikingotherwise we wouldnt be talkign here :D13:04
@HeikoSbazdmeg bazdmegstolovic13:05
@HeikoSyes fourier13:05
@HeikoSlalala13:05
@HeikoSbye :)13:05
@HeikoSill get back later with wine and cheese13:05
OXPHOSHeikoS: only the midterm one13:05
@wikingOXPHOS: plz use internal printers, not std::cerr13:05
@HeikoSyeah13:05
@HeikoSOXPHOS: thats the one I meant13:05
@HeikoS+113:05
OXPHOSSG_SWARNING didn't print anything for me13:05
OXPHOSany idea why?13:05
@wikinggdb/lldb is your other friend13:06
@HeikoSOXPHOS: you gotta activate13:06
@HeikoSsg_obj->get_gloval_io()->set_loglevel(MSG_WARNING)13:06
@wikingdo you need help how to use it?13:06
OXPHOSwill be appreciate!13:06
@wikingok so13:07
@wikinggdb ./program13:07
@wikingb Class::function13:07
@wikingor13:07
@wikingb Filename:<line number>13:07
@HeikoSor MSG_DEBUG13:07
@HeikoSah no13:07
@HeikoSwarning should always be printed13:07
@HeikoSanyways13:07
@HeikoSbye13:07
@wikingand then13:08
@wikingr13:08
OXPHOSbye13:08
@wikingand then you can use13:08
@wikings = as step13:08
@wikingand n = as next13:08
@wikingto walk in the execution13:08
OXPHOSdoes [gdb ./program] suppose to run in terminal?13:08
@wikingyesp13:08
OXPHOScommand not found. guess i'll install it first13:09
@wikingapt-get instlal gdb13:09
@wikingbtw apt-get moo is your friend13:09
OXPHOSalso, i tried to brew ccache today, but failed..can't find some ascii doc13:09
-!- HeikoS [~heiko@82.113.183.181] has quit [Remote host closed the connection]13:09
@wikinghttp://linux.bytesex.org/gdb.html13:09
OXPHOSaah it's working!13:11
-!- Saurabh7 [~saurabh@1.39.12.41] has quit [Quit: Leaving]13:22
@wikingaah bazdmeg14:37
@wikingOXPHOS: u r now in china right?14:37
OXPHOSwiking: yep14:37
bazdmegbazdmeg14:42
-!- Saurabh7 [~Saurabh7@117.202.197.85] has joined #shogun14:48
@wikingbazdmeg14:51
@wiking!14:51
bazdmegwiking: 514:51
bazdmeg414:51
bazdmeg314:51
@wikingbazdmeg: what do we want on the page? :))14:51
bazdmeg214:51
bazdmeg114:51
bazdmegbazdmeg14:51
@wikingbaaazdmeg!!!14:51
bazdmegwiking: BAZDMEG in 72 pt14:51
@wikingok14:51
@wikingdoing it!14:51
bazdmegwiking: green on blue background14:51
bazdmegcomic sans14:51
@wikinggimme css14:53
-!- Saurabh7 [~Saurabh7@117.202.197.85] has quit [Ping timeout: 276 seconds]15:00
@wikinghahahaha15:01
@wikingbazdmeg: you sure you wanna have it like this15:01
-!- OXPHOS [c68f0c0c@gateway/web/freenode/ip.198.143.12.12] has quit [Quit: Page closed]15:02
bazdmegyes15:02
bazdmegbazdmeg: where is it15:02
@wikingok pushed15:06
@wikinghttps://github.com/bazdmeg/bazdmeg.github.io/blob/master/LICENSE15:06
@wikingdunno how long it takes to generate the site15:06
bazdmegcomic sans15:06
bazdmeg!!!!15:06
@wikingi hope u like the license15:06
bazdmegyes15:06
bazdmegwiking: 180pt! olive!15:07
@wiking    font-family: sans-serif;15:07
@wikinggood?15:07
bazdmegcomic sans15:08
bazdmegfont-family: "Comic Sans", sans-serif;15:08
@wikingmmm not good in my ff15:09
@wiking"Comic Sans MS", cursive, sans-serif15:09
@wikingno?15:09
@wikingpushed15:10
bazdmegahh15:10
bazdmegyes15:10
@wikinghttps://bazdmeg.github.io15:10
@wiking\o/15:10
@wikingwooooohoooo15:10
bazdmeguh15:10
bazdmegthat's good as it can be15:10
@wikingheheheh15:11
bazdmegwiking: I am the art director of this website15:11
@wikingfor further improvment people can send issues and prs15:20
@wiking;)15:20
@wiking:D15:20
@wikingbazdmeg: http://giphy.com/gifs/xT0GqpswuzhOqHP6gM15:23
@wikingwe could post this on xmas day15:23
@wiking;)15:23
-!- GandalfTheWizard [~Eva@112.10.171.169] has joined #shogun16:02
-!- GandalfTheWizard [~Eva@112.10.171.169] has quit [Client Quit]16:04
-!- GandalfTheWizard [~Eva@112.10.171.169] has joined #shogun16:05
-!- sanuj [~sanuj@45.127.54.49] has joined #shogun16:11
sanujbazdmeg, yo16:11
sanujbazdmeg, got time?16:12
-!- sanuj [~sanuj@45.127.54.49] has quit [Ping timeout: 276 seconds]16:37
-!- sanuj [~sanuj@45.127.54.49] has joined #shogun17:05
sanujbazdmeg, yoyo17:06
sanujHeikoS_web, can you review a PR?17:22
-!- GandalfTheWizard [~Eva@112.10.171.169] has quit [Quit: Leaving.]18:39
CaBa_are there still any string kernel implementations in shogun that incorporate amino acid properties?19:00
CaBa_sonney2k *ping*19:00
sanujbazdmeg, ping pong19:09
-!- sanuj [~sanuj@45.127.54.49] has quit [Quit: Leaving]20:34
-!- c4goldsw [5da420e6@gateway/web/cgi-irc/kiwiirc.com/ip.93.164.32.230] has joined #shogun21:26
-!- c4goldsw [5da420e6@gateway/web/cgi-irc/kiwiirc.com/ip.93.164.32.230] has quit [Client Quit]21:30
-!- c4goldsw [5da420e6@gateway/web/cgi-irc/kiwiirc.com/ip.93.164.32.230] has joined #shogun21:48
c4goldswHello21:48
-!- c4goldsw [5da420e6@gateway/web/cgi-irc/kiwiirc.com/ip.93.164.32.230] has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]23:10
--- Log closed Thu Jun 23 00:00:51 2016