<zoq[m]1>
<turska79turska79> "> <@turska79-5fa54a47d73408ce4ff..." <- That's why I ask what the target value should be because if you like to solve the pendulum task, there is no target vector, that is why we use the Empty loss function.
<zoq[m]1>
zoq[m]1: So until I know what you are trying to solve I can't provide much input besides you don't need to explicitly set the target type, you can use `learningQ1Network.Backward(input, arma::mat("-1"), gradQ);`
<zoq[m]1>
zoq[m]1: Also this is not completely correct because the target vector size has to match with the input vector size, so if the input vector is of size 2 the target should be `arma::mat("1 2")`
<turska79turska79>
i was trying to use ready made code from mlpack and seems that i need to implement own version of SAC
<turska79turska79>
input vector is about 30
<zoq[m]1>
<jonpsy[m]> "heyyy what's good?" <- Hey, no major news here, we will soon send out an email asking for interest in GSoC mentoring.
<jonpsy[m]>
Well, atleast someone replied :)
<jonpsy[m]>
that sounds good, i wanted to ask about the topic for the next meet
<zoq[m]1>
Sounds good maybe we can have a call next week before the meeting to discuss some ideas?
<jonpsy[m]>
nothing too extensive, so I invited over couple of my friends for the next meet
<zoq[m]1>
<turska79turska79> "input vector is about 30" <- Is there a reason to change the loss function to MSE?
<jonpsy[m]>
so I'm trying to get them hooked for GSoC, but my main goal is set them up for open-source
<zoq[m]1>
Nice, we can share some details and talk about our experience from both sides mentor and "student".
<jonpsy[m]>
Sounds good, yes!
<jonpsy[m]>
I wanted to stress about why open source mattetrs
<jonpsy[m]>
because here, people care more for "cracking" GSoC rather than "experiencing" it
<zoq[m]1>
Ohh yeah, I guess we can share some stories why open-source is important.
<zoq[m]1>
So everyone keep your calendar free for the next Friday :)
<jonpsy[m]>
Perfect, I'll try to make them attend this meeting :)
<rcurtin[m]>
it's funny, the incentives of students and mentors actually don't quite align for GSoC---since GSoC is so prestigious and such a nice thing to have on a CV, students want to get accepted to use it as a 'springboard' to internships, grad school, and jobs; but mentors are often looking for long-term contributors and students who enjoy contributing to open source for its own sake
<rcurtin[m]>
there are often lots of talks at the mentor summit about 'how to keep students engaged' and 'how to make students long-term contributors' and this type of thing
<rcurtin[m]>
anyway, no deep thoughts there, just an observation 😄
<jonpsy[m]>
Exactly the point I'm trying to confront. Want them to "experience" GSoC not "crack" it.
<zoq[m]1>
Yeah, but I think you can both as well, participate for your CV and because you are interested in open-source.
<jonpsy[m]>
To contribute, GSoC or otherwise.
<zoq[m]1>
* you can do both as
<rcurtin[m]>
agreed with zoq ; I think it's definitely possible to do both (and not every student needs to become a long-term contributor! personally I think the more important thing is that students get some exposure to large-scale software engineering and the concerns that go into code maintainability, code design, etc.)
<jonpsy[m]>
The irony is, open-source library are more well maintained compared to company codes.
<rcurtin[m]>
that has been my experience, yeah 😄
<rcurtin[m]>
(on the other hand, open-source software projects generally have the luxury of taking however long they need to do things right---for instance, our ANN refactoring has been going on for a long time now!---but inside of a company, being slow can mean the death of the company if they can't get the software to market before they run out of funding)
<jonpsy[m]>
Although true, I think having "well maintained, clean code" is at the top of their list in the first place.
<jonpsy[m]>
* code" is not at the
<zoq[m]1>
Also, not sure you can say that about each open-source or closed-source code.
<zoq[m]1>
Windows is well maintained.
<jonpsy[m]>
zoq[m]1: how do you know? :)))
<zoq[m]1>
Well I guess depends on how we define maintained.
<zoq[m]1>
But they release security patches and improve it over time.
<rcurtin[m]>
Microsoft is also not desperately trying to find product-market fit before they run out of VC money, admittedly 😄
<kuries[m]>
So, if we want to get the elements in order we might have to empty the whole priority_queue and insert it again which can be computationally heavy 😅.
<kuries[m]>
Can anyone give some suggestions or advice on this?
<rcurtin[m]>
Binesh Munukurthi: no worries! couldn't you just use `top()` and `pop()` to get the elements in order? maybe I overlooked something
<kuries[m]>
But then we'll have to send the priority queue (treeQueue) as a copy into the function instead of a reference since it affects the original one, right?
<rcurtin[m]>
oh, I see, interesting, let me think ...
<kuries[m]>
also in the previous case, we used to access all the elements in O(n) time but by popping all the elements it will lead to O(nlogn) time
<kuries[m]>
s/time/./
<rcurtin[m]>
yeah, true (although I wouldn't expect that to be a noticeable performance hit)
<rcurtin[m]>
I suppose this is the reason we went with boost's implementation in the first place 😄
<rcurtin[m]>
it seems like the best solution here may unfortunately be a little tedious if the STL isn't providing the kind of data structure that we need
<rcurtin[m]>
you *could* use `std::map` here, and I think it would be fine---you'd need to just make sure that the elements sort by priority
<rcurtin[m]>
that may incur some extra O(log N) overhead for some operations, but I don't think it's so huge an issue (I'm also not sure anyone has ever complained about the runtime of the cosine tree)
<kuries[m]>
Can we use `std::set` here instead since we are only dealing with single elements?
<rcurtin[m]>
yeah, I suppose so---all you need is a sorted iterable structure
<kuries[m]>
I was mostly fixated on how to use the priority queue in STL and didn't think much about the other data structures.