verne.freenode.net changed the topic of #mlpack to: http://www.mlpack.org/ -- We don't respond instantly... but we will respond. Give it a few minutes. Or hours. -- Channel logs: http://www.mlpack.org/irc/
haritha1313 has joined #mlpack
< haritha1313> zoq: Looks like those two were independent issues. I did solve the submat() error and have pushed the changes. But adding concat layer to FFN still gives the error I mentioned yesterday. Was it the same for you when you tested it? If the error wasn't reproduced it could be some mistake with the network I created, although its working perfectly fine for MultiplyMerge.
ImQ009 has joined #mlpack
haritha1313 has quit [Ping timeout: 260 seconds]
witness_ has quit [Quit: Connection closed for inactivity]
vivekp has joined #mlpack
vivekp has quit [Ping timeout: 256 seconds]
vivekp has joined #mlpack
vivekp has quit [Ping timeout: 264 seconds]
vivekp has joined #mlpack
< zoq> haritha1313: It looks like the output dimensions for the subview layer are strange, for: (endRow - beginRow + 1) * (endCol - beginCol + 1) I get 18446744073709551607 (second layer), also I used https://gist.github.com/zoq/e702cff47a4ababcdcaae8addc95569c as the network (note the new for the Concat layer).
< zoq> haritha1313: Perhaps it's already fixed?
vivekp has quit [Ping timeout: 255 seconds]
haritha1313 has joined #mlpack
< haritha1313> zoq: Well the issue I have already solved was caused by beginCol and endCol being modified in the loop in Forward(). So probably you won't get the wrong dimension with the latest code in #1435. But if its something I am missing do let me know.
< haritha1313> Thanks for your help with the concat issue. :)
< zoq> haritha1313: hm, I'm using the latest version.
< haritha1313> Oh, I'll look into it then.
< zoq> haritha1313: Did you build the code with -DDEBUG=ON?
< haritha1313> No, I didn't.
< haritha1313> I'll try that.
< zoq> haritha1313: That could be the issue, if DEBUG=OFF which is the default, all bounding checks are disabled.
< zoq> Currently I use: 'cmake -DBUILD_CLI_EXECUTABLES=OFF -DDEBUG=ON -DBUILD_PYTHON_BINDINGS=OFF ..'
< haritha1313> Building again with these parameters. I'll try to debug this soon.
< zoq> okay, sounds good
< haritha1313> I also had a doubt regarding the concat merge.
< haritha1313> .The intuition is that it concatenates each vector (sample) of the matrix to corresponding vector of another matrix. So if I give input of two 10X10 matrices I can expect a 20X10 matrix as output. Am I right?
< zoq> yes, that is correct
< haritha1313> I tried to find out the output matrix's dimension when using it in the network and was getting 100X2. So it got a bit confusing.
< zoq> Right, the Concat layer will vectorize the calculated output for each subnetwork, so if the output for the first network is of size 10 * 10, it will be transformed into a vector of 100 * 1.
< zoq> I guess, we would have to write another layer that flattens the input?
< zoq> Or we introduce a new parameter that does this for us.
< zoq> Should this be:
< zoq> (beginRow - endRow + 1) * (beginCol - endCol + 1)
< zoq> instead of
< zoq> (endRow - beginRow + 1) * (endCol - beginCol + 1)
< zoq> so that we don't get a negative value if endRow = 0?
< haritha1313> Regarding concat, I don't think it will be a problem here since the embedding was meant to be flattened anyway. And I was planning to use linear layer with outSize 1 for flattening.
< zoq> if that works, good :)
< haritha1313> If we use (beginRow - endRow + 1), isn't there more chances of beginRow being 0, it being the smaller index?
< haritha1313> Maybe we can just check if endRow >= beginRow and endCol >= beginCol
< zoq> In the example I used is: endRow = 0 (default), beginRow = 10 (user defined) which is currently -11
< zoq> for the first part: (endRow - beginRow + 1)
< zoq> we could use std::abs
< haritha1313> Yes, that should solve the size issue. But would there be any meaning of having a subview from 10 to 0?
< zoq> I think you could constuct a case yes, but in this case the user specified the worng parameeter, there is probably a way we could use to avoid both issue.
< haritha1313> I think it might be better if we set endRow = input.n_rows - 1 if endRow < beginRow and similar for column.
< zoq> yeah, that should work :)
< haritha1313> I'll add that condition then. Also, didn't have any trouble with DEBUG=ON.
< zoq> what is the output of: (endRow - beginRow + 1) * (endCol - beginCol + 1) in your case?
< haritha1313> For the example of beginRow = 10 and endRow = 0?
< zoq> yes, I used: std::cout << "rows: " << (endRow - beginRow + 1) * (endCol - beginCol + 1) << std::endl; right after
< zoq> output.set_size(
< zoq> (endRow - beginRow + 1) * (endCol - beginCol + 1), batchSize);
< haritha1313> That would give a row size of 10 since endRow will be set to 19 for a matrix of size (20,1)
< zoq> in the updated case, right?
< haritha1313> Yes
< haritha1313> I changed line 74, 75 to endRow = ((endRow < input.n_rows) && (endRow >= beginRow)) ? endRow : (input.n_rows - 1); endCol = ((endCol < inSize) && (endCol >= beginCol)) ? endCol : (inSize - 1);
< zoq> okay, I was talking about the current code.
< haritha1313> In current code as you said it will go to negative, it would give -9 possibly.
< zoq> right
< zoq> Does this solve the issue you see on your side?
< haritha1313> I think this should solve it.
< haritha1313> zoq: The new condition does work for the 10, 0 case too :) .
haritha1313 has quit [Quit: Page closed]
ImQ009 has quit [Quit: Leaving]
< jenkins-mlpack> Project docker mlpack nightly build build #359: STILL UNSTABLE in 14 hr: http://masterblaster.mlpack.org/job/docker%20mlpack%20nightly%20build/359/
James has joined #mlpack
James is now known as Guest82786
Guest82786 has left #mlpack []