ChanServ changed the topic of #mlpack to: "mlpack: a fast, flexible machine learning library :: We don't always respond instantly, but we will respond; please be patient :: Logs at http://www.mlpack.org/irc/
vivekp has quit [Ping timeout: 245 seconds]
vivekp has joined #mlpack
xiaohong has joined #mlpack
vivekp has quit [Ping timeout: 272 seconds]
vivekp has joined #mlpack
< xiaohong> Hi, for mlpack, is there anyway to check the static code analysis on the local computer?
< rcurtin> xiaohong: hmm, I think you'd have to set up PVS studio
< rcurtin> are you able to log in to Jenkins? you could take a look at the build and the steps that it takes
< rcurtin> so first a static check is done like this:
< rcurtin> oh, um, hmm, that's not what I meant to paste
< rcurtin> copy paste on linux is so weird...
< rcurtin> maybe I just don't have it set up right or something
< rcurtin> chmod u+x cpp_static.sh
< rcurtin> ./cpp_static.sh --src . --reports reports/staticfoo.xml
< rcurtin> then you can check out PVS studio from https://github.com/zoq/how-to-use-pvs-studio-free.git
< rcurtin> and once it's built, the job runs it like this:
< rcurtin> pvs-util/build/./how-to-use-pvs-studio-free -c 2 src/mlpack >/dev/null
< rcurtin> pvs-studio-analyzer analyze -o project.log -e -j4 || mkdir -p test-reports
< rcurtin> sorry that's not really the most easy to use; it's just what's pasted from the Jenkins build instructions
< rcurtin> but, if you want to run it locally, it could be a useful place to start
< rcurtin> anyway, I need to go to bed now... let me know if I can clarify anything
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
< xiaohong> rcurtin: Sorry for late reply. Yes, I will take a look at it. The original idea of my is that I want to check there are any error or not. The remote build result is also enough for me to fix the error. Finally, thank you for your detailed clarification.
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
Yashwants19 has joined #mlpack
< Yashwants19> Hi rcurtin: When I was writing for `matrix_and_info_in` I got some error `[FATAL] Attempted to access parameter --matrix_and_info_out as type St5tupleIJN6mlpack4data13DatasetMapperINS1_15IncrementPolicyENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEN4arma3MatIdEEEE, but its true type is N4arma3MatIdEE!`
< Yashwants19> The Code is : https://pastebin.com/AtmW0chC
< Yashwants19> Go code: https://pastebin.com/ec13DGSg
Yashwants19 has quit [Remote host closed the connection]
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
k3nz0_ has quit [Remote host closed the connection]
k3nz0_ has joined #mlpack
< ShikharJ> sakshamB: I'm not entirely sure how you have arrived at the Backward() and Gradient() function for MiniBatchDiscrimination, if you can briefly explain it in the PR it'd be easier for me to check.
KimSangYeon-DGU7 has joined #mlpack
KimSangYeon-DGU7 has quit [Ping timeout: 260 seconds]
< jenkins-mlpack2> Project docker mlpack nightly build build #388: STILL UNSTABLE in 3 hr 49 min: http://ci.mlpack.org/job/docker%20mlpack%20nightly%20build/388/
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
vivekp has quit [Ping timeout: 245 seconds]
vivekp has joined #mlpack
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
KimSangYeon-DGU has quit [Remote host closed the connection]
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
xiaohong has quit [Remote host closed the connection]
xiaohong has joined #mlpack
< zoq> favre49: If you like I can test the current NEAT implementation on a couple of gym env's?
xiaohong has quit [Remote host closed the connection]
vivekp has quit [Ping timeout: 244 seconds]
xiaohong has joined #mlpack
< sakshamB> ShikharJ: yes, I will try
vivekp has joined #mlpack
k3nz0_ has quit [Ping timeout: 244 seconds]
< rcurtin> Yashwants19: this generally happens when CLI::GetParam is called with the incorrect type
< rcurtin> if I remember right, Yasmine never finished or worked on the matrix_and_info_in type; I don't think we had decided on what the right way to represent that in Go was
< rcurtin> xiaohong: sounds good---it's not a problem to iterate with the remote build, although it is a bit time consuming for sure :)
favre49 has joined #mlpack
< favre49> zoq That would be great, I haven't tested it on my own system since we last talked about it, I'll do that too
< favre49> Also, I'm not sure about the way forward with the tournament selection.
< favre49> The issue is that tournament selection takes additional params like the number of contenders and the base probability, and that would mean the Select() method would need more parameters, unless I just had them predecided
< favre49> Is there any other solution to this?
xiaohong has quit [Read error: Connection timed out]
< favre49> Ideally other SelectionType policies shouldn't have to include unused params
xiaohong has joined #mlpack
< zoq> favre49: Probably depends on the number of parameter we have to add, one solution that we look into is, to either specialize on a particular policy type, if we only have one policy that needs the extra parameter, I think that is fine or we could use enable_if + SFINAE to check if a type implements a function with the requested types and only pass those types.
venkywonka has joined #mlpack
vivekp has quit [Read error: Connection reset by peer]
vivekp has joined #mlpack
< favre49> zoq: Hmm so do you mean I check if the passed SelectionType is a instance of TournamentSelection?
< zoq> favre49: Right, that would be the easiest solution.
k3nz0 has joined #mlpack
< favre49> How do you check whether a passed template parameter is a member of a certain class? I don't think I'm searching it right on google
xiaohong has quit [Read error: Connection timed out]
< zoq> favre49: enable_if and std::is_same, should be helpful
< zoq> favre49: template specialization is another keyword
xiaohong has joined #mlpack
< favre49> Okay I'll try this, thanks!
favre49 has quit [Remote host closed the connection]
venkywonka has quit [Remote host closed the connection]
Yashwants19 has joined #mlpack
< Yashwants19> rcurtin: Sorry we will discuss first then i will start work on that.
Yashwants19 has left #mlpack []
< rcurtin> Yashwants19: no problem---you might consider taking a look at the Julia bindings I just submitted, by the way
< rcurtin> for Julia, I just chose to have the matrix and info type be Tuple{Vector{Bool}, Array{Float64, 2}}
< rcurtin> (that is, a tuple with the first element as a vector of booleans (which mark whether each dimension is numeric or categorical) and the second as the actual data matrix)
ImQ009 has joined #mlpack
Yashwantd19 has joined #mlpack
< Yashwantd19> Sure rcurtin I will take a look.
< Yashwantd19> I am looking for creating projects independent of $GOPATH using Go Modules
< Yashwantd19> Will this be good.??
Yashwantd19 has quit [Remote host closed the connection]
Yashwants19 has joined #mlpack
< Yashwants19> And I really don't know why I am getting this error
< Yashwants19> I am using the same code that is used in python bindings.
< Yashwants19> I have posted the code.
< Yashwants19> And like Julia bindings we should return both bool and array in Go bindings or just array.
Yashwants19 has quit [Remote host closed the connection]
< rcurtin> Yashwants19: I took a look at the code you pasted, it seems fine to me
< rcurtin> do you have a backtrace to see where the problem is?
< rcurtin> also, I don't know about Go Modules, but so long as it's easy enough for the user to get and install the mlpack bindings it should be fine
< rcurtin> I think, we just need to make sure that something like 'go get mlpack' works successfully
conrad__ has joined #mlpack
< conrad__> greetings from Napa :)
< conrad__> Armadillo 9.600 (Napa Invasion) released: http://arma.sourceforge.net/download.html
< rcurtin> conrad__: sounds good, hope the weather is nice out there :)
< rcurtin> and hope the faultlines don't give out while you're there!
< conrad__> very pleasant so far; a few crazy locals at night, but hey, this is America :)
< rcurtin> :)
< rcurtin> crazy locals are what we're known for, I think :)
< conrad__> weather warm outside, but the conference room is positively antarctic.
< rcurtin> yes, air conditioning, my other favorite thing about the US!
< rcurtin> I was just in England for two weeks and it wasn't as hot as it was in Europe, but since the summers are generally mild, it was very hard to stay cool
< rcurtin> very happy to get back to frigid interiors and gigantic drinks that are at least 60% ice :)
< rcurtin> oops, forgot part of the reasoning: since the summers are generally very mild, buildings typically don't have air conditioning
< conrad__> the poms in the so-called UK also love to bitch'n'moan about the weather. apparently it'a very narrow window of acceptable weather (24.5 to 24.6 C, 20% +- 0.00001 relative humidity)
< conrad__> no wonder all they wanted was to leave their islands and set up shop elsewhere :)
< rcurtin> :)
< conrad__> the new release of armadillo has reworked sparse matrix element accessors + (hopefully) much faster handling of sparse submatrices. the element accessors will now skip going through the mapmat cache if the element is already present in the CSC format. turns out there's a whole bunch of corner cases that had to be handled.
vivekp has quit [Ping timeout: 268 seconds]
< conrad__> for example, 0 * inf = NaN. because that totally makes sense
< rcurtin> I guess technically NaN is the correct thing there, but I've always figured that in the vast majority of cases, if inf or NaN are showing up anywhere in matrices, things have already gone to hell
< rcurtin> does the accessor change cause a big runtime speedup? I would have figured checking MapMat first should be a relatively small cost
< rcurtin> but, I suppose, the cost of checking CSC could be less, since one only has to do a binary search in an individual column, which costs less than the MapMat rb-tree descent over the whole matrix
< conrad__> that's my understanding as well
< conrad__> writing to CSC is faster, if the element is already there
< rcurtin> that's true also
< conrad__> reading is dependent on whether the cache or the CSC representation has the most recent data. so we ended up with a large amount of code just to get the element access efficient. lot of work, but I think it was worth it.
< conrad__> my presentation is coming up
conrad__ has left #mlpack []
< rcurtin> sounds good, good luck :)
abernauer has joined #mlpack
< abernauer> Hey, rcurtin: The pca binding code compiles and seg faults on running. So, I ran the code through gdb it threw a signal error.
< abernauer> Then consulted the signal manual, for the signal type which happens to be an invalid memory reference. The stack trace had one entry to some armadillo code.
< rcurtin> abernauer: it sounds to me like the memory pointer being used by Armadillo from R may not be valid
< rcurtin> so I'm sure somewhere in your code (maybe in RcppArmadillo?) you are passing the R matrix to the Armadillo C++ matrix
< rcurtin> and I wonder if the memory being used there is not valid for some reason
< rcurtin> however, I don't know RcppArmadillo or Rcpp very well; I wonder if perhaps Dirk or James might have a better idea of what is going on?
< abernauer> Ok I will ask them about it. This was the armadillo code in the stack trace, fault.arma::arma_warn<char [28]> (x=...) at /usr/include/armadillo_bits/debug.hpp:316316arma_warn(const T1& x).
< rcurtin> right, but it's unlikely there's a bug in Armadillo---most likely, Armadillo is trying to use invalid memory that was given to it, or something like this
< abernauer> Yeah, I get that. I will send out an email to get some input from Dirk and James on the issue.
< rcurtin> sounds good---I hope they're able to help out
< rcurtin> if not, you could spend some time in gdb printing memory locations, etc., and then trying to print what the supposedly valid memory locations from R should be, etc.
< rcurtin> I've had to do some debugging like this before... it's super tedious, unfortunately
< abernauer> I have a book on debugging with gdb and other tools by Norman Matloff, so I will reference that if necessary and try the approach you mentioned.
abernauer has quit [Remote host closed the connection]
< rcurtin> sounds good
ImQ009 has quit [Quit: Leaving]
travis-ci has joined #mlpack
< travis-ci> robertohueso/mlpack#37 (mc_kde_error_bounds - 9bcf116 : Roberto Hueso Gomez): The build has errored.
travis-ci has left #mlpack []
travis-ci has joined #mlpack
< travis-ci> robertohueso/mlpack#38 (master - 595f9d2 : Marcus Edel): The build was broken.
travis-ci has left #mlpack []
travis-ci has joined #mlpack
< travis-ci> robertohueso/mlpack#39 (mc_kde_error_bounds - b72a08e : Roberto Hueso Gomez): The build was fixed.
travis-ci has left #mlpack []