Open in new window / Try shogun cloud
--- Log opened Mon Jun 17 00:00:48 2013
@sonney2kHeikoS, I found this - which should help us a lot :D00:31
@HeikoSsonney2k: nice :)00:31
@HeikoSjust need a protocol for berlin then :)00:32
@HeikoSand somebody has to bring this stuff to the notar00:34
@HeikoSI will go to bed now, good night everyone, see you tomorrow00:34
@HeikoStomorrow GSoC starts yeaaaah ;)00:34
-!- HeikoS [~heiko@] has quit [Quit: Leaving.]00:35
-!- FSCV [~FSCV@] has quit [Ping timeout: 248 seconds]02:01
-!- lisitsyn1 [~lisitsyn@] has joined #shogun04:10
-!- gsomix [~Miranda@] has quit [Ping timeout: 245 seconds]04:12
-!- lisitsyn [~lisitsyn@] has quit [Ping timeout: 268 seconds]04:12
-!- pickle27 [] has joined #shogun04:20
-!- nube [~rho@] has joined #shogun06:16
-!- lambday [67157d37@gateway/web/cgi-irc/] has joined #shogun07:12
lambdaysonney2k: moin moin :)07:13
lambdaysonney2k: with the pretty function thing, all we gotta write in the error msg is the msg itself, right?07:14
-!- lambday [67157d37@gateway/web/cgi-irc/] has quit [Quit: - A hand crafted IRC client]07:21
-!- lambday [67157d37@gateway/web/cgi-irc/] has joined #shogun07:25
@sonney2klambday, hey there!08:19
@sonney2klambday, yes exactly!08:19
lambdaysonney2k: okay08:20
@sonney2klambday, it should be a config in shogun/io/SGIO* to select how detailed you want to know where the error occurs08:20
-!- votjakovr [] has joined #shogun08:21
@sonney2kmoin votjakovr!08:23
lambdaysonney2k: once HeikoS's patch is merged, it will be enabled by default? or should we configure shogun with something?08:24
votjakovrsonney2k: good morning!08:24
-!- gsomix [] has joined #shogun08:27
gsomixgood morning08:27
@sonney2klambday, I just hacked sth up that should do it08:29
lambdaysonney2k: :) :) okay08:29
lambdaygood morning everyone :)08:30
@sonney2klambday, if I commit this - can you test this please?08:31
lambdaysonney2k: sure08:31
@sonney2kpatch is really small...08:31
* sonney2k compiles08:31
-!- shogun-notifier- [] has joined #shogun08:35
shogun-notifier-shogun: Soeren Sonnenburg :develop * 8181acb / src/shogun/io/SGIO.cpp,src/shogun/io/SGIO.h:
shogun-notifier-shogun: enable location info (as in object / function name printing before SGIO08:35
shogun-notifier-shogun: prints) with config option to disable / show line and file08:35
@sonney2klambday, oki committed08:35
@sonney2kgtg brb08:35
lambdaysonney2k: ciao :)08:35
lambdayI'll test it08:35
-!- pickle27 [] has quit [Quit: Leaving]08:38
-!- lisitsyn1 [~lisitsyn@] has quit [Quit: Leaving.]08:44
-!- sonne|work [] has joined #shogun08:51
sonne|worklambday: okidoki back!08:53
-!- lambday_ [67157f37@gateway/web/freenode/ip.] has joined #shogun08:58
lambday_sonne|work: okie dokie tested08:58
lambday_sorry I got dc08:58
lambday_sonne|work: one problem though08:58
-!- lambday [67157d37@gateway/web/cgi-irc/] has quit [Quit: - A hand crafted IRC client]08:58
lambday_sonne|work: it always shows that it originates from void shogun::SGIO::message08:58
sonne|workhah yes08:59
sonne|workit has to be in the #define then08:59
* lambday_ is confused08:59
lambday_sonne|work: how far your workplace is from where you live? :P09:00
sonne|workI don't recall exactly but lets say ~20KMs09:01
lambday_sonne|work: you sure drive fast :P09:02
sonne|worklambday_: I go by train and whenever I have to leave it and walk I say brb :D09:03
sonne|workbut yes we are all michael schumacher here ;)09:03
lambday_sonne|work: hahahahaha :D09:04
shogun-buildbotbuild #942 of cyg1 - libshogun is complete: Failure [failed compile]  Build details are at  blamelist: Soeren Sonnenburg <>09:04
sonne|worklambday_: ok I know now how to do it properly. I don't have time to test this though09:05
lambday_sonne|work: I'll test it09:05
lambday_just a small test() with a REQUIRE will do, right?09:06
lambday_tested with a few classes that uses REQUIRE as well09:06
shogun-notifier-shogun: Soeren Sonnenburg :develop * e2142df / src/shogun/io/SGIO.cpp,src/shogun/io/SGIO.h:
shogun-notifier-shogun: add pretty function macro in defines09:50
sonne|worklambday_: no idea how to really test it in a test09:50
sonne|worklooking at it should be enough09:50
lambday_sonne|work: I'm checking09:52
lambday_sonne|work: works like a charm! :)09:56
shogun-buildbotbuild #943 of cyg1 - libshogun is complete: Failure [failed configure]  Build details are at  blamelist: Soeren Sonnenburg <>10:03
sonne|worklambday_: what is the output of such message now?10:05
shogun-notifier-shogun: lambday :develop * d8dc5b5 / tests/unit/base/
shogun-notifier-shogun: minor fix for eigen3 check in SGObject_unittest10:05
shogun-notifier-shogun: Soeren Sonnenburg :develop * cc2f703 / tests/unit/base/
shogun-notifier-shogun: Merge pull request #1171 from lambday/develop10:06
shogun-notifier-shogun: minor fix for eigen3 check in SGObject_unittest10:06
-!- nube1 [~rho@] has joined #shogun10:10
-!- nube [~rho@] has quit [Ping timeout: 256 seconds]10:13
-!- van51 [] has joined #shogun10:14
shogun-buildbotbuild #944 of cyg1 - libshogun is complete: Failure [failed configure]  Build details are at  blamelist: lambday <>, Soeren Sonnenburg <>10:29
-!- nube1 [~rho@] has quit [Remote host closed the connection]10:41
-!- lisitsyn [] has joined #shogun11:40
-!- shogun-notifier- [] has quit [Quit: transmission timeout]13:06
@wikinglisitsyn: ping13:08
lisitsynwiking: pong13:09
@wikinglisitsyn: cmake? :)13:11
lisitsynwiking: cmdline is ready will continue13:11
lisitsynwiking: not today though going to have exam tomorrow :D13:12
@wikinglisitsyn: other question: any ideas how to do a check in general for CFeatures to find out whether all the vectors in it are equal or not?13:12
@wikingi see that with DotFeatures it's possible to do this... but with CFeatures in general i see no way with the current api13:13
lisitsynwiking: like vectors of CFeatures f1 == vectors of CFeatures f2?13:13
lisitsynwiking: yeah CFeatures are quite general13:14
lisitsynwhy do you need it?13:14
@wikinglisitsyn: like: all f_i in F, where F is CFeatures13:14
@wikingi mean for all i,j f_i = f_j in F13:14
lisitsynso all vectors are the same?13:15
@wikingdotfeatures supports an iteration i see that13:15
lisitsynstrange you need that!13:15
@wikinglisitsyn: decision tree13:15
lisitsynI mean it is quite singular case or?13:16
@wikingyeah well i dont know any other algo that would require this api :)13:17
lisitsynwiking: however can you build a decision tree on features only?13:17
lisitsynw/o at least dotfeatures13:17
@wikinglisitsyn: indeed13:17
@wikinglisitsyn: it's just branching based on the features13:17
@wikingyou need to calculate an information gain value based on given amount of features13:18
@wikingand that's it13:18
@wikingyou take the highest valued feature and branch there the tree...13:18
@wikingmmm we don't have a factory class for CFeatures as in case for Clabels rith?13:19
-!- lambday_ [67157f37@gateway/web/freenode/ip.] has quit [Ping timeout: 250 seconds]13:20
lisitsynwiking: yes13:21
lisitsynwe don't have it iirc13:21
@wikingmmmm this is going to be funny with some dynamic_cast stuff ;)13:24
lisitsynwiking: which means we have wrong design somewhere :)13:30
-!- gsomix [] has quit [Quit: Miranda IM! Smaller, Faster, Easier.]13:30
lisitsynwiking: I developed a thing that does format("{} fdfsd {} dfs {}",2.0,'c', 1); => "2.0 fdfsd c dfs 1"13:31
lisitsynmay be we should replace our old-style %d %s etc with it13:32
-!- lambday [67157e36@gateway/web/freenode/ip.] has joined #shogun13:39
-!- hushell [] has quit [Ping timeout: 264 seconds]14:24
-!- hushell [] has joined #shogun14:24
-!- van51 [] has left #shogun ["QUIT :Leaving."]14:28
-!- votjakovr [] has left #shogun ["ERC Version 5.3 (IRC client for Emacs)"]15:05
-!- nube [~rho@] has joined #shogun15:14
-!- nube [~rho@] has quit [Ping timeout: 245 seconds]15:19
-!- nube [~rho@] has joined #shogun15:22
-!- nube1 [~rho@] has joined #shogun15:30
-!- nube [~rho@] has quit [Ping timeout: 252 seconds]15:33
-!- nube1 [~rho@] has quit [Ping timeout: 240 seconds]15:46
-!- nube [~rho@] has joined #shogun16:07
-!- nube1 [~rho@] has joined #shogun16:27
-!- nube [~rho@] has quit [Ping timeout: 256 seconds]16:27
-!- lisitsyn [] has quit [Quit: Leaving.]16:31
-!- nube1 [~rho@] has quit [Ping timeout: 245 seconds]16:33
-!- van51 [] has joined #shogun16:52
-!- nube [~rho@] has joined #shogun17:05
-!- nube [~rho@] has quit [Ping timeout: 264 seconds]17:09
-!- lisitsyn [~lisitsyn@] has joined #shogun17:14
-!- mode/#shogun [+o lisitsyn] by ChanServ17:14
-!- nube [~rho@] has joined #shogun17:22
-!- nube [~rho@] has quit [Ping timeout: 246 seconds]17:39
-!- HeikoS [] has joined #shogun17:45
-!- mode/#shogun [+o HeikoS] by ChanServ17:45
@HeikoSsonney2k, sonne|work, lisitsyn turns out I *will* be able to make it this evening17:46
-!- gsomix [~Miranda@] has joined #shogun17:46
-!- nube [~rho@] has joined #shogun17:56
lambdayHeikoS: there?18:17
@HeikoSlambday: yes, hi18:17
@HeikoSI just talked to Daniel a bit18:17
lambdayHeikoS: how's your work going? :)18:17
@HeikoSsubmitting today! :)18:17
lambdayHeikoS: awesome!18:17
@HeikoSits the paper for the website you have seen18:17
@HeikoSlambday: I talked to Daniel about the colours18:18
@HeikoSwe have to take one sample from each color18:18
@HeikoSotherwise, there might be problems18:18
lambdayHeikoS: yes18:18
lambdayHeikoS: so, not going to a problem I guess18:19
@HeikoSbut I think we can do this via having an index variable for the probing sampler which color to use18:19
lambdayHeikoS: yes18:19
@HeikoSand then just have one instance per color18:19
@HeikoSand pass this on...18:19
@HeikoSso no problems18:19
@HeikoSphew! :)18:19
lambdayyeah! phew! :D18:19
@HeikoSlooking at your diagram ...18:19
@HeikoSwhat di you change?18:19
lambdayby the way please check the pseudo code (whis is not so pseudo but looks more like c++) :(18:19
lambdaymainly, added the finalize method18:20
lambdaymoved shifts weights etc to the rational approximation class18:20
@HeikoSso for the aggregation methods18:20
@HeikoSI would add two: one which adds numbers, and one which adds up scalars18:20
@HeikoSwhere finalize might divide by the number of added terms18:21
@HeikoSrest is looking good18:21
@HeikoSwe will see whether it will work18:21
@HeikoSso checking pseudoicode now18:22
lambdayHeikoS: I didn't get..18:22
@HeikoSI would not store vectors and scalars, but rather accumulate them18:22
@HeikoScould you change the language to c++ in the gist?18:22
lambdayhehe okay18:22
@sonney2kHeikoS, happy with the logging?18:23
@HeikoSsonney2k: I saw the patch, not used it yet though, I guess its fine as its printing the context? :)18:23
@sonney2kHeikoS, and regarding this evening. you have to18:23
@HeikoSNow I have to undo all my log messages . noooooo18:23
@HeikoSsonney2k:  what?18:23
lambdayHeikoS: changed18:24
@HeikoSlambday:  did not really change that much ;)18:24
@HeikoSlambday:  for pseudo code, dont use pointers18:24
@HeikoSbut dont worry now18:24
lambdayHeikoS: oh and another thing... I was thinking of sending the classes one by one... so, should I sent PR for CLinearOperator, CDenseMatrixOperator and one unittest?18:24
@HeikoSyeah for the basic building block at least18:25
lambdayHeikoS: alright, sending18:25
-!- zxtx [] has quit [Ping timeout: 264 seconds]18:27
lambdayargh stupid mistake in the cpp18:29
lambdayHeikoS: in, read it as "float64_t
@HeikoSlambday: note I will be able to merge/review a bit18:37
@HeikoSjust not all day around18:37
@HeikoS but in the evening18:37
@HeikoSah, lambday one more thing18:38
@HeikoSso every GSoC student was asked to think about a real life example to present in the next meeting18:38
@HeikoSfor you, this can be computing the likelihood of the ozone model that we describe in that paper18:39
@HeikoSso if you take a look at that ozone page on the website I sent you18:39
@HeikoSthere is the model (its just a big big Gaussian)18:39
@HeikoSI have the data for that etc. So the first cool thing would be to be able to evaluate the likelihood of that model using our methods18:39
@HeikoSthats proper real-life data18:39
@HeikoSnext steps can be maximum likelihood solutions, and then Bayesian inference over that18:40
@HeikoSso you can think about how to present this to the others (just a few scenences)18:40
lambdayHeikoS: alright18:40
lambdaythanks a lot :)18:40
@HeikoSlambday: NIPS was about adaptive MCMC, will share as soon as we make it public18:41
lambdayI was going to ask you about this :)18:41
lambdayokay :) cool!18:41
lambdayby the way, while sending PR, it says base branch "develop" - how can I send the PR against this feature branch?18:42
lambdayHeikoS: in my repo its feature/log_determinant already18:43
@HeikoSyou have to commit the stuff inside a feature branch locally18:43
@HeikoSthen push that feature branch to your fork18:43
@HeikoSthen send a PR from that feature branch against the same branch in shogun18:43
lambdayHeikoS: I already pushed local feature branch to my fork18:44
@HeikoSso send the pr, when doing this you can select the branch18:44
lambdayshogun's base branch doesn't have the feature/log_determinant, it shows develop, and the head branch (my fork) shows feature..18:46
lambdaywould it create it once I send the PR? :-/ sorry I am still fighting with git :(18:47
@HeikoSah I see18:47
@HeikoSlisitsyn:  how to create feature branchs in shogun's repository?18:48
@HeikoScan this be done via PRs?18:48
@lisitsynHeikoS: just create it locally and push18:48
@HeikoSlisitsyn:  do I have to do it or can a PR create one?18:48
@lisitsynHeikoS: I don't think it is possible to modify that by PR18:48
@HeikoSlisitsyn:  thanks :) one more question, how to reset to upstream current?18:49
@HeikoSlambday: I will create the feature branch once I figured out how to reset my stuff :)18:49
lambdayHeikoS:  okay :)18:49
@lisitsynHeikoS: like that iirc git reset origin/develop18:49
lambdayHeikoS: I'll be back after dinner18:50
@HeikoSlambday: enjoy!18:50
@HeikoSlambday: created a feature branch lambday-log-det for you18:55
-!- nube [~rho@] has quit [Ping timeout: 276 seconds]19:03
-!- nube [~rho@] has joined #shogun19:07
-!- votjakovr [] has joined #shogun19:30
votjakovrHeikoS: hi! I've recieved your mail19:31
@HeikoSvotjakovr: hi there :)19:31
@HeikoSshould we talk abot things now or tomorrow?19:32
votjakovrHeikoS: i'd like to hear your ideas about real world GP application... I think it should show us an advantages of using GPC wrt other classifiers19:34
@HeikoSvotjakovr: thats a good idea19:35
@HeikoSso in contrast to SVM, we have proper binary probabilities19:35
@HeikoShowever, with Laplace approximation on binary problems, we will not massively beat SVMs19:36
votjakovrHeikoS: yep i agree19:36
@HeikoSsince we cannot yet integrate out the hyperparameters (which would give better results)19:36
@HeikoSIt is still nice to have good example though19:36
@HeikoSeven if we reach same performance as SVM19:37
@HeikoSan example where the probabilities count would be good19:37
@HeikoSthen we can make a point on that19:37
@HeikoSvotjakovr: I think I would go for reproducing an example that is used in papers19:38
@HeikoSvotjakovr: both a 2-dimensional (we can do nice plots of the predictive distribution then) and a higher dimensional19:38
@HeikoSalso, a graphical toy example (click point together) would be nice19:39
votjakovrHeikoS: btw maybe take an example from Girolami's paper for multiclass. What do you think?19:40
@HeikoSvotjakovr: yes as a toy19:43
@HeikoSthe ring one is nice19:43
@HeikoSbut they also have proper data19:43
@HeikoSvotjakovr:  I think we should go for multiple examples19:43
@HeikoStoy/real for binary, both in low and higher dimensions19:43
@HeikoSsame for multiclass19:43
@HeikoSfor multiclass, we might beat SVMs with the probabilities since they only can use heuristics19:43
@HeikoSand then a nice description and a screenshot for every example19:44
@HeikoSthat would be really cool19:44
@HeikoSa little classification study using GPs19:44
@HeikoSvotjakovr: that will help people a lot19:44
@HeikoSvotjakovr: ok, since I am not there at the GSoC meeting, you will have to present these ideas (just a few sentences)19:44
votjakovrHeikoS: Ok :) Also I'll try to find a good datasets for examples19:50
@HeikoSvotjakovr: nice :)19:50
@HeikoSvotjakovr: since we are covering quite a few cases , individual example do not have to be extremely complicated. Just some nice real/toy data should be fine.19:51
votjakovrHeikoS: oh yeah19:52
@HeikoSvotjakovr: ok, nice, so how are the other things going?19:53
-!- zxtx [] has joined #shogun19:54
lambdayHeikoS: back19:58
lambdayHeikoS: thanks :) I'm sending the PR19:58
lambdayHeikoS: something is wrong :( it shows 16 commits, I had only one :(20:01
votjakovrHeikoS: today i was drawing diagrams, but i have not finished yet. Also i was reading about some related GPC stuff20:01
@HeikoSlambday: what did you try to do?20:01
@HeikoSvotjakovr: do you think you will finish the GP-refactoring (diagrams and code) until tomorrow?20:02
@HeikoSalso lets do the logit binary case first20:02
lambdayHeikoS: I tried to sent the PR against lambday-log-det from feature/log_determinant (a branch in my fork)20:02
@HeikoSthis is in the rasmussen GP book under chapter classification, its the first case (Laplace approximation)20:02
@HeikoSbut laplace approximation is already there20:02
@HeikoSlambday: let me check the feature branch20:03
@HeikoSI think I forgot to rebase against develop head20:03
votjakovrHeikoS: i agree, that laplace+logit likelihood will be the first20:03
@HeikoSvotjakovr: but really first, the classification/regression distinction needs to be made, so focus on that for now20:04
@HeikoSI just want to make sure that you are ready to work on this stuff while I am not around. would be annoying for you if you get stuck with questions and nobody can answer them20:04
@HeikoSlambday: yeah I have local git issues :(20:05
@HeikoSgive me a minute20:05
lambdayHeikoS:  no problem20:05
votjakovrHeikoS: Ah, ok, i'll try to finish classification/regression distinction tomorrow.20:07
@HeikoSvotjakovr: cool20:07
@HeikoSand then afterwards, we can start worrying about the GP internals, so lets meet tomorrow and discuss if you are fine with that?20:07
votjakovrHeikoS: ok20:08
@HeikoSlambday: did you rebase while doing pull?20:08
@HeikoSlooks like not ...20:08
@HeikoSI dont know why this is, maybe just send the PR against develop20:08
@HeikoSis also fine20:08
@HeikoSI am annoyed by the git stuff ;)20:09
lambdayHeikoS:  oops!20:10
lambdayHeikoS: I rebased against develop20:10
lambdaysorry, changing!20:10
@HeikoSlambday: no that should be fine20:10
-!- shogun-notifier- [] has joined #shogun20:11
shogun-notifier-shogun: Heiko Strathmann :lambday-log-det * 512d94f / src/shogun/lib/DataType.cpp,src/shogun/lib/DataType.h:
shogun-notifier-shogun: refactored sizeof_ptype, sizeof_stype to make them available from static context20:11
shogun-notifier-shogun: Heiko Strathmann :lambday-log-det * a5435a5 / / (3 files):
shogun-notifier-shogun: first parts of copy_ptype with unit tests20:11
shogun-notifier-shogun: Heiko Strathmann :lambday-log-det * 883ac63 / / (3 files):
shogun-notifier-shogun: -refactored compare_stype a bit20:11
shogun-notifier-shogun: -added copy_stype method with first bits20:11
shogun-notifier-shogun: -added first unit test for copy_stype20:11
shogun-notifier-shogun: Heiko Strathmann :lambday-log-det * caef78d / / (8 files):
shogun-notifier-shogun: initial (working) attempt for a general purpose clone method of CSGObject. Comes with first basic unit tests. More to come20:11
shogun-notifier-shogun: Heiko Strathmann :lambday-log-det * 855b1be / / (8 files):
shogun-notifier-shogun: Merge pull request #1167 from karlnapf/develop20:11
@HeikoShere we go20:11
shogun-notifier-shogun: enable location info (as in object / function name printing before SGIO20:11
shogun-notifier-shogun: prints) with config option to disable / show line and file20:11
shogun-notifier-shogun: Soeren Sonnenburg :lambday-log-det * e2142df / src/shogun/io/SGIO.cpp,src/shogun/io/SGIO.h:
shogun-notifier-shogun: add pretty function macro in defines20:11
shogun-notifier-shogun: Soeren Sonnenburg :lambday-log-det * cc2f703 / tests/unit/base/
shogun-notifier-shogun: Merge pull request #1171 from lambday/develop20:11
shogun-notifier-shogun: minor fix for eigen3 check in SGObject_unittest20:11
lambdayso many commits :'(20:11
@HeikoSah man20:11
@HeikoSgit kills me20:11
@HeikoSthere should be your branch now20:12
@HeikoSrebased against latest develop20:12
@HeikoSbut since I regulary fail dealing with this, lets do things in develop20:12
@HeikoSor try another PR against lambday-log-det20:13
@HeikoSits now under merged branches20:13
@sonney2kHeikoS, you cannot rebase on published branches20:14
@HeikoSsonney2k: I just wanted to create a new feature branch for lambday20:14
@HeikoSto push his stuff into20:14
@HeikoSso I created it locally20:14
@HeikoSfrom latest develop20:14
@HeikoSand then pushed to origin20:15
@sonney2kHeikoS, you mean git flow publish feature?20:15
@HeikoSsonney2k:  no just a new branch for lambday to develop stuff in20:15
@HeikoSsonney2k: I though this way easy, but since it is not, I think sending PRs against develop is fine20:16
@HeikoSwe are just adding stuff anyway20:16
@sonney2kHeikoS, well git flow feature start 'feature'20:16
@sonney2kgit flow feature publish 'feature'20:16
@HeikoSok lets try that20:16
@sonney2kHeikoS, but you cannot rebase in this branch20:17
@sonney2kyou have to work until the very end in this20:17
@sonney2kand then once done do the merge to develop!20:17
@HeikoSmy whole git is now broken :(20:17
@HeikoSlets work in develop20:17
@sonney2kyeah don't rebase on anything you give out!20:17
@sonney2kyou can only do that locally20:17
@HeikoSsonney2k: well that was my plan20:18
@sonney2kvan51, how is it going?20:18
@sonney2kand hey gsomix? tests finished?20:18
@HeikoSsonney2k: can I safely remove the lambday-log-det branch in master repository?20:18
lambdayHeikoS: I am cancelling the PR then?20:18
@HeikoSlambday:  yeah please do it in develop20:19
@HeikoSwe will get into git hell otherwise ;)20:19
@HeikoSand I am not the guy who knows the way out of there20:19
@sonney2kHeikoS, locally and remotely - just remove it20:19
@HeikoSsonney2k, so the one the I see under  in merged branches, right?20:20
votjakovrHeikoS: are we agreed to use CMachine as a base class for GP?20:20
gsomixsonney2k: hey, nope. still preparing for exam. I'll do it little later, at night.20:20
@HeikoSvotjakovr: it is already20:20
@HeikoSits the base class of the current GP class20:20
@HeikoSso yes20:20
@HeikoSvotjakovr: we just need to add an extra abstraction layer20:20
votjakovrHeikoS: yep, i understand20:21
@sonney2kgsomix, when is your exam again?20:21
gsomixsonney2k: 19 June.20:21
-!- pickle27 [] has joined #shogun20:21
lambdaycrap I just subscribed to this new git thing they were showing and now I can't find the PRs, argh!!20:21
@sonney2kgsomix, ok then good luck and lets talk afterwards20:21
gsomixsonney2k: ok, thanks.20:21
lambdayah found it20:21
votjakovrHeikoS: btw why don't we use train() method for inference for example?20:22
@HeikoSvotjakovr: we do20:22
@HeikoStrain calls some other methods internally, check CMachine20:22
@HeikoSits not overloaded20:22
@HeikoSbut the submethods are20:22
@lisitsynpickle27: hey20:23
pickle27GSoC has begun!20:23
@lisitsynpickle27: yeah20:24
van51sonney2k: it's going ok20:24
@lisitsynpickle27: remember we have to think about some application as a result of your work?20:24
van51sonney2k: i'm fighting a bit with the compiler atm :p20:24
votjakovrHeikoS: but why does train_machine() method just return false?20:25
pickle27lisitsyn, yes of course - by application are you meaning something more involved than a really good example right?20:25
van51I've been meaning to ask though, the IO operations should be based on shogun classes and not iostream, right?20:25
@lisitsynpickle27: yes like not just an example but really fancy example20:25
van51because that's what I'm going to start next20:25
@HeikoSvotjakovr: checking20:26
pickle27lisitsyn, I still like the audio idea and the ekg idea Andreas mentioned but I'll have to see how to make them fancy above just a regular example20:26
@lisitsynpickle27: ECG is really cool20:26
lambdayHeikoS: sent the PR against develop'20:27
@lisitsynpickle27: well lets just make them audial20:27
pickle27lisitsyn, yeah I think so too20:27
pickle27lisitsyn, I wonder if we could separate a song into its components - that would be cool too20:27
@lisitsynpickle27: yeah once algos are ready we can play a bit I think20:28
lambdayHeikoS: things would have been better if we could have kept it in a separate branch.. I'll remove these debug msgs once everything is tested... :(20:28
@HeikoSlambday: that is alright, as said, we are only adding things20:28
pickle27lisitsyn, do you have a pref for the language the final example is done in?20:28
pickle27I'm going to write my basic examples in c++ obviously but I was thinking python for the finale20:28
@HeikoSlambday: sorry for being unable to deal with this git stuff . it just always causes me a headache, debug messages are fine though20:29
@lisitsynpickle27: I think we should go for something web20:29
pickle27okay so probs python or ruby then20:29
@HeikoSvotjakovr: I am sorry, I was wrong20:29
@lisitsynpickle27: well python is totally ok but there is a need to employ something to play audio etc20:30
@lisitsynpickle27: I think that's crucial to have a web demo everbody can check20:30
@HeikoSvotjakovr: so training in the GP case means just to compute cholesky stuff20:30
lambdayHeikoS: no problem :( I suck at git stuffs every time, always checking stackoverflow solns :(20:30
@HeikoSvotjakovr: currently, train is empty20:30
@HeikoSvotjakovr: and only apply is called,20:31
pickle27lisitsyn, yeah I like that idea too20:31
@lisitsynlambday: git gets easier once you get the basic idea that branches are homeomorphic endofunctors mapping submanifolds of a Hilbert space20:31
@HeikoSvotjakovr:  so the question is whether we should split training and testing20:31
votjakovrHeikoS: exactly!20:31
@HeikoSvotjakovr: I would say yes20:32
votjakovrHeikoS: i agree20:32
@HeikoSso train should precompute everything that only needs the training features20:32
@HeikoSvotjakovr: currently this is all done in a lazy way right?20:32
lambdaylisitsyn: kill me! kill me now :D20:32
votjakovrHeikoS: yep20:32
@lisitsynlambday: that's a famous joke about git20:32
lambdaylisitsyn: *dies*20:33
@HeikoSvotjakovr: so which parts do only depend on training data?20:33
* lambday dies20:33
votjakovrHeikoS: we perform inference on training data20:34
@HeikoSvotjakovr: no, we also have testing data20:34
pickle27lisitsyn, python and ruby both have nice web frameworks, is that what you had in mind?20:35
@lisitsynpickle27: oh well all we need is to pass some data to javascript actually20:35
@lisitsyncan be done in any language you'd like to use20:35
pickle27lisitsyn, oh okay right20:35
@HeikoSvotjakovr:  so for exact inference in regression, training is to compute the cholesky of K+\sigma^2 * I20:36
votjakovrHeikoS: for testing data we compute mean and variance using posterior20:36
@HeikoSvotjakovr: exactly, and for that we need the cholesky20:37
@HeikoSvotjakovr: so I would say then we should have an abstract method on inference method20:38
@HeikoSwhich corresponds to train20:38
votjakovrHeikoS: yep, so train() method should perform inference on training data20:39
@HeikoSvotjakovr: for the exact inference, this then updates the cholesky and the training kernel matrix20:39
@HeikoSvotjakovr: thats not really called inference, but yes, do all the stuff on training data20:39
@HeikoSvotjakovr: and then we can use the CMachine interface for train/apply20:39
@HeikoSwhere apply calls submethods apply_regression etc20:39
votjakovrHeikoS: yep, something like compute_posterior() in inference method class ?20:40
@HeikoSand the GP-subclasses implement this20:40
@HeikoSvotjakovr: that sounds good20:40
@HeikoSand GP::train_machine then calls this method20:40
@HeikoSvotjakovr:  dont call it compute_posterior, since in classification its different20:41
@HeikoSvotjakovr: maybe call it just train :)20:42
@HeikoSvotjakovr: btw we should also refactor the Laplace approximation class, we cannot use the regression one for classification but it shares a lot of code20:43
votjakovrHeikoS: but what if i just make an update_all() method public?20:45
@HeikoSvotjakovr: yeah maybe, we will see about this later I guess20:45
@HeikoSvotjakovr: first goal is to have GP base class which inherits from CMachine and two subclasses for regression and classification20:46
votjakovrHeikoS: Ok!20:46
pickle27lisitsyn, also20:47
@lisitsynpickle27: yes?20:47
pickle27lisitsyn, I was planning on using the shogun PCA class as a sort of template for the various ADJ techniques20:48
pickle27lisitsyn, Im just looking at the PCA class now to see if that makes any sense to do at all lol20:49
@lisitsynpickle27: oh well20:49
@lisitsynPCA is so easy to implement20:49
pickle27lisitsyn, yeah it is lol20:49
pickle27lisitsyn, just seemed like the structure of the class might be a bit similar20:49
@lisitsynpickle27: you are welcome to patch that part of shogun for sure20:49
pickle27but maybe not20:50
@lisitsynpickle27: PCA is also implemented in tapkee of course20:50
pickle27yeah I would happily do some work on the PCA module20:50
pickle27yes I know!20:50
pickle27hmm PCA is still LAPACK in shogun20:51
@lisitsynpickle27: actually if you find it easier you may first implement something apart20:51
@lisitsynpickle27: yes20:51
pickle27that could be another great entrance commit PCA in Eigen320:51
pickle27yeah I am planning to implement separate for a while but I still want to use a shogun class20:52
@lisitsynpickle27: I don't know if we should change shogun's PCA to use tapkee20:53
@lisitsynactually I support three possible methods20:53
@lisitsyndense from eigen3, randomized like in redsvd20:53
@lisitsynand arpack20:53
pickle27right well for the time being Im going to focus on ADJ anyways20:54
@lisitsynso may be it makes sense to do a few steps to make it compatible20:54
@lisitsynI'll be back a bit later20:54
-!- lambday [67157e36@gateway/web/freenode/ip.] has quit [Ping timeout: 250 seconds]20:59
shogun-notifier-shogun: lambday :develop * a536834 / / (4 files):
shogun-notifier-shogun: class CLinearOperator and DenseMatrixOperator added21:04
shogun-notifier-shogun: Heiko Strathmann :develop * 6642f28 / / (4 files):
shogun-notifier-shogun: Merge pull request #1173 from lambday/feature/log_determinant21:04
shogun-notifier-shogun: class CLinearOperator and DenseMatrixOperator added21:04
-!- nube [~rho@] has quit [Ping timeout: 276 seconds]21:05
-!- nube [~rho@] has joined #shogun21:06
shogun-buildbotbuild #945 of cyg1 - libshogun is complete: Failure [failed configure]  Build details are at  blamelist: lambday <>21:07
gsomixoperators, operators everywhere21:09
@HeikoSgsomix: smooth operators! :)21:09
-!- nube [~rho@] has quit [Ping timeout: 248 seconds]21:12
gsomixHeikoS: cool!21:18
gsomixnow I know what to tell the teacher about operators on the exam :)21:18
@HeikoSgsomix: is your exam also about operators? :)21:21
gsomixHeikoS: methods of mathematical physics. there is some operators and eigenproblems related to quantum mechanics examples.21:24
gsomix*there are21:24
@HeikoSgsomix: nice!21:24
@HeikoSgood stuff, physicists always have the best ideas, statisticians always steal them ;)21:25
shogun-buildbotbuild #946 of cyg1 - libshogun is complete: Failure [failed compile]  Build details are at  blamelist: Heiko Strathmann <>21:26
-!- votjakovr [] has quit [Ping timeout: 256 seconds]21:31
gsomixHeikoS: huh. btw, there is no strong course about statistics on my major. only in the form of the statistical physics. it's sad.21:32
@HeikoSgsomix: seems to happen anyways21:32
@HeikoSWe just stole another method from statistical physikcs literatur here :)21:32
-!- votjakovr [] has joined #shogun21:33
-!- nube [~rho@] has joined #shogun21:35
-!- lambday [67157c36@gateway/web/freenode/ip.] has joined #shogun21:38
-!- nube [~rho@] has quit [Ping timeout: 264 seconds]21:42
-!- van51 [] has quit [Remote host closed the connection]21:52
-!- HeikoS [] has quit [Quit: Leaving.]22:02
-!- votjakovr [] has left #shogun ["Fallen asleep!"]22:08
-!- gsomix [~Miranda@] has quit [Ping timeout: 245 seconds]22:10
-!- lisitsyn [~lisitsyn@] has quit [Ping timeout: 248 seconds]22:10
-!- nube [~rho@] has joined #shogun22:17
-!- lambday [67157c36@gateway/web/freenode/ip.] has quit []22:18
-!- sonney2k [] has left #shogun ["Ex-Chat"]22:18
-!- lisitsyn [~lisitsyn@] has joined #shogun22:20
lisitsynoh HeikoS mentioned sade22:23
-!- nube [~rho@] has quit [Ping timeout: 240 seconds]22:24
-!- gsomix [~Miranda@] has joined #shogun22:31
-!- nube [~rho@] has joined #shogun22:58
-!- iglesiasg [d58f3226@gateway/web/freenode/ip.] has joined #shogun23:02
-!- nube [~rho@] has quit [Ping timeout: 246 seconds]23:03
-!- nube [~rho@] has joined #shogun23:20
iglesiasgthanks for the patch hushell, I will check23:29
-!- nube [~rho@] has quit [Ping timeout: 252 seconds]23:46
--- Log closed Tue Jun 18 00:00:50 2013