Open in new window / Try shogun cloud
--- Log opened Wed Mar 05 00:00:25 2014
-!- zxtx [] has joined #shogun00:02
-!- HeikoS [] has joined #shogun00:15
-!- mode/#shogun [+o HeikoS] by ChanServ00:15
@HeikoSlambday: hey!00:17
@HeikoShow are things?00:17
lambdayHeikoS: hi!00:18
lambdaylol almost slept!00:18
lambdaychecking out code quadratic time mmd and linear mmd00:18
@HeikoSlambday: haha00:18
@HeikoSlambday: probably full of bugs ;)00:18
lambdaylogical bugs?00:19
@HeikoSlambday: hopefully not,00:19
@HeikoSlambday: but I unit tested against arthurs implementation00:19
@HeikoSso should be ok00:19
lambdaybtw the only unit test we have on this is for quadratic mmd00:20
@HeikoSno linear time test?00:20
lambdayno - check tests/unit/statistic00:20
@HeikoSlambday: there might be examples where I added assertions, from the days before unit tests00:20
lambdayHeikoS: yeah - you used those in libshogun tests thogh00:20
@HeikoSlambday: ther are linear time mmd tests00:21
@HeikoSlambday: no hsic00:22
@HeikoSlambday: let me write an entrance task ;)00:22
shogun-notifier-shogun: Parijat Mazumdar :develop * 1768a47 / / (6 files):
shogun-notifier-shogun: HAVE_EIGEN3 guard changes to counter make error w/o eigen300:23
shogun-notifier-shogun: Parijat Mazumdar :develop * 936868b / / (6 files):
shogun-notifier-shogun: removed lapack guard from LMNN files00:23
shogun-notifier-shogun: Parijat Mazumdar :develop * 1332111 / NEWS:
shogun-notifier-shogun: very minor changes in NEWS00:23
shogun-notifier-shogun: Parijat Mazumdar :develop * 2c1f982 / src/shogun/io/MLDataHDF5File.cpp:
shogun-notifier-shogun: changed ERROR to WARNING to tackle travis/buildbot failure when mldata is in flaky state00:23
shogun-notifier-shogun: Heiko Strathmann :develop * 6b67046 / / (13 files):
shogun-notifier-shogun: Merge pull request #1927 from mazumdarparijat/pca00:23
shogun-notifier-shogun: HAVE_EIGEN3 guard changes to counter make error w/o eigen300:23
lambdayargh - *rubs eyes*00:23
@HeikoSlambday: dont forget to sleep in between00:24
lambdayHeikoS: hsic one should be same as the example where you asserted mean/vars right?00:24
@HeikoSlambday: yeah the examples in fact should just demonstrate API and not do complicated stuff00:25
@HeikoSlambday:  all non-trivial stuff should be in the notebook, examples just for API, testing only in unit tests00:25
@HeikoSlambday: this is all old stuff before we did things properly00:25
lambdayHeikoS: yeah - so I'll pull those assertions inside unit test then00:26
lambdayHeikoS: wow my work is forking up - see
@HeikoSlambday:  yeah, good isnt it?00:27
lambdayyep :D00:27
@HeikoSlambday: you could go for it if interested00:28
@HeikoSlambday: no need to solve the whole gsoc project already ;)00:28
lambdayhaha! :D00:28
lambdaylol you just mentioned what I was about to say regarding min/max00:35
@HeikoSlambday: feel free to elaborate on that00:44
@HeikoSyou wrote all the stuff an know best00:44
@HeikoSlambday: you could maybe guide someone in doing this00:45
@HeikoSlambday: feel free to point someone to do this00:45
@HeikoSlambday: since its very useful for us00:45
sunil1337@HeikoS: please take a  look at and tell me what exactly is needed i've create the new method00:47
lambdayHeikoS: yeah I hope this stuff would be useful - will share ideas on that whatever I can00:47
@HeikoSlambday: ah that one....00:47
lambdayHeikoS: btw quadratic mmd sample_null_spectrum should get rid of lapack and depend on eigen, right? changing it then00:49
@HeikoSlambday: I guess we want a copy method and a return reference method00:49
@HeikoSlambday: and the reference method is not possible when a subset is set00:49
lambdayHeikoS: ummm you meant sunil1337 :P00:49
@HeikoSlambday: the problem here is if we decide to change the feature matrix00:49
@HeikoSlambday: but maybe we should leave that for now00:49
sunil1337@HeikoS: yup00:49
@HeikoSlambday: yeah totally, in fact CStatistics should get rif of the covariance method, this should just be done with eigen00:50
@HeikoSlambday: I closed the 188700:51
@HeikoSnot really clear what I want there, and its not important for now00:51
-!- HeikoS [] has left #shogun []00:51
sunil1337@HeikoS: okay!00:51
sunil1337@Heikos: will try something else00:52
-!- HeikoS [] has joined #shogun00:52
-!- mode/#shogun [+o HeikoS] by ChanServ00:52
lambdayHeikoS: wb00:52
lambdayHeikoS: it was sunil1337 who wanted to do 1887 :P00:53
sunil1337@HeikoS: lol...:D00:53
lambdaysunil1337: feel free to give 1930 a shot :)00:53
@HeikoSsunil1337: ah sorry00:53
sunil1337lambday: sure buddy :)00:53
@HeikoSsunil1337: that was a stupid issue, I should not have written that ;)00:54
sunil1337@HeikoS: happens all the time :) good that i din't comment :p00:54
@HeikoSsunil1337: always let us know once you are on something00:55
@HeikoSsunil1337: 1930 is cool, but a bit larger00:55
@HeikoSbut very useful for us!00:55
@HeikoSlambday: can guide it :)00:55
aromaHi. I am working on  1913.00:55
sunil1337@HeikoS: will see :)00:55
aromaI was just wondering if implementing serialization would be better or isolated load/save functions00:56
@HeikoSaroma: pls write a little comment in the issue to avoid duplicate work00:56
@HeikoSaroma: what do you mean?00:56
@HeikoSaroma: could you elaborate?00:56
@HeikoSaroma: I added a comment, lets see what shell says00:57
sunil1337@HeikoS: will be back have to google half of the stuff :P00:57
aroma@HeikoS: I mean if I implement serialization, we would have to stick to certain format00:57
aroma@HeikoS: certain format for  saving/storing factor graphs00:58
@HeikoSsunil1337: eig and eigs in matlab00:58
@HeikoSaroma: ask shell about that, kin the issue00:59
lambdayjust out of curiosity, factors graphs aren't bipartite graphs, are they?00:59
@HeikoSlambday: no00:59
aroma@HeikoS: ok00:59
@HeikoSjust a graph where nodes are connected via factors which are arbritary functions connecting the nodes01:00
@HeikoSlambday: joint distribution is product of all factors, normaliser is the integral of this over all nodes01:00
lambdayHeikoS: yeah I remember now...01:00
lambdaysum product algorithm01:01
@HeikoSlambday: no01:01
@HeikoSlambday: thats for chain graphs :)01:01
lambdayHeikoS: umm... but I remember reading about sum product algo for factor graph somewhere - cannot recollect clearly01:02
sunil1337lambday: refactor in what ways..01:02
@HeikoSlambday: usually one has to to loopy BP01:02
sunil1337lambday: put in a GPU based solver?01:03
@HeikoSsunil1337: the refactoring is just about interfaces01:03
@HeikoSsunil1337: so no GPU solver for now01:03
@HeikoSjust eigen301:03
@HeikoSbut this is about unifying01:03
lambdaysunil1337: yeah - if you have a look its currently only made for computing min/max eigenvalues - but we may need to change that01:04
@HeikoSlambday, sunil1337 the current class should be SparseEigenSolver or so01:05
@HeikoSlambday: and it should be possible to specify the n biuggest/smallest eigenvalues rather than one01:05
lambdayHeikoS: well, EigenSolver has one implementation for dense as well01:05
@HeikoSlambday: and the dense eigensolver should just compute all01:05
@HeikoSlambday: ah I see01:05
@HeikoSlambday: but the dense one needs an interface to compute all eigenvalues01:05
lambdayHeikoS: yeah!01:05
sunil1337lambday: okay..01:06
lambdayHeikoS: I don't think we'll be needing all eigenvalues for sparse as well, or just have the interface there, keeping it virtual may be :-/01:06
@HeikoSno these should be two abstract classes01:06
lambdayHeikoS: I mean, for the purpose that wiking mentioned01:06
@HeikoSone for all eigenvalues and one for the n largest/smallest01:06
@HeikoSlambday: and all eigensolver should have convinience constructors that allow to give them SGMatrix SGSparseMatrix directly, could you make that happen (dont do it yourself, just guide sunil1337 :)01:07
lambdayHeikoS: oh currently it all works on linear operators, doesn't it01:08
@HeikoSlambday: exactly, but its a bit annyoing sometimes to create all those classes01:08
lambdaytrue that!01:08
@HeikoSlambday: in fact this should also be possible for the log-det stuff. Just give the matrix and all other things are initialised by default01:08
@HeikoSlambday: If you want, you can write another entrance task on that :)01:08
@HeikoSlambday: do you want?01:09
-!- zxtx [] has quit [Ping timeout: 244 seconds]01:09
lambdayHeikoS: wow - so, no explictly creating linear operators01:09
lambdaythat would be cool!01:09
@HeikoSlambday: yeah, imagine you want the log-determinant of a sparse matrix01:09
@HeikoSand just instanciate the main class with the matrix, everything else is done in the constructor to default methods01:10
@HeikoSlambday: thats a nice entrance task, easy code, maybe some unit tests afterwards, but thats all01:10
lambdayHeikoS: alright!01:10
sunil1337HeikoS:,lambday: i'm up :p01:10
lambdayHeikoS: I will put up an entrance task on that!01:10
lambdaysunil1337: cool!01:10
@HeikoSlambday: nice, thanks!01:10
-!- aroma [75ef5e6f@gateway/web/freenode/ip.] has quit []01:14
thoralfHeikoS: Regarding your question: IMO we can merge, since it fixes out-of-bound errors in the corresponding solvers, adds a unit test, etc.01:20
thoralfHeikoS: But: Not all of my changes are test-backed.01:21
@HeikoSthoralf: any chance that happens? :)01:21
thoralfHeikoS: I'd like to, but I'm in doubt it will...01:22
@HeikoSthoralf: is that something somebody else can do easily?01:22
@HeikoSthoralf: like intro task?01:22
thoralfOkay, let me check.01:22
thoralfBasically it's cleanup (-> BuffSize), typos in includes, adding bounds checks that didn't exist before, adding a unit test *and* fixing an off-by-one that I already fixed in the other solver.01:24
shogun-notifier-shogun: Thoralf Klein :develop * 70453d8 / src/shogun/structure/ (5 files):
shogun-notifier-shogun: Different simple fixes:01:25
shogun-notifier-shogun: * Getting imports right (mixed up libp3bm.h and libppbm.h)01:25
shogun-notifier-shogun: * Not defining BufSize in every so solver by defining it extern in libbmrm.h01:25
shogun-notifier-shogun: * Correcting wrong initialization of beta[i+1] in libppbm.cpp01:25
shogun-notifier-shogun: * Termination criteria: exit loop if next iteration would exceed CP buffer01:25
shogun-notifier-shogun: Thoralf Klein :develop * a7f8ec5 / tests/unit/structure/
shogun-notifier-shogun: Using gtest to run the same tests for all solvers.01:25
shogun-notifier-shogun: * Outsourced dummy data to helper functions create_test_labels() and create_test_features().01:25
shogun-notifier-shogun: Heiko Strathmann :develop * 7c6f9eb / / (6 files):
shogun-notifier-shogun: Merge pull request #1854 from tklein23/testing_all_bundle_method_solvers01:25
shogun-notifier-shogun: Testing all bundle method solvers (plus cleaning and bugfixes)01:25
thoralfHeikoS: First use of parametrized unit-tests: tests/unit/structure/DualLibQPBMSOSVM_unittest.cc01:27
thoralfIn case you need an example.01:27
@HeikoSthoralf: ah sweet01:27
@HeikoSI saw that in stan today and liked it there :)01:28
@HeikoSthoralf: btw EXPECT is better in unit test, it doesnt terminate the program and other EXPECTS can be checked, ASSERT blocks directly, so should only be used if the program otherwise would crash (like null pointer read)01:28
thoralfI know, but if in doubt (or too lazy or too tired) I'm using asserts. ;)01:29
@HeikoSthoralf: lazy boy :)01:30
@HeikoSthoralf: ok I am off home now01:30
@HeikoSsee you!01:30
thoralfSee you all soon...01:30
-!- claughinghouse [] has joined #shogun01:30
-!- thoralf [] has quit [Quit: Konversation terminated!]01:30
lambdayHeikoS: could you please mark it as entrance01:31
@HeikoSlambday:  done + whitespace fix :)01:32
@HeikoSlambday: could you write an example call into this?01:32
lambdayHeikoS: example call?01:32
@HeikoSlog_est=LogDetEstimator(SGSparseMatrix m)01:33
lambdayoh yeah sure01:33
@HeikoSlike the python code that this will result in01:33
@HeikoSlambday: nice thanks, well done, first entrance taks for you :)01:34
@HeikoSlambday: I am going home now, see you tomorrow!01:34
lambdayHeikoS: yeah! :D01:34
lambdayHeikoS: alright! I will doze off too now -01:34
lambdayciao tomorrow :)01:34
@HeikoSlambday: good night! :)01:34
lambdayediting a bit :)01:34
lambdaygnyt :)01:34
-!- HeikoS [] has quit [Ping timeout: 240 seconds]01:38
shogun-notifier-shogun: tklein23 :develop * 9b37dc1 / NEWS:
shogun-notifier-shogun: Update NEWS01:48
-!- lambday [67157f4e@gateway/web/freenode/ip.] has quit [Quit: Leaving]02:02
-!- zxtx [] has joined #shogun02:25
-!- kislay [~kislay@] has quit [Read error: Connection reset by peer]02:43
-!- bgamlath [~bgamlath@] has joined #shogun02:49
-!- bgamlath [~bgamlath@] has quit [Remote host closed the connection]03:09
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]03:15
-!- claughinghouse [] has left #shogun []03:30
-!- travis-ci [] has joined #shogun03:33
travis-ci[travis-ci] it's Heiko Strathmann's turn to pay the next round of drinks for the massacre he caused in shogun-toolbox/shogun:
-!- travis-ci [] has left #shogun []03:33
-!- ameya [62c000db@gateway/web/freenode/ip.] has joined #shogun03:46
-!- ameya is now known as Guest4093003:46
-!- Saurabh7 [~Saurabh7@] has quit [Ping timeout: 264 seconds]03:50
-!- Guest40930 [62c000db@gateway/web/freenode/ip.] has quit [Quit: Page closed]04:06
-!- shogun-notifier- [] has quit [Quit: transmission timeout]04:48
-!- sonne|osx [] has joined #shogun05:48
-!- sonne|osx [] has quit [Client Quit]05:49
-!- cameo54321 [27293f31@gateway/web/freenode/ip.] has joined #shogun07:53
-!- cameo54321 [27293f31@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]08:10
-!- lisitsyn [~lisitsyn@] has left #shogun []08:58
@besser82wiking: I'm back!  What was your question?09:22
-!- lisitsyn [] has joined #shogun09:38
-!- ratneshmadaan [b49531e7@gateway/web/freenode/ip.] has joined #shogun09:52
lisitsynratneshmadaan: there is no particular task for deep learning I think09:54
lisitsynand it actually doesn't matter whether you do something related or not09:55
lisitsynthese tasks are useful to understand all the things about shogun structure, how it builds, etc09:55
ratneshmadaanOkay, so I should follow the general guidelines then?09:56
lisitsynso if you see any issue you'd like to resolve just do it - this would be helpful09:56
ratneshmadaanOn it. Thank you.09:56
ratneshmadaanAnd please update us whenever any specific task for it comes up.09:57
-!- lisitsyn is now known as 7JTAAGOXJ10:01
-!- ratneshmadaan [b49531e7@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]10:22
@wikingbesser82: nevermind10:26
-!- 7JTAAGOXJ is now known as lisitsyn_10:26
@besser82wiking: allrighty  :D10:26
@wikinglisitsyn_: here?10:50
@wikinglisitsyn_: do u know these two: ?10:52
lisitsyn_wiking: I heard about it10:55
lisitsyn_wiking: actually I know a guy who used it IIRC10:55
@wikinglisitsyn_: seems like some stuff we should slowly try to use10:56
@wikingespecially with eigen solvers... and other factorization stuff..10:58
lisitsyn_wiking: indeed11:10
lisitsyn_wrapping such code is no rocket science :)11:10
lisitsyn_however I spent the best days of my life writing arpack wrapper11:11
lisitsyn_which had 18 parameters maybe11:11
lisitsyn_but still should be relatively easy to try this11:11
lisitsyn_wiking: the only thing is how do we employ it - do we have any particular algorithms that would gain from that?11:11
-!- shogun-notifier- [] has joined #shogun11:20
shogun-notifier-shogun: pl :develop * 49a8bcc / doc/md/
shogun-notifier-shogun: Unit-testing guide is too old, we use cmake instead of ./configure11:20
shogun-notifier-shogun: pl8787 :develop * 252067a / / (76 files):
shogun-notifier-shogun: Merge remote-tracking branch 'shogun/develop' into develop11:20
shogun-notifier-shogun: pl8787 :develop * d0fcc1d / doc/md/
shogun-notifier-shogun: add more info.11:20
shogun-notifier-shogun: pl8787 :develop * 8cb3193 / doc/md/
shogun-notifier-shogun: add more info.11:21
shogun-notifier-shogun: pl8787 :develop * 4a593a6 / tests/unit/regression/
shogun-notifier-shogun: Fix bug #1934. Add #ifdef HAVE_LAPACK, and can compile w/o LAPACK.11:21
shogun-notifier-shogun: Fernando Iglesias :develop * 441253a / doc/md/,tests/unit/regression/
shogun-notifier-shogun: Merge pull request #1933 from pl8787/develop11:21
shogun-notifier-shogun: Unit-testing guide is too old, we use cmake instead of ./configure11:21
shogun-notifier-shogun: Fernando Iglesias :develop * 9c67564 / doc/md/
shogun-notifier-shogun: Minor typo fixes in README_developer.md11:22
@wikinglisitsyn_: yeah. git grep EigenSolv in ./src11:25
@wikinglisitsyn_: that's one thing.... but then if you check qp solvers they always do some sorts of decomposition like cholensky or qr11:26
@wikingthat'd be another win11:26
-!- PirosB3 [~pirosb3@] has joined #shogun11:29
-!- PirosB3 [~pirosb3@] has quit [Quit: PirosB3]11:40
-!- PirosB3 [~pirosb3@] has joined #shogun12:02
PirosB3hey guys12:34
@besser82PirosB3: hey! 'sup?12:37
PirosB3hey besser82 :)12:37
PirosB3I am going crazy with there OSX errors12:37
PirosB3So I changes SGIO.h12:37
@besser82PirosB3: doesn't sound too good  :(12:37
PirosB3ahaha, it's okay. I am learning12:37
PirosB3I changes SGIO.h to make CONST_DIRENT_T be const struct dirent12:38
-!- prams [~prams@] has joined #shogun12:38
PirosB3unfortunately the build fails with:12:39
PirosB3      cannot initialize a variable of type 'struct dirent *' with an lvalue of12:39
PirosB3      type 'int (const struct dirent *)'12:39
PirosB3        struct dirent* d = *SGIO::filter;12:39
PirosB3in features/StringFeatures12:39
PirosB3this is because my mac version is 10.7, and not the latests12:39
PirosB3if I make changes to the StringFeatures file, I get  'int (*)(const struct dirent *)' to 'int (*)(struct dirent*)' for 3rd argument12:41
PirosB3my idea is to assign a new variable and copy "const struct dirent", in order to make it not a constant12:42
PirosB3but it still is not working12:42
PirosB3do you have any hints?12:42
-!- CoolMcCool [quassel@fedora/besser82] has joined #shogun12:54
-!- mode/#shogun [+o CoolMcCool] by ChanServ12:54
-!- prams [~prams@] has quit [Remote host closed the connection]12:56
-!- besser82 [quassel@fedora/besser82] has quit [Ping timeout: 265 seconds]12:57
-!- CoolMcCool is now known as besser8212:57
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has joined #shogun12:59
@wikingthis is crazy:
@wikingonly 27% of the liblinear code in the shogun codebase is being tested/used13:28
-!- makokal [] has quit [Quit: Konversation terminated!]13:45
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]13:46
PirosB3@besser82 @wiking did anyone see my proposal? I still have no answers? do you think I should enhance it?13:54
-!- lambday [67157d4e@gateway/web/freenode/ip.] has joined #shogun14:04
@besser82PirosB3: give it a few days to settle and have everybody read it  ;)14:07
@besser82PirosB3: most of us still have accounts for Real Life (tm), which was the predecessor of Second Life (tm)  :-P14:08
PirosB3ahaha ok. In the meantime I am still trying to install Shogun :)14:09
PirosB3I am really concerned on what I should do, I need to get it installed by today14:09
* besser82 thinks about reactivating his Real Life (tm)-account somewhen...14:09
@besser82PirosB3: I'm not sure...  Did you try use bundled Eigen3, yet?14:19
PirosB3yep :p14:19
@besser82PirosB3: and doesn't help...14:19
@besser82PirosB3: how about upgrading to some newer ver of OSX?14:20
PirosB3that's what I was thinking14:20
PirosB3I am just unsure everything will blow up :p14:20
@besser82PirosB3: Shouldn't that happen on Apple-devices?14:21
@besser82PirosB3: At least Apple *tries* to make us think it won't  :-P14:21
-!- shogun-notifier- [] has quit [Quit: transmission timeout]14:22
PirosB3I could try14:25
PirosB3should I? or I was thinking Docker, but then...14:26
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has joined #shogun14:27
lisitsyn_PirosB3: hey, I am currently reading your saas proposal14:34
PirosB3yay :)14:34
lisitsyn_it sounds quite cool indeed14:34
PirosB3what do you think of it14:34
lisitsyn_the only thing worries me14:34
PirosB3oh thanks14:34
lisitsyn_is that it is like a huge amount of work14:34
PirosB3I know, for this reason I want all the community to discuss feasible deadlines and reshape the idea if necessary14:35
lisitsyn_I'll think about it and write some answer later14:35
lisitsyn_be sure you'll get more feedback soon14:35
PirosB3but this could be the start of a big thing. I don't think other people have done it14:35
PirosB3thanks lisitsyn_14:35
PirosB3it means a lot, I really feel the idea can be very helpful14:35
lisitsyn_there is some lag in our responses due to thing mentioned by besser82 ;)14:35
PirosB3let me know when u have feedback :)14:36
lisitsyn_PirosB3: I'll just answer your mail to the mailing list14:36
PirosB3sure lisitsyn_  I just wanted to make sure the mail went through, as there is no way to browse the ML (or is there?)14:36
lisitsyn_PirosB3: hmm actually there is14:36
PirosB3oh great14:36
PirosB3lisitsyn_: in the meantime, is there something specific I should be looking at?14:51
lisitsyn_PirosB3: sorry don't get it, what do you mean?14:55
PirosB3well, I want to make sure I can define a good API. Are there any particular bits of shogun internals I should be looking at for this task? lisitsyn_14:55
lisitsyn_PirosB3: oh well it would need to have pretty wide perspective on what we have14:56
-!- ashwinkachhara [67157d4c@gateway/web/freenode/ip.] has joined #shogun15:16
-!- ashwinkachhara [67157d4c@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]15:20
-!- ashwink [67157e4e@gateway/web/freenode/ip.] has joined #shogun15:25
-!- PirosB3 [~pirosb3@] has quit [Quit: PirosB3]15:59
sunil1337which opfunc can be used for complex matrices in ~/shogun/mathematics/linalg/ratapprox/logdet/opfunc or are they generic... the ipython notebook just covers reals16:12
sunil1337lambday: which opfunc can be used for complex matrices in ~/shogun/mathematics/linalg/ratapprox/logdet/opfunc or are they generic... the ipython notebook just covers reals16:15
lambdaysunil1337: log-determinant is only possible with real valued matrices16:16
lambdaysunil1337: just add the float64_t one :)16:16
sunil1337lambday: okay!16:17
sunil1337lambday: thanks almost done...16:18
lambdaysunil1337: good job :) if possible, add a libshogun example too :)16:19
sunil1337lambday: sure. i'll try..16:19
sunil1337lambday: i'm using CDenseMatrixExactLog as default16:20
lambdaysunil1337: that would be the case when you're adding constructor for SGMatrix16:20
sunil1337lambday: yup...16:20
lambdaysunil1337: typically one wishes to use this for sparse matrices - so don't forget to add that16:21
-!- HeikoS1 [] has joined #shogun16:21
sunil1337lambday: okay....16:21
lambdayHeikoS1: hey!16:21
HeikoS1lambday: hi16:24
lambdayHeikoS1: trying to chalk out the draft of btest mmd class - writing a gist for confirmation - will show you in a while16:25
HeikoS1lambday: great!16:25
@wikingbtw it's funny that somebody wants to do android port of shogun but not windows :S16:26
lambdayHeikoS1: oh and should I things for different number of samples for quadratic time mmd?16:26
HeikoS1lambday: what would be great!16:26
lambdayHeikoS1: altough for btest we need equal numbers - according to the paer16:26
lambdayHeikoS1: okies16:26
lambdayHeikoS1: oh oh - and the statistic returned is m*MMD16:27
HeikoS1lambday: yeah otherwise one cannot do blocks16:27
lambdaywhat should it be when m /= n16:27
HeikoS1lambday: so orient that on the linear tim eMMD implementation16:27
HeikoS1lambday: in fact, I think its only a few lines different since this one already streams blocks16:27
HeikoS1lambday: but now the blocks need to be computed in quadratic time averages16:27
lambdayHeikoS1: brb after dinner - will show the gist in a while :)16:30
HeikoS1lambday: enjoy your diner!16:30
-!- kislay [~kislay@] has joined #shogun16:40
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]16:44
-!- lisitsyn_ [] has quit [Quit: Leaving.]16:57
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has joined #shogun17:00
-!- AlexandraZ [bc196ac7@gateway/web/freenode/ip.] has joined #shogun17:06
-!- ashwink [67157e4e@gateway/web/freenode/ip.] has left #shogun []17:11
-!- ashwink [67157e4e@gateway/web/freenode/ip.] has joined #shogun17:12
-!- giri [b49531e2@gateway/web/freenode/ip.] has joined #shogun17:18
-!- giri [b49531e2@gateway/web/freenode/ip.] has quit [Client Quit]17:20
-!- cameo54321 [27296adc@gateway/web/freenode/ip.] has joined #shogun17:36
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has quit [Quit: Page closed]17:43
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has joined #shogun17:44
-!- AlexandraZ [bc196ac7@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]17:45
@besser82lambday, sunil1337: sry, for ot, but is there any special-type of curry (the spice) you can recommend?17:49
lambdaybesser82: lol what're you planning to have?17:49
@besser82lambday: using it to spicen-up checken-breast  ;)17:49
@besser82lambday: I love it hot btw...17:50
lambdaybesser82: you're cooking?17:50
@besser82lambday: yes, everyday  ;)17:50
lambdaybesser82: lol yeah we all love breasts - :P17:50
@besser82lambday: hehe17:50
@besser82lambday: Archievement unlocked:  Found besser82's special skillz17:51
sunil1337@besser82: well...don't really knw.. all i do is eat :p17:51
lambdaybesser82: um... I know nothing about cooking :-/ may be ginger/garlic etc :-/17:51
lambdaylol :D17:51
sunil1337lambday: lol17:51
@besser82lambday: I was more refering to the type of curry-mixture...17:51
@besser82lambday: Afaik there are ~80 different like this in India, e.g. Golden Elephant, ...17:52
@besser82sunil1337: ^^^17:52
lambdaybesser82: let me check - sunil1337: you think we'd have any luck with Sanjeev Kapoor website?17:52
sunil1337lambday: yeah...for sure17:52
-!- jia [a9e93511@gateway/web/freenode/ip.] has joined #shogun17:53
lambdaybesser82: check this one out -
lambdayyou can give your preference and it would suggest you the recipe17:53
lambdayoh shit - sorry may be not that advance :D17:54
sunil1337lambday: we can even try masterchef episodes :p17:54
lambdaysunil1337: never watched any :D may be mom can tell17:55
@besser82lambday: i need to buy some new curry-spice, but I'm tired of this yellow-orange one  ;)17:55
lambdaybesser82: I will ask someone who knows cooking ;) then will tell you17:55
@besser82lambday: I want some indian-spice which is more hot, like burning 2-times17:55
@besser82lambday: thx!!!17:55
sunil1337@besser82: try this
lambdaysunil1337: nah butter chicken is a sweet one - he wants hot17:56
lambdaymay be, chicken tikka masala or chicken kolhapuri17:56
@besser82sunil1337 lambday: yes!  but there still written "Red Chilli Powder",  afaik there are a f*cking lot different "Red Chilli Powders" avail...17:56
lambdaybesser82: you know best - all I too do is eat and order home delivery :D17:57
@besser82lambday: hehe17:58
lambdaybesser82: you live in Berlin, no? there must be some Indian restaurants :P17:58
-!- jia [a9e93511@gateway/web/freenode/ip.] has quit [Quit: Page closed]17:58
@besser82lambday: and I thought some indish ppl. might know more about that...  :-P17:58
@besser82lambday: nope, near Hannover17:58
@besser82lambday: and here are just lousy one17:58
@besser82lambday: next good one is ~ 120 km / 80 mi17:59
sunil1337@besser82: try this17:59
lambdaybtw I just had chicken sukkha (spicy chicken curry - thick gravy)18:00
lambdaysunil1337: yum :D18:00
@besser82sunil1337, lambday: that one sounds good  :D18:01
sunil1337lambday: please i'm at HOSTEL :p18:01
@besser82sunil1337, lambday: tikka masala is fine, too, but had that too much  :D18:01
lambdaylol we're all foodies here it seems :D18:01
cameo54321Haha Hi I just came here, and this seems to be a indian chefsirc channel :D18:03
cameo54321chefs irc*18:04
cameo54321Great, You guys have got appreciation for taste... :)18:04
lambdaycameo54321: bet you saved some space for all the spices :D18:05
sunil1337lambday: for sparse matrix do we also need to get dense?18:07
lambdaysunil1337: for sparce matrices keep the cgm one18:08
cameo54321:D I mean the moment I read tikka masala, I was like how did "this" topic started?18:08
sunil1337lambday: okay!18:08
kislayI am having an error regarding the usage of RealFeatures on uint8 data. I am not  getting past through this. :(18:08
cameo54321Oops You guys were converging back to work, and I added tikka masala again.. :p18:09
lambdaycameo54321: np ;) always up for food related discussions ;)18:09
lambdaykislay: what kind of error?18:09
cameo54321Can somoeone get me started on shogun please?18:10
lambdayreal features are defined for float64_t I guess18:10
kislayumm.. something like this : NotImplementedError: Wrong number or type of arguments for overloaded function 'new_RealFeatures'.18:10
cameo54321lambday Haha sure... ;)18:10
lambdaycameo54321: have you been able to make/install shogun?18:10
cameo54321How should I use eclipse for developing it?18:10
cameo54321lambday yup installed it18:11
cameo54321got even a python example working18:11
lambdaycameo54321: well, HeikoS1 uses eclipse - he must know better - I use vim :(18:11
lambdaycameo54321: great! :)18:11
cameo54321but how to move on18:11
lambdaycameo54321: there are some entrance issues on the github page18:11
HeikoS1lambday, cameo54321 vim is also great, in particular with clang autocomplete18:11
lambdaycameo54321: pick something and give it a shot!18:11
HeikoS1I am just used to using my mouse ;)18:12
HeikoS1but I use it only as editor and for browsing code, not for building18:12
HeikoS1and its slooooow18:12
lambdayHeikoS1: yeah I use clang-complete although dunno how to use all the features :P18:12
lambdayHeikoS1: yeah!18:12
lambdayHeikoS1: I guess using netbeans we can even do git related stuffs - pull/push/commit etc - not sure though :-/18:13
cameo54321HeikoS1 I have to make something, and right now eclipse seems a viable option18:13
HeikoS1lambday: with eclipse too, but its even slower than terminal :)18:13
cameo54321as for vim, I'll have to learn that as well18:13
lambdayHeikoS1: yeah, love the green fonts on black background - feels like Neo :D18:13
HeikoS1lambday: have that too  :)18:14
lambdaycameo54321: if you're starting with a new editor - you might wanna try emacs - I am just too lazy to switch but I guess it provides a lot more features18:14
-!- zxtx [] has quit [Read error: Operation timed out]18:14
lambdaycameo54321: specially while using gdb18:14
sunil1337cameo54321: best place to start
cameo54321I am comfortable with eclipse at the moment18:15
kislaysome images when flattened and compacted in the form of  row vectors are by default coming in uint8 dtype, but the RealFeature doesn't accept this datamatrix18:15
lambdaycameo54321: yeah don't worry about editors - just start hacking ;)18:15
cameo54321lambday exactly that is what I am looking forward to..18:16
cameo54321HeikoS1 can you please help me with getting started on eclispe, with shogun?18:16
HeikoS1cameo54321: so all i do is to import existing code as makefile project from the src folder ,and done18:17
HeikoS1cameo54321: I think one can do better,  but I dont really care18:17
cameo54321HeikoS1 and if we make some changes and build again, everything works fine?18:18
HeikoS1cameo54321: yeah, but run make from a terminal18:18
cameo54321Oh ok, this is the small point I was missing..18:19
HeikoS1I use two screens so one has the terminal18:19
HeikoS1and for running shogun programs, I have my own little makefile, just edit them from eclipse18:19
HeikoS1and the unit test I edit them in gedit :)18:19
HeikoS1lambday: but dont do that at home, its the lazy man's way :D18:20
cameo54321and if I want to write a new program like the one here
HeikoS1just compile,link and run18:20
cameo54321which has its own main function18:20
lambdayHeikoS1: you use terminator for two screens?18:21
cameo54321HeikoS1 thanks18:21
HeikoS1lambday: no, I just use ubuntu ;)18:22
lambdayHeikoS1: vertically/horizontally terminal split is possible without any addons?18:22
lambdayoh I see what you meant18:23
HeikoS1lambday: no physical screen18:23
HeikoS1and tabs for terminals18:23
lambdayyeah just got that :D18:23
lambdayHeikoS1: please have a look -
lambdayHeikoS1: I am a bit confused since there are so many stuffs for which we'll just have to copy code from LinearTimeMMD18:24
lambdayHeikoS1: and I don't like multiple inheritance18:24
lambdayHeikoS1: but QuadraticTimeMMD has to be the base for BTestMMD I think18:24
HeikoS1lambday: no BTest is yet another two sample test18:25
HeikoS1lambday: or actually its closer to the linear time mmd one18:25
HeikoS1but I think a seperate class should be good18:25
-!- sejdino [] has joined #shogun18:25
HeikoS1lambday: I will look at bit later as I have to finish something now18:25
HeikoS1but here comes sejdino18:25
HeikoS1he can rewiew that :)18:25
lambdayHeikoS1: but reusing the code that quadratic time mmd already had for compute_statistic18:26
lambdayHeikoS1: alright18:26
sejdinohey both18:26
lambdaysejdino: hi :D18:26
sejdinohow are things?18:26
HeikoS1sejdino: see  -
HeikoS1lambday: just drafted that18:26
HeikoS1sejdino: we were just discussing if btest should in herit from quadratic or linear time mmd or none18:27
sejdinointeresting question18:27
lambdaysejdino: just the idea - since quadratic time mmd already had compute_statistic which computes it the exact same way, extending it to btest mmd can use that method18:27
sejdinoit's kind of inbetween the two18:27
HeikoS1sejdino: because linear time implementations effectively streams data in blocks, but the just averages the independent pairs18:27
HeikoS1sejdino: btest would just compute quadratic time mmd on those blocks, so its very close18:28
HeikoS1sejdino: but I dont know whether one can stream it, (does N need to be fixed?18:28
HeikoS1sejdino: maybe have a look into CLinearTimeMMD::compute_statistic18:28
HeikoS1to compare18:28
sejdinoI think you can still stream - you would just process a larger batch at once18:28
sejdinobut I agree that it's more practical to have it inherit quadratic time computation18:29
lambdaysejdino: I thought so, since the statistic is computed in the exact same way - but we're left with the option of copying a large part of the code from linear time mmd18:30
lambdaysejdino: in the draft I tried to see how to use QuadraticTimeMMD::compute_statistic inside BTestMMD::compute_statistic18:30
sejdinomaybe we can think about ways to make statistic computation a bit more modular and separate from tests?18:31
HeikoS1sejdino: the linear time one already streams in blocks18:31
-!- lisitsyn [~lisitsyn@] has joined #shogun18:31
HeikoS1sejdino: also, kernel selection is only available for linear time MMD classes, so a subclass would immediately work with that18:31
lambdayHeikoS1: ummm... but current implementation of CLinearTimeMMD::compute_statistic_and_variance does compute the linear time formula - so, we gotta rewrite that anyway18:32
lambdayunless we can separate it18:32
HeikoS1lambday: no I agree, but the way the data is accessed is the same18:32
lambdayHeikoS1: yeah that's the same18:32
HeikoS1stream block-> compute something18:32
sejdinoHeikoS1: it processes them in blocks which is great but computes only linear time statistic18:33
lambdayHeikoS1: you think we can may be have a separate base class for streaming features - which does all that18:33
lambdaythen have linear/quadratic time formulas fed on in some subclasses?18:33
HeikoS1lambday: yeah maybe18:34
HeikoS1so another class streamingMMD from that linear time and Btest inherit18:34
HeikoS1lambday: but wait18:34
HeikoS1I think stiull the btest should inherit from linear time mmd18:34
HeikoS1it is a linear time test, the null distribution is based on that18:34
HeikoS1so the kernel selection things work immediately18:35
HeikoS1check out their code18:35
lambdayHeikoS1: yeah all same - just the formula is different :-/18:35
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]18:35
HeikoS1lambday: ok what about pulling the streaming code into a base class then?18:35
HeikoS1or copy it18:35
lambdayHeikoS1: including the multiple kernels part?18:35
HeikoS1lambday:  ah that18:36
HeikoS1lambday: yeah that also works for the btest18:36
sejdinoHeikoS1: do they actually do any kernel selection in the paper?18:36
HeikoS1so why not have CStreamingMMD->CLinearTimeMMD->CBTestMMD ?18:36
HeikoS1sejdino: yeah they do18:36
HeikoS1lambday: and the streaming feature blocks code is in CStreamingMMD18:37
lambdayHeikoS1: and copy the code from QuadraticTimeMMD::compute_statistic  to BTestMMD?18:37
HeikoS1lambday: or you leave things in CLinearTimeMMD and call an abstract method in the compute statistic code18:37
HeikoS1which then is overloaded18:37
HeikoS1lambday: I think that might be best in fact18:37
lambdayHeikoS1: yeah that's what I was thinkin'18:37
lambdayoh wait wait -18:37
HeikoS1lambday: the code that updates the statistic is in an overloaded method and BTest just modifies that to compute the quadratic statistic18:38
lambdayHeikoS1: ummmm - still copying code :(18:38
HeikoS1lambday: no, just have an instance of CQuadraticTimeMMD in the BTest18:38
HeikoS1as a member18:38
HeikoS1and then pass the block to it18:39
lambdayHeikoS1: ah that works - might look a bit ugly but works18:39
sejdinoHeikoS1: that seems like a nice solution18:40
sejdinowe might think about a different name for quadratic time mmd to make things less confusing18:40
HeikoS1sejdino: like ?18:41
sejdinoit's basically just a UStatistic or VStatistic MMD18:41
sejdinowhich one are you using?18:41
-!- khalednasr [c4dd5cc1@gateway/web/freenode/ip.] has joined #shogun18:41
sejdinobiased or unbiased?18:41
lambdaysejdino: both are implemented18:42
lambdaysejdino: default is unbiased18:42
HeikoS1sejdino: both possible18:43
HeikoS1sejdino: but the point is that quadratic uses all pairs18:43
HeikoS1so quadratic is a good name isnt it?18:43
HeikoS1and linear just computes averages of independent things18:43
HeikoS1and b test does that too, but those independent things are blocks18:43
sejdinoI see, so you can basically in each of the B tests call either U or V?18:44
HeikoS1so its actually a linear time statistic (on blocks)18:44
HeikoS1sejdino: yeah18:44
sejdinowell, yes, unless you're using two blocks :)18:44
sejdinothen it becomes quadratic time18:44
sejdinobut then the kernel selection doesn't work18:46
HeikoS1sejdino: so what do you suggest?18:47
sejdinoHeikoS1: well, we could let the number of blocks be specified freely18:48
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has joined #shogun18:48
sejdinobut then we need to worry about the asymptotics not being valid18:48
sejdinoif the number of blocks is very small compared to the number of samples18:49
sejdinoI think it's better not to allow specifying the number of blocks but actually to specify the number of samples within a block?18:49
HeikoS1sejdino: yeah sampler per block is better, in particular if we are stremaing18:50
HeikoS1sejdino: and then always do independent things as for linear time mmd. so both classes immediately can be plugged into the kernel selection classes18:50
lisitsynhey guys18:50
HeikoS1lisitsyn: hi!18:51
HeikoS1sejdino: meet sergey, another core shogun guy18:51
HeikoS1from Russia18:51
lisitsynglad to see discussion on this crazy project :D18:51
sejdinoHi Sergey!18:51
HeikoS1lisitsyn: this is dino, postdoc at the Gatsby18:51
sejdinonice to meet you18:51
lisitsynsejdino: hey18:51
lisitsynmy pleasure ;)18:51
sejdinolikewise - very happy to be involved in shogun :)18:51
lisitsynsejdino: you seem to be slavic as well ;)18:52
sejdinoindeed - even 1/4 russian :)18:52
lisitsynmoar russians for shogun!18:52
lisitsyncurrently yeah18:52
HeikoS1where is roman? :)18:52
HeikoS1(hes from siberia)18:52
lisitsynHeikoS1: not anymore18:53
HeikoS1st petersburg18:53
lisitsynnow he is st.petersburg guy :D18:53
lambdaysejdino: HeikoS1: so specify the block-size, as they do in their matlab implementation18:54
HeikoS1lambday: yeah!18:54
sejdinolambday: yes, that sounds good18:55
HeikoS1lambday: so people can decide how many points they want to stream18:55
HeikoS1lambday: make sure b<n ;)18:55
sejdinoI would say even b<0.1n18:55
lambdayHeikoS1: yeah :D in the matlab code they assert (blocksize >= 2 && blocksize < m / 3);18:55
sejdinofor the kernel selection part18:56
sejdinobut I guess we can allow even 2 blocks just to run a test18:56
lisitsynlambday: are you going to apply for this task?18:56
sejdinobecause permutation test will still give correct p-value18:56
HeikoS1sejdino: agreed!18:57
lambdaysejdino: alright18:57
lambdaylisitsyn: yeah :D18:57
lisitsynlambday: I see :)18:57
HeikoS1sejdino, lambday it will be interesting to reproduce the paper results in the notebook, i.e. compare gaussian approximation to samples from the null via permutation18:58
sejdinolisitsyn: we've had some excellent progress on the project already - lambday has been driving it :)18:58
lisitsynsejdino: that's the ideal thing18:58
lisitsynthat's how HeikoS1 joined shogun18:58
lisitsynwell and I did something like that18:58
sejdinoHeikoS1: I agree absolutely - it would be very nice to plot and see how it goes to a Gaussian as the number of blocks increases18:59
HeikoS1lambday: see the plots in the paper19:00
HeikoS1sejdino: do you want to write an intro task on reproducing that?19:00
sejdinoHeikoS1: it will move shape from chi-squares to a gaussian19:00
sejdinoHeikoS1: yes, I can write a task19:00
HeikoS1sejdino: cool!19:00
lambdayah the plot is nice!19:03
-!- dhruv13 [~dhruv13@] has joined #shogun19:03
kislaylambday, please if you could point me to some hack!! I am stuck for quite a while19:04
lambdaysejdino: HeikoS1: alright - I am making sure if technically things are alright with the proposed implementation19:08
lambdaykislay: sure - real features is I guess defined with float64_t - so, it would be incompatible with uint8 I guess19:09
lambdaykislay: let me make sure19:09
-!- dhruv13 [~dhruv13@] has quit [Ping timeout: 264 seconds]19:09
HeikoS1lambday: great!19:10
-!- cameo54321 [27296adc@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]19:13
-!- cameo54321 [27296adc@gateway/web/freenode/ip.] has joined #shogun19:16
kislayyup!!.  Till now  i  couldn't find a single way to run uint8 in RealFeatures! But,then how to convert uint8 data type to float64.19:24
-!- khalednasr [c4dd5cc1@gateway/web/freenode/ip.] has quit [Quit: Page closed]19:25
kislayusing array([0]).convert('L'),dtype=float64) just doesn't work19:25
-!- dhruv13 [~dhruv13@] has joined #shogun19:27
lambdaykislay: I am not so sure - may be use ByteFeatures which is defined for uint819:30
lambdaykislay: please have a look at interfaces/modular/Features.i typemaps19:30
-!- kislay [~kislay@] has quit [Read error: Connection reset by peer]19:31
-!- cameo54321 [27296adc@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]19:50
-!- kislay [~kislay@] has joined #shogun19:53
-!- parijat [75c7d731@gateway/web/freenode/ip.] has joined #shogun20:00
-!- parijat [75c7d731@gateway/web/freenode/ip.] has quit [Client Quit]20:02
-!- sejdino [] has left #shogun []20:24
-!- HeikoS1 [] has left #shogun []20:24
sunil1337lambday: you up?20:27
-!- zxtx [] has joined #shogun20:42
-!- sunil1337 [0e8bd057@gateway/web/freenode/ip.] has left #shogun []20:46
-!- AlexandraZ [bc196ac7@gateway/web/freenode/ip.] has joined #shogun21:33
-!- dhruv13 [~dhruv13@] has left #shogun ["Leaving"]22:21
-!- iglesiasg [] has joined #shogun22:35
-!- mode/#shogun [+o iglesiasg] by ChanServ22:35
@iglesiasghey guys22:36
-!- shogun-notifier- [] has joined #shogun22:42
shogun-notifier-shogun: Parijat Mazumdar :develop * 10aa692 / / (2 files):
shogun-notifier-shogun: prevents travis failure when mldata is in flaky state22:42
shogun-notifier-shogun: Fernando Iglesias :develop * 2db71a6 / / (2 files):
shogun-notifier-shogun: Merge pull request #1938 from mazumdarparijat/pca22:42
shogun-notifier-shogun: prevents travis failure when mldata is in flaky state22:42
shogun-notifier-shogun: Fernando Iglesias :develop * d590c99 / NEWS:
shogun-notifier-shogun: Update NEWS with libary_mldatahdf5.cpp fix.22:46
-!- iglesiasg is now known as iglesiasg_away23:07
-!- ashwink [67157e4e@gateway/web/freenode/ip.] has quit [Ping timeout: 245 seconds]23:16
-!- iglesiasg_away [] has quit [Quit: Leaving]23:36
--- Log closed Thu Mar 06 00:00:26 2014