IRC logs of #shogun for Monday, 2017-07-10

--- Log opened Mon Jul 10 00:00:49 2017
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/943d622bc73c78094e65680cad8bbfcfd4782454 by vigsterkr03:55
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/cc5628d262fb09eac56b6bd8fa5d82df3776886f by vigsterkr04:48
-!- mikeling [uid89706@gateway/web/irccloud.com/x-jathdrlvlcdzbkyj] has joined #shogun06:07
-!- travis-ci [~travis-ci@ec2-54-211-136-94.compute-1.amazonaws.com] has joined #shogun06:28
travis-ciit's Viktor Gal's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/25185497006:28
-!- travis-ci [~travis-ci@ec2-54-211-136-94.compute-1.amazonaws.com] has left #shogun []06:28
@wikingmikeling, here?07:07
-!- iglesiasg [~iglesiasg@217.119.234.214] has joined #shogun07:22
-!- mode/#shogun [+o iglesiasg] by ChanServ07:22
mikelingwiking: ping07:36
mikelinghey07:36
@wikingok07:37
@wikingso i'm wondering how come the sample_null is giving that weird vector back07:38
@wikingmikeling, btw the vector of the same element07:38
@wikingis always the same?07:38
mikelingyes07:38
@wikingmeaning the content of it is always the same when you run the unit test?07:38
mikelingalways07:38
@wikingit's always a vector of -0.018899041693657636607:39
@wikingright?07:39
mikelingyes07:39
@wikingi guess in the code there a set_global_seed in the unit test?07:39
mikelingyes, we have07:39
mikelingset_global_seed(12345);07:39
@wikingwhat happens if you change it to set_global_seed(1)07:40
@wiking?07:40
mikelinglet me have a try07:40
@wikingthe vector in compute_p_value07:40
@wikingis again the same?07:40
mikeling?????????? I don't understand now.07:41
mikelingas you said, the result stay the same07:42
mikelingstill -0.0188990416936576366 after I change the seed to 107:42
mikelingby set_global_seed(1)07:42
mikelingwiking: ^07:42
@wikingoh07:45
@wikingthat is most weird07:45
@wikingso setting the seed does not change anything of that unit test?07:45
mikelingwiking: sorry, sorry, just a second07:45
mikelingI address the right test07:45
@wikingokey07:47
mikelingwiking: ok, it changed to 0.26053161174058914207:47
@wikingok07:47
@wikingbut again07:47
@wikingit's a vector of07:47
@wiking0.26053161174058914207:47
@wikingthe elements are the same07:47
mikelingyes [0.260531611740589142,0.260531611740589142,0.260531611740589142,0.260531611740589142,0.260531611740589142,0.260531611740589142,0.260531611740589142,0.260531611740589142,0.260531611740589142,0.260531611740589142]07:47
@wikingok07:47
@wikingthat is strange07:48
@wikingi wonder what's happening07:52
@wikingin statistical_testing there's literally no prn07:52
@wiking*prng call right?07:52
mikelingwiking: here is the lldb debug process of mine https://gist.github.com/MikeLing/81d827cdbd811acbec54b0cbbefb6ea507:53
mikelingI hind some output and some detail function call of compute_p_value07:54
mikeling* hide07:54
@wikingyeo07:54
@wikingCMeanShiftDataGenerator07:54
@wikingis using prng i guess07:54
mikelingyes, and that's the only place I found related to prng within QuadraticTimeMMD.perform_test_permutation_unbiased_full test07:55
@wikingresult[i]=CMath::randn_double07:55
@wikingthat's in07:55
mikelingit been changed to m_rng->std_normal_distrib();07:56
@wikingfeatures/streaming/generators/MeanShiftDataGenerator.cpp07:56
@wikingyes07:56
mikelingin this line of pr https://github.com/shogun-toolbox/shogun/pull/3906/files#diff-0b5192ff8ca1dff8cad9d9d6384da391L6907:57
@wikingyes07:57
mikelingmmm, it should be fine. Since the randn_double just return what std_normal_distrib() get https://github.com/shogun-toolbox/shogun/blob/be8e005da18d5bb6f6383013158dd0fc4d5d20ba/src/shogun/mathematics/Math.h#L1127-L113007:59
@wikingyep08:00
@wikingi'm really puzzled08:00
@wikingmikeling, okey08:12
@wikingcan i ask you to debug something08:12
@wikingpl08:12
@wikingplz08:12
mikelingsure08:12
@wikingso this is running right the code of CQuadraticTimeMMD08:13
@wikingcan you do a breakline here08:13
@wikinghttps://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/QuadraticTimeMMD.cpp#L57308:14
@wikingand tell me which of the two methods are being called?08:14
@wikingNAM_MMD2_SPECTRUM or NAM_PERMUTATION08:14
mikelingNAM_PERMUTATION08:15
@wikingok08:15
@wikingjust a sec08:15
mikelingwiking: defined in here https://github.com/shogun-toolbox/shogun/blob/develop/tests/unit/statistical_testing/QuadraticTimeMMD_unittest.cc#L39008:16
mikelingthe NAM_PERMUTATION08:16
@wikingah ok08:16
@wikingcool08:16
@wikingjust a sec08:16
@wikingbreakline here https://github.com/shogun-toolbox/shogun/blob/feature/random-refactor/src/shogun/statistical_testing/QuadraticTimeMMD.cpp#L36408:17
@wikingand print the content of result.vector08:17
mikelingoh, I already do that in the morning, I believe it will be a vector contained same elements also08:19
mikelingleet me verify it08:19
@wikingok08:20
@wikingmikeling, okey.... so another story08:24
@wikingif you put this on break does it call it08:24
@wikinghttps://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L20108:25
mikelinglet me see, just a second08:25
@wikingk08:26
mikelingBTW, the result vector is vector=[-0.00157492,-0.00157492,-0.00157492,-0.00157492,-0.00157492,-0.00157492,-0.00157492,-0.00157492,-0.00157492,-0.00157492]08:26
@wikingok so same elements08:27
@wikingok08:27
mikelingyes08:27
mikelingwiking: precompute_permutation_inds() of PermutationMMD has been called08:28
@wikingk08:28
@wikingnow my question is08:28
@wikingif you step till https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L20308:28
@wikingcan you print m_permuted_inds.vector08:29
@wiking?08:29
mikelingsure, a second08:30
@wikingthen step 2 lines down into till https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L20608:30
@wikingand print again m_permuted_inds.vector08:30
mikelingin the beginning, the m_permuted_inds is  vector=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]08:34
@wikingok08:34
mikelingand afte cacluated08:34
mikelingit's ector=[12,45,25,11,21,49,40,2,36,1,19,42,39,31,6,13,32,29,16,47,5,10,14,3,15,26,22,17,24,20,33,7,37,46,30,48,34,18,41,23,0,43,9,44,8,38,4,27,28,35]08:34
@wikingafter std::iota08:34
@wikingor after permutation?08:34
mikelingok08:34
@wikingafter iota it should be a that08:34
@wikingwhat you have showed08:34
mikelingwiking: after the whole loop https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L21408:34
mikelingit's [12,45,25,11,21,49,40,2,36,1,19,42,39,31,6,13,32,29,16,47,5,10,14,3,15,26,22,17,24,20,33,7,37,46,30,48,34,18,41,23,0,43,9,44,8,38,4,27,28,35]08:35
@wikingwhat's the value of m_save_inds08:35
@wiking?08:35
@wikingand what's the value of m_inverted_permuted_inds08:36
@wikingok can you do one thing08:37
@wikingafter allocate_permutation_inds();08:37
mikelingsfter iota, it's [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49]08:37
mikelingafter08:37
mikelingafter permute it's [12,45,25,11,21,49,40,2,36,1,19,42,39,31,6,13,32,29,16,47,5,10,14,3,15,26,22,17,24,20,33,7,37,46,30,48,34,18,41,23,0,43,9,44,8,38,4,27,28,35]08:38
@wikingbefore the for loop create a local prng: auto prng = std::unique_ptr....08:38
@wikingand pass it to https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L20608:38
@wikingas a second argument08:38
@wikingbasically instead of CMath::permute(m_permuted_inds);08:38
@wikingdo CMath::permute(m_permuted_inds, prng.get());08:38
@wikingbecause with the fixed seed CMath::permute without passing prng will always do the very same permutation08:41
@wikingbecause inside CMath::permute you always create a new prng08:41
@wikingand that prng has always the same seed08:41
@wikingif the seed is set globally08:41
@wikingand i think here we want something else :)08:42
@wikingwe want really random stuff08:42
@wikingafter each call08:42
@wikingin this example m_num_null_samples =?08:43
mikelingok, the m_num_null_samples == 1008:44
mikelingI create a prng by auto prng = std::unique_ptr<CRandom>(new CRandom());08:44
mikelingand after CMath::permute(m_permuted_inds, prng.get());08:44
@wikingyes08:44
mikelingm_permuted_inds.display_vector() give me08:44
mikelingvector=[12,45,25,11,21,49,40,2,36,1,19,42,39,31,6,13,32,29,16,47,5,10,14,3,15,26,22,17,24,20,33,7,37,46,30,48,34,18,41,23,0,43,9,44,8,38,4,27,28,35]08:44
@wikingyeah but after each loop08:44
@wikingthey should be different08:45
@wikingright?08:45
mikelingmmm, let me see08:45
@wikingfirst one will be the same08:45
@wikingthat you had previously08:45
@wikingwhen n = 008:45
@wikingwhen when n =1 or the rest08:46
@wikingm_permuted_inds.display_vector() should give you different results08:46
mikelingwiking: it gives me same result for each loop08:46
@wikingmmm that should not be the case08:47
@wikingif you pass the prng08:47
@wikingthis should be the case if you dont pass the prng after each loop08:47
mikelinglike this https://pastebin.mozilla.org/902674208:47
@wikingok oh08:48
@wikingwrong place08:48
@wiking:)08:48
@wikingauto prng = std::unique_ptr<CRandom>(new CRandom());08:48
@wikingshould be outside of the for loop08:48
mikelingoh, sorry08:48
@wikingjust before https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/mmd/PermutationMMD.h#L20308:48
@wikingbtw i hope you know that in lldb you can print an SGVector content like this08:49
@wikingsay in case of m_permuted_inds08:49
@wikingjsut type: p m_permuted_inds.vector08:49
@wikingand it'll print the content of m_permuted_inds08:49
@wikinganyhow08:49
@wikingonce you put the prng outside of the for loop08:49
@wikingand you pass that to permute08:50
@wikingthen each loop you should have a different permutation08:50
mikelingwiking: yes, it is08:53
mikelinghttps://pastebin.mozilla.org/902674408:53
@wikingok good08:54
mikelingeach loop will give me different result08:54
@wikingnow if we go back to that vector08:54
@wikinghttps://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/HypothesisTest.cpp#L7908:54
@wikingthat shouldnt be anymore like full of same elements08:54
@wikingright?08:54
@wikingit should be some random numbers08:54
mikelingyes! it's vector=[-0.0188990416936576366,0.289082631468772888,-0.000296307698590680957,0.0906120724976062775,-0.0715163871645927429,-0.0252181515097618103,-0.213874764740467072,0.412667155265808105,0.154181867837905884,-0.204684354364871979]08:55
@wikingcool08:55
mikelingwithout same element anymore08:55
@wikingperfect08:55
@wikingthis for sure was a problem08:55
@wikingso now what you need to do is the following08:56
@wikingit's only CMath::permute that is still using random08:56
@wikingin a way right?08:56
mikelingyes08:57
@wikingok so now you'll have to check everywhere08:57
@wikingin the code08:57
mikelinglike https://pastebin.mozilla.org/902674508:57
@wikingwhere CMath::permute is used08:57
mikelingok08:58
mikelingand add a prng to them?08:58
@wikingso yeah i mean in case08:58
@wikingthere's a for loop and not just 1 permutation08:58
@wikingthen you'll have to do this08:58
@wikingbut maybe the best is08:59
@wikingthat you force08:59
@wikingCMath::permute(SGVector<T> v, CRandom* rand)08:59
@wikingso theres' no part where rand = NULL09:00
mikelingok, I see09:00
@wikingand maybe define another function09:00
@wikingthat is only09:00
@wikingCMath::permute(SGVector<T> v)09:00
@wikingbut yeah09:00
@wikingwe can leave it as it is now09:00
@wikingbut you need to go through the code09:00
@wikingand see where CMath::permute is being used09:00
@wikingand where CMath::permute is called in a loop09:01
@wikingthen you'll have to do the trick we did this time09:01
@wikingnote!09:01
@wikingwhen you do this patch09:01
@wikingdo note amend or squash09:01
@wikingput it on to of09:01
@wiking39920817b24cac3fb1c6098b8ce484f3a9d8de7d09:01
@wikingok/09:01
@wikingso i can see separately this part of the code09:01
mikelingok, I will keep that in mind09:02
mikelingthank you09:02
@wikingcool09:02
@wikingi dont know if the unit test now passes or not09:02
@wikingbut this definitely was a problem09:02
@wikingbut i would suppose that now after using the same seed09:02
@wikingit should actually has the same output09:03
@wikingunless of course prng was called before09:03
@wikingin some other places :S09:03
-!- geektoni [~geektoni@93-34-128-38.ip49.fastwebnet.it] has joined #shogun09:25
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/3919 opened by geektoni09:47
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/3919 synchronized by geektoni10:00
@wikinggsocers is it an odd or even week/10:47
@wiking?10:47
@wikingi think an even :D10:47
@wikingso prepare the blog posts plz ^ geektoni micmn mikeling10:48
@wikingthis was just a gentle reminder :P10:48
@wikinglisitsyn, btw i know it sounds at first a bit stupid but i'm wondering whether in case of the pip thingy (and as well conda) we shouldn't just fuzzball 1 .so10:53
@wikingmeaning that we would take libshogun.a and put that into swig .so10:53
@wikingbasically this is what tf does10:54
@wikingas i believe we have this layer of separation of libshogun.so and swig interfaces10:56
@wikingbecause we wanna actually be able to ship in one ssytem10:56
@wikingmultiple interfaces10:56
@wikingbut honestly10:56
@wikingi think the general user would like to use either R or python or whatever interface10:57
@wikingand have it as one10:57
@wikingwithout the hassle of having libshogun.so around10:57
-!- HeikoS [~heiko@host-92-0-169-11.as43234.net] has joined #shogun11:03
-!- mode/#shogun [+o HeikoS] by ChanServ11:03
lisitsynwiking: .a into interface .so?11:04
@wikingyes11:04
lisitsynI agree11:04
lisitsyneven if user wants multiple interfaces11:05
lisitsynwiking: it also reduces the need to provide DYLD_LIBRARY_PATH11:05
@wikinghehehe indeed :)11:05
@wikingo fcourse one can lament11:06
@wikingabout the story of why one uses shared libs11:06
@wikingand memory11:06
@wikingand lalalla11:06
@wikingbut in the BULLSHIT age of docker11:06
lisitsynshared libs were useful when we had 1mb11:06
@wikingNOBODY cares anymore of shared libraries and that stuff11:06
@wikingman this11:06
@wikingthis11:06
@wikinghttp://money.cnn.com/2017/07/07/technology/google-dandelion/index.html11:06
@wikingTHIS IS THE FUCKING BULLSHIT11:06
@wikingthis technology is 40 years old at least11:07
@wikinglike AC11:07
@wikingi have the very same system installed in serbia (NOTE SERBIA)11:07
@wikingfor 4k EUR11:07
@wikingin my house11:07
@wikingwhen things are going out of hands....11:08
@wikinganyhow yeah11:08
@wikingmaybe we should just forget the story11:08
lisitsynhah11:08
@wikingand interface libs11:08
@wikingare actually the whole thing in one11:08
lisitsynwiking: there is an idea from some system11:09
lisitsynlet me lookup11:09
@wikinganyhow the official packages11:09
@wikingif we would ever have one11:09
@wikinglike R or pypi11:09
@wikingetc11:09
@wikingthey would anyways would need to ship something like that11:10
@wikingif they are precompiled11:10
lisitsynhttp://nixos.org11:13
lisitsynwiking: huh found11:13
@wikingpackaging?11:13
@wikingi think i saw this one11:13
lisitsynwiking: so there is a graph11:14
lisitsynof A -> B and so on11:14
lisitsynbut no versions11:14
lisitsynso you fix the versions and try to test the whole11:14
lisitsynand then deploy this fixed thing11:14
lisitsynthis reminds me that there are alternatives to using dynamic libs all around11:15
lisitsyn:)11:15
@wiking:)11:15
lisitsynwiking: we link everything static way here at my job11:16
lisitsynthis makes you independent of system you're running at11:16
@wiking\o/11:16
lisitsynit is just x86_64 for you11:16
@wikingyeah i mean11:19
@wikingwhen you told me11:19
@wikingthat you static ompile your code11:19
@wikinginto the interpreter11:19
@wikingtaht's some heavy weight shit :D11:19
@wiking./bazdmeg11:20
@wikingand everything is running11:20
@wiking:D11:20
@wiking./shogun11:20
@wiking:DDDDDDDDDDDDd11:20
@wikingwhich is a python interpreter11:20
@wikingand all that in one11:20
@wikingHeikoS, what do you think &11:21
@wiking^11:21
@wikingshall we just ship a whole python interpreter with shogun11:21
@HeikoSwiking: think about?11:21
@wikingand then everybody is happy? :D11:21
@HeikoSwiking: Lol11:21
@HeikoSwhat?11:21
@HeikoSlike the guys from graphlab?11:21
@wikingwell just thinkering11:21
@wikingyeah11:22
@wikingthose people11:22
@wikingthe Tika11:22
@wikingtuka11:22
@wikingpuri11:22
@wikingwhat was their last name before apple bought them?11:22
@wikingturi!11:22
@HeikoSI dont know11:22
@HeikoSwhatever11:22
@wikingman  that was even better11:22
@wikingc++ compiler with the whole code11:22
@wiking\o/11:22
@HeikoSbut is there a specific reason why we want to join this shit-wave?11:22
@wikingHeikoS, anyhow rather about this11:22
@HeikoSif we integrate with conda, that is kind of that no?11:23
@wiking[16:51]  <wiking> lisitsyn, btw i know it sounds at first a bit stupid but i'm wondering whether in case of the pip thingy (and as well conda) we shouldn't just fuzzball 1 .so11:23
@wiking[16:51]  <wiking> meaning that we would take libshogun.a and put that into swig .so11:23
@wiking[16:51]  <wiking> basically this is what tf does11:23
@wikingmmm Dougal does it a bit differently11:23
@wikingand he still uses the 2 layer thing11:23
@wikingmeaning core libshogun.so and shogun.so interface lib11:23
@wikingbut i'm saying that i dont see really nowadays a point11:23
@wikinginto this nice engineering11:23
@wikingbecause NOBODY cares anymore about c++ api11:24
@wikingand shared libraries11:24
@wikingthey just wanna have a module that they could11:24
@wikingconda install11:24
@wikingpip install11:24
@wikingR install11:24
@wikingwhetever install11:24
@wikingand that magically works11:24
@wikingwhich is OF COURSE11:24
@wikingnormal11:24
@HeikoSmmmh11:24
@wikingi mean check out TF11:24
@HeikoSand if you want to use shogun with your existing python installation?11:24
@wikingthey dont fucking ship c++ lib anywhere11:24
@HeikoSall these libs that are so easy to install11:25
@HeikoSthey always create such a mess downstream in your workflow11:25
@wikingnono forget the ship with an interpreter11:25
@wikingthat was rather a joke11:25
@wikingi'm saying that maybe we should start shipping 1 shared lib11:25
@wikingper interface11:25
@HeikoSah11:25
@HeikoSrather than c++ lib and then python lib11:25
@wikingyes11:25
@HeikoSgot it11:25
@wikingwe would just fuzzball everything11:26
@wikinginto one .so11:26
@wikingand that's like python's shogun.so11:26
@wikingthen R's shogun.so11:26
@wikingetc etc etc11:26
@HeikoSthat would make running things a bit easier11:26
@wikingno separate libshogun.so11:26
@wikingthat you need to LD_LIBRARY PATh11:26
@HeikoSno more ld path setting and so11:26
@wikingetc etc etc11:26
@wikingyeye11:26
@HeikoSbut there would still be the stnadalone libshogun.so11:26
@wikingit's just one fuckign switch :)11:26
@wikingwell you could have one11:26
@HeikoSbut it just a separate thing from the python one11:26
@wikingbut your python .so wouldn't use it11:27
@wikingyour c++ code could of course use it11:27
@wikingi mean in the case11:27
@wikingwhen you wanted to have on one system11:27
@HeikoSthis also makes packaging a bit easier I guess11:27
@wikingR python ruby and jvm11:27
@HeikoSeg for .deb11:27
@wikingand all those interfaces11:27
@HeikoSnoi more depoendencies11:27
@wikingmmm11:27
@wikingon deb it's tricky11:27
@wiking:D11:27
@wikingbut yeah11:27
@wikinglets rather concetrate11:27
@wikingon language packages11:28
@HeikoSyeah11:28
@HeikoSagreed on that11:28
@wikinglike gem, maven, pypi, R11:28
@wikingetc11:28
@HeikoSwe need more coverage for the languages11:28
@wikingso those things would anyways need a libshogun.so11:28
@wikingshipped somehow11:28
@HeikoSand ease of install11:28
@wikingbecause you cannot assume11:28
@wikingthat they'll have it installed it somewhow11:28
@wikingso either you put a separate libshogun.so in there11:28
@wikingnext to the language's swig interface so11:28
@wikingor just fuck it11:29
@wikingand put everything into one11:29
@wiking:)11:29
lisitsynagain, I think it is a good idea11:29
@wikingsee tensorflow11:29
@wikingthey do this11:29
lisitsynwe just change our targets a bit11:29
lisitsynthe worst thing that happens in the case11:29
@wikingpypi package of tensorflow11:29
lisitsynis bloat of size11:29
@wikingships one fuzzball of .so11:29
lisitsynwho cares11:29
@wikingthat is the python interface including the c++ code11:29
@wiking*shared lib of tf11:29
@wikingand that's all11:30
@wikingon our end11:30
@wikingthis is not such a horror job11:30
@wikingas we just switch the linking11:30
lisitsynno it is just changing the linking11:30
@wikingof the swig interface11:30
@HeikoSDO IT11:30
@wikingwith shogun11:30
@HeikoSDO IT11:30
@HeikoSDO IT11:30
lisitsynhh11:30
@wiking:)11:30
@HeikoS:D11:30
@wikingmuezli11:31
@HeikoSmikeling: I havent got the global function calls working yet, but it is close. Maybe later today11:31
@wikingthat's all11:31
@HeikoShey btw11:31
@HeikoSwiking, lisitsyn shall we release BSD soon?11:31
@HeikoSlisitsyn: you have some header magic?11:31
@wikingHeikoS, feature/eigen-lapack11:31
lisitsynHeikoS: I am thinking of way to clean up licences11:31
@HeikoSremove all gpl headers11:31
@wikingHeikoS, if you use linux that should work already....11:31
@HeikoSput BSD :D11:31
lisitsynI mean yes it is easy to get list of authors11:31
lisitsynbut some things would be strange11:31
@HeikoSwiking: ah cool11:31
@HeikoSwiking: will check it out11:32
lisitsynthere are some glitches11:32
@wikingHeikoS, problem is that there seems to be a bug with cmake's Lapack detector11:32
@wikingHeikoS, so i could make it detect (even with -DBVA_VENDOR=Intel)11:32
@wikingconda's mkl11:32
@wikingconda's openblas works...11:32
lisitsynHeikoS: we have things like local email (master@mymachine) and stuff like that11:32
@HeikoSwiking: ah that is good, ok anything I can push dougal to help with?11:32
@wikingHeikoS, anyhow you can make eigne to use your lapakc backend11:32
@HeikoSlisitsyn: email not needed11:33
@wikingHeikoS, we need some windows help11:33
@HeikoSlisitsyn: just names11:33
lisitsynHeikoS: same thing with names11:33
@wikingHeikoS, as there's a linking problem11:33
@wikingand i dont get what the fuck11:33
lisitsynHeikoS: so I will come up with some cleaning11:33
@HeikoSwiking: dougal doesnt have a windows machine ...11:33
@wikingyeah11:33
@wikingi know11:33
@wikingbut he did everything :))11:33
@HeikoSlisitsyn: doesnt have t obe perfect11:33
@wikingso it's cool11:33
@HeikoSjust kill all those headers11:33
@HeikoSwiking: great11:33
@HeikoSshould announce that and acknowledge him once it is working11:34
@wikingyes11:34
@wikingnews :)11:34
@wikingman we didn't udpate news for ages11:34
@wiking:DDDD11:34
@wikingneither did our nice students11:34
@wiking:P11:34
@HeikoSwiking: yeah always good to do that straight away11:34
@wikingyep11:34
@wikingmy fault11:34
lisitsynwiking: FAKE_NEWS11:34
@wikingshould have been warning people11:34
@HeikoSpush the guys :)11:34
@wikinglisitsyn, FAAAAAAAAAAAAAAAAAAAAAKE11:34
@HeikoSwiking: so the bsd files11:34
@HeikoSthey are all in this new folder now11:35
@wikingyou mean gpl11:35
@HeikoSshall I move that in a separate repo?11:35
@HeikoSyeah11:35
@wikingmmm ah yeah11:35
@wikingunfortunately we'll hav eto do that11:35
@wikingto comply with gpl11:35
@HeikoSsure11:35
@HeikoShow to reference?11:35
@HeikoScmake git clones it?11:35
@wikingsubmodule is fine11:35
@wikingafaik11:35
lisitsynoh no submodules again11:35
@HeikoSah no11:35
@HeikoSno submodule11:35
@wikinglisitsyn, we have to11:35
lisitsynsheeat11:35
@wikingor i mean11:35
@HeikoScan't we just give a path?11:35
@wikingwe can just not do anything11:35
@wiking:DDDDDDDDDDDD11:36
@wikingand fuck gpl11:36
@wiking:P11:36
lisitsynsubmodule is better than path for sure11:36
@wikingbut man i mean11:36
lisitsynwhat do you mean11:36
@HeikoSbut then we need to constantly update that thing11:36
@wikingwe already have like n+1 request11:36
@wikingwhy MKL is not working11:36
@wikingon debian packages11:36
@wiking...11:36
@wiking(svmlight)11:36
@wikingHeikoS, yeah like with data11:36
@wikingi mean with cmake11:36
@HeikoSwiking, lisitsyn ok then I will submodule it11:36
lisitsynbut we stop developing gpl right?11:36
@wikingyou'd have to do the same11:36
@HeikoSlisitsyn: no11:36
lisitsynI mean we don't update it anyway11:36
lisitsynI am not fancy of adding more gpl deps11:37
lisitsynare you?11:37
@HeikoSlisitsyn: no11:37
@HeikoSbut still maintain11:37
lisitsynyes maintain is like one commit per year anyway11:37
@HeikoSsure11:37
@wiking:>11:37
@HeikoSso then11:37
@HeikoSsubmodule the gpl folder and that's it right?11:37
@wikingyeah that should do it11:37
@wikingand since we are lazy fucks11:38
@wikingwe'll never update it11:38
@wiking:D11:38
@HeikoShaha11:38
@wikingHeikoS, and what by default bsd build?11:38
lisitsynyeah that's what I mean11:38
lisitsynhah11:38
@wikingHeikoS, btw what happened with unit tests? D:11:38
@wikingHeikoS, you'd move those as well :D11:38
@HeikoSwiking: no why?11:38
@wikingor fuck that shit11:38
@wiking?11:38
lisitsynwhy?11:38
@HeikoSguarded (.)11:38
lisitsyntests are not gpl11:38
@wiking:)11:38
@HeikoS8-)11:38
lisitsyn:P11:38
@wikingok i mean i dont wanna go all lawyer here11:38
@wikingso yeah let's assume that it's fine11:39
@wiking:)11:39
lisitsynI think it is fine11:39
lisitsynoh that license is soooo11:39
@HeikoSthey contain includes of non-existing files that are never given to the compiler11:39
@wikingi mean i dont know11:39
@wikingits just i guess11:39
@HeikoSGPL doesnt pass that barrier11:39
@wikingit's border line11:39
lisitsynI don't believe GPL can touch this11:39
@wikingbut who knows :)11:39
@HeikoSmc hammer agrees11:39
lisitsynyes11:39
@wikingk11:39
@HeikoSgood11:40
lisitsynmcmc hammer!11:40
@HeikoSlisitsyn: man11:40
@HeikoSI wanted to call my algorithm like that11:40
lisitsyngood name11:40
@HeikoSbut then I found out some physics guys had that already11:40
lisitsynhaha yes11:40
@HeikoSbut my repo is still called like that :D11:40
@HeikoSok then11:41
@HeikoSIll cycle to work now11:41
lisitsynHeikoS: I explained the concept of 'test' set with turning on that song11:41
@HeikoStalk later11:41
lisitsyn:D11:41
@HeikoS:D11:41
lisitsynHeikoS: that's the only sunny day in moscow today so the same for me11:42
lisitsyngoing to take some bike11:42
lisitsyn:P11:42
-!- travis-ci [~travis-ci@ec2-54-81-148-90.compute-1.amazonaws.com] has joined #shogun11:44
travis-ciit's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/25177203511:44
-!- travis-ci [~travis-ci@ec2-54-81-148-90.compute-1.amazonaws.com] has left #shogun []11:44
@wikinglisitsyn, :DDDDDDDDDDDDDDDDDDDDDDd11:45
@wikinglisitsyn, only sunny day :D11:45
lisitsynwiking: it seems the US is testing climatic sanctions because we have no summer this time11:47
@wiking:))))11:47
-!- HeikoS [~heiko@host-92-0-169-11.as43234.net] has quit [Quit: Leaving.]11:53
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has joined #shogun12:54
-!- mode/#shogun [+o HeikoS] by ChanServ12:54
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/3920 opened by micmn13:21
@wikingmicmn, how do u control the num of threads?13:32
micmnit's just linalg13:35
micmnwiking: ^13:35
@wikingmicmn, -> eigen decides?13:37
micmnyep, standard matrix product13:37
@wikingk13:37
@wikingand i guess u have 4 vcores13:37
@wikingthat's why 4 threadss?13:37
micmnyes13:37
@wikingcool13:41
@wikingthe power of immutable structures :D13:41
@wikingnow it's just time to get unlimited ram13:42
@wiking\o13:42
micmnXD13:44
@wikingok so13:51
@wikinghere13:51
@wikingHERE IS THE PURE GENIUS OF THE INTERNETZ13:51
lisitsynoh13:51
lisitsyn:D13:51
@wikingthere's just really nothing after this horizon13:51
@wikinglisitsyn, https://eros.vision/13:51
@wiking:DDDDDDDDDDDDDDDDDDDDDDDDDD13:51
@wikingi mean man13:51
@wikingGENIOOOOOOOOOOOUUUUUUUUUUUUS! :)13:52
lisitsynhahah13:52
@wikingi mean fuck all the things13:52
@wikingICO for biatch13:52
@wiking:D13:52
@wikingand THEY RAISED ALREADY 100k13:52
lisitsynhaha13:53
@wikingmmm no13:53
@wiking180k13:53
@wikingLOL13:53
@wikingi mean can you believe this13:53
@wikingthis shows the infinite craziness of the internetz13:54
@wiking:D13:54
@iglesiasgHola!13:54
@iglesiasgHeikoS: checking the gpl stuff: https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/kernel/string/DistantSegmentsKernel.cpp#L813:54
@wikingiglesiasg, ^13:54
@iglesiasgwiking: about eros?13:55
@wikingyes13:55
@iglesiasgyeah, I just opened the website13:55
@iglesiasgstill not fired fiuuu13:55
@iglesiasgxD13:55
@wiking:D13:55
@HeikoSiglesiasg: thanks13:55
@HeikoSiglesiasg: well spotted :)13:56
@wikinglisitsyn, best is13:56
@wikinglisitsyn, 2% revenue sharing13:56
@wiking:DDDDDDDD13:56
@wikingi mean essentialy if you invest13:56
@wikingyou are a virtual pimp13:56
@iglesiasgHeikoS: there are a few more I think, let me dig into it13:57
@iglesiasglisitsyn: can tapkee_shogun be updated to bsd? https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/lib/tapkee/tapkee_shogun.hpp#L314:00
lisitsyniglesiasg: for sure14:00
@iglesiasggreat14:00
@wikinghttps://i.ytimg.com/vi/xLw5xDq4YfM/hqdefault.jpg14:02
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/3921 opened by iglesias14:09
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/392114:09
@wikingmicmn, C.o.V.E.R.I.D.G.E :)14:12
@iglesiasgHeikoS: brent slipped through too I think: https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/lib/external/brent.h14:16
micmnwiking: eh? :p14:21
@wikingmicmn, nw... added the comment to the thing14:22
@wikingpr14:22
@wikingneed some ++ on the codecov with some unit testz14:22
@wikingotherwise i'll send this cat your house https://i.ytimg.com/vi/xLw5xDq4YfM/hqdefault.jpg14:22
micmnok sure xD14:23
@wikingthnx14:23
-!- yamz [~myamada@2620:13:0:10:bdae:b37e:9286:1eb6] has quit [Read error: Connection reset by peer]14:24
-!- yammer [~myamada@64.7.137.182] has joined #shogun14:24
-!- yammer [~myamada@64.7.137.182] has quit [Read error: Connection reset by peer]14:27
-!- yammer [~myamada@2620:13:0:10:ad90:f873:79fb:1bee] has joined #shogun14:27
-!- geektoni [~geektoni@93-34-128-38.ip49.fastwebnet.it] has quit [Ping timeout: 260 seconds]14:30
-!- yammerz [~myamada@64.7.137.182] has joined #shogun14:31
-!- yammer [~myamada@2620:13:0:10:ad90:f873:79fb:1bee] has quit [Read error: Connection reset by peer]14:32
-!- geektoni [~geektoni@93-34-128-38.ip49.fastwebnet.it] has joined #shogun14:32
Trixisjust to check, if i need a custom kernel and im using java to interface with shogun, the only way to do it as of now is to compute the inner products in a separate function, and then set the kernel matrix in CustomKernel, right?14:45
@wikingTrixis, how's your fight?14:45
@wikingok sooooo14:45
@wikingif you use java14:45
@wikingyou actually would love to have this14:45
@wikingTrixis, https://github.com/shogun-toolbox/shogun/issues/389214:46
@wikingthis is possible14:46
@wikingand with python it work14:46
@wikings14:46
@wikingand it is possible with swig14:47
@wikingit needs some patches around the swig code though14:47
Trixiswiking: otherwise, my fight is going pretty well so far, got the code that computes my features to interact with shogun properly14:47
Trixiswiking: i see14:47
@wikingbut it is definitely something that should be possible14:47
@wikingonce that'd be fixed14:47
@wikingyou could derive a class from DirectorKernel14:47
@wikingin java14:47
@wikingand basically that'd act like any other kernel in shogun14:48
@wikingthat's actually a great feature of swig14:48
@wikingunfortunately does not work yet with java :(14:48
@wikingi mean in shogun14:48
@wikingin general you can read about it on swig's website14:49
@wikingTrixis, but yeah14:49
@wikingotherwise until the magic thing happens14:49
@wiking you have no better choice atm14:49
@iglesiasgthe LogPlusOne preprocessor is pretty great14:49
@wikingiglesiasg, KILL IT WITH FIRE14:50
@wikingor reimplement it14:50
@wiking:)14:50
@wikingyou know you dictate to sergey what the thing should look like14:51
@iglesiasgwiking: I think we can drop this, right?14:51
@wikingsergey pretends he never saw the code :)14:51
@wikingand implements it14:51
@wikingdone14:51
@wiking:)14:51
@wikinghonestly14:52
@wikingthis thing about gpl14:52
@wikingand being scared of14:52
@wikingis a bunch of lala land14:52
@wikingbut yeah14:52
@wikingKILL IIIIIIIIIIIIIIIIIIIT WITH FIRE!14:52
@wikinglook at linux kernel14:52
@iglesiasgmmm I suppose it might have some use in streaming features14:52
@wikingit's gpl :)14:52
Trixiswiking: kk, sounds good. Guess ill just wrap all kernels with a java interface, lol.14:52
@iglesiasgbut it is a dense preprocessor so I am not sure it can be use in that case14:52
@wikingTrixis,  :)14:54
Trixisat this stage, i just need it to work. This is science after all, software engineering can come later.14:56
@wikinghehehe14:56
@wikingwhat is your use case?14:56
@wikingnuclear reactor stabilizer?14:56
Trixiswiking: haha, no. Computational biology, compound property prediction14:57
@wiking\o/14:57
@wikingawesome14:57
@wikingdont forget we have a doi14:57
@wiking;)14:57
Trixiswiking: ofc, if i get something publishable out of this i sure will cite you14:58
@wiking:)14:58
@wikinglisitsyn, this is just for u "Get 10x Speedup in Tensorflow Multi-Task Learning using Python Multiprocessing15:06
lisitsynwiking: LOL15:06
@wikingman15:06
@wikingthe amoount of spam generated on internet15:06
@wikingis truly amazing15:07
Trixisthe init method in CombinedKernel simply calls init, i.e. compute of each of the subkernels, right?15:07
@wikingyou mean init(lhs, rhs)?15:08
Trixisyeah15:08
@wikingyeah should do that afaik15:08
@wikinghttp://shogun.ml/api/latest/CombinedKernel_8cpp_source.html15:09
@wikingbut yeah15:09
@wikinginit weights the subkernels15:09
@wikingand init's the kernel normalizers15:10
@iglesiasgif anybody can shed some light into how set_preprocessed works I am happy to hear :)15:14
@wikingque?15:14
@wikingit's magico15:14
@wikingdont ask questions that cannot be answered15:14
@iglesiasgexamples/undocumented/python/serialization_complex_example.py15:14
@wiking:D15:14
@iglesiasghahaha15:14
@iglesiasg        feats.add_preprocessor(NormOne())15:14
@iglesiasg        feats.add_preprocessor(LogPlusOne())15:14
@iglesiasg        feats.set_preprocessed(1)15:14
@iglesiasgno idea what that is doing15:15
@iglesiasgif it is saying something like only apply the preprocessor in 1?!15:15
* iglesiasg is afk for a few15:16
@wikingiglesiasg,15:16
@wiking                /** i'th entry is true if features were already preprocessed with preproc i */15:16
@wiking                CDynamicArray<bool>* preprocessed;15:16
@wikingso u can specify15:16
@wikingwhich preprocessors on the featues15:16
@wikinghas already been applied15:16
@wikingi guess15:16
@wikingthis is when you would extend your feature set?15:16
@wikingor i mean i dont get it :D)15:16
@wikingi dont understand why would you add a preprocessor15:17
@wikingthat is already done on the data?15:18
@wikingespecially that set_feature_matrix15:18
@wikingdoes not reset the preprocessed flag15:18
@wikingso say you take a densefeatures class15:18
@wikingdo this magic limbo15:18
@wikingthen you set_feature_matrix15:19
@wikingbut you dont apply there that preprocessor15:19
@wikingthen it's lalala15:19
@wikingi think only the masters can shed some light on this :D15:19
@wikingthese is some heavy sorcery from mordor15:20
@wikingsonney2k, ^ :)15:21
@wikingiglesiasg, or maybe this is like a convenience function15:33
@wikingiglesiasg, where you can easily turn on and off preprocessors15:33
@wikingiglesiasg, cool stuff for parameter searching :D15:33
@wikingjust flip a boolean15:34
@wikingright?15:34
@wikinginstead of add_preprocessor15:34
@wikingremove_preprocessor15:34
@wikinglalalal15:34
@wikingi cannot think about anything else15:34
* iglesiasg is back15:35
@wiking\/\o/\/15:36
Trixiswiking: hence i also have to also call init_normalizer to achieve an equivalent statement, right?15:36
@wikingTrixis, when?15:37
@wikingi mean if you call in combinedKernel.init15:37
@wikingthen that's called15:37
@wikingafter initing all the kernels15:37
@wikingof course in ccase you build yourself15:37
Trixiswiking: after i call init / set the kernel matrix for each of the subkernels15:37
@wikingthe matrix15:37
@iglesiasgwiking: yeah, I agree with your thoughts on the magic limbo15:37
@wikingmmm idk Trixis15:38
@wikingi have to check the code15:38
@wikingbut i mean you need to init the normalizers for sure15:38
@wikingbut the normalizers later15:38
@wikingautomagically applied15:38
@wikingont the kernel matrix15:38
@wikingafaik15:38
@wikingiglesiasg, cool for param search really15:38
@wiking:)15:38
@wikingpretty styleish15:39
@wikingcheck git blame15:39
@wikingmaybe htere's some meaningful log :D15:39
Trixiswiking: i mean, normalisation is it's own identity, hence calling it twice should still yield the same result, right?15:43
@wikingone would hope!15:43
Trixishahaha15:43
@wikingbut yeah i mean15:43
@wikingweird things happen osme time15:44
@wikingif u find a bug15:44
@wikingjust report plz15:44
Trixiskk15:44
Trixisoh, actually, looks like i can just set the customkernel matrices beforehand, then call init in combined kernel, since it simply skips custom kernels15:45
Trixiswell this simplifies it a lot15:45
@wikingman i wish there would be a way15:47
@wikingto put these conversations somehow15:47
@wikingeasily to a structured data15:47
@wikingso that others later could understand this15:47
Trixiswiking: eh i might as well create an example from parts of the code, if you remind me in a couple of months15:53
@wikingTrixis, remind15:57
@wiking:)15:57
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has quit [Ping timeout: 248 seconds]16:06
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/6a21cf1cfd83f756ad07186401d4ceb93639b93a by karlnapf16:11
-!- HeikoS [~heiko@eduroam-int-pat-8-96.ucl.ac.uk] has joined #shogun16:23
-!- mode/#shogun [+o HeikoS] by ChanServ16:23
@wikingHeikoS, ye may16:37
@wikingor i meant hey man16:37
@wiking:)16:37
@wikinghere?16:37
@HeikoSI am16:37
@wikingok16:37
@wikingso apart from whether or not u wanna join to a reggee party16:38
@wikingabout the iterators16:38
@wikingso i was thinking abou tthis16:38
@wikinga bit16:38
@wikingand looking into swig016:38
@HeikoSso whats exactly up? not sure I follow :D16:38
@wikingso i mean are we sure that the whole story works nicely16:39
@wikingi mean i'm not sure why it wouldn't work right16:39
@wiking.begin()16:39
@wiking.end()16:39
@wiking.next()16:39
@wikingthese are the stuff we wanna be able to expose to swig interfaces16:40
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/36842e97c92e79ed4c1095ba66d6152a1d69f170 by karlnapf16:40
@wikingso this should work one would hope16:40
@wikinghttps://stackoverflow.com/a/2724346116:40
@HeikoSah16:40
@wikingi just dont wanna end up where that we have16:40
@wikingall these amazing design16:40
@wikingand realise that swig is magico lando16:40
@HeikoSyou think we are there yet .. thinking about exposingn this to swig16:40
@wikingand we cannot do it16:40
@HeikoSnot sure we want to expose this to swig16:41
@wikingyeye but we would like to16:41
@HeikoS(iteartors)16:41
@wikingor?16:41
@HeikoSnot so sure16:41
@wikingHeikoS, features?16:41
@HeikoSextract_feature_matrix()16:41
@wikingas we were talking about features as iterators16:41
@wikingyeye but that's shito16:41
@HeikoSI would expose conversion methods to the typemapped types16:41
@wikingif it's a streaming matrix16:41
@wiking*feature16:41
@HeikoSthere can also be an API for that16:41
@HeikoSbut internally16:41
@HeikoSwe dont do that stuff16:41
@wikingi mean the good stuff with iterators16:41
@wikingthat that allows us16:41
@HeikoSdue to all the issues with types etc16:42
@wikingdontcare for sreaming or nonstreaming16:42
@wikinganyhow this is just my point16:42
@wikingthat we should think a bit16:42
@wikingabout swig in this context16:42
@wikinglike for example16:42
@wikingsome<>16:42
@wiking:)16:42
@wikinggood stuff16:42
@wikingnone usable as is atm from swig16:42
@HeikoSyeah ok16:43
@HeikoSI get the point16:43
@HeikoSwhats up with some btw?16:43
@wikingwell16:43
@HeikoSwhat about just typemapping it?16:43
@wikingmmm16:43
@wikingit's a template16:43
@wikinghow do you typemap that16:43
@wiking?16:43
@wikingand anyways the problem there is that16:43
@HeikoSno you dont, you are right16:43
@wikingyou would kind of start the work16:43
@wikingthat siwg just partially done16:44
@wikingfor std::shared_ptr16:44
@wikingi mean there's support for it16:44
@wikingbut like not for all the languages etc16:44
@HeikoSmmh16:44
@wikingso if we go done on the path16:44
@HeikoSwhat about decoupling the SWIG api from the rest of shogun16:44
@wikingof Some<>16:44
@wikingok but yeah i mean then you start down on the road of16:44
@wikingnative *16:44
@wikingand some hax0r stuff internally16:45
@wikingprune to errors16:45
@HeikoSI mean like SWIG stays as it is (with reference counting etc)16:45
@wikinghax0r = c++Z feaures16:45
@wikingyeye i get it16:45
@wikingalhotugh16:45
@wikingi wanted to share THIS16:45
@HeikoSand internally we modify some to work with that?16:45
@wikingjust a sec16:45
-!- iglesiasg [~iglesiasg@217.119.234.214] has quit [Quit: leaving]16:45
@HeikoSwiking: I have another question btw: https://travis-ci.org/shogun-toolbox/shogun/jobs/252016173#L350316:46
@HeikoShow to import global functions from java?16:46
@wikingHeikoS, https://github.com/shogun-toolbox/shogun/issues/288016:46
@wikingso that talks about SGRefObject16:47
@wikingHeikoS, https://github.com/shogun-toolbox/shogun/issues/2880#issuecomment-12792364016:47
@wiking:)16:47
@wiking"did get removed for some reason by someone who knows why that16:47
@wikingwas maybe not a good idea?"16:47
@wikingparticularly like this one :D16:47
@HeikoShaha16:48
@HeikoSI think thoralf was that16:48
@wiking"Do not remember. Git logs say that Thorsten removed it. "Obsolete "."16:48
@wiking:D16:48
@wikinggood shit16:48
@HeikoShaha :D16:48
@wiking:)16:48
@HeikoSeasy to re-introduce16:48
@HeikoSso but I agree we have to think this through a bit more16:48
@HeikoSso whats the best approach as of nowß16:49
@HeikoS?16:49
@HeikoSand also see my question above .... any ideas?16:49
@wikingyes16:49
@wikingjust trying to get u an answer16:49
-!- HeikoS [~heiko@eduroam-int-pat-8-96.ucl.ac.uk] has quit [Quit: Leaving.]16:50
-!- travis-ci [~travis-ci@ec2-54-204-59-182.compute-1.amazonaws.com] has joined #shogun16:57
travis-ciit's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/25201616716:57
-!- travis-ci [~travis-ci@ec2-54-204-59-182.compute-1.amazonaws.com] has left #shogun []16:57
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has joined #shogun17:07
-!- mode/#shogun [+o HeikoS] by ChanServ17:07
@HeikoSwiking: sorry had to move place17:08
@wikingk17:12
@wikingHeikoS, so theres' this story17:12
@wiking%module (jniclassname="name") modulename17:12
@wiking If name is the same as modulename then the module class name gets changed from modulename to modulenameModule.17:12
@wikingso there should be a module shogun17:13
@HeikoSimport org.shogun.MulticlassLabels;17:13
@HeikoSthis works17:13
@HeikoSimport org.shogun.get_global_io;17:13
@HeikoSthis doesnt17:13
@HeikoS(it does though in python=17:13
@HeikoS)17:13
@wikingnono17:13
@wikingso there should be a clas17:13
@wikingshogun17:13
@HeikoSah17:14
@wikingapparently17:14
@HeikoSimport org.shogun.module.get_global_io;17:14
@wikingand that wraps the globals17:14
@wikingnono17:14
@wikingdo not import17:14
@HeikoS"There is no such thing as a global Java function so global C functions are wrapped as static methods in the module class."17:14
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/3920 synchronized by micmn17:14
@wikingget_global17:14
@wikingas u cannot import17:14
@wikinga method17:14
@wikingyes17:14
@wikingexactly17:14
@wikingso you wouold have17:14
@wikingorg.shogun.shogun ?17:14
@wikingand then shogun.get_global_io()17:14
@HeikoSyes17:14
@HeikoSimport org.shogun.shogun;17:14
@HeikoSthat works17:15
@HeikoSok let me try17:15
@wikingbut i think17:16
@wikingnothing17:17
@wikinganyhow that should be it17:17
@wikingbased on SWIG's documentation17:17
@wikingbut maaaybe beaseu of that story in the17:17
@HeikoShttp://www.swig.org/Doc2.0/SWIGDocumentation.html#Java_module_packages_classes17:17
@wikingdocs17:17
@HeikoS24.3.2 Functions17:17
@wikingyou might have shogunModule17:17
@wikingso org.shogun.shogunModule17:17
@HeikoSlearning so much about shogun these days ;)17:19
@wiking:))))17:20
@wikingmagical land17:20
@wikingok so17:21
@wikingjust to get everybody17:21
@wikingcalm down and realise that yeah things are not perfect anywhere17:21
@wikinghttps://thepasteb.in/p/Q1hBZOjXKwrc817:21
@wikingthis is when trying to compile a 80billion dollar revenue's company sw on M$ windows17:22
@wikingi meant "company of a 80 billion USD revenue"17:22
@wiking...17:22
@wikingso if we look from this perspective17:22
@wikingwe are doing pretty ok :D17:23
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/92e3257ead97291e5e8c53aebdd8a16fbc490210 by karlnapf17:23
@HeikoShaha :D17:23
@HeikoSeveryone has the same problems17:24
@HeikoSBUT WE FIX THEM17:24
@wikingindeed17:24
@wikingi mean its' funny i think17:24
@wikingto look at things this way17:24
@wikingman really that's a company of 80 billion USD17:24
@wikingwith shitload of engineers17:24
@wikingand they fail on the same little shits17:24
@wikingdistribution etc17:24
@wikingmmmm17:28
-!- iglesias [~iglesias@wlan073045.mobiel.utwente.nl] has joined #shogun17:28
@wikingdoes anybody relised that TF17:28
@wikingactually cannot be built offline17:28
@wiking?17:28
@wikingmuha :D17:29
iglesiaswithout blaze?17:29
@wikingiglesias, what are u doing at the uni?17:29
@wikingiglesias, nono man ./configure script downloads a .js form the web17:29
iglesiaswiking: yo soy un estudiante, de por vida17:29
@wikingand even if it downloaded it17:29
@wikingit would redonwload it again17:29
@wikingpura vida!17:29
iglesiasaaah haha cool17:30
@wikinggood shitz17:30
@wikingbeing forever student17:30
iglesias17:30
iglesiases bueno17:30
@wikingso yeah17:31
@wikinggood shit17:31
iglesiaswiking: I started a fun test with tf btw17:31
@wikingone could rest after seeing these stuff17:31
iglesiasor challenge rather than test17:31
@wikingiglesias, tf is cool btw17:32
iglesiaswill I manage to build a hello world without blaze? :O17:32
iglesiasjust old plain g++ -I ... -l ...17:32
@wikingheheh17:32
@wikinghave fun17:32
@wiking:)17:32
iglesiashaha yeah17:32
iglesiasI left it in blaze -s17:32
@wiking:>17:32
iglesiasbut it looked like it was building lot of stuff17:33
@wikingbut i mean its good that we are struggling with the same shit :)17:33
iglesiasnot just the minimal example17:33
iglesiaswhich I found funky btw since the last time I touched that directory I already did blaze sth17:33
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has quit [Ping timeout: 258 seconds]17:34
iglesiasanyhow, it is in the other machine, so I will check it tomorrow17:34
sukey1[https://github.com/shogun-toolbox/shogun] Pull Request https://github.com/shogun-toolbox/shogun/pull/3920 synchronized by micmn17:34
iglesiasif you hear don't hear from me about it, I failed the challenge xD17:34
@wiking:>>>>>>>.17:35
-!- HeikoS [~heiko@eduroam-int-pat-8-96.ucl.ac.uk] has joined #shogun17:50
-!- mode/#shogun [+o HeikoS] by ChanServ17:50
-!- iglesias [~iglesias@wlan073045.mobiel.utwente.nl] has quit [Quit: leaving]18:07
-!- HeikoS [~heiko@eduroam-int-pat-8-96.ucl.ac.uk] has quit [Quit: Leaving.]18:14
@wikinglisitsyn, https://github.com/hioa-cs/IncludeOS18:14
@wiking:D18:14
@wikinglisitsyn, this is ++ version of your statically linking libraries together18:15
@wiking:D18:15
@wikingnot only have the interpreter18:15
@wikingbut the whole fukcing os into one thing18:15
@wiking:D18:15
@wiking"Extreme memory footprint: A minimal bootable image, including bootloader, operating system components and a complete C++ standard library is currently 707K when optimized for size."18:16
@wiking:)18:16
@wikingman this is crazy18:17
@wiking:))))))))))))))18:17
@wikinggeektoni, killed it with fire?18:21
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has joined #shogun18:22
-!- mode/#shogun [+o HeikoS] by ChanServ18:22
-!- travis-ci [~travis-ci@ec2-54-81-148-90.compute-1.amazonaws.com] has joined #shogun18:23
travis-ciit's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/25204472918:23
-!- travis-ci [~travis-ci@ec2-54-81-148-90.compute-1.amazonaws.com] has left #shogun []18:23
@wikingHeikoS, one more thing18:25
@wikingwe should start using variables for data path even in the xamples18:26
@wikingas the ../../18:26
@wikingis yeah mikulas :)18:26
@wikingand another story that is great http://jupyter-dashboards-layout.readthedocs.io/en/latest/index.html18:30
@HeikoSwiking: both good18:35
@HeikoSyeah the data18:35
-!- geektoni [~geektoni@93-34-128-38.ip49.fastwebnet.it] has quit [Remote host closed the connection]18:54
@HeikoSmicmn: you around?19:01
micmnHeikoS: here19:05
@HeikoSIn file included from /home/heiko/git/shogun/build_bsd/tests/unit/trained_model_serialization_unittest.cc:171:0:19:06
@HeikoS/home/heiko/git/shogun/src/gpl/shogun/classifier/svm/SVMOcas.h:20:41: fatal error: shogun/lib/external/libocas.h: No such file or directory19:06
@HeikoScompilation terminated.19:06
@HeikoSmicmn: I am getting that atm did you ever see it before?19:06
micmnmmm no19:08
micmnso that is guarded with USE_GPL_SHOGUN19:08
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/c084a7631ae7590b7138176ab4e250238dec1133 by karlnapf19:09
sukey1[https://github.com/shogun-toolbox/shogun] New branch feature/BSD_refactor created19:09
micmnmaybe it's not handling correctly the gpl folder19:10
micmnare you compiling with USE_GPL_SHOGUN right?19:10
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/be24a46e71292479a92770581bf1d42a36dc8ebd by karlnapf19:10
sukey1[https://github.com/shogun-toolbox/shogun] New branch feature/BSD_refactor created19:11
sukey1[https://github.com/shogun-toolbox/shogun] New commit https://github.com/shogun-toolbox/shogun/commit/c084a7631ae7590b7138176ab4e250238dec1133 by karlnapf19:11
@HeikoSmicmn: no I disabled it19:13
@HeikoSsince I am working on the bSD release19:13
@HeikoSmicmn: did you take the guards into account?19:13
@HeikoSmikeling: I just merged the global calls in meta lanugage19:13
@HeikoSmikeling: see meta_api/calls.sg for an example19:13
micmnyeah19:13
@HeikoSmicmn: ok maybe it is something with the cache19:14
micmnI'll disable GPL_SHOGUN and see what's going on19:15
@HeikoSmicmn: wait a sec19:15
@HeikoSyeah so here is what happens19:15
@HeikoSno actually I dont understand19:16
@HeikoSmmmg19:16
@HeikoSmicmn: I wanted to ask something else19:16
@HeikoSwhat is the state of the linalg wihtout templated matrix?19:16
micmnmmm not sure how to continue, let me check the pr19:18
micmnso the thing about lazy-evaluation19:19
micmnwhat's your idea on it?19:20
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/3922 opened by karlnapf19:20
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/3922 karlnapf added label: "Cleanups"19:20
sukey1[https://github.com/shogun-toolbox/shogun] Issue https://github.com/shogun-toolbox/shogun/issues/3922 karlnapf added label: "cmake"19:20
@HeikoSmicmn: I am not sure how to do it and not sure whether that even solves our problems19:21
@HeikoSmicmn: any ideas on the type determination in linalg?19:21
@HeikoSI mean we can go with a simple thing for now, the API is independent of that19:22
@HeikoSand I am more afte rthe API for now19:22
micmnyou mean to avoid the switch?19:22
@HeikoSi.e. that the classes exist and that all linalg methods take the un-templated arguments as well as templated ones19:22
@HeikoSmicmn: yes19:22
micmnso for methods like matrix_prod it's negligible19:23
@HeikoSmicmn: yep19:23
@HeikoSmicmn: it is more like if you repeatedly call a cheap method19:23
@HeikoSmicmn: but I am fine with a switch for now19:23
@HeikoSas said, this can be changed independently of the API19:23
micmnbtw in get_cov() I tried to replace vector.vector[i] with vector[i]19:24
@HeikoSyes?19:24
micmnand the speed drawback was huge19:24
micmnI think because of the call check_on_cpu() or something like that19:24
@HeikoSthats just a boolean flag19:25
@HeikoSis that with compiler optimizations?19:25
micmnmmm I'm not sure I'll double check19:25
@HeikoSmicmn: one thing that might help is to remove the ";" at the end of the error message (then they are faster)19:25
@HeikoSmicmn: with optimizations i cant imagine that would be slower19:25
micmnanyway, the next thing for matrix class19:27
micmncould be a prototype for iterators19:27
@HeikoSmicmn: good point19:28
@HeikoSmicmn: I also thought that maybe it is a good idea to take a really simple algorithm19:28
@HeikoSlike linear ridge regression19:28
@HeikoSand write that with an untemplate matrix19:28
@HeikoSso that there is no float_**** in the algorithm code19:29
micmnI could use a typical use-case for an iterator19:29
micmnlinear ridge regression has it?19:29
@HeikoSmicmn: no iterators needed19:29
@HeikoSjust covariance19:29
@HeikoSand cholesky19:29
@HeikoSbut would be a good start I think before digging into more complex terrain19:29
micmnok19:30
micmnso the plan is: address the comments on the PR and add methods needed by linear ridge regression and rewrite it with the new matrix class19:32
micmnprobably I'll need Vector too19:33
@HeikoSmicmn: btw19:33
@HeikoShttp://buildbot.shogun-toolbox.org:8080/#/builders/419:33
@HeikoSmicmn: http://buildbot.shogun-toolbox.org:8080/#/builders/4/builds/15/steps/5/logs/stdio19:34
@HeikoSit is this patch that broke the build19:34
@HeikoSmicmn: easy to reproduce locally: delete the src/gpl directory, re-run cmake, and then make19:35
micmnthx I'm on it19:40
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has quit [Ping timeout: 255 seconds]19:42
-!- travis-ci [~travis-ci@ec2-54-81-148-90.compute-1.amazonaws.com] has joined #shogun19:56
travis-ciit's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun: https://travis-ci.org/shogun-toolbox/shogun/builds/25208551419:56
-!- travis-ci [~travis-ci@ec2-54-81-148-90.compute-1.amazonaws.com] has left #shogun []19:56
@wikingmicmn,23:09
@wiking[05:03]  <micmn> [19:22:01] and the speed drawback was huge23:09
@wiking[05:03]  <micmn> [19:22:21] I think because of the call check_on_cpu() or something like that23:09
@wikingyou can profile iy23:09
@wiking*it23:09
@wikingand maybe use google's benchmarking lib to get the runtimes23:10
@wikingbtw lazy evaluation is in a way nothing else but you build a stack23:10
@wikingand the interface would look like a builder pattern23:11
@wikingeach operation = push to the OP stack23:11
@wikingmicmn, https://github.com/ericniebler/range-v323:28
lisitsynranges!23:28
@wikingmicmn, https://github.com/ericniebler/range-v3/blob/master/doc/index.md#views23:39
@wikinglisitsyn, this is a fucking nice lib23:39
Trixis"MKL.cpp line 901: Assertion R >= 0 failed!" any idea what the potential cause could be?23:44
--- Log closed Tue Jul 11 00:00:50 2017

Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!