IRC logs of #shogun for Wednesday, 2019-05-15

--- Log opened Wed May 15 00:00:16 2019
-!- anvan [~androirc@103.252.200.48] has quit [Ping timeout: 268 seconds]01:46
-!- anvan [~androirc@103.252.200.48] has joined #shogun02:49
-!- durovo1 [~durovo@5d.65.2ea9.ip4.static.sl-reverse.com] has joined #shogun03:57
-!- durovo [~durovo@5d.65.2ea9.ip4.static.sl-reverse.com] has quit [Ping timeout: 245 seconds]04:01
-!- wiking [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Remote host closed the connection]04:11
-!- anvan [~androirc@103.252.200.48] has quit [Ping timeout: 258 seconds]04:33
-!- wiking_ [~wiking@c-185-45-237-122.customer.ggaweb.ch] has joined #shogun07:50
-!- wiking_ [~wiking@c-185-45-237-122.customer.ggaweb.ch] has quit [Client Quit]07:53
-!- wiking_ [~wiking@huwico/staff/wiking] has joined #shogun07:53
-!- mode/#shogun [+o wiking_] by ChanServ07:53
-!- wiking_ is now known as wiking07:53
-!- essam [cfbd194e@gateway/web/freenode/ip.207.189.25.78] has joined #shogun08:43
essamwiking: ping08:45
@wikingpong08:45
essami have a question, is there a dynamic array implementation in shogun?08:45
essamsomething like std::vector08:45
essamfor primitives08:46
essamor maybe something like std::pair08:46
@wikingyou need that to expose to SWIG?08:47
@wikingi mean DynArray can hold anything08:48
@wikingbut i wouldn't use it08:48
@wikingif u dont need to expose the structure to SWIG08:48
@wikingthen just go ahead using STL stuff08:48
@wikingin case of std::vector i would use it... as that's mapped to most swig langs08:49
essamdoes the parameter framework handle std::vectors without problems?08:49
essamI want to remove the combined_weight member variable from DotFeatures08:52
essamand also from the Kernel interface08:52
essamand let CombinedDotFeatures have a vector of weights08:52
essamand similarily for CombinedKernel08:52
@wikingmmm current param framework does not support it08:53
@wikingbut it's fine08:53
@wikingjust dont add it for the time being to params08:53
@wikingit'll be supported with tags08:53
essamok thanks08:54
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection]09:45
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun09:45
-!- mode/#shogun [+o wiking] by ChanServ09:45
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 258 seconds]09:50
-!- gf712 [9052087c@gateway/web/freenode/ip.144.82.8.124] has joined #shogun09:50
-!- geektoni [c1cdd253@gateway/web/freenode/ip.193.205.210.83] has joined #shogun09:51
-!- anvan [~androirc@103.252.200.48] has joined #shogun09:51
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun09:55
-!- mode/#shogun [+o wiking] by ChanServ09:55
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 248 seconds]09:59
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun10:07
-!- mode/#shogun [+o wiking] by ChanServ10:07
geektoniping wiking10:11
@wikingpongi10:11
geektoniwiking: is there any way to get the description of a registered parameter? :/10:12
@wikingyes10:12
geektonibecause I can see methods only for modelselection's ones.10:12
@wikingits currenlty a bit not straightforward10:12
@wikingbut yeah10:12
@wikingyou get the AnyParameter from SGObject10:12
@wikingcurrently only have this10:13
@wikingstd::map<std::string, std::shared_ptr<const AnyParameter>> get_params() const;10:13
@wikingthat is only in c++ api10:13
geektoniwiking: I see I see. I needed a way to do it from the interfaces10:13
@wikingand then basically AnyParameter.get_description()10:13
@wikingah10:13
@wikingmmm dunno if we wanna expose AnyParameter to SWIG directly10:14
@wikingso either that10:14
@wikingor you add an indirect way to query param10:14
@wiking:)10:14
geektonimmmh I guess AnyParameter should be hidden :)10:14
@wikingthen unfortunately10:15
@wikingextend sgo interface :D10:15
@wikingdunno if10:15
@wikingactually there's a way to have opaque ptrs in swig10:15
@wikingthen you could add helper methods around AnyParameter10:15
@wikingsomething like opaque stuff from glib10:15
@wikingopaqueAnyParamter* get_param("name");10:16
@wikingand then extract_name(opaqueAnyParameter*)10:16
@wikingsee what i mean?10:16
@wikingdunno if this is better than actually exposing AnyParameter10:16
geektoniye ye I see what you mean10:19
geektoniI'm thinking about the final usage though.10:20
geektoniI mean10:20
geektoniI would prefer to have something like obj.get_description("param_name")10:20
geektoniso I can do everything with just one line10:20
gf712 geektoni: I already added such a method because I needed it for openml10:22
gf712https://github.com/shogun-toolbox/shogun/blob/1dd09c5ddee30dfb6b738b1f2a7c1ec9eef65122/src/interfaces/swig/SGBase.i#L40410:23
geektonigf712: ah cool!10:23
gf712feel free to change the name10:23
gf712I don't need it anymore...10:23
gf712you can even make it a bit more efficient by dereferencing the result from find instead10:24
geektonigf712: I guess the name is okay for the moment :)10:25
geektoniI see I see, thank you :)10:25
@wikinggf712: i decided10:25
@wikingclang-rename10:25
@wikingand fuckit10:25
@wikingtired of C10:26
@wikingand that kind of blocks my mind10:26
gf712wiking: clang-rename?10:26
@wikingwith finalizing the shared_ptr part10:26
@wikinggf712: yeah utility to rename anything in your code10:26
@wiking:)10:26
gf712ah ok! but how is it useful for you?10:27
@wiking: clang-rename-6.0 -extra-arg-before="-I/home/wiking/shogun/src" -extra-arg-before="-I/home/wiking/shogun/build/src" -qualified-name=shogun::CKernelMachine -new-name=KernelMachine ./src/shogun/classifier/svm/SVM.cpp10:27
@wikingboom10:27
@wiking:)10:27
gf712ahhh10:27
@wikingits rudementary10:27
@wikingbut fuckit10:27
gf712that C10:27
gf712lol, I thought you meant you were tired of writing in C :D10:27
@wikingi cannot be bothered to take care of the CSGObject inheritance etc10:27
@wikinganyways we have the whole story10:28
gf712yea, I agree, it feels a bit awkward10:28
@wikingdunno which story10:28
@wikingman i need sleep10:28
@wiking:D10:28
gf712haha10:28
@wiking(woke up at 6am again)10:28
@wikinganyhow10:28
@wikingsay goodbye to C prefix10:28
@wikinggeektoni: right? :)10:28
@wikinglisitsyn: agree right?10:29
gf712how are the shared_ptr going?10:29
gf712what did you about R and Lua btw?10:29
@wikingwell its this10:29
@wikingand hash10:29
lisitsynhello10:29
@wikinghash i agreed with lisitsyn10:29
@wikingso that should be fine10:29
@wikingin any10:29
@wikinglisitsyn: C is goine10:29
@wiking*gone10:29
@wikingi mean object name prefix10:29
gf712wiking: so are you adding a visitor pattern in any for hash?10:30
@wikinggf712: mmm no first just a simple hash when you set the value10:30
@wikingdunno yet honestly10:31
@wikingbut something along these lines10:31
@wikingand then see how the gp is behaving10:31
@wikingas currenlty i have zero idea about gp + shared_ptr10:31
@wikingas nothing is being tested10:31
@wikingdue to missing hash10:31
@wikinglisitsyn: SAY YES MOTHERFUCKER!10:33
@wikingSAY YES10:33
@wiking:>10:33
@wikinglambday: oh. man you r here?10:33
@wikingby any chance?10:33
@wikingidle: 27:17:4310:34
@wiking:D10:34
@wikinggf712: btw that interview is good10:34
@wikinggeektoni: if u r interested https://www.youtube.com/watch?v=yCd3CzGSte810:34
@wikinglisitsyn: ^10:34
gf712wiking: yes, I watched the whole thing10:34
gf712well listened10:34
@wikingyeye10:35
gf712good to know how llvm evolved10:35
gf712I didn't really realise people did ai+compiler stuff now10:35
gf712pretty cool10:35
@wikinghahaha so many10:35
@wikingi was involved here locally in a project10:35
@wikingbut then my marriage exploded10:35
@wikingso dunno whatsup with that10:35
@wiking;d10:35
gf712oh right :/10:35
@wikingthey were doing compiler optimization using ml models10:36
geektoniwiking: uhh I'll surely take a look10:36
gf712what compiler btw?10:36
@wikingllvm10:36
@wiking:)10:36
@wikingcool stuff10:36
@wikingfor nvidia mostly10:36
@wikinghow to set the flags10:36
@wikingfor various operations10:36
@wikingthey generated a huge dataset10:36
@wikingwith various flag combinations10:36
@wikingand then put an ml model on it10:36
@wiking:)10:36
gf712yea I also didn't realise that the Nvidia compiler was built with llvm10:36
@wikingbtw this is why u want onnx10:37
gf712ah that's cool10:37
@wikingi mean actually10:37
@wikingthis is why10:37
@wikingtensor comprehension10:37
@wikingis cool10:37
@wikinghttps://github.com/facebookresearch/TensorComprehensions10:37
@wikingbut the whole team got snatched by g10:37
@wikingso dunno what's with this project10:37
@wikingso basically u can take any kernel10:38
@wikingand then optimize the shit out for it10:38
@wiking:)10:38
@wikingand then of course you take onnx10:38
@wikingand then lalala10:38
@wikingu have a super nice neat10:38
gf712yea that's cool10:39
@wikingbinary10:39
gf712isn't it kinda what xla does though?10:39
@wikingmmmm yes and no10:39
gf712or is that just runtime?10:39
gf712xla10:39
@wikingbecuase that just does jit10:39
@wikingright?10:39
gf712yea10:39
gf712I think10:40
@wikingstill the compiler could do better10:40
@wikingbecause currently the flags are tricky10:40
@wiking:)10:40
@wikingand there are zilion of flag combinations10:40
@wiking-march=native is cool10:40
@wikingbut that's just a wrapper for some heuristics10:40
gf712by flags you mean stuff for packing the GPUs?10:40
gf712I.e. grid dimension10:40
@wikingflags = compiler flags10:41
@wikingand that depends on the arch at hand10:41
@wikingin case of gpu10:41
@wikingit's very gpu type dependend10:41
@wiking*dependent10:41
@wikingwhat's the loop-vectorization size or whatever10:41
@wikingetc10:41
@wikingseen some crazy diffs10:41
@wikingbased on the flag values10:41
@wikingand apparently10:42
gf712yea I didn't realise there was so much to gain on top of march=native10:42
@wikingall these flags and how to set them10:42
@wikingare all just heuristics10:42
@wikingdone by somebody10:42
@wiking:D10:42
@wikingliterlly some guys just figured out10:42
gf712haha10:42
@wikingthat ok this should be good for this10:42
@wikingand that's it10:42
gf712great...10:42
@wikingso its really not that kind of a magic10:42
@wikingthere's a lot of switches in llvm10:42
@wikingbetween these heuristics10:43
@wikingapparently 10k+ lines of code10:43
@wikingis just covering these heuristics10:43
@wikingfor various arch10:43
@wikingso there's room for improvement there10:43
@wiking:)10:43
gf712fair enough!10:44
@wikingbut yeah i mean i was just observing and looking at the output10:44
@wiking:)10:44
gf712do they update -O3 with these new parameters they find?10:44
@wikingwell10:44
@wikingthis is all experimental10:44
@wikingD:10:44
@wiking:>10:44
@wikingso it's not part of mainline10:44
@wikingbut i guess one day10:44
@wikingbut i. mean this is what Chris et al is doing with llvm10:44
@wikingat g10:45
@wiking:)10:45
gf712it would be vcool they have a model that runs in your machine10:45
gf712determines the flags10:45
@wikingguess why if you look at the mailinglist of llvm10:45
gf712and that is your -O310:45
@wikingmost of the maintainers are at deepmind/gbrain10:45
gf712yea, has all the knowhow now...10:45
@wikingbtw what's the deal with that dude10:46
@wikingwho tried to compile shogun with swig 4.0? :)10:46
gf712ah I didn't see it10:46
gf712but I think I have tried it when it was in beta10:46
gf712and failed10:46
@wikinghttps://github.com/shogun-toolbox/shogun/issues/462910:46
@wikingapprently segfault10:46
gf712did it work with you?10:46
@wikinghaven't tried it10:46
gf712let me try now10:47
lisitsynwiking: sorry distracted10:50
lisitsynyes10:50
lisitsyn;)10:50
@wikinglisitsyn: good10:50
@lambdaywiking: yo11:00
-!- geektoni [c1cdd253@gateway/web/freenode/ip.193.205.210.83] has quit [Ping timeout: 256 seconds]11:18
-!- geektoni [c1cdd253@gateway/web/freenode/ip.193.205.210.83] has joined #shogun11:27
@wikinglambday: stiull here?11:53
@wikingsorry was away11:54
-!- geektoni [c1cdd253@gateway/web/freenode/ip.193.205.210.83] has quit [Quit: Page closed]11:56
@lambdaywiking: yeah, kind of :D12:00
@lambdaywiking: still awake? which timezone are you in right now?12:00
@wikingcest12:01
@wikinglambday: ok so i have one q12:01
@wikingabout mmd12:01
@lambdaywiking: yeah12:01
@wikinghttps://github.com/shogun-toolbox/shogun/blob/develop/tests/unit/statistical_testing/internals/InitPerFeature_unittest.cc#L6012:02
@wikingthis is https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/InitPerFeature.cpp#L5312:03
@wikingright?12:03
@lambdaywiking: yeah, looks that way... sorry I don't remember the particulars of it...12:04
@lambdayso this is the cast operator12:04
@lambdayyeah12:04
-!- essam [cfbd194e@gateway/web/freenode/ip.207.189.25.78] has quit [Quit: Page closed]12:06
@lambdaypointer equality check forces the InitPerFeature thingi to be casted to CFeatures* ... this just checks that the values are the same... IIRC12:06
@wikingyeo12:10
@wikingso i changed this to12:10
@wikingconst shared_ptr<CFeatures>12:10
@wikingand since then i get compiler error12:10
@wiking:D12:10
@wikinglambday: ideas? :)12:14
@lambdaywiking: :D you changed the cast operator to shared_ptr, right?12:16
@wikingyes12:16
@lambdaythen in the test you can just assign it to a shared_ptr<CFeatures> variable... and then compare the orig ptr with the shared ptr variable.get() for ptr equality12:17
@lambdayI guess12:17
@lambdaythe cast operator get's checked when you do the assignment12:17
@wikingi mean everything else works12:18
@wikingbut this gives a compiler error12:18
@wikingbecause 2 diff type are being compared12:18
@wikingnote12:18
@wikingthe right hand side of that comparison12:19
@wikingis a shared_ptr<CDenseFeatures<...>12:19
@lambdaywiking: yeah... that won't work I think... you have to do it in 2 steps... other the compiler will fuck it up12:19
@wikingwould it help12:19
@wikingif the rhs is shared_ptr<CFeatures>12:19
@wikingor?12:19
@lambdaywiking: no.. the rhs would have to be a raw ptr.... so you assign it to a shared_ptr<CDenseFeatures<...>> variable... and then you call the .get() method on that variable to get the const raw ptr and put that on the rhs12:20
@wikingeh12:21
@wikingi mean12:21
@wikingshared_ptr<> == shared_ptr should work12:21
@wikingno?:)12:21
@wikingNote that the comparison operators for shared_ptr simply compare pointer values; the actual objects pointed to are not compared. Having operator< defined for shared_ptr allows shared_ptrs to be used as keys in associative containers, like std::map and std::set.12:21
@wikingmmm12:21
@wikingbrb12:21
@lambdayumm let me check if they have == operator override for raw ptr equality12:22
@lambdaywiking: sure.. yeah checked the doc... if both lhs and rhs are shared_ptr for ==, it would work just as well.. :)12:23
@lambdaybut in order for that to work, you have to either (a) add an/replace the assignment operator for shared_ptr for this class here (https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/statistical_testing/internals/InitPerFeature.h#L55) or (b) create a shared ptr obj in the test with the original data and then do the check12:29
@wikinglambday: yeye everything becomse shared_ptr12:47
@wikingsee https://github.com/shogun-toolbox/shogun/pull/461912:47
gf712wiking: have you seen this lib https://github.com/jmmartinez/easy-just-in-time ?12:53
@wikingyep yep12:53
@wikingtried it12:53
@wiking:)12:53
gf712good?12:53
@wikingits nice12:53
gf712watching the talk now12:53
gf712seems pretty cool12:53
gf712wiking: btw I found an issue with swig 4 and shogun12:54
gf712created a pr but I am not sure how it wasn't an issue before12:54
@lambdaywiking: files changed 1245!!13:08
@wikinglambday: heheh yeah13:09
@wikingthe aim is that i take all lines in the codebase13:09
@wiking:D13:09
@wikinglambday: but yeah libtooling FTW13:09
@wiking:P13:09
@wikingno fucking way i could have done this by hand13:09
@lambdaywiking: you're gonna break github..13:09
@wikingalready did13:09
@wikingtry to use13:09
@wikingjump to file13:09
@wiking;)13:09
@lambdaywiking: MSFT fucked up another decent product then13:10
@lambdayor it was never tested at this scale13:10
@lambday:D13:10
@lambdaywiking: haha jump to file shows "The table of contents is too big for display." xD13:10
@wikingyep13:11
@wiking:)13:11
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection]13:11
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun13:18
-!- mode/#shogun [+o wiking] by ChanServ13:18
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection]14:07
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun14:15
-!- mode/#shogun [+o wiking] by ChanServ14:15
-!- geektoni [c1cdd24a@gateway/web/freenode/ip.193.205.210.74] has joined #shogun14:23
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection]14:34
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun14:44
-!- mode/#shogun [+o wiking] by ChanServ14:44
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 252 seconds]14:48
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun15:05
-!- mode/#shogun [+o wiking] by ChanServ15:05
-!- wiking [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection]15:22
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun15:25
-!- mode/#shogun [+o wiking] by ChanServ15:25
-!- wiking_ [~wiking@huwico/staff/wiking] has joined #shogun15:27
-!- mode/#shogun [+o wiking_] by ChanServ15:27
-!- wiking [~wiking@huwico/staff/wiking] has quit [Ping timeout: 244 seconds]15:29
-!- HeikoS [~heiko@73.red-83-46-178.dynamicip.rima-tde.net] has joined #shogun15:30
-!- mode/#shogun [+o HeikoS] by ChanServ15:30
-!- rcurtin [~ryan@knife.lugatgt.org] has quit [Quit: Lost terminal]15:31
-!- HeikoS [~heiko@73.red-83-46-178.dynamicip.rima-tde.net] has quit [Ping timeout: 255 seconds]15:35
-!- HeikoS [~heiko@148.pool85-48-188.static.orange.es] has joined #shogun15:59
-!- mode/#shogun [+o HeikoS] by ChanServ15:59
gf712HeikoS: ping16:07
-!- HeikoS [~heiko@148.pool85-48-188.static.orange.es] has quit [Remote host closed the connection]16:23
-!- wiking_ [~wiking@huwico/staff/wiking] has quit [Remote host closed the connection]16:26
-!- wiking [~wiking@huwico/staff/wiking] has joined #shogun16:46
-!- mode/#shogun [+o wiking] by ChanServ16:47
-!- HeikoS [~heiko@1.pool85-48-188.static.orange.es] has joined #shogun16:48
-!- mode/#shogun [+o HeikoS] by ChanServ16:48
@HeikoSgf712: pong16:48
-!- gf712_ [9052087c@gateway/web/freenode/ip.144.82.8.124] has joined #shogun16:51
gf712_HeikoS: I think the arff stuff is fine now16:51
gf712_and would be good to test out openml stuff16:51
@HeikoSgf712_ hi! yes just looking at it16:52
gf712_ok!16:52
gf712_openml stuff is getting there16:52
-!- gf712 [9052087c@gateway/web/freenode/ip.144.82.8.124] has quit [Ping timeout: 256 seconds]16:52
@HeikoSI am not sure I have too much to say about the general design of this thing, only minor comments mostly16:52
-!- gf712_ is now known as gf71216:53
gf712ok! the thing is that it might be around for too long as is considering Viktor wants to refactor the whole serialisation stuff16:53
@HeikoSsorry what do you mean16:54
@HeikoSaround for too long?16:54
@HeikoSand can you explain the connection with serialization stuff16:54
gf712well, if Viktor changes the serialisation it will have to be rewritten16:54
@HeikoSah16:54
@HeikoSok, why is that?16:54
@HeikoSand I have a q about the time stuff16:54
gf712so that it has same API16:54
gf712I think no>16:54
gf712?16:54
gf712and then the serialiser will have to use the visitor pattern16:55
@HeikoSah I see16:55
@HeikoSokok16:55
@HeikoSsure thing16:55
@HeikoSI will comment on the PR but leave merging it to Vik then16:55
@HeikoSbut the serialization ... we wanted to change that for years :) ... so it might take a while16:56
@HeikoSon the other hand we have the ws soon :)16:56
@HeikoSso the time stuff16:56
@HeikoSI think converting things to the time since bla ... I don't know is that a good idea16:56
@HeikoSand then it turns into DenseFeatures right?16:56
gf712yes, I didn't know what else to do with it...16:56
gf712to me it's a "universal" way of representing time16:57
@HeikoSit is16:57
@HeikoSok the problem is that shogun doesnt support metadata16:57
gf712and then then use can do processing16:57
@HeikoSyeah ok16:57
@HeikoSthat is probably fine for now16:57
@HeikoSwe can add datetime metadata later with the environmental folks16:57
@HeikoSok another q I have16:58
gf712yea, they will probably need!16:58
@HeikoSyou use CombinedFeatures16:58
gf712yup, because I need strings16:58
gf712as in stringfeatures16:58
@HeikoScan you explain?16:58
@HeikoSah16:58
@HeikoSwell no ...  please go ahead :)16:59
@HeikoSwhy not a list of CFeatures* ?16:59
gf712well I needed to have dense and string features in the same container16:59
@HeikoSbecause that is what combinedfeatures does right?16:59
gf712but wouldnt that be the same?16:59
gf712I can change it16:59
@HeikoSyes, but slimmer16:59
@HeikoSid say rather than abusing the combined features thing as a list, use a list directly17:00
@HeikoSor a std::vector17:00
@HeikoSof CList17:00
@HeikoS(which then later can be refactored to use std:: stuff)17:00
gf712ok, I am thinking CList then no? because of swigh17:00
gf712swig17:00
@HeikoSyes true17:01
@HeikoSproblem here is17:01
@HeikoSthat CList returns CSGObject17:01
@HeikoSand I am sure that the CombinedFeatures::get(index) returns CFeatures17:01
@HeikoSso maybe ...17:01
@HeikoSCombinedFeatures is good17:02
@HeikoSI am not sure17:02
@HeikoSit feels weird ;)17:02
gf712I mean if we replace CDynamicObjectArray with std::vector17:02
gf712in CombinedFeatures17:02
gf712it shouldn't be too bad no?17:02
@HeikoSwell17:03
@HeikoSCombinedFeatures are meant for MKL learning17:03
gf712ahh17:03
@HeikoScombinedKernel + combinedFeatures17:03
@HeikoSso that you can have an svm17:03
@HeikoSthat operates on say one string kernel and one gaussian kernel17:03
gf712ok ok I get it the issue now :D17:03
@HeikoSand those need different feature types17:03
@HeikoSso combined features is there to group different feature types...so kind of what you want here ...17:04
gf712HeikoS: the sparse format can be added somewhat easily17:05
gf712ill just have to read the arff spec again17:05
@HeikoSok cool no need to have tha tnow17:06
@HeikoSgf712: pretty nice work btw17:08
gf712thanks! was good to practice some parsing in c++ :D17:08
-!- essam [c0c8120e@gateway/web/freenode/ip.192.200.18.14] has joined #shogun17:09
@HeikoShehe yeah :)17:12
@HeikoSgf712: I bet it is fast!17:14
gf712HeikoS: what do you mean?17:16
@HeikoSthe parsing17:16
@HeikoSfaster than a python parser17:16
gf712ah yes, unless I messed it up17:17
gf712I think Scipy has a arff parser, but I don't know in what language it is written17:17
@HeikoSprobably17:17
@HeikoSc99 inside cython17:17
geektoniping HeikoS17:18
@HeikoSgeektoni: hi !17:18
geektoniHeikoS: I'm skimming the list of algorithms in the proposal which need to be made observable17:19
geektoniI wonder17:19
@HeikoSah cool17:19
geektoniif there are like "priorities"17:19
@HeikoSI was about to check the LDA one17:19
@HeikoScan you send me a link17:19
@HeikoSso we can quickly discuss17:19
geektoniHeikoS: https://docs.google.com/document/d/17LioVPBuyn4G2uDy0PbmpZAjJxt_wg105SblKcPyLtY/edit17:20
geektonibecause atm I'm looking at SVM and MKL17:20
@HeikoSI would say17:21
@HeikoSkmeans17:21
@HeikoSknn17:21
@HeikoSrf17:21
@HeikoSneural nets17:21
@HeikoSgmm17:21
@HeikoSactually first gmm and nns the other way17:22
@HeikoSso kmeans you can emit the current centroids17:22
geektoniI see I see17:22
@HeikoSknn I wonder what to emit17:22
@HeikoSrf you can emit something about the forest17:22
@HeikoSgmm you can emit the likelihood and the gaussians17:22
@HeikoSGP for the variational you can emit the ELBO value17:23
@HeikoSskip Laplace and EP for now17:23
@HeikoSfor the NNs you can emit something like the error function value17:23
@HeikoSfor MKL you can emit the current kernel weights17:24
@HeikoSis that enough for now? :D17:24
geektoniahah more that enough17:24
geektoniMKL is huuuge17:24
@HeikoSyes17:24
@HeikoSdont spend too much time on it17:24
@HeikoSI would go from simple to complex17:24
@HeikoSas in "everyday"-use algorithms first17:24
@HeikoSthen more complex ones17:24
geektonisure sure17:24
geektoniHeikoS: ah btw, as a side task, I'm trying to port everything to put/get when I can17:26
@HeikoSgeektoni: just commented on that17:26
@HeikoSI dont think this is the best idea17:26
@HeikoSit moves the type safety to runtime17:27
@HeikoSand there could be typos in the strings17:27
@HeikoSI would keep the put for the users17:27
@HeikoSah17:28
geektoniahh you are right. my mistake, no idea why I didn't use the templated put17:28
geektoniHeikoS: I removed those checks because it is using dispatching17:29
@HeikoSah ok17:29
geektoniand with that I'm sure that I will get those type of features17:29
@HeikoSall good then :)17:29
@HeikoSmade some comments on the PR geektoni17:32
geektoniHeikoS: thanks! I'll have a look17:33
gf712HeikoS: i am not sure how to do write a getter with type dependency17:36
@HeikoSgf712: it would have to be in the ctor somehow?17:36
gf712just looking at File.h17:36
gf712ah you mean you ask for it before parsing?17:36
gf712I thought you meant the getter would request a type17:37
gf712and then can cast to that type in the getter17:37
gf712but yea I can also just have templated class17:37
gf712or with an enum17:38
-!- HeikoS [~heiko@1.pool85-48-188.static.orange.es] has quit [Quit: Leaving.]17:38
gf712wiking: plans to manipulate ast from C++ for reflection.. its going to get messy :D https://www.youtube.com/watch?v=CRDNPwXDVp0&list=PLHTh1InhhwT6V9RVdFRoCG_Pm5udDxG1c&index=1118:03
-!- gf712 [9052087c@gateway/web/freenode/ip.144.82.8.124] has quit [Ping timeout: 256 seconds]18:19
-!- geektoni [c1cdd24a@gateway/web/freenode/ip.193.205.210.74] has quit [Quit: Page closed]18:25
-!- essam [c0c8120e@gateway/web/freenode/ip.192.200.18.14] has quit [Quit: Page closed]19:40
-!- priyanka [8b050b63@gateway/web/freenode/ip.139.5.11.99] has joined #shogun20:30
priyankaHello All!! I am interested in participating in GSOD and I have some doubts20:31
-!- ussdd95[m] [ussdd95mat@gateway/shell/matrix.org/x-ladezbdjcasuwxcn] has quit [Quit: Idle kick: User has been idle for 30 days.]20:33
-!- priyanka [8b050b63@gateway/web/freenode/ip.139.5.11.99] has quit [Ping timeout: 256 seconds]20:56
-!- priyanka [9d25d395@gateway/web/freenode/ip.157.37.211.149] has joined #shogun21:06
-!- priyanka [9d25d395@gateway/web/freenode/ip.157.37.211.149] has quit [Client Quit]21:07
-!- rcurtin [~ryan@knife.lugatgt.org] has joined #shogun21:58
--- Log closed Thu May 16 00:00:17 2019

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