< naywhayare>
oldbeardo: taking a look at your code nwo
< naywhayare>
*now
< oldbeardo>
naywhayare: okay, thanks
< naywhayare>
sorry it's taken so long...\
< oldbeardo>
it's okay, I kept myself busy with something else
< naywhayare>
taking a look at the tests, we should add a test or two for SoftmaxRegression; the tests for SoftmaxRegressionFunction look good
< naywhayare>
one easy test is to generate a very simple 1-dimensional dataset with class 0 taking values less than 0, and class 1 taking values greater than 0
< naywhayare>
and the trained SoftmaxRegression classifier should be able to perfectly classify them
< naywhayare>
or wait, this isn't a classifier, is it... let me read a little more closely
< oldbeardo>
okay, I suppose I can take that test from LogisticRegression
< naywhayare>
yeah, since logistic regression is a special case of softmax regression, that should work
< naywhayare>
so taking the logistic regression tests and then adding one more to ensure softmax regression works with more than two classes would be just fine
< oldbeardo>
okay, I will also add some documentation in 'softmax_regression.hpp'
< oldbeardo>
as to what the module does
< naywhayare>
ok. the actual code looks just fine; it's pretty straightforward
< oldbeardo>
yup, it is
< oldbeardo>
so done with the paper, huh?
< naywhayare>
not even close :(
< naywhayare>
the constructor for SoftmaxRegression isn't the same in the implementation; the .hpp file has 'const double lambda' but the _impl.hpp file has 'double lambda'
< naywhayare>
very easy fix :)
< oldbeardo>
oh, didn't notice
< naywhayare>
yeah, it probably compiles just fine and does the same thing anyway
< naywhayare>
ok, now that I look at softmax_regression_function.cpp I see a little bit of a problem
< oldbeardo>
what's that?
< naywhayare>
the GetGroundTruthMatrix() function creates a sparse matrix (sp_mat) on line 71, but immediately casts it to arma::mat, which is the type of the groundTruth matrix
< naywhayare>
if you change groundTruth to be of type arma::sp_mat, that should fix it
< oldbeardo>
no I need it to be a dense matrix
< naywhayare>
ok; why initialize it as a sparse matrix then?
< oldbeardo>
I used arma::sp_mat to construct the matrix
< oldbeardo>
I felt it was easier that way
< naywhayare>
ok, and the matrix looks like it is a sparse matrix too
< naywhayare>
so why store it as a dense matrix, then?
< oldbeardo>
the computation won't be affected by the type?
< naywhayare>
it shouldn't be, if I did a good job of writing the sp_mat class :)
< naywhayare>
I think all the expressions in which you use groundTruth should be just fine with groundTruth as either arma::mat or arma::sp_mat
< naywhayare>
and it will probably be somewhat faster with arma::sp_mat
< oldbeardo>
oh, you contribute to armadillo as well?
< naywhayare>
yeah... for some reason I decided to write their entire sparse matrix framework
< naywhayare>
stupid idea because my research doesn't really involve sparse matrices
< oldbeardo>
okay, I will make the change
< naywhayare>
if it fails, let me know, and I'll have to submit a patch to armadillo... :)
< oldbeardo>
yup, will do, also I will be travelling from 22nd-24th
< oldbeardo>
telling you since Ajinkya isn't here
< naywhayare>
ok, sounds good
< naywhayare>
enjoy your trip :)
< oldbeardo>
thanks, not a trip really, going back home
< naywhayare>
ah, ok. well hopefully it's an enjoyable travel experience regardless :)
< oldbeardo>
thanks
oldbeardo has quit [Quit: Page closed]
Anand has joined #mlpack
< Anand>
Hi Marcus!
< marcus_zoq>
Hello
< Anand>
Your method of integration looks nice! :)
< Anand>
In the small_config.yaml file, you have given 3 files to the method
< Anand>
Eg: iris_train, iris_test and again iris_train
< marcus_zoq>
right, actually there is no iris_train
< Anand>
As far as I understand the third file should contain the actual labels for the test data
< Anand>
correct?
< marcus_zoq>
yes that's correct
< Anand>
it should not be iris_train then
< marcus_zoq>
yeah, for the iris data there is no file that contains the true labels, so we have to provide a file. I used this file just for demonstration.
< Anand>
it should be something like : iris_train (which has both inputs as well as output labels), iris_test (containing only inputs) and then iris_test_lables
< marcus_zoq>
you are right
< marcus_zoq>
I was to lazy to create the 'iris_test_lables.csv' :)