IRC logs of #shogun for Friday, 2019-05-03

--- Log opened Fri May 03 00:00:59 2019
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has quit [Remote host closed the connection]10:00
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has joined #shogun10:00
-!- gf712 [9052086c@gateway/web/freenode/ip.144.82.8.108] has joined #shogun10:03
-!- geektoni [c1cdd24a@gateway/web/freenode/ip.193.205.210.74] has joined #shogun11:02
-!- wiking [~wiking@2001:67c:10ec:5784:8000::3ff] has joined #shogun11:08
wikinggf712: segfault on import shogun :(11:13
gf712wiking: with shared_ptr stuff?11:15
wikingyeah11:15
wikingbut i mean it's segfaulting on11:15
gf712did you add shared_ptr to everything?11:16
wikingSwigPyObjectType11:16
wikingso i really dont get it11:16
wikingyeye if u dont add everything it doesn't compile11:16
wikingthis is some swig related stuff11:17
wikingso i'm not so sure where it goes really to the crazy bin11:17
wikingas essentially this has nothing to do with shared_ptr yet11:17
gf712oh right11:18
gf712hmm I am pretty sure develop works fine though no?11:18
gf712did you shared_ptr the templates too?11:19
wikingi think so11:19
wikingyeah but again11:19
wikingthis is still w/o any shogun related stuff11:19
wikingit's the very beginning of importing a swig module11:19
gf712are you using the new swig?11:19
wikingliterally no shogun objects or methods are called yet11:19
wikingno11:19
wikingi use the one that works with develo11:19
wikingp11:19
gf712mhhh very odd. did you delete other stuff in the swig files?11:22
gf712stuff just snowballs in swig11:22
wikingnah but now i basically removed almost all the stuff from swig11:22
wikinglets see what happens11:22
wikingmeaning no shogun objects11:22
gf712aight, and then add bit by bit?11:23
gf712wiking: I got a deserialiser for arff working btw11:23
gf712but I don't know how to handle Nan values?11:23
wikingah fuuuuck11:23
wikingwhat is this factory wrappers shit11:23
wikingthat's why i have 2 definitions11:24
wikingof the same thing in factory11:24
wikingsrc/interfaces/python/swig_typemaps.i11:24
wikingah man11:24
wikingi'll throw this out for now11:24
gf712what do you mean?11:25
wikingthere's literally 2 definition of every factory method for some reason in the codebase11:26
wikingi couldnt yet track down where is it coming from11:26
wikingbut this part i'll throw out for the time being11:26
wikingas i'm sure the new there and stuff11:26
wikingis not shared_ptr ready11:26
wiking    def _internal_factory(name, *args, **kwargs):11:26
wiking        new_obj = _obj(name, *args)11:26
wiking        for k,v in kwargs.items():11:26
wiking            new_obj.put(k, v)11:26
wiking        return new_obj11:27
wiking    if docstring:11:27
wiking        _internal_factory.__doc__ = docstring11:27
wiking    else:11:27
wiking        _internal_factory.__doc__ = _obj.__doc__.replace(object_name, new_name)11:27
wiking    _internal_factory.__qualname__ = new_name11:27
wikingbut dont have patient to fix this for now11:27
wikingfirst i wanna be able to import shogun11:27
wikingw/o segfault11:27
gf712yea that's the wrapper I wrote to support kwargs in python11:28
wikingok this works now... i'll one by one11:28
wikingyeye i know11:28
wikingrealised11:28
wikingbtw11:29
wikingCGaussianKernel is dropped from swig11:29
wikingright?11:29
gf712let me know if you manage to instantiate a factory11:29
gf712yes11:29
wikingas /home/wiking/shogun/src/shogun/kernel/GaussianShiftKernel.h:37: Warning 401: Nothing known about base class 'CGaussianKernel'. Ignored.11:29
gf712all other kernels will be gone soon11:30
gf712I have a pr where I removed everything11:30
gf712managed to get swig bellow 1M lines...11:30
wikinghehe yeah just now gsk is for example not in swig11:35
wikingnot that anybody is missing it11:35
wikingD:11:35
wiking:>11:35
gf712haha11:35
gf712it'll be back soon don't worry11:36
gf712did you manage to import shogun?11:36
gf712wiking: btw i am starting to work on openml curl stuff11:37
wikingsure thingy11:37
gf712I have some spare time the whole of today11:37
gf712I'll write some stuff and then you can take it apart11:38
gf712it's mostly the tedious task of getting all the get/post paths from openml11:38
gf712wiking: but yea seems quite simple to use curl11:38
gf712I thought it was a really obscure old lib, but it's pretty neat11:39
wikingno11:39
wikingits good11:39
wikinglibcurl is defacto www shita11:39
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has quit [Read error: Connection reset by peer]11:40
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has joined #shogun11:40
gf712wiking: have you seen this https://www.reddit.com/r/freefolk/comments/bjjjjj/actual_footage_of_the_writers_after_episode_3/ ?11:40
wikinghahahahahah11:43
wikingthis is tooooo GOOD11:45
wikinglaughing loud in the office11:45
gf712haha yea too good11:46
gf712but so true11:47
wikingnot even podrick died :D11:47
wikinglOOOL11:47
gf712hahah11:47
wikingok now i'm bisecting swig .i imports11:48
wikingas one of it causes the segfault apparently11:48
gf712so removing the python code didn't help?11:48
wikingyeah that wasnt the one11:49
wikingnow adding Classifier.i11:49
wiking:D11:49
wikinglets see11:49
gf712did you fix the gpl stuff too then?11:51
gf712wiking: which one would be easier to parse json or xml?11:58
gf712seems like openml supports both11:58
wikinghahaha gpl...12:00
wikingnot even bsd is really fixed12:00
wikingsince wednesday i'm struggling with swig12:00
wikinggf712: since i guess they have special tags/attributes it doesn't really matter12:01
wikingeither is going to require a custom serializer12:01
gf712aight, and in terms in speed it doesn't really matter in guess12:02
gf712the number of params will always be quite small12:02
gf712wiking: does classifier work?12:02
wikingyeah12:03
wikinggoing one by one12:03
wikingwell json serializer is super fast :)12:03
wikingbut yeah it doesnt really matter12:03
wikingbtw i should try to create an sgo12:04
wikingthe next time i dont get segfault12:04
wikingas i just try import for now :D12:04
wikingoh man all these _protocols.i needs fixing as well12:04
wiking:<12:04
gf712I think you should try to instantiate one12:06
gf712that's probably why it failed the first time12:06
gf712when the code in shogun.py called the factory12:06
wiking>>> x = shogun.F1Measure()12:06
wiking>>> x12:06
wikingTraceback (most recent call last):12:06
wiking  File "<stdin>", line 1, in <module>12:06
wikingTypeError: in method 'CSGObject::tp_print', argument 1 of type 'CSGObject *'12:06
wikingok getting there12:06
gf712mhh12:07
wiking        static int print_sgobject(PyObject *pyobj, FILE *f, int flags) {12:07
gf712do you have to wrap it in shared_ptr?12:07
wikingneeds fixing12:07
wiking:)12:07
gf712ah12:07
gf712ok12:07
gf712and then all the other targets12:07
gf712erf12:07
-!- geektoni [c1cdd24a@gateway/web/freenode/ip.193.205.210.74] has quit [Quit: Page closed]12:08
gf712wiking: are we adding fmt as a dependency btw?12:09
wikinggf712: finally when we have spdlog12:11
wikingthen its there12:11
wikingmmm something is wrong in Structured.i12:38
wiking:O12:38
gf712is that where the swig error comes from?12:44
wiking"error"12:51
wikingsegfault12:51
wikingbut dunno what's the reason i guess the only way to figure it out is to bisect that file as well12:52
gf712wiking: but does shogun import work + instantiation work fine without it then>12:54
wikingindeed12:54
wikingthere are some problems still with the meta examples but hopefully with the next compile those are fixed12:55
wikingit's a super pain to debug this swig interface12:55
wikingas any changes requires a full recompile12:55
wiking:D12:55
gf712yea... but there is no way to have a swig module that loads the different libs is there?12:56
wikingimo yeah12:56
wikingswig has modules feature12:56
wikingwhich we dont use at all12:56
gf712ah really?12:56
gf712so you can split it all12:56
gf712that would be useful...12:56
gf712anyway, another day "SD12:57
gf712:D12:57
wiking:D12:57
wikingok put is not working12:57
wikingwonder why12:57
wikinghttps://pastebin.com/5T1sp7dL12:58
gf712yea... I guess too much dispatching stuff going all the way12:58
gf712wiking: should that be calling shogun::CSGObject::put< shogun::CLabels,shogun::CLabels,void >(std::string const &,std::shared_ptr< shogun::CLabels >) ?12:59
wikingone would hope12:59
wikingbut imo casting fails13:00
wikingor something13:00
gf712and type is clabels?13:00
gf712not sgobject?13:00
gf712does as_labels help?13:00
wiking(gdb) p *argv[2]13:00
wiking$5 = {ob_refcnt = 2, ob_type = 0x7ffff2e18f00 <SwigPyBuiltin__shogun__CLabels_type>}13:00
gf712mmmh13:01
gf712im how does swig wrap it in a shared_ptr13:01
gf712?13:01
wikingah no13:01
wikingof course it's wrong13:02
wikingthe put first param wsn't a string13:02
gf712lol13:02
wikinglocal hacks13:02
wiking5 generated example fails13:02
wikingrest passes :)13:03
gf712nice!13:03
gf712segfault?13:03
gf712have you checked for mem leaks?13:03
wikinglol13:03
wiking300: Traceback (most recent call last):13:03
wiking300:   File "/home/wiking/shogun/build/examples/meta/python/multiclass/random_forest.py", line 19, in <module>13:03
wiking300:     p.set_num_threads(1)13:03
wiking300: AttributeError: 'SwigPyObject' object has no attribute 'set_num_threads'13:03
wiking300: swig/python detected a memory leak of type 'std::shared_ptr< shogun::Parallel > *', no destructor found.13:03
wikingthis is one of the failing example13:03
wiking304:   File "/home/wiking/shogun/build/examples/meta/python/neural_nets/convolutional_net_classification.py", line 4, in <module>13:04
wiking304:     from shogun import NNOM_GRADIENT_DESCENT13:04
wiking304: ImportError: cannot import name NNOM_GRADIENT_DESCENT13:04
wikingheheh heaps of valgrind errors :)13:05
wikingdunno if it's related13:05
wikingbut13:05
gf712it shouldn't be importing NNOM_GRADIENT_DESCENT13:05
wiking==15051== LEAK SUMMARY:13:05
wiking==15051==    definitely lost: 0 bytes in 0 blocks13:05
wiking==15051==    indirectly lost: 0 bytes in 0 blocks13:05
gf712thats weird13:05
wikingvalgrind python cross_validation.py13:05
wikingso13:05
wikingi guess we are goodish13:05
wiking:))13:05
gf712that's cool!13:05
gf712at last13:05
wikingyeah need to go back to c++ part13:05
wikingto fix the errors13:05
gf712really need that valgrind check on bot working13:05
wikingbut conceptually13:06
wikingswig works13:06
gf712after all this work you had :p13:06
gf712good13:06
gf712all those for something :D13:06
wikingyep13:06
wikingok so before continuing13:06
wikingi'm dropping C13:06
wikingas that shit is crazy13:06
wikingdoesn't make any more sense13:06
gf712yay13:07
wikingand then all the %rename stuff could be just13:07
wiking%shared_ptr13:07
wikingand in swig files13:07
wikingbut yeah first i check with structured.i13:07
gf712makes the swig files more readable13:07
wikingwtf is happening13:07
wikinghttps://github.com/tensorflow/tensorflow/pull/26782#discussion_r28058015413:09
wikingamazing comment13:09
wiking:D13:09
wikingi wonder if he is a developer of TF or what13:10
wikingyep13:10
wikinga python coder13:10
wiking:facepalm:13:10
wikinghttps://www.tensorflow.org/api_docs/python/tf/errors/FailedPreconditionError13:12
wiking:>>>13:12
wikingsometimes i wonder about things13:13
wiking:)13:13
gf712wat? raise a python error from c++ code?13:15
wikingok plif related stuff which is not a wonder ...13:15
wikinggf712: dunno :D13:15
wikingand anyways that's an OpError13:15
wikingnot an IOError13:15
wikinganyhow13:15
wikingit's crazy :))13:15
gf712lol13:15
gf712the plif stuff was already complaining before no?13:15
wikingyeye it's crazy stuff13:15
wikingneeds lot of fix on c++ level anyways13:15
wikingso ok i'm gone back to fix more c++ shiatz13:16
wikingand once unit tests are done13:16
wikinghopefully all the generated stuff will pass as well13:16
gf712maybe just ifdef 0 for now? :D13:16
wikinghahahah13:16
wikingthat's why it fails13:16
wikinghalf of plif is #if 013:16
wiking:D13:16
gf712hahah13:17
wikingbtw13:31
wikingis there a point to return char* instead of std::string for get_name()?13:31
gf712no, i don't think so13:34
gf712I mean, char* would be cheaper13:34
gf712but it's to get a name so it doesn't matter if we use string instead13:34
-!- gf712 [9052086c@gateway/web/freenode/ip.144.82.8.108] has quit [Ping timeout: 256 seconds]14:24
-!- gf712 [9052086c@gateway/web/freenode/ip.144.82.8.108] has joined #shogun15:46
gf712wiking: can you glance over https://github.com/shogun-toolbox/shogun/pull/4628 quickly and see if this is going in the right direction please? :)15:51
wikingjust a sec15:51
gf712nw15:51
wikingmmm  void OpenMLReader::post(const std::string& request, const std::string& data)15:52
wikingreader would never need post or?15:52
wikingwould be a weird rest api15:52
wiking:)15:52
wikinglook good15:53
wikingsmall things like if camelcase then OpenMLFlow instead of OpenmlFlow15:54
gf712ah no15:54
gf712no post in reader :D15:54
gf712cool15:54
gf712wiking: curl is good but no callback support with lambda :(15:55
gf712they need to write it in C++ :D15:55
gf712otherwise it fails silently15:55
wiking:<>15:56
wikinghahah15:56
wikingmissing values15:56
gf712yea...15:56
wikingmost of the machines does not handle it15:56
wikingaaaand15:56
wikingwe dont have any imputer15:56
wiking\o/15:56
wikingimo maaaaybe some trees can handle missing values15:56
gf712I need to check out the arff parsers15:57
gf712see what they do15:57
gf712because it should be up to the user to decide15:57
wikingdo we want xxHash or stick with murmur3?15:57
wikingand btw i'm thinking to extend any with hash :)15:57
gf712what will you be using to hash in any?15:58
wikingsame as Parameter.cpp15:58
gf712ah ok15:58
gf712as for algo15:58
gf712not sure tbh15:58
wikingbasically to calculate the hash of the object15:58
wikingon put i guess somehow we could update the hash15:59
wikingthe problem is that what's with c++ api15:59
wikingand then again propagating the changes is not possible :)15:59
wikingbbl16:02
gf712ttyl16:02
-!- wiking [~wiking@2001:67c:10ec:5784:8000::3ff] has quit [Remote host closed the connection]16:02
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun16:18
gf712wiking: we are definitely switching to rapidjson right?16:18
wikingyes16:18
gf712ok, is it ok if I steal some of your deadbeef cmake stuff16:19
gf712just to add it as dependency16:19
gf712and then use it for parsing of openml response?16:19
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Remote host closed the connection]16:36
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun16:48
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Remote host closed the connection]16:57
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun16:59
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Remote host closed the connection]17:11
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun17:14
-!- gf712 [9052086c@gateway/web/freenode/ip.144.82.8.108] has quit [Ping timeout: 256 seconds]18:15
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Remote host closed the connection]18:47
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun18:51
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Client Quit]18:53
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has quit [Read error: Connection reset by peer]19:29
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has joined #shogun19:29
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has quit [Read error: Connection reset by peer]23:06
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has joined #shogun23:06
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has quit [Read error: Connection reset by peer]23:10
-!- durovo [~durovo@8e.68.2ea9.ip4.static.sl-reverse.com] has joined #shogun23:10
--- Log closed Sat May 04 00:00:00 2019

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