Open in new window / Try shogun cloud
--- Log opened Tue Nov 18 00:00:13 2014
-!- HeikoS [] has quit [Quit: Leaving.]00:07
-!- HeikoS [] has joined #shogun00:10
-!- mode/#shogun [+o HeikoS] by ChanServ00:10
-!- shaochuan [] has joined #shogun00:18
-!- shaochuan [] has quit [Ping timeout: 265 seconds]00:22
-!- HeikoS [] has quit [Quit: Leaving.]00:24
-!- iglesiasg [] has quit [Quit: Lost terminal]00:24
-!- pickle27 [] has joined #shogun01:26
-!- shaochuan [] has joined #shogun04:21
-!- shaochuan [] has quit [Ping timeout: 240 seconds]04:25
-!- Phawx [] has joined #shogun04:27
-!- Phawx [] has quit [Ping timeout: 244 seconds]05:16
-!- pickle27 [] has quit [Remote host closed the connection]07:01
-!- glongo [sid17594@gateway/web/] has quit [Ping timeout: 244 seconds]09:27
-!- glongo [sid17594@gateway/web/] has joined #shogun09:28
-!- HeikoS [] has joined #shogun09:58
-!- mode/#shogun [+o HeikoS] by ChanServ09:58
-!- PirosB3 [~pirosb3@] has joined #shogun10:51
-!- HeikoS [] has quit [Quit: Leaving.]11:06
-!- HeikoS [] has joined #shogun12:54
-!- mode/#shogun [+o HeikoS] by ChanServ12:54
@lisitsynwiking: ^14:44
@wikingahahah rtofl14:47
@lisitsynwiking: I desperately fail on that14:50
@HeikoShahaha same here, great14:50
@lisitsynHeikoS: hey what about your priors?14:50
@lisitsynwiking: did you know HeikoS priors are too wide?14:51
@HeikoSlisitsyn: your mothers prior beliefs are so wide she has to use a noninformative one14:52
@lisitsynHeikoS: I just seen this link in twitter14:52
@lisitsynyou -> dino -> and some guy I follow -> me again14:53
@HeikoSdino posted it14:54
@lisitsynHeikoS: there should be some index like14:55
@lisitsynhow much twitter users did it pass through to get back to you14:55
@lisitsynerr :D14:56
@lisitsynhow many I mean :D14:56
@HeikoSi did not even use twietter14:56
@HeikoSbut email :D14:56
@lisitsynyeah true14:56
@lisitsynthen any kind of communication works14:56
-!- HeikoS [] has quit [Quit: Leaving.]15:12
-!- pickle27 [] has joined #shogun15:29
-!- HeikoS [] has joined #shogun15:48
-!- mode/#shogun [+o HeikoS] by ChanServ15:48
-!- pickle27 [] has quit [Remote host closed the connection]15:54
@HeikoSwiking: around?16:00
@HeikoSlisitsyn: around?16:00
@lisitsynHeikoS: ja16:00
@HeikoSlisitsyn: how to disable libcurl in shogun compilation?16:00
@HeikoSwhats the switch?16:01
@HeikoSIF (CURL_FOUND)16:01
@HeikoSSET(HAVE_CURL 1)16:01
@HeikoSthats in CMakeLists.txt16:01
@HeikoSgoogle doens thelp me16:01
@lisitsynHeikoS: hmm16:01
@lisitsynwell you can comment it out :D16:02
@lisitsynthe thing is that once you're into that IF16:02
@lisitsynyou have includes etc16:02
@HeikoSyeah I know thats why I wanna disable16:02
@lisitsynHeikoS: let me check curl finder cmake script16:02
@HeikoSah got it16:03
@lisitsynHeikoS: what?16:04
@lisitsynHeikoS: I see no option to fail FIND_PACKAGE if it founds one16:04
@HeikoScmake -DEnableCURL=Off ..16:05
@lisitsynhmm really?16:05
@lisitsynHeikoS: I wonder where this option is handled :D16:06
@HeikoSfind .. -type f -name '*.txt' | xargs grep 'CURL'16:06
@lisitsynhmm cool to know16:07
@HeikoSlisitsyn: btw see esbens email16:08
@HeikoSwiking: ^16:08
@HeikoSabout meta language project16:08
@lisitsynHeikoS: oh sh I forgot to write a mail about examples of dsl :D16:08
@HeikoSlisitsyn: thats optional anyways16:08
@HeikoSlisitsyn: we are now starting to prototype16:08
@HeikoSso see email :)16:08
@lisitsynokay well I don't mind actually16:09
@lisitsynI mean writing parsers is like16:09
@lisitsynuseless in general but useful for him16:09
@lisitsynHeikoS: I am now reading bishop16:11
@lisitsynbreaks my mind actually16:11
@HeikoSlisitsyn: I think this will be super useful for us16:12
@lisitsynHeikoS: yeah absolutely16:12
@HeikoSlisitsyn: let me know if you have questions, but its a very good book, almost the best on the topic16:12
@lisitsynmy point was just like16:12
@lisitsynyou can just skip the parsing thing16:12
@lisitsynand use flexible syntax of some language16:12
@lisitsynHeikoS: e.g. in scala you don't even write ( ) for functions16:12
@lisitsynlegal to write "do something"16:13
@lisitsynHeikoS: like you describe code and description is transformed into examples :D16:14
@HeikoSlisitsyn: but how do you want to do this then?16:14
@HeikoSso you mean skip inventing own language?16:14
@HeikoSand use say scala16:14
@lisitsynyeah that was my idea16:15
@HeikoSI see16:15
@lisitsynI mean all these languages are pretty flexible16:15
@HeikoSnot sure16:15
@HeikoShow to represent the example?16:15
@HeikoShow to translate?16:15
@HeikoSthen we need to write converter for every target16:15
@lisitsynit is easier to do inside language16:15
@lisitsynI think16:15
@lisitsynHeikoS: I am now thinking like16:15
@lisitsyndid you consider really textual description of example?16:16
@lisitsynI mean16:16
@lisitsyninitialize LibLinear as svm with C=1.0        ----> svm = LibLinear(1.0)16:16
@HeikoSwe will have16:17
@HeikoSLibLinear ll = LibLinear(1.0=16:18
@HeikoSwill be typed16:18
@HeikoSsince also translating into c++16:18
@HeikoSand java etc16:18
@HeikoSsee my gist16:18
@lisitsynHeikoS: oh that's just C++ :)16:19
@HeikoSyeah basically yes16:19
@HeikoSthing is16:19
@HeikoSif we do this in c++16:19
@HeikoShow to transform?16:19
@HeikoSwe need to parse16:19
@HeikoSI mean we can use c++ parser maybe16:19
@lisitsynI don't really get it16:20
@HeikoSbut how to extract the things we want?16:20
@HeikoSI dont see what you mean, maybe describe an example how to do things16:20
@lisitsynHeikoS: extract things from?16:20
@HeikoSor better prototype16:20
@lisitsynhmm yeah ok easy16:20
@lisitsynHeikoS: just some kind of 10 minutes let me set up some regexps :)16:23
@HeikoSthis might be useful for esben,16:23
@HeikoS(should have come earlier, now we already got a concept)16:23
@HeikoSbut happy to change16:23
@lisitsynHeikoS: I am sorry you know I am like failing everywhere :)16:24
@lisitsynHeikoS: ok still here?16:58
@lisitsynHeikoS: put output there as comment as well17:00
@HeikoSlisitsyn: thats fine, but how to do do this for java?17:15
@lisitsynHeikoS: can't see the problem17:16
@lisitsynHeikoS: well I mean17:16
@HeikoSlet me look at this a bit more17:16
@lisitsynjust wrap it into some class17:16
@lisitsynpublic static main17:16
@HeikoShow to do UNREF at the end of scope?17:17
@HeikoShow to do the type inference?17:17
@HeikoScan you do a c++ example?17:17
@HeikoSI mean this is great17:17
@HeikoSjust want to be sure this works fine17:17
@lisitsynHeikoS: what type inference?17:18
@lisitsynHeikoS: it is still typed actually17:18
@lisitsynso I see no type inference involved17:19
@HeikoSlisitsyn: mmmh17:19
@HeikoSwhat I mean is17:19
@lisitsynHeikoS: as for unref and declarations - some matchers here are to initialize variable so it is possible to track whether it is first declaration or second (assignment)17:19
@lisitsynsame for unref17:19
@lisitsynha btw17:20
@lisitsynwe can also draw graphs17:20
@lisitsynwhat is used by what17:20
@HeikoSthats cool17:20
@lisitsynwhat did you mean?17:20
@HeikoSlisitsyn: so you suggest to go this way: a python script that does things, and one just changes the dictionaries?17:20
@HeikoSyes I see17:20
@lisitsynHeikoS: oh no actually no17:20
@lisitsynit is just how I'd prototype that :)17:21
@lisitsynit is still better to do with parsing library17:21
@HeikoSlisitsyn: what would be your suggestion for esbens project?17:21
@HeikoSlisitsyn: I see17:21
@HeikoSgood idea17:21
@lisitsynjust write some kind of allowed sentences17:21
@HeikoScan you send this to esben and explain your reasoning?17:21
@lisitsyninitialize [class] from [parameters] as [name]17:21
@HeikoSmaybe we want to change the syntax of the meta language then to your idea17:22
@HeikoSas its way cleaner/easier to write, less cluttered17:22
@lisitsynHeikoS: yeah may be it is worth it17:22
@HeikoSmake sure you explain it properly that the poor guy does not get confused ;)17:22
@lisitsynHeikoS: and put VW on top of it to predict programs17:22
@lisitsynor RNN17:23
@lisitsynhave you seen they are doing pretty well generating text17:23
@lisitsynwith RNNs17:23
@HeikoSlisitsyn: btw esben is a quite smart guy, we should drag him in while he is doing his project ;)17:23
@lisitsynHeikoS: no doubt :)17:23
@HeikoSyeah we had a talk on that here recently by a guy from M$17:23
@HeikoSquite cool17:23
@HeikoSfor integrated IDEs17:23
@HeikoSthey learn from code what to suggest to complete17:23
@HeikoSlike whole program snippets17:24
@lisitsynHeikoS: well if you coded in intellij idea :D17:24
@lisitsynit wouldn't be of real surprise17:24
@HeikoSno for java I think17:24
@HeikoSor c#17:24
@lisitsynfor java it is really easy17:24
@lisitsynthe language itself is kind of designed for monkeys17:24
@HeikoSlisitsyn: can you send the stuff today? esben already started a few days ago17:24
@HeikoSits good to get input as early as possible17:24
@lisitsynI am just writing the mail17:24
@HeikoSawesome thanks a lot!17:25
@lisitsynHeikoS: ooh it seems I confuse his first/last name17:33
@lisitsynit is written like Soerig, Esben17:33
@lisitsynit is like confusing when you don't really understand first/last name17:36
@lisitsynwhat is last and what is first i mean17:36
@HeikoSesben is first, lisitsyn18:15
@lisitsynHeikoS: yeah I got it18:15
@lisitsynHeikoS: I sent him a letter explaining that :D18:15
@lisitsynHeikoS: can you please update me on what are relations of shogun and stan?18:16
@HeikoSlisitsyn: shogun and stan, why?18:17
@lisitsynHeikoS: I am pretty sure I heard sth about stan from you18:17
@lisitsynbut I can't really remember what18:17
@HeikoSlisitsyn: yes, I want to have shogun have bindings to stan18:17
@HeikoSfor two things:18:17
@lisitsynHeikoS: how?18:17
@HeikoSautodiff, and mcmc18:17
@lisitsynwhat are bindings?18:18
@HeikoSlisitsyn: like use stan from within shogun18:18
@lisitsynaha I see18:18
@HeikoSsay implement shoguns kernel functions in stan, then we get the gradients for free18:18
@HeikoSand probabilistic models in shogun can also be learned using stan's great hmc sampler18:18
@lisitsynHeikoS: so we just need a way to IO data?18:19
@HeikoSlisitsyn: no its more complicated18:19
@lisitsynis it like you just execute some stan program with your data and get it in shogun format as well?18:19
@HeikoSstan has its own language18:19
@HeikoSthat is translated into c++ code18:19
@HeikoStake say a GP18:20
@HeikoSwe have lots of different GP models in Shogun18:20
@HeikoSwe can write those models in stan, in the stan language18:20
@HeikoSthen we can offer inference for those models under the  Shogun interface18:21
@HeikoSbut internally, stan is used18:21
@HeikoSbut thats hidden from user18:21
@HeikoSthats one use case18:21
@lisitsynI see18:21
@HeikoSkind of cool to be able to switch between approximate inference and MCMC under the same interface18:21
@HeikoSthe other thing is18:21
@HeikoSwe have lots of code that just implements gradient evaluataions in Shogun18:22
@lisitsynhow does it work?18:22
@HeikoSif we would write the functions we want the gradients of (say derivative of Gaussian kernel wrt its length-scale sigma), in stan, then we would get this for free18:22
@HeikoSit takes the stan language snippet, transforms it into some kind of symbolic representation18:22
@lisitsynI am now browsing stan's code18:23
@HeikoSand then generates c++ code for both evaluation and gradient18:23
@HeikoScheck wikipedia of automatic differentiation18:23
@lisitsynyeah I know about auto diff18:23
@HeikoSso the cool thing is18:23
@HeikoSyou get c++ code that evaluates the gradient18:23
@lisitsynI just meant how it works in stan18:23
@lisitsynyeah I see18:23
@HeikoSso its as fast as evaluation the function itself18:23
@lisitsynI am like confused18:23
@lisitsynits pretty good engineered18:24
@HeikoSso if we put this in our build process, i.e. generating the c++ code from stan code, and the compiling c++ code and expose it via shogun18:24
@HeikoSthats cool18:24
@HeikoSthey have a full time guy18:24
@HeikoSfor a couple of years now18:24
@HeikoSits a great great project18:24
@lisitsynI mean it is really like good C++ code :D18:24
@HeikoSI know18:24
@lisitsynwould not be possible for science people to write such code18:24
@HeikoSthey use a lot of template programming18:24
@HeikoSno the have a software engineering guy (that also knows about mcmc)18:25
@HeikoSlisitsyn: actually, most of stan is the autodiff18:25
@HeikoSthe mcmc is just a very small part18:25
@lisitsynI see18:25
@HeikoSlisitsyn:  they generalised eigen3 for the autodiff18:26
@HeikoSthats why it is so cool18:26
@HeikoSall the autodiff happens via template programming18:26
@HeikoSI asked them a few times to release the autodiff seperately18:26
@HeikoSthey always told me to officially request this on the mailing list, and that its quite easy18:26
@lisitsynHeikoS: so you need gcc to do that?18:27
@lisitsynor clang whatever18:27
@HeikoSI think they use boost something18:27
@HeikoSnot sure about internals18:27
@lisitsynHeikoS: I mean is it really compiling C++ code on the run?18:27
@HeikoSlisitsyn: no18:28
@HeikoSthe stanc program takes a stan language listing and produces standard c++ code18:28
@HeikoSthis can then be compiled as normal18:28
@lisitsynah I see18:28
@HeikoSso two steps to generate a stan program18:28
@lisitsyngot it18:28
@HeikoS1. use stanc18:28
@HeikoS2. use gcc18:28
@lisitsynbut you still need compiler around18:29
@HeikoSyeah sure18:29
@HeikoSstanc generate c++ code18:29
@lisitsynthat's pretty cool18:29
@HeikoSits great to have this layer, as allows for autodiff18:29
@HeikoSwould be good to do this in shogun too18:29
@HeikoSalso you get backend independence on the fly18:29
@HeikoSyeah some kind of18:29
@HeikoSlike say you have CKernel18:30
@lisitsynHeikoS: we are too general still18:30
@HeikoSCGaussianKernel's compute method can be generated18:30
@lisitsynno clear vision what we focus on18:30
@HeikoSno i dont agree18:30
@HeikoSbut certainly not this idea18:30
@HeikoSthis is just a cool idea18:30
@HeikoSbut focus of other things is pretty clear18:30
@HeikoSsee all the latest discussions :)18:30
@lisitsynyeah we can add some template stuff here18:30
@lisitsynbut actually18:30
@lisitsynit is not worth it :D18:30
@lisitsynI mean people use clusters and stuff18:31
@lisitsynHeikoS: I mean templates are good to get crazy performance18:31
@HeikoSah i see18:32
@HeikoSyeah sure sure18:32
@lisitsynbut people just throw more power usually18:32
@HeikoSthis is all not for this or next year18:32
@HeikoSwe got other problems18:32
@HeikoSlambdays ideas for cleaning up classes are good18:32
@lisitsynHeikoS: yeah sure18:32
@HeikoSbut we need to release first18:32
@HeikoSand then next gsoc also starts soon18:32
@HeikoSso need ideas, mentory, etc18:33
@HeikoSand documentation18:33
@HeikoSall that18:33
@HeikoStoo much18:33
@HeikoSits all feasible18:34
@HeikoSjust some work18:34
@HeikoSget rid of static interfaces18:34
@HeikoSmake swig matlab work first18:34
@HeikoSclena up testing framework18:34
@HeikoSclean up base classes18:34
@HeikoSdrop serialisation18:34
@HeikoSdrop migration18:34
@HeikoSdrop legacy code that is not tested18:34
@HeikoSmake binaries work smoothly18:35
@HeikoSmac build18:35
@HeikoSif all that was in18:35
@HeikoSwould be super awesome18:35
@HeikoSas we got enough ML algos ;)18:35
@HeikoSand then next step: speed18:35
@HeikoSswig build split18:35
@HeikoS(actually that one also soon as it blows up already)18:35
-!- shaochuan [] has joined #shogun18:57
-!- PirosB3 [~pirosb3@] has quit [Quit: PirosB3]19:00
-!- shaochuan [] has quit [Ping timeout: 240 seconds]19:03
-!- HeikoS [] has quit [Ping timeout: 256 seconds]19:43
-!- shaochuan [] has joined #shogun22:27
-!- shaochuan [] has quit [Ping timeout: 255 seconds]22:32
-!- pickle27 [] has joined #shogun23:32
--- Log closed Wed Nov 19 00:00:15 2014