IRC logs of #shogun for Tuesday, 2017-06-13

--- Log opened Tue Jun 13 00:00:11 2017
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun00:11
-!- mode/#shogun [+o HeikoS] by ChanServ00:11
-!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Remote host closed the connection]00:12
@sukeyPull Request #3833 "unit test for DynamicArray"  merged by vigsterkr - https://github.com/shogun-toolbox/shogun/pull/383302:48
@sukeyNew Commit "Merge pull request #3833 from MikeLing/add_unittest_for_CDynamicArray02:48
@sukeyunit test for DynamicArray" to shogun-toolbox/shogun by vigsterkr: https://github.com/shogun-toolbox/shogun/commit/9efa3b77147ccbab345c76832fc6fe4534dd4dab02:48
shogun-buildbotbuild #277 of trusty - libshogun - viennacl is complete: Failure [failed test]  Build details are at http://buildbot.shogun-toolbox.org/builders/trusty%20-%20libshogun%20-%20viennacl/builds/277  blamelist: MikeLing <sabergeass@gmail.com>, Viktor Gal <vigsterkr@gmail.com>02:49
@wikingshogun-buildbot: force build --branch=develop 'trusty - libshogun - viennacl'02:54
shogun-buildbotbuild #278 forced02:54
shogun-buildbotI'll give a shout when the build finishes02:54
shogun-buildbotbuild #278 of trusty - libshogun - viennacl is complete: Success [build successful]  Build details are at http://buildbot.shogun-toolbox.org/builders/trusty%20-%20libshogun%20-%20viennacl/builds/27802:55
@wikingshogun-buildbot: force build --branch=develop 'zesty - libshogun'02:55
shogun-buildbotThe build has been queued, I'll give a shout when it starts02:56
@wikingshogun-buildbot: force build --branch=develop 'deb3 - modular_interfaces'02:56
shogun-buildbotThe build has been queued, I'll give a shout when it starts02:56
@wikingshogun-buildbot: force build --branch=develop 'deb4 - python3'02:56
shogun-buildbotThe build has been queued, I'll give a shout when it starts02:56
shogun-buildbotbuild forced [ETA 44m11s]02:56
shogun-buildbotI'll give a shout when the build finishes02:56
shogun-buildbotbuild #210 forced02:56
shogun-buildbotI'll give a shout when the build finishes02:56
shogun-buildbotbuild #223 forced02:56
shogun-buildbotI'll give a shout when the build finishes02:57
shogun-buildbotHey! build deb4 - python3 #223 is complete: Success [build successful]03:00
shogun-buildbotBuild details are at http://buildbot.shogun-toolbox.org/builders/deb4%20-%20python3/builds/22303:00
shogun-buildbotHey! build zesty - libshogun #1 is complete: Success [build successful]03:01
shogun-buildbotBuild details are at http://buildbot.shogun-toolbox.org/builders/zesty%20-%20libshogun/builds/103:01
shogun-buildbotHey! build deb3 - modular_interfaces #210 is complete: Success [build successful]03:20
shogun-buildbotBuild details are at http://buildbot.shogun-toolbox.org/builders/deb3%20-%20modular_interfaces/builds/21003:20
-!- mikeling [uid89706@gateway/web/irccloud.com/x-fjfarfqxbxqsarhl] has joined #shogun04:01
mikelingwiking: hey! Thank you for the merge04:01
mikelingAfter I rebase and run the test. All the CDynamicArrayTest works but04:02
mikelingsome test like CrossValidation_multithread.LibSVM_unlocked still failed04:03
mikelingCould I update the PR and we could discuss in there?04:03
@wikingmikeling, sure go ahead04:33
-!- TingMiao [uid229534@gateway/web/irccloud.com/x-bleqxrbjgtfzxvbg] has joined #shogun04:34
@wikingmikeling, here?04:44
mikelingYep04:44
@wikingso yeah push the thing as soon as you can04:46
@wikingand then we should see once this is fixed04:46
@wikinglets see what else is missing to finish up with DynArray removal04:46
mikelingYeah I know… I'm reviewing it to make sure no stupid problem in the pr04:49
@wikingit's ok04:50
@wikingif it doesn't go through04:51
@wikingi mean that if you know that there's a bug04:51
@wikingthen just push it in as is04:51
@wikingas it's gonna fail anyways :)04:51
@wikingi mean i would like to have this rolling04:51
@wikingand it seems we are just one step away from finalizing this task04:51
@wikingjust make sure that you have your branch rebased with the latest develop04:52
@wikingmikeling, if you can push it *now* i could debug it now04:54
@wikingironstark, i would need to be able to somehow reproduce your custom env ... as based on your cmake flags you have some custom python installation, right?04:55
@wikingsee -DPYTHON_PACKAGES_PATH=../../lib/python3.5/dist-packages04:55
@wikingor you are using the default python3.5 package of ubuntu zesty?04:56
mikelingsure, a second please04:56
@sukeyPull Request #3832 "use std::deque instead of DynArray(on going)"  synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/383204:59
mikelingwiking: mmm, the template will been changed to different line which makes class_list failed05:00
@wiking?05:00
@wikingchanged by what/who05:00
@wiking?05:00
@wikingwhy is this changed05:01
@wikingtemplate <class T>05:01
@wiking+class CDynamicArray : public CSGObject05:01
@wiking?05:01
@wiking:)05:01
@wiking +template <class T>05:01
@wiking?05:01
@wikingok i'm gonna stop the CI05:01
@wikingas there's no point of runninng them05:01
mikelingyeah05:01
@wikingwhy couldn't you push something?05:01
@wikingthat has at least that line fixeD?05:01
@wikingi seriously dont understand05:02
@wikingwhy that 2 seconds change05:02
@wikingwas not possible?05:02
@wikingit's literally removing 2 \n05:02
@wikingin the code05:02
@wikingand i really now i really have a hard time understand05:02
mikelingI changed actually, but the check_format auto change it back05:02
@wiking?05:02
@wikingyou added that to git commit hook?05:02
@wikingor what?05:03
@wikingplease change that now and push it05:03
@wikinglike in the next 1 minutes05:03
@wiking?05:08
@sukeyPull Request #3832 "use std::deque instead of DynArray(on going)"  synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/383205:08
mikelingdone05:09
@wiking+template <class T>05:10
@wiking+class CDynamicArray : public CSGObject05:10
@wiking???05:10
@wikingseriously?05:10
@wikingmikeling,05:10
mikelingoh no05:11
@sukeyPull Request #3832 "use std::deque instead of DynArray(on going)"  synchronized by MikeLing - https://github.com/shogun-toolbox/shogun/pull/383205:11
mikelingI forget to save the change....05:12
@wikingmikeling, i'll check on the failing tests05:12
@wikingbut you know that there are still some comments of mine05:12
@wikingthat has not been addressed in this pr05:12
@wikingand05:13
@wikingfor example this is one of them05:13
@wiking../src/shogun/lib/DynamicArray.h: In member function ‘bool shogun::CDynamicArray<bool>::insert_element(bool, int32_t)’:05:13
@wiking../src/shogun/lib/DynamicArray.h:1113:3: warning: declaration of ‘element’ shadows a member of 'this' [-Wshadow]05:13
@wiking   {05:13
@wiking   ^05:13
@wikingno need to repush now the warning fix05:13
@wikingjust make sure that on the very end you address this as well05:13
mikelingok, got it05:14
@wikingand all the comments of mine05:15
@wikingaround shuffle05:15
@wikingbut yeah check all the unaddressed comments of mine05:15
@wikingand in the meanwhile i'll try to figure out what's the problem with the test and will comment as well the pr05:16
mikelingwiking: thank you. Sorry for wasting your time by my carelessness05:21
@wikingok compiled05:31
@wikingrunning the tests05:31
@wikingi have quite a lot of failures05:31
@wikingbut i think05:31
@wikingi made a mistake :)05:31
mikelinga mistake?05:32
@wikingmikeling, https://pastebin.com/yxaLHbYE05:32
@wikingis this the list of failing test?05:32
mikelingyeah05:32
@wikingdoh05:33
@wikingthis is a lot05:33
@wikingbtw why do you have these changes05:33
@wikinghttps://github.com/shogun-toolbox/shogun/pull/3832/files#diff-8129456668aa9135d6340bd89fdad5bcL10005:34
@wiking?05:34
@wiking128 -> 1005:34
@wiking15 -> 1005:34
@wikingthis actually changes the nature of the DynamicArray05:34
@wikingit's a different implementation05:35
@wikingRIGHT?05:35
@wikingi mean i dont get this05:35
mikelingbecause the resize_array before related with the p_resize_granularity05:35
@wikingwhat is the point of having a unit test05:35
@wikingyhes05:35
@wikingbut if you change it05:35
@wikingyou change the implementation05:35
@wikingand some tools in shogun05:35
@wikingDEPEND05:35
@wikingon this05:35
@wikingi dont get it man05:35
@wikingthis is such a simple task05:35
@wikingyou have an interface05:35
@wikingDynamicArray05:35
@wikingthe request was to05:35
@wikingchange the underlying data structure05:35
@wikingbut EVERYTHING ELSE05:36
@wikingshould stay the same05:36
@wikingand we are working on this05:36
@wikinglike for the last 1.5 weeks05:36
mikelingyes, I know. I will keep all the things stay the same05:37
@wikingbut man05:37
@wikingthis is not the problem05:37
@wikingthe problem is that we keep having this conversation05:37
@wikinglike the 3rd time05:37
mikelingyes I know.05:39
@wikingi mean this particular PR05:39
@wikingremoving DynArray to something else05:39
@wikingEVEN if it's pure pointer stuff05:40
@wikingand you yourself do the memory allocation05:40
@wikingshould not have taken more than 3 day05:40
@wikings05:40
@wikingincluding the tests05:40
@wikingand still05:41
@wikingyou are coming back with half backed solutions05:41
@wikingnot taking consideration half of my comments05:41
mikelingsorry....I shouldn't do it05:41
@wikingi really dont know what to do it anymore05:41
@wikingi was being patient till now05:41
@wikingbut i'm loosing it now because i really do not understand05:41
@wikingwhat is the problem05:41
@wikingwhich part is not crystal clear05:41
@wikingthat YOU should not change behaviour of the object05:42
@wikingand that you should address *all* my comments in the pr05:42
@wikingif you are stressed out because of this then take a day off and dont do anything about this and read something or just go take a walk05:43
mikelingI'm sorry, really. I just thought we don't need  resize_granularity  after we use vector.resize() to handle the resize05:43
@wikingbut i expect to see a full working solution on the end of this week05:43
@wikingif that doesn't happen05:43
@wikingwe'll have to seriously talk about the rest of gsoc05:43
mikelingok, I understand05:44
@wiking[11:41]  <mikeling> I'm sorry, really. I just thought we don't need  resize_granularity  after we use vector.resize() to handle the resize05:44
@wikingyes05:44
@wikingthat'd be the case05:44
@wikingif you would now have a working solution05:44
@wikingright?05:44
@wikingbut half of the library is broken atm05:44
mikelingyes05:44
@wikingmoreover05:44
@wikingin case of DynamicArray<bool> you do not have vector.reisze()05:45
@wiking*resize*)05:45
@wikingmikeling, still here?06:20
mikelingwiking: yes  I'm working on the pr06:21
@wikingthat's ok06:21
@wikingi just wanted to06:21
@wikingsee why there's actually a problem06:22
mikelinghonestly, I don't know why it tooks so long either. Actually I work on it till 1 or 2 am these days. Just this simple pr06:23
mikelingChange some places and build to see if everything keeps ok06:24
@wikingyeah i know that you've been working  lot06:25
@wikingbut maybe emphasizing on the wrong end06:25
@wikinganyhow i'mjust tyring to help you out with debugging what's happening in the xval06:25
mikelingEarly of last week I'm trying to get pointer and reference to bool vector06:25
mikelingBut you know it failed06:26
mikelingAnd I try to separate them into different way to implement the array06:26
mikelingBut obviously the memory management is the problem for it06:28
@wikingthere's a problem still with the memory somewhere06:28
@wikingand that comes out06:28
mikelingYeah06:28
@wikingin the part of the splitting06:28
@wikingand other places06:28
mikelingYes, actually I haven't pay too much attention to the interface, because I guess it would broken the memory allocate like that06:30
mikelingAnd most tests passed06:30
mikelingI should keep all the interface stay the same so we can figure out what's the problem exactly06:32
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has joined #shogun08:30
geektoniping wiking09:01
@wikingpong09:01
geektoniI read your email09:01
geektoniwhat I meant was that some languages don't have the concept of "pointer"09:02
geektoniso, exposing directly Some would be a waste09:02
geektonisince there are no "pointers" to wrap09:03
geektonie.g. Python09:03
@wikingque?09:03
@wikingi really dont understand what you mean by this09:03
geektoniI mean09:03
@wikingcurrently we directly09:04
@wikingexpose the classes on heap09:04
@wikingi.e. pointers09:04
@wikingthere's some wrapper logic around it09:04
@wikingin SGBase.i09:04
geektoniOk, let me try to explain it better. We know that Some<> wraps raw pointers and does automatic memory management. When we use Python language, we don't have to deal directly with pointers like we do with C++. Therefore, having the Some<> directly exposed in Python won't make much sense, since there are no pointers we can wrap.09:10
@wikingbut you do understand09:11
@wikingthat there's auto memory management is happening09:11
@wikingright09:11
@wiking?09:11
@wikingand how do you plan09:11
geektoniyeah sure09:11
@wikingin case09:11
@wikingyou start changing api09:11
@wikingto Some<T>09:11
@wikingto pass those into function args?09:11
lisitsynso what did help09:15
geektoniwiking: mmmmh, ok. I understand your point.09:17
geektonilisitsyn: operator* renaming did the trick.09:17
lisitsynno reason to have RealFeatures exposed to swig as we use Some<RealFeatures> anyway09:18
lisitsynI think this summarizes what wiking wants :P09:18
@wiking:)09:18
@wikingi told this like 2 times now09:18
@wiking:))009:18
@wikingbut there's something that geektoni wants to explain09:18
@wikingbut i'm just not getting it09:19
lisitsynme neither09:19
lisitsyngeektoni: give it another chance09:19
lisitsyn:)09:19
geektonino, it is nothing special really. I just misunderstood this line "so i don’t see the point to expose to the SWIG interface the bare ptr class" from wiking email ;)09:21
lisitsynyœy!09:21
@wikingyeah09:22
@wikingno more09:22
lisitsynhohoho09:22
@wikingrename(X) CX09:22
lisitsynoh09:22
@wikingjust rename(X) Some<X>09:22
lisitsynwhat about dropping09:22
lisitsyn:D09:22
lisitsynthe C09:22
@wikingyeah next time09:22
@wiking:)09:22
lisitsynmeh09:22
geektoniok so09:23
geektoninext question09:23
@wikingno more questions09:23
@wiking:D09:23
@wiking:D09:23
lisitsynquestion dismissed!09:23
lisitsynajjaj09:23
geektoniLOL09:23
lisitsynsooo what is09:23
geektonilet's say we have %rename(GaussianKernel) Some<GaussianKernel>09:24
geektonicalling "a= GaussianKernel()" from python will result in an error, because Some<GaussianKernel> needs or a pointer to a GK or another Some instance.09:25
@wikingque?09:25
@wikingmmm09:26
@wikingbut man09:26
@wikingyou've just created09:26
@wikingSGObject() yesterday09:26
@wikingi mean09:26
@wikingSomeSGObject()09:26
@wikingx = SomeSGObject()09:26
lisitsyna = GaussianKernel() -> a = new Some<GaussianKernel>()09:26
@wikingwas all good no?09:26
@wikingi dont see what is the problem really09:27
@wikingi feel stupid09:27
@wikingfor the last 10 minutes now09:27
@wiking:D09:27
lisitsynbut yeah isn't that exactly the thing09:27
lisitsynyou did yesterday09:27
geektoniwell no, the actual way to use, let's say, SomeSGObject is x = SomeSGObject(GaussianKernel()).09:28
geektoniyou cannot initialize an "empty" SomeSGObject.09:28
geektoni x = SomeSGObject()09:28
lisitsyncan you SomeSGObject()?09:28
lisitsynokkay I see what you mean09:29
@wikingwe need an indirection09:29
@wikingone more )09:29
geektonii was thinking09:29
geektonito use some<> instead09:29
lisitsynwhat instead of what?09:30
geektonithe helper method some<>09:30
geektoniinstead of using directly the Some constructor09:30
lisitsyncan't see09:31
geektonithis guy here --> https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/base/some.h#L14409:32
lisitsynquite good but variadic templates won't work with swig09:33
geektoniOk, you already answered my next question lisitsyn ;)09:33
lisitsynfooouacck09:33
lisitsynbloody shieat09:34
lisitsyngeektoni: the problem is that in the bright future we don't need ctors09:36
lisitsynbut now we do need09:36
geektonimmh09:38
lisitsyngeektoni: we need to specialize ctors of some that match ctors of T09:43
lisitsyndoesn't sound that easy09:43
lisitsynwiking: see the problem?09:45
geektoniit seems to be a lot of code09:45
lisitsyngeektoni: usual question: does it work with shared ptr?09:45
geektoniwhat works?09:46
lisitsynctors09:46
geektoniI've never tried with SWIG09:47
@wikingi reckon for some targets it'll work09:47
-!- mikeling [uid89706@gateway/web/irccloud.com/x-fjfarfqxbxqsarhl] has quit [Quit: Connection closed for inactivity]09:47
lisitsynOK!09:49
lisitsynha!09:49
lisitsyngeektoni: what if you have two names09:49
lisitsynrename CSGObject to SGObject09:49
lisitsynand rename Some<SGObject> to SomeSGObject09:50
lisitsynis it true that09:50
lisitsynx = SGObject(…) works and produces SomeSGObject?09:50
lisitsynno :( probably no09:50
lisitsyn:D09:50
geektoniyeah, I think you're right ;) It probably won't work.09:51
lisitsyngeektoni: SGObject should become a function09:51
lisitsynthat returns Some<SGObject>09:52
-!- iglesiasg [~iglesiasg@217.119.234.214] has joined #shogun09:52
-!- mode/#shogun [+o iglesiasg] by ChanServ09:52
geektonimmh is it possible to do something like that using SWIG?09:53
lisitsynyes the question is how to avoid a lot of code09:53
-!- WangWang [uid231047@gateway/web/irccloud.com/x-mlezjzdzjfwklcrd] has joined #shogun09:54
lisitsyngeektoni: we could give up on ctors but that's quite a breaking thing09:57
geektonilisitsyn: you mean?09:58
geektoniI'm sorry, but this SWIG craziness is starting to confuse me :D09:59
lisitsynyou have to be brave!09:59
lisitsyna lot of great warriors have died in this battle09:59
geektoniThis is reassuring xD10:00
lisitsynwell at least our problem is clear now10:03
lisitsynwe need a way to let swig know about constructors10:03
lisitsynof T10:03
geektoniwhat do you propose? :P10:07
lisitsyngeektoni: no solution so far10:22
@wikinglalal10:29
lisitsynwiking: it is a bit more tough :)10:48
@wikingolinguyen, hi! around?12:28
-!- johklu [c1abba08@gateway/web/freenode/ip.193.171.186.8] has joined #shogun13:08
johkluHi, I successfully trained (and validated) an SVM based using a string kernel (CommWordStringKernel) and SVMLight. I feel like it must be possible somehow to extract the feature weights (ad features i.e. k-mers) from the trained classifier, but I have failed to find out how.13:13
johkluI thought "set_store_model_features(TRUE)" might go in the right direction, but training after setting this resulted in an error, so this does not seem to be the right direction.13:14
johkluCould you maybe give me a hint on where to finde information about extracting features and feature weights from CSVMLight objects? Is that at all possible?13:19
johkluIs there maybe an additional resource of examples (I just found the example here http://www.shogun-toolbox.org/examples/latest/examples/binary_classifier/kernel_svm.html), which doesn't seem to bother about features/ feature weights.13:21
johkluThanks for your help - and also for putting together this pretty awseome toolkit!13:22
@wikingjohklu, what exactly you'd like to solve13:44
@wiking?13:46
-!- wittybull [7361b916@gateway/web/freenode/ip.115.97.185.22] has joined #shogun13:50
@wikingjohklu, oh ok13:52
@wikingsorry13:52
@wikingi haven't seen the first part of your question :)))13:52
@wikingjohklu, do you have the model serialized?13:52
-!- wittybull [7361b916@gateway/web/freenode/ip.115.97.185.22] has quit [Ping timeout: 260 seconds]13:55
lisitsyniglesiasg: geektoni has a tricky problem13:58
lisitsynhave you heard?13:58
-!- TingMiao [uid229534@gateway/web/irccloud.com/x-bleqxrbjgtfzxvbg] has quit [Quit: Connection closed for inactivity]14:05
@iglesiasglisitsyn: hey14:10
@iglesiasggeektoni lisitsyn: what is it?14:11
@iglesiasgI will have a look and see if there's something in the irc logs14:11
lisitsynfor any T14:11
lisitsynwe have a constructor or a few ones14:11
lisitsynthe Some<T> actually provided var-args constructor14:11
@iglesiasgok14:12
lisitsynbut swig can't generate proper code for that because it doesn't know about real ctors of T14:12
@iglesiasgoh14:12
lisitsynsee the problem?14:14
lisitsyniglesiasg: we need to get swig to know about all possible ctors of T which should actually return Some<T>14:15
lisitsyn:D14:15
@iglesiasgyeah14:17
lisitsyngeektoni: https://github.com/swig/swig/tree/master/Examples/python/smartptr14:22
lisitsynthe same thing14:22
geektonilisitsyn: yeah, my .i file is the same14:23
lisitsynand they also have no args14:24
lisitsynbecause it is a bit different14:24
geektonibut this is not what we are looking for, right?14:24
lisitsynyes14:24
geektonikk14:25
lisitsyngeektoni: I think we're in kind of trouble with that14:25
lisitsyn:)14:25
lisitsyngeektoni: but speaking of your current PR is it holding you?14:25
geektoniwell, the PR has the some.i code to make the test pass. However, it is just a workaround. :P14:27
lisitsynwhich?14:27
geektonihttps://github.com/shogun-toolbox/shogun/pull/384014:27
lisitsyngeektoni: what do you call a workaround?14:28
geektonihttps://github.com/shogun-toolbox/shogun/pull/3840/files#diff-eefd25cf55acdd8ec027ccba510ad91714:28
geektonithe some.i file14:28
geektonibecause it is not what we are aiming for14:29
lisitsynuhmm why?14:29
geektoniit is just to expose Some with SWIG14:29
lisitsynkind of14:29
lisitsynisn't the only problem the construction of Somes?14:29
geektoniyes, it is the only big problem14:30
geektoniright now14:30
lisitsynok cool let me think about it more14:30
geektoniif you want to use a Some-wrapped object with, for instance, python14:30
geektoniyou need to do14:30
geektonia = ShogunObject(); b = SomeShogunObject(a);14:30
geektonithat's what we don't want to do14:31
lisitsynfor sure14:31
lisitsynbut actually it is not a big issue14:31
@iglesiasgwhat about making `Some<T> Some::some(Args&&..)` accessible from target languages in a specialized form?14:35
@iglesiasgkernel = someGaussianKernel(some args)14:35
@iglesiasgsvm = someLinearSVM(some other args)14:36
geektoniiglesiasg: the problem is SWIG doesn't support variadic templates14:37
@iglesiasgdamn it14:37
@iglesiasggeektoni: is this a variadic template though?14:39
@iglesiasgit is a class template that has a method with variadic arguments14:39
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has quit [Remote host closed the connection]14:40
-!- geektoni [~Mutter@93-34-234-212.ip52.fastwebnet.it] has joined #shogun14:41
geektoniiglesiasg, lisitsyn: I'm sorry but I'll be half there from now on.14:42
@iglesiasgsure, no problem14:43
@iglesiasgwe can continue later14:43
@iglesiasggeektoni: did you read my reaction to the variadic templates?14:43
-!- geektoni_ [~Mutter@62.18.81.254] has joined #shogun14:43
geektoni_iglesiasg: btw, if you have a method with a template<> keyword above and variadic arguments SWIG won't be able to handle it14:44
geektoni_And you'll need to do the specialization directly with C++14:45
-!- geektoni [~Mutter@93-34-234-212.ip52.fastwebnet.it] has quit [Ping timeout: 260 seconds]14:47
-!- geektoni_ [~Mutter@62.18.81.254] has quit [Quit: Mutter: www.mutterirc.com]14:50
-!- geektoni_ [~Mutter@62.18.81.254] has joined #shogun14:51
-!- mikeling [uid89706@gateway/web/irccloud.com/x-gfijddxvyivyyzyj] has joined #shogun14:52
-!- geektoni_ [~Mutter@62.18.81.254] has quit [Remote host closed the connection]14:53
johkluwiking, sorry for my ignorance, but what di you mean with serialized?14:54
-!- geektoni_ [~Mutter@62.18.81.254] has joined #shogun14:55
-!- geektoni_ [~Mutter@62.18.81.254] has quit [Client Quit]14:56
@wikingjohklu, saved14:58
@wikingjohklu, every model in shogun can be saved14:58
@wikinghttp://shogun.ml/api/latest/classshogun_1_1CSVM.html#a57adfb729db48725e1c9a30b52eae9a214:59
@wikingfor example14:59
@wikingor this http://shogun.ml/api/latest/classshogun_1_1CSGObject.html#aa9787e341533c4970885ce6d3022a93514:59
johkluwiking, I see. No, I haven't done that!15:01
@wikingso if you for example15:01
@wikingCSerializableJsonFile15:02
@wikingand use that for saving the svm15:02
@wikingthen you can see all the model parameters :)15:02
johkluincluding the features (i.e. k-mers) and feature weights?15:03
johklui mean the weights that were found through training?15:03
@wikingyeah15:04
@wikingeverything should be serialized that's in the object15:04
johklucool. I'm trying it right now.15:05
johkluok, I did something wrong and it killed my R session (I'm doing all of this in R)15:07
johklubefore I kill it again. Does this look right?: svm$save()15:10
johkluI'm not sure what the svm_file parameter should be15:10
johkluwiking, I now used a path "~/scratch/test_shogun.svm" as only parameter, and my session was again terminated....15:16
@wikinguse rather save_serializable15:17
@wikingbut first yo need to create a SerializableJsonFile file15:18
@wikingx <- SerializableJsonFile("path")15:19
@wikingsvm$save_serializable(x)15:19
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has joined #shogun15:20
-!- mode/#shogun [+o HeikoS] by ChanServ15:20
johkluahh, that makes sense, thanks!15:20
@sukeyPull Request #3826 "Remove duplicate code in LDA/FisherLDA and port the solvers to use linalg (WIP)"  synchronized by micmn - https://github.com/shogun-toolbox/shogun/pull/382615:24
micmnmmm pushed the wrong one15:25
@wiking:P15:25
johklugetting error while making the file:15:27
johklufile <- SerializableJsonFile("~/scratch/test_shogun.svm")15:27
johklu[1;31m[ERROR][0m In file /scratch/adm_informatics/rootbuild/shogun/shogun-shogun_6.0.0/src/shogun/io/SerializableJsonFile.cpp line 105: Could not open file `~/scratch/test_shogun.svm' for reading!15:27
@wikingjohklu, my fault15:28
@wikingfile <- SerializableJsonFile("~/scratch/test_shogun.svm", 'w')15:28
johkluok, that worked. Thanks. But then error again:15:30
johklu> file <- SerializableJsonFile("~/scratch/shogun.svm",'w') > svm$save_serializable(file) json_object_to_file: error opening file ~/scratch/shogun.svm: No such file or directory [1;34m[WARN][0m In file /scratch/adm_informatics/rootbuild/shogun/shogun-shogun_6.0.0/src/shogun/io/SerializableJsonFile.cpp line 135: Could not close file `~/scratch/shogun.svm' for writing! [1] TRUE15:30
@wikingdid it write anything in the given file?15:33
johkluno, nothing15:34
johklujust for me to understand:15:34
johkluSerializableJsonFile is not supposed to write anything, or?15:35
johkluthe file should be written by the save_serializable command, right?15:35
@wikingyes15:35
@wikingbut maybe you dont have15:35
@wikingsupport15:35
@wikingfor json output format so just try15:36
@wikingfile <- SerializableAsciiFile("path", 'w')15:36
johkluok15:36
johkluwiking, I think, now it worked15:46
johkluwith ascii, as well as json15:46
johkluthe problem was the "~" in my path15:47
@wikingoh i see15:47
johkluascii and json semm to contain somewhat different info15:48
johkluin the json the last row seems to be encrypted or something15:50
johkluat least I can't read it15:50
johklubut doesn't matter.15:50
johkluI'll go with the ascii15:50
johkluwiking, you've helped me a lot already, thanks! But, what is now the best way to go on? Do I read the ascii back into R15:51
johkluor can I now directly access it through my svm object?15:52
johkluAnd: the features seem to be encoded as numbers...15:53
johkluis there a way to convert them back to the original k-mers15:54
@wikingmmm15:55
lisitsynwiking: we need coreml bridge!15:56
@wikingi know...15:56
@wikingwhat can i do15:56
@wikinggimme time15:56
lisitsynlets discuss at some point15:56
@wikinglisitsyn, ok i mean i checked into it15:56
@wikingit's super easy15:56
lisitsynoh I didn't yet15:56
lisitsynkool15:57
@wikingi mean the interface is very very rigid15:57
@wikingso it's supereasy to implement15:57
@wikingit's just a special serialization format15:57
@wikingof some of the classes15:57
@wikingas what they did actually15:58
lisitsynlets see if android comes with something similar15:58
@wikingis define what are the parameters of svm + rbf for example15:58
@wikingand that's all15:58
@wikingyou have to write those params in the protobuf format15:58
@wikingand that's all15:58
@wikingjohklu, lemme think about it16:02
@wikingand get back to u16:02
lisitsynwiking: could we become an 'apply' part for non-ios devices?16:03
@wikingque?16:03
@wikingmicmn, do u wanna cherry pick it somewhere else or if it passes shall i just merge the whole pr?16:04
@wikinglisitsyn, what do u mean non-ios dev?16:04
@wikingno comprende16:05
@wikingexplain16:05
@HeikoSwiking: jo16:07
@HeikoSwhats the state with the "some" and swig?16:07
@wikinglisitsyn, ^16:07
@wikingi'm tired16:07
@wikinghad a long day16:07
@wiking:)16:07
johkluwiking, ok - thanks. afk but back soon16:07
@wikingjohklu, i'm off for today16:08
johklualso fine -thanks for your help16:08
micmnwiking: no don't merge16:08
@wikingmicmn, k16:08
johkluwiking, should I come back tomorrow?16:09
@sukeyIssue #3841 "how can i fusion of two features by two different kernel in shogun??" closed by karlnapf - https://github.com/shogun-toolbox/shogun/issues/384116:10
@wikingjohklu, i'm uTC+816:10
johkluok, makes sense that you're tired then :)16:12
johkluI'll come earlier next time16:13
@sukeyPull Request #3826 "Remove duplicate code in LDA/FisherLDA and port the solvers to use linalg (WIP)"  synchronized by micmn - https://github.com/shogun-toolbox/shogun/pull/382616:19
@sukeyPull Request #3842 " Port KernelPCA to use linalg and refactor unit test"  opened by micmn - https://github.com/shogun-toolbox/shogun/pull/384216:20
@sukeyPull Request #3843 "Add linalg methods needed by FisherLDA and KernelPCA (CPU-only)"  opened by micmn - https://github.com/shogun-toolbox/shogun/pull/384316:21
-!- TingMiao [uid229534@gateway/web/irccloud.com/x-aexwfarcpagulqsp] has joined #shogun16:29
lisitsynwiking: back17:07
lisitsynso I mean apple has the stuff to apply models on ios devices17:07
lisitsynwe could provide to serve on other ones17:08
-!- johklu [c1abba08@gateway/web/freenode/ip.193.171.186.8] has quit [Quit: Page closed]17:32
-!- OXPHOX [92bd305b@gateway/web/freenode/ip.146.189.48.91] has joined #shogun18:13
-!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has quit [Ping timeout: 246 seconds]19:17
OXPHOXanyone knows what's going on with appveyor?19:19
mikelingOXPHOX:hey19:35
mikelingstill there>19:35
mikeling?19:35
-!- oxphos [92bd15c8@gateway/web/freenode/ip.146.189.21.200] has joined #shogun19:54
oxphosmikeling19:55
mikelingok19:55
mikelingoxphos: thanks19:55
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has joined #shogun19:55
-!- oxphos [92bd15c8@gateway/web/freenode/ip.146.189.21.200] has quit [Ping timeout: 260 seconds]20:32
olinguyenwiking: I'm here now!20:54
mikeling olinguyen ping21:58
mikelingStill there?21:58
olinguyenyep!21:58
mikelingOk21:59
mikelingWait a second21:59
mikelingI write a gist to you21:59
olinguyenSure21:59
mikelingolinguyen: hey, received my message? :)22:05
olinguyenyep reading!22:05
mikelingthank you22:05
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has quit [Quit: Leaving.]22:09
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has joined #shogun22:21
-!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has quit [Remote host closed the connection]23:28
--- Log closed Wed Jun 14 00:00:12 2017

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