| --- Log opened Thu Jun 15 00:00:14 2017 | ||
| -!- olinguyen [81615ad9@gateway/web/freenode/ip.129.97.90.217] has quit [Ping timeout: 260 seconds] | 00:04 | |
| -!- olinguyen [81615ad9@gateway/web/freenode/ip.129.97.90.217] has joined #shogun | 00:37 | |
| -!- olinguyen [81615ad9@gateway/web/freenode/ip.129.97.90.217] has quit [Ping timeout: 260 seconds] | 02:10 | |
| @wiking | http://www.appcoda.com/coreml-introduction/ | 04:58 | 
|---|---|---|
| @wiking | :) | 04:58 | 
| -!- johklu [c1abba08@gateway/web/freenode/ip.193.171.186.8] has joined #shogun | 09:02 | |
| -!- johklu [c1abba08@gateway/web/freenode/ip.193.171.186.8] has quit [Client Quit] | 09:02 | |
| -!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has joined #shogun | 09:09 | |
| -!- shogun-buildbot [~shogun-bu@7nn.de] has quit [Ping timeout: 240 seconds] | 09:15 | |
| -!- shogun-buildbot [~shogun-bu@7nn.de] has joined #shogun | 09:15 | |
| micmn | wiking: I'm doing the linalg splitting thing | 09:16 | 
| @wiking | \o/ | 09:17 | 
| @wiking | great! | 09:17 | 
| -!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Quit: Leaving.] | 09:43 | |
| @sukey | Pull Request #3846 "Split Eigen3's linalg backend into header and implementation." opened by micmn - https://github.com/shogun-toolbox/shogun/pull/3846 | 10:30 | 
| @sukey | Pull Request #3846 "Split Eigen3's linalg backend into header and implementation." synchronized by micmn - https://github.com/shogun-toolbox/shogun/pull/3846 | 11:14 | 
| -!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 12:42 | |
| -!- mode/#shogun [+o HeikoS] by ChanServ | 12:42 | |
| -!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Remote host closed the connection] | 12:43 | |
| -!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has joined #shogun | 12:45 | |
| -!- mode/#shogun [+o HeikoS] by ChanServ | 12:45 | |
| @HeikoS | micmn: jo | 12:58 | 
| @HeikoS | geektoni: hi | 12:58 | 
| micmn | hi | 12:58 | 
| @HeikoS | micmn: any thoughts about the non-templated linalg interface? | 12:58 | 
| micmn | not yet, this morning I've worked on the splitting thing and the blog post | 12:59 | 
| micmn | it is a nice idea | 13:00 | 
| geektoni | hi HeikoS | 13:00 | 
| @HeikoS | micmn: ok no worries, just asking | 13:00 | 
| @HeikoS | micmn: so what would need discussion is: | 13:01 | 
| micmn | and I thought about it a little but for now I've no clue on how to do that | 13:01 | 
| @HeikoS | where does the switch from run-time types to compile time type calls happen, and how? | 13:01 | 
| @HeikoS | there could be something like | 13:01 | 
| @HeikoS | switch (matrix.dtype) { case REAL: linalg_impl::method<float64t>(SGMatrix<float64_t>(matrix) .... | 13:02 | 
| @HeikoS | generated with macros | 13:02 | 
| @HeikoS | (which is kind of similar to whats going on in the LARS/LDA atm | 13:02 | 
| @HeikoS | but it is not that nice and bloats code | 13:02 | 
| @HeikoS | the other way would be to register function pointers based on the type in some way ... discussed that with wiking a while ago | 13:03 | 
| @HeikoS | micmn: ok, I mean the stuff you are doing right now is more important anyways, just wanted to point you to that a bit, in case you happen to have an idea | 13:03 | 
| @HeikoS | geektoni: re the progress bar, I think there are some algos that could benefit from it :) | 13:03 | 
| micmn | sure it would be very nice to push the data type inside linalg | 13:04 | 
| micmn | but that requires a big sgmatrix/vector refactoring right? | 13:05 | 
| micmn | how do you plan to do the transition? | 13:05 | 
| -!- TingMiao [uid229534@gateway/web/irccloud.com/x-nkuhyptdjjkmkseh] has joined #shogun | 13:18 | |
| @HeikoS | micmn: sorry for the delay | 13:28 | 
| @HeikoS | micmn: so I dont think we would re-factor SGMatrix<T> | 13:29 | 
| @HeikoS | we would have a new type | 13:29 | 
| @HeikoS | Matrix | 13:29 | 
| @HeikoS | that has the possibility to query the type of its underlying data at runtime | 13:29 | 
| @HeikoS | and then we add new methods to the linalg API that accept this type | 13:29 | 
| @HeikoS | micmn: I would just start a feature branch on that, and play it through for a single method that only accepts Matrix | 13:30 | 
| @HeikoS | and then iterate there a bit | 13:30 | 
| micmn | got it | 13:30 | 
| geektoni | HeikoS: sorry for the delay. Yeah, there are surely algorithms which can be "upgraded", but I'll need to check which of them can benefit from a progress bar. | 13:32 | 
| @HeikoS | geektoni: should be easy right? :) | 13:34 | 
| @HeikoS | Let me find out | 13:34 | 
| @HeikoS | https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/regression/LeastAngleRegression.cpp#L188 | 13:34 | 
| geektoni | yes, it should be easy to do | 13:35 | 
| @HeikoS | geektoni: https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/modelselection/GridSearchModelSelection.cpp#L61 | 13:35 | 
| @HeikoS | cross-validation probably as well | 13:36 | 
| @HeikoS | https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/modelselection/RandomSearchModelSelection.cpp#L72 | 13:37 | 
| geektoni | HeikoS: btw, I haven't tried with iPython yet, but the progress bar should behave correctly. | 13:37 | 
| @HeikoS | https://github.com/shogun-toolbox/shogun/blob/develop/src/shogun/neuralnets/NeuralNetwork.cpp#L289 | 13:38 | 
| @HeikoS | geektoni: I just wondered about https://github.com/noamraph/tqdm | 13:38 | 
| @HeikoS | this does it nicely in ipython | 13:38 | 
| @HeikoS | (including the notebook) | 13:38 | 
| @HeikoS | lol saw this, geektoni? | 13:39 | 
| @HeikoS | https://github.com/tqdm/tqdm/wiki/How-to-make-a-great-Progress-Bar | 13:39 | 
| geektoni | he... nope. ;) | 13:40 | 
| geektoni | I hope I did everything right. LOL | 13:41 | 
| geektoni | HeikoS: btw, what is your concern with tqdm? | 13:42 | 
| @HeikoS | geektoni: in what sense? | 13:42 | 
| geektoni | I mean | 13:43 | 
| geektoni | it is just another way to do progress bar | 13:43 | 
| geektoni | in Python | 13:43 | 
| geektoni | Were you planning to do something with it? | 13:44 | 
| geektoni | or it is just to highlight another competitor of ours progress bar ;) | 13:45 | 
| @HeikoS | no it is just another one | 13:45 | 
| @HeikoS | not using it | 13:45 | 
| @HeikoS | but it looks cool in the ipython notebook | 13:45 | 
| @HeikoS | and it would be cool if ours looked cool there as well | 13:45 | 
| @HeikoS | thats why I ask | 13:45 | 
| @HeikoS | btw I have another question: what happens if you nest the progress bars? | 13:46 | 
| lisitsyn | tricky questions you have here hhuh | 13:46 | 
| @HeikoS | lisitsyn: hows the iterator refactoring goin? :D | 13:48 | 
| geektoni | lisitsyn: yes, indeed | 13:48 | 
| @HeikoS | geektoni: ill be back later with more tricky questions | 13:50 | 
| geektoni | HeikoS: I think it won't work well. | 13:50 | 
| lisitsyn | HeikoS: I tried to find a funny answer | 13:50 | 
| @HeikoS | geektoni: but think about this: you added progress bar to xvalidation and to svm | 13:50 | 
| @HeikoS | and then you start | 13:50 | 
| @HeikoS | what happens? | 13:50 | 
| @HeikoS | and what should happen? | 13:50 | 
| lisitsyn | finishing in one hour | 13:51 | 
| lisitsyn | two days | 13:51 | 
| lisitsyn | one minute | 13:51 | 
| @HeikoS | i gotta go now, but will be back soon | 13:51 | 
| @HeikoS | lisitsyn: ah cool let me know when youre done :D | 13:51 | 
| lisitsyn | 110% done | 13:51 | 
| geektoni | HeikoS: kk, I'll be prepared ;) | 13:51 | 
| -!- HeikoS [~heiko@host-92-0-178-129.as43234.net] has quit [Quit: Leaving.] | 13:51 | |
| -!- geektoni [~geektoni@93-34-234-212.ip52.fastwebnet.it] has quit [Quit: Leaving.] | 13:57 | |
| @iglesiasg | haha | 14:39 | 
| -!- olinguyen [81615ad9@gateway/web/freenode/ip.129.97.90.217] has joined #shogun | 15:19 | |
| -!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has joined #shogun | 15:34 | |
| -!- mode/#shogun [+o HeikoS] by ChanServ | 15:34 | |
| @HeikoS | lisitsyn: done? | 15:35 | 
| lisitsyn | HeikoS: sure sure | 15:35 | 
| lisitsyn | :P | 15:35 | 
| @HeikoS | olinguyen: hey | 15:56 | 
| @HeikoS | TingMiao: hi! | 15:56 | 
| olinguyen | hey! | 15:56 | 
| @HeikoS | olinguyen: so we have someone from gunnars group now | 15:56 | 
| @HeikoS | lets see what he says | 15:56 | 
| olinguyen | yea, thanks for that email! | 15:56 | 
| @HeikoS | olinguyen: saw the email I wrote a few mins ago? | 15:57 | 
| olinguyen | yea :)! | 15:57 | 
| @HeikoS | I was thinking of you there -- as you have already used Shogun's messy API quite a bit | 15:57 | 
| @HeikoS | olinguyen: so really curious on your input there | 15:57 | 
| @HeikoS | olinguyen: API design is something we often dont focus on very much | 15:57 | 
| @HeikoS | olinguyen: or more like: usability | 15:58 | 
| olinguyen | yea, it's a good idea to have the doc. I'd forget about the messy stuff otherwise | 15:58 | 
| @HeikoS | olinguyen: yeah, just keep on filling it, and then ping us | 15:58 | 
| @HeikoS | olinguyen: hey I have another question related to the analysis you are doin | 15:58 | 
| olinguyen | sure | 15:58 | 
| @HeikoS | olinguyen: so you are predicting mortality within the next X years right? | 15:59 | 
| olinguyen | as of right now i did 30-days and 1-year | 15:59 | 
| @HeikoS | ok cool | 15:59 | 
| @HeikoS | so you data is pairs of (X,y) | 15:59 | 
| olinguyen | correct | 15:59 | 
| @HeikoS | where X is all the data of the patient at time t, and y is whether the patient dies t+1? | 15:59 | 
| olinguyen | right! and time t is the first 24 hours | 16:00 | 
| @HeikoS | ok cool | 16:00 | 
| @HeikoS | so we need to discuss this a bit :) | 16:00 | 
| olinguyen | alright | 16:00 | 
| @HeikoS | so first question: in some sense, one should also use information before t (not just at t) to predict? | 16:01 | 
| @HeikoS | i.e. heart rate at t, but also at t-1, t-2, etc | 16:01 | 
| olinguyen | yea. to be more specific i'm taking the max/min/mean values of the first 24 hours | 16:02 | 
| TingMiao | hi I've got the email. I'll think about it:) | 16:02 | 
| @HeikoS | TingMiao: cool thx! :) | 16:02 | 
| @HeikoS | olinguyen: cool | 16:02 | 
| @HeikoS | olinguyen: so in general, this is some kind of "rolling" feature extraction | 16:02 | 
| @HeikoS | where you compute some function over a time series in a certain interval | 16:03 | 
| olinguyen | correct | 16:03 | 
| @HeikoS | olinguyen: offtopic: here is a potential feature that Shogun would benefit from | 16:03 | 
| @HeikoS | https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.rolling.html | 16:03 | 
| @HeikoS | something like this | 16:03 | 
| @HeikoS | to generalise this | 16:03 | 
| @HeikoS | ok but anyways, I am after something else atm | 16:04 | 
| @HeikoS | olinguyen: so there might be a problem | 16:04 | 
| olinguyen | cool, i didn't know about that from pandas :P | 16:04 | 
| @HeikoS | olinguyen: yeah it might save you some headaches! ;) | 16:04 | 
| @HeikoS | so your (X,y) pairs are not iid in fact | 16:04 | 
| @HeikoS | and this means | 16:04 | 
| @HeikoS | that you cannot do plain cross-validation | 16:05 | 
| @HeikoS | because you leak future information into the past | 16:05 | 
| @HeikoS | i.e. when you predict at time t, from you x-validation, it might be that you have seen observations from the future | 16:05 | 
| @HeikoS | olinguyen: you see what I mean? | 16:05 | 
| olinguyen | yea i get it | 16:05 | 
| @HeikoS | olinguyen: ok, so the way to solve this is to do something like "cross-validation in time" | 16:06 | 
| @HeikoS | http://machinelearningmastery.com/backtest-machine-learning-models-time-series-forecasting/ | 16:06 | 
| @HeikoS | here is some inspiration | 16:06 | 
| @HeikoS | (dont download the course, this just describes the problem=) | 16:07 | 
| olinguyen | cool, thanks! | 16:07 | 
| @HeikoS | better look here https://en.wikipedia.org/wiki/Backtesting | 16:07 | 
| @HeikoS | so what the idea here basically is: | 16:07 | 
| @HeikoS | go through time in a certain step size (this corresponds to "folds" in x-validation) | 16:07 | 
| -!- geektoni [~geektoni@151.62.57.216] has joined #shogun | 16:07 | |
| @HeikoS | and then train using all the information up to that time point, and then test the prediction | 16:08 | 
| @HeikoS | (being really careful about no future information leaking into the current model) | 16:08 | 
| @HeikoS | and then repeat for all time "folds" | 16:08 | 
| olinguyen | i see | 16:08 | 
| olinguyen | are my current models likely overfitting? | 16:08 | 
| @HeikoS | https://robjhyndman.com/hyndsight/tscv/ | 16:09 | 
| @HeikoS | ^this is another nice explain | 16:09 | 
| @HeikoS | olinguyen: the numbers you are getting are definitely questionable | 16:09 | 
| olinguyen | agreed | 16:09 | 
| @HeikoS | olinguyen: and it is likely that if you would run the model in practice on entirely new data, that you would get worse results | 16:10 | 
| @HeikoS | finally | 16:10 | 
| @HeikoS | http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.TimeSeriesSplit.html | 16:10 | 
| @HeikoS | since you are using python | 16:10 | 
| @HeikoS | you could start with generating the splits like this | 16:10 | 
| @HeikoS | olinguyen: thats another feature for the list brw | 16:11 | 
| @HeikoS | btw | 16:11 | 
| @HeikoS | olinguyen: let me know if you have any questions on that | 16:12 | 
| @HeikoS | olinguyen: I have a few more things, but they are less important for now | 16:12 | 
| @HeikoS | olinguyen: one feature that usually works quite well for time series is to fit a linear regression to the time series in a certain past window (like you do the mean at the moment), and the extrapolate that linear model into the future. This can be then used as part of the X in your (X,y) pairs | 16:13 | 
| olinguyen | Thanks, i'll go through this and let you know if i have questions (i feel like I'll have a few :P) | 16:14 | 
| olinguyen | HeikoS: A little off topic. Do you have time to have a quick look at something? | 16:14 | 
| @HeikoS | olinguyen: sure | 16:14 | 
| olinguyen | https://gist.github.com/olinguyen/156e0e372f67584ebaa674ab6a1e15e4 | 16:14 | 
| olinguyen | it's been bugging me | 16:15 | 
| olinguyen | i'm not sure why the AUC is changing when i'm doing the conversion of the binary labels and recomputing the AUC | 16:15 | 
| olinguyen | i didn't attach data because i'm having errors when i'm pickling the objects or putting it in csv (can't seem to reproduce) | 16:15 | 
| @HeikoS | dont get the last point | 16:16 | 
| @HeikoS | can you explain? | 16:16 | 
| @HeikoS | Ill try to reproduce this, give me a sec | 16:16 | 
| olinguyen | I was trying to reproduce this by pickle the BinaryLabels object, but when i load them after saving and I try to run roc.evaluate, i get an error | 16:17 | 
| olinguyen | SystemError: [ERROR] In file /build/shogun-v9ad6W/shogun-6.0.0+1SNAPSHOT201704270057/src/shogun/labels/Labels.cpp line 67: assertion m_current_values.vector && idx < get_num_labels() failed in virtual float64_t shogun::CLabels::get_value(int32_t) file /build/shogun-v9ad6W/shogun-6.0.0+1SNAPSHOT201704270057/src/shogun/labels/Labels.cpp line 67 | 16:17 | 
| olinguyen | it's driving me nuts lol | 16:17 | 
| olinguyen | this all started when i wanted to evaluate XGBoost. i was getting poor results, similar to randomforest on shogun. Then i tested with sklearn's SVM, etc. They all produce poor results out of the box. | 16:18 | 
| olinguyen | I'm getting doubts about my results now | 16:18 | 
| @HeikoS | olinguyen: let's do things one after another :) | 16:19 | 
| @HeikoS | so pickling BinaryLabels is a sep. issue | 16:19 | 
| @HeikoS | could you open a github issue with stand-alone minimal code to reproduce the error? | 16:19 | 
| @HeikoS | then stand-alone code to reproduce the auc error | 16:20 | 
| olinguyen | sure! | 16:20 | 
| @HeikoS | and then let's talk about sgboost | 16:20 | 
| @HeikoS | but before that, lets make random forest work :) | 16:20 | 
| olinguyen | haha | 16:20 | 
| olinguyen | yea, i'm a bit jumpy lol | 16:20 | 
| @HeikoS | olinguyen: send me the issue once you have openend them | 16:20 | 
| @HeikoS | if there is python code I can copy paste that helps immenseley | 16:20 | 
| @HeikoS | you can do that for the pickling | 16:20 | 
| @HeikoS | for the auc, ill make that | 16:20 | 
| @HeikoS | olinguyen: ill be back in 30 min, replied to you gist | 16:30 | 
| olinguyen | thanks | 16:30 | 
| olinguyen | HeikoS: Yep, get_values fixed the issue! | 16:33 | 
| @wiking | micmn, kudos for medium :) | 16:38 | 
| micmn | thx! | 16:41 | 
| olinguyen | HeikoS: I have to step out for a bit. I think i figured out the issue with the pickling of objects. I'll open issues for the two problems when i'm back | 16:52 | 
| @sukey | Issue #3847 "Implement a time-series splitting strategy" opened by karlnapf - https://github.com/shogun-toolbox/shogun/issues/3847 | 17:02 | 
| @sukey | Issue #3847 "Implement a time-series splitting strategy" karlnapf added label: "development tasks" - https://github.com/shogun-toolbox/shogun/issues/3847 | 17:02 | 
| @sukey | Issue #3847 "Implement a time-series splitting strategy" karlnapf added label: "entrance" - https://github.com/shogun-toolbox/shogun/issues/3847 | 17:02 | 
| @HeikoS | olinguyen: ^ | 17:09 | 
| -!- mikeling [uid89706@gateway/web/irccloud.com/x-zmtlnvrhadjzdqgz] has joined #shogun | 17:19 | |
| @wiking | HeikoS, pung | 17:21 | 
| @wiking | mikeling, pong | 17:21 | 
| mikeling | wiking: ping | 17:21 | 
| @HeikoS | wiking: pong | 17:21 | 
| @wiking | pong pong | 17:21 | 
| mikeling | wiking: hi, what's the m_parameters->add_vector() for? | 17:21 | 
| mikeling | and I still how those registered parameter be cloned into another object | 17:22 | 
| @HeikoS | mikeling: that registers parameters | 17:22 | 
| @HeikoS | to be considered in clone, equals, serialize | 17:22 | 
| @HeikoS | mikeling: it is the same as SG_ADD | 17:23 | 
| @wiking | HeikoS, buuuuuuuyaaaaaaa https://hub.docker.com/r/intelpython/intelpython2_full/ | 17:23 | 
| @wiking | :) | 17:23 | 
| @wiking | mikeling, just do it :) | 17:23 | 
| @wiking | i mean just do what i told you to do ther ein the comment | 17:23 | 
| @wiking | that should again fix some of the errors | 17:23 | 
| @wiking | you were seeing | 17:23 | 
| @wiking | although :> | 17:23 | 
| @wiking | mmmm | 17:24 | 
| @wiking | lemme just have a quick peep | 17:24 | 
| @wiking | 1 second | 17:24 | 
| @wiking | HeikoS, wtf we have tons of people in this channel :P | 17:24 | 
| @wiking | :O | 17:24 | 
| @HeikoS | wiking: yeah thats good | 17:33 | 
| @HeikoS | wiking: what about having some conversion methods for std::vector to SGVector? | 17:34 | 
| @HeikoS | mikeling: ^ | 17:34 | 
| mikeling | wiking: yeah, but I just want to understand how it exactly happened, like we have an variable std::vector<int32_t> m_array, how could we clone it into another object just by add_vector() ? | 17:35 | 
| mikeling | it seems like wouldn't call something like std::vector<int32_t>(array_size) to init an vector | 17:35 | 
| mikeling | * a vector | 17:35 | 
| @HeikoS | mikeling: the clone method iterates through all registered parameters | 17:36 | 
| @HeikoS | if it is a vector, it iterates through its elements and copies them one by one | 17:36 | 
| @HeikoS | the code for that is in SGObject::clone | 17:36 | 
| @HeikoS | mikeling: why do you need that info? | 17:36 | 
| mikeling | HeikoS: I'm just thinking about if why we need add_vector() to register DynArray's data and length rather than just register it as other variables | 17:41 | 
| @wiking | mikeling, just tyring to add you this | 17:41 | 
| @wiking | :) | 17:41 | 
| @HeikoS | DynArray is serializable | 17:42 | 
| @HeikoS | so its data should be serialized | 17:42 | 
| @HeikoS | this is why the vector that contains the data needs to be registered for serilaization | 17:42 | 
| mikeling | HeikoS: so, what about std::vector? It's not a part of Shogun so I'm not sure if it's serializable | 17:43 | 
| @HeikoS | mikeling: it is not | 17:43 | 
| @HeikoS | but its elements are continuous in memory | 17:43 | 
| @HeikoS | this is why you can just get the pointer and the length and pass that to the add_vector method | 17:43 | 
| @HeikoS | which will do the rest | 17:43 | 
| mikeling | wiking: HeikoS ok, I see | 17:44 | 
| mikeling | Thank you | 17:44 | 
| @HeikoS | mikeling: so all is good :) | 17:44 | 
| mikeling | HeikoS: How about clone? The clone() is about to clone a same object with same variables? | 17:56 | 
| @HeikoS | mikeling: not sure what you mean | 17:56 | 
| mikeling | like we have a vector{1,2,3,4} | 17:56 | 
| @HeikoS | but there is no problems when you change to std::vector API | 17:56 | 
| @HeikoS | as cloning only relies on the fact that things are continuous in memory | 17:56 | 
| @wiking | HeikoS, it is serializable | 17:59 | 
| @wiking | std::vector has a continuous memory backing | 17:59 | 
| @HeikoS | wiking: yeah thats what I mean | 17:59 | 
| @wiking | ah yeah | 17:59 | 
| @wiking | i misread | 17:59 | 
| @wiking | buuut | 17:59 | 
| @wiking | i think there's one problem | 17:59 | 
| @HeikoS | "add_vector" accepts pointer and some type info | 18:00 | 
| @wiking | just looking into the code | 18:00 | 
| @HeikoS | thats it | 18:00 | 
| @wiking | yep eyp | 18:00 | 
| @wiking | mikeling, | 18:11 | 
| @wiking | i have one question | 18:12 | 
| @wiking | what's the difference | 18:12 | 
| @wiking | between these two properties | 18:12 | 
| @wiking | /** number of elements */ | 18:12 | 
| @wiking | int32_t num_elements; | 18:12 | 
| @wiking | /** the number of currently used elements */ | 18:12 | 
| @wiking | int32_t array_size; | 18:12 | 
| @wiking | ? | 18:12 | 
| mikeling | let me have a check | 18:13 | 
| mikeling | wiking: no, they are duplicated :( | 18:15 | 
| @wiking | ok | 18:15 | 
| @wiking | so let's try to consolidate those first | 18:15 | 
| mikeling | I need to remove the array_size; | 18:15 | 
| @wiking | mikeling, but you see that you are setting them differently in | 18:16 | 
| @wiking | CDynamicArray() : CSGObject() | 18:16 | 
| @wiking | etc.. | 18:16 | 
| @wiking | in case it's DynamicArray<bool> | 18:17 | 
| mikeling | yes, I will address them | 18:17 | 
| @wiking | kk | 18:17 | 
| @wiking | but when? :) | 18:17 | 
| @wiking | i mean are we gonna finish this ? | 18:17 | 
| @wiking | :D | 18:18 | 
| @wiking | mikeling, try to start writing again daily updates | 18:18 | 
| @wiking | even | 18:18 | 
| @wiking | if you are just writing | 18:18 | 
| @wiking | 'i'm stuck with' | 18:18 | 
| mikeling | I will do it right away! | 18:19 | 
| mikeling | :) | 18:19 | 
| @wiking | HeikoS, so one thing | 18:21 | 
| @wiking | if you are here | 18:22 | 
| @sukey | Pull Request #3845 "[PrematureStopping] Add CMake support to search or install RxCpp." merged by vigsterkr - https://github.com/shogun-toolbox/shogun/pull/3845 | 18:25 | 
| @sukey | New Commit "Merge pull request #3845 from geektoni/feature/premature-stopping | 18:25 | 
| @sukey | [PrematureStopping] Add CMake support to search or install RxCpp." to shogun-toolbox/shogun by vigsterkr: https://github.com/shogun-toolbox/shogun/commit/c736101ff079cbb5ec5dd83f47249b4089ae09df | 18:25 | 
| micmn | wiking: I pushed this morning :P | 18:29 | 
| micmn | clang: maybe it should be in another pr, I just kept the old style | 18:30 | 
| @wiking | mmm | 18:30 | 
| @wiking | lemme check | 18:30 | 
| @wiking | ah ok | 18:30 | 
| @wiking | idiot me | 18:31 | 
| @wiking | merging | 18:31 | 
| @wiking | or better yeat | 18:31 | 
| @wiking | see clang fix | 18:31 | 
| @wiking | and then if that passes then merge | 18:31 | 
| @sukey | Pull Request #3846 "Split Eigen3's linalg backend into header and implementation." merged by vigsterkr - https://github.com/shogun-toolbox/shogun/pull/3846 | 18:31 | 
| @sukey | New Commit "Merge pull request #3846 from micmn/feature/linalg-refactor | 18:31 | 
| @sukey | Split Eigen3's linalg backend into header and implementation." to shogun-toolbox/shogun by vigsterkr: https://github.com/shogun-toolbox/shogun/commit/3b35df370192d734e19c90305e4b69e8142de31b | 18:31 | 
| @wiking | micmn, can you then now rebase https://github.com/shogun-toolbox/shogun/pull/3843 | 18:32 | 
| @wiking | ? | 18:32 | 
| micmn | sure | 18:32 | 
| @wiking | awseom | 18:33 | 
| @wiking | so we can move forward with LDA and kpca | 18:33 | 
| @wiking | :) | 18:33 | 
| -!- HeikoS [~heiko@untrust-out.swc.ucl.ac.uk] has quit [Ping timeout: 240 seconds] | 18:39 | |
| @sukey | Pull Request #3848 "[PrematureStopping] Refactor CSignal class to use RxCpp utilities (WIP)" opened by geektoni - https://github.com/shogun-toolbox/shogun/pull/3848 | 18:42 | 
| @wiking | mikeling, thnx 4 the update | 18:53 | 
| @wiking | go to sleep :) | 18:53 | 
| @wiking | better to work on things like this fresh | 18:54 | 
| mikeling | wiking: np, that's what I should do | 18:54 | 
| mikeling | wiking: yeah, I will. ;) | 18:55 | 
| -!- geektoni [~geektoni@151.62.57.216] has quit [Remote host closed the connection] | 19:26 | |
| @sukey | Pull Request #3843 "Add linalg methods needed by FisherLDA and KernelPCA (CPU-only)" synchronized by micmn - https://github.com/shogun-toolbox/shogun/pull/3843 | 19:43 | 
| @sukey | Pull Request #3842 " Port KernelPCA to use linalg and refactor unit test" synchronized by micmn - https://github.com/shogun-toolbox/shogun/pull/3842 | 19:43 | 
| @sukey | Pull 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/3826 | 19:43 | 
| @sukey | Issue #3849 "Pickle on a BinaryLabels object does not save the values parameter " opened by olinguyen - https://github.com/shogun-toolbox/shogun/issues/3849 | 20:12 | 
| @sukey | Issue #3849 "Pickle on a BinaryLabels object does not save the values parameter "- https://github.com/shogun-toolbox/shogun/issues/3849 | 20:13 | 
| @sukey | Issue #3849 "Pickle on a BinaryLabels object does not save the values parameter "- https://github.com/shogun-toolbox/shogun/issues/3849 | 20:19 | 
| -!- iglesiasg [~iglesiasg@217.119.234.214] has quit [Ping timeout: 246 seconds] | 21:40 | |
| -!- iglesiasg [~iglesiasg@217.119.234.214] has joined #shogun | 21:41 | |
| -!- mode/#shogun [+o iglesiasg] by ChanServ | 21:41 | |
| -!- mikeling [uid89706@gateway/web/irccloud.com/x-zmtlnvrhadjzdqgz] has quit [Quit: Connection closed for inactivity] | 22:22 | |
| olinguyen | is there a way to get probability scores/confidence values for random forest or decision trees? | 23:02 | 
| olinguyen | I'm trying to calculate auROC | 23:02 | 
| --- Log closed Fri Jun 16 00:00:15 2017 | ||
Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!