Open in new window / Try shogun cloud
--- Log opened Fri Sep 25 00:00:34 2015
-!- besser82 [~besser82@fedora/besser82] has quit [Ping timeout: 246 seconds]02:10
-!- besser82 [~besser82@fedora/besser82] has joined #shogun02:11
-!- mode/#shogun [+o besser82] by ChanServ02:11
-!- shaochuan [~shaochuan@c-50-184-81-180.hsd1.ca.comcast.net] has joined #shogun02:21
-!- shaochuan [~shaochuan@c-50-184-81-180.hsd1.ca.comcast.net] has quit [Ping timeout: 240 seconds]02:25
-!- HeikoS [~heiko@144.82.196.166] has joined #shogun11:49
-!- mode/#shogun [+o HeikoS] by ChanServ11:49
@HeikoSlisitsyn:  hi12:59
lisitsynHeikoS: hey12:59
@HeikoSlisitsyn: have a question for you12:59
@HeikoSproblem: I have new algorithms and would like to put them online13:00
lisitsynaha13:00
@HeikoSproblem: shogun is too big and nobody can be asked to install it13:00
@HeikoSso I cannot put it in there, no point13:00
@HeikoSso I am thinking of rather writing micro libraries13:00
lisitsynhmm yeah13:00
@HeikoSthat are super super easy to install13:00
@HeikoSand use13:00
@HeikoSBUT13:00
lisitsynmaybe this makes sense13:00
@HeikoSI want to allow people to use them from different languages13:01
@HeikoSjust like shogun13:01
@HeikoSsince nobody uses C13:01
@HeikoSor can be asked13:01
@HeikoShow can I do this nicely?13:01
@HeikoSwhat is your thoguhts on this?13:02
lisitsynwhat langs do you want?13:02
@HeikoSsame as Shogun more or less13:02
@HeikoSin order: python, R, Matlab, Java13:02
@HeikoSbut I dont want to build the interfaces by hand13:02
@HeikoSthe thing is13:03
@HeikoSinterface does not need to be object oriented13:03
@HeikoSsince the mini lib is very small13:03
@HeikoSjust some functions with couple of parameters to be called13:03
@HeikoSthat can be embedded into something else13:03
lisitsynok I see13:03
lisitsynwell if you need that many langs13:03
lisitsynyou'd need swig probably13:03
@HeikoSlisitsyn: ok say I used swig13:03
lisitsynbut if you have just a few functions13:03
lisitsynwe can have something on our own13:04
@HeikoSwhat do you mean?13:04
lisitsynwell matlab C bindings, python C bindings13:04
@HeikoSI see13:04
@HeikoShow realistic is a mini version of a meta library that exposes simple C functions via swig?13:05
lisitsynwell it sounds pretty easy13:05
lisitsynHeikoS: I would design it like that:13:06
lisitsynswig - C API - C++ code13:06
@HeikoSok13:07
@HeikoSand the objects passed would just be vectors and matrices13:08
@HeikoSand basic types13:08
@HeikoSlisitsyn: how much sense do you think it makes to put this into a meta library for exactly that use?13:09
lisitsynI see some problem it would become shogun13:09
lisitsyn:D13:09
lisitsynI am thinking how to avoid that13:09
@HeikoSlisitsyn: if Shogun was modular13:10
@HeikoSthen I would not have to do it13:10
lisitsynmodular like?13:10
@HeikoSbut right now it makes no sense for me to put stuff in --- to hard to use13:10
@HeikoSa person quickly wants to use my algorithm13:10
@HeikoStakes < 5 mins to get it running13:10
lisitsynok I see13:10
@HeikoSor another scenario13:12
@HeikoSsomeone wants to use the code in a ML toolbox or another project13:12
@HeikoStakes just a few minutes to integrate it13:12
@HeikoSjust like say eigen13:12
@HeikoSor scikit learn13:12
@HeikoSmini libraries with a particular purpose and easy to use13:13
lisitsynHeikoS: ok let me think13:18
lisitsynHeikoS: will you be here in a hour?13:18
@HeikoSyes13:18
lisitsynok I'll call you then :)13:19
@HeikoSlisitsyn: cool!13:19
lisitsynI'll get to work now13:19
-!- shaochuan [~shaochuan@c-50-184-81-180.hsd1.ca.comcast.net] has joined #shogun13:26
-!- shaochuan [~shaochuan@c-50-184-81-180.hsd1.ca.comcast.net] has quit [Ping timeout: 246 seconds]13:31
-!- uchihaitachi08 [~sameer@203.110.243.23] has joined #shogun13:33
@HeikoSlisitsyn:  heya14:39
lisitsynHeikoS: hey14:40
lisitsynyeah I am back :)14:40
lisitsynok lets discuss the stuff14:40
@wikingmorning15:28
@wiking:)15:28
* wiking in boston15:28
lisitsynhah15:38
lisitsynHeikoS: ping! :)15:38
lisitsynwiking: no moar kiev?15:38
@HeikoSlisitsyn: yo!15:45
@HeikoSwiking: morning!15:46
lisitsynHeikoS: I had other idea15:46
@HeikoSshooot15:46
lisitsyndo you think you gonna call these methods very often?15:47
lisitsynwhatever methods you have15:47
lisitsyntrain? apply?15:47
@HeikoSlisitsyn: not really15:47
@HeikoSthey are expensive15:47
@HeikoSso a simple API that hides a more expensive machinery in the back15:47
@HeikoSmaybe some methods are called more often though15:47
@HeikoSlike update methods of estimators15:48
lisitsynwhat about data-driven api?15:48
@HeikoSin fact15:49
@HeikoSobject oriented is best, it is for density estimation15:49
@HeikoSso you learn an object and subsequently want to know its gradient many times15:49
@HeikoSbut explain what you ahve in mind15:49
lisitsynwell say have15:50
lisitsynhmmm15:51
lisitsynlet me find some example15:51
lisitsynok nevermind15:51
lisitsynHeikoS: say you submit some json and get result15:51
@HeikoSno it is much simpler15:52
lisitsynHeikoS: I mean this is supergeneral15:52
lisitsynno matter what library you have you gonna use it the same way15:52
lisitsynand change the json you submit15:52
lisitsynHeikoS: I may be unclear15:53
@HeikoSlisitsyn: but I do build research software15:53
lisitsynyes15:54
@HeikoSso it is more a library to be used in other code15:54
@HeikoSnot so much an application15:54
lisitsynyes15:54
lisitsynit is not that different15:54
lisitsynHeikoS: I don't mean you're going to do all the json/whatever stuff15:54
lisitsynI just mean we can define some api so that you pass some data15:55
lisitsynand get some data15:55
lisitsynnot that you do some sequential steps15:55
@HeikoSI see what you mean15:55
@HeikoSbut I would prefer a simple C-style or OO api to that15:55
@HeikoSdata driven is more interesting if developing tools that are going to be used in products15:56
@HeikoSfor me at least15:56
lisitsynHeikoS: well I am approaching that as the simplest thing15:57
lisitsynbecause this way we just need one swig method :D15:57
@HeikoSlisitsyn: I see15:57
@HeikoSbut users need to put data into a json15:58
lisitsynHeikoS: I am thinking about other thing15:58
lisitsynlike you provide how to access data15:58
lisitsynsay you attach some object to existing matrix15:59
lisitsynand it has some unique id15:59
lisitsyne.g.15:59
lisitsynsource = lib.source(your_feature_matrix)15:59
lisitsynlib.do(task=learn, method=your_fancy_gp, data=source)16:00
@HeikoSI see16:01
@HeikoSthat is quite cool16:01
@HeikoSlisitsyn: in fact, that would be good for Shogun16:01
@wikinglisitsyn: yeah kiev is over :)16:02
lisitsynHeikoS: I am considering the case16:02
lisitsynyou read remote file16:02
lisitsynor HDFS file16:02
@HeikoSlisitsyn:  I see16:05
@HeikoSor passdata from memory?16:05
lisitsynHeikoS: yes16:25
lisitsynHeikoS: ok what about16:25
lisitsynyour code is in C++ already?16:25
-!- shaochuan [~shaochuan@c-50-184-81-180.hsd1.ca.comcast.net] has joined #shogun16:29
-!- shaochuan [~shaochuan@c-50-184-81-180.hsd1.ca.comcast.net] has quit [Ping timeout: 268 seconds]16:34
@HeikoSyes18:12
-!- HeikoS [~heiko@144.82.196.166] has quit [Ping timeout: 272 seconds]18:49
-!- shaochuan [~shaochuan@2601:647:4603:2a70:8f8:25bb:cd3c:3875] has joined #shogun21:25
-!- shaochuan [~shaochuan@2601:647:4603:2a70:8f8:25bb:cd3c:3875] has quit [Ping timeout: 246 seconds]21:30
--- Log closed Sat Sep 26 00:00:36 2015