naywhayare 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/
jbc__ has quit [Quit: jbc__]
udit_s has joined #mlpack
Anand has joined #mlpack
Anand has quit [Ping timeout: 246 seconds]
sumedhghaisas has joined #mlpack
udit_s has quit [Quit: Leaving]
jbc__ has joined #mlpack
jbc__ has quit [Quit: jbc__]
sumedhghaisas has quit [Ping timeout: 264 seconds]
udit_s has joined #mlpack
sumedhghaisas has joined #mlpack
Anand has joined #mlpack
< Anand> Marcus : I added the HTML generation and metrics printing code. Have a look.
udit_s has quit [Ping timeout: 245 seconds]
< jenkins-mlpack> Starting build #2066 for job mlpack - svn checkin test (previous build: SUCCESS)
< marcus_zoq> Anand: The code looks good, but I can't run the code: I get the following error: 'sqlite3.OperationalError: no such column: results.dataset_id' if I try to run 'db.GetMethodMetricResultsForLibary(buildId[0], method[0])'
< marcus_zoq> Anand: Use metrics.dataset_id instead of results.dataset_id in the database.py file.
< Anand> Yeah. Got it!
< marcus_zoq> Anand: Use return self.cur.fetchall()[0][0] instead of self.cur.fetchall().
< marcus_zoq> Anand: So that simplejson works with the return value from the database.
< Anand> Why fetchall()[0][0] exactly?
< Anand> make run LOG=True works fine. Is it not sufficient to test?
< marcus_zoq> Anand: Good question :) self.cur.execute( returns a list of all results that matches the condition. The result is capsulated inside a tuple. We are interested in the first element in the first tuple of the result list.
< marcus_zoq> Anand: To create the reports (HTML) we have to run: make reports
< Anand> Ok, right!
< Anand> There is another error, it seems then. Can you run make reports?
< marcus_zoq> Anand: TypeError: Can't convert 'tuple' object to str implicitly -> Looks like you are trying to concat a sring with a tuple.
< marcus_zoq> Anand: This is the line: 'header += new_keys'
< marcus_zoq> Anand: Should the metric.csv file look something like this: LibName,('Avg Accuracy', 97.33333333333331),('SimpleMSE', 0.026666666666666682),
< marcus_zoq> Anand: I used header += str(new_keys) to fix the error but I'm not sure if this is okay?
< Anand> Try : for new_key, new_val in sorted(value.items() instead of - for new_keys in sorted(value.items()) and then use header += new_key
< Anand> The metrics file should not look like this
< Anand> The tuple (value from the key, value pair) is getting appended to the header.
< Anand> And thats why the brackets are ther
govg has joined #mlpack
govg has quit [Changing host]
govg has joined #mlpack
< marcus_zoq> Anand: Hm, the file does not look correct ... Here is the code and the output: https://gist.github.com/zoq/9232354faf9b1af2e882
< marcus_zoq> Anand: I can commit my database and the last changes if you like?
< Anand> Marcus : The header format is correct now. Just the thing that all metrics are not there
< Anand> Yeah please commit the changes
< marcus_zoq> Anand: Ah okay, I commented out the rest :)
< Anand> :P
< Anand> Then things are good now!
< marcus_zoq> Anand: So I think if you pull the last changes and then run make reports you should see the correct header?
< marcus_zoq> Anand: TypeError: Can't convert 'float' object to str implicitly -> new_val is a float
< Anand> Marcus : Yeah! Use str(new_val)
< Anand> I committed another change. Try now
< marcus_zoq> Anand: AttributeError: 'Database' object has no attribute 'GetMethodMetricResultsForLibrary'
< Anand> Yeah I am getting the same thing but I dont know why
< marcus_zoq> Anand: The method in the database.py file is 'GetMethodMetricResultsForLibary'
< Anand> Ok, yeah!
< Anand> File "benchmark/make_reports.py", line 221, in MethodReports HTML += groupedBarTemplate % methodName TypeError: format requires a mapping
< marcus_zoq> Anand: methodName has to be a dict. The key of the dict is the paramater from the template.
< Anand> I have a mapping in template.py
< Anand> dict with value?
< marcus_zoq> Anand: You should use %(methodName)s instead of %(methodName) in groupedBarTemplate.
< marcus_zoq> Anand: And methodName should be something like: methodName = {'methodName': value}
< marcus_zoq> Anand: Afterwards you can write groupedBarTemplate % methodName
< marcus_zoq> Anand: So methodName needs to be a dict
< marcus_zoq> Anand: Does this make sense?
< Anand> Ok. Let me try now.
< Anand> Can you run it?
< Anand> Marcus " HTML += groupedBarTemplate % methodName ValueError: unsupported format character '<' (0x3c) at index 334
< marcus_zoq> Anand: No somebody removed my changes :) ... this line isn't working for new_keys in sorted(value.items()):
< Anand> Let me commit the changes
< marcus_zoq> Anand: Thanks!
< Anand> Marcus : You can pull noe
< Anand> *now
< marcus_zoq> Anand: ValueError: unsupported format character '<' (0x3c) at index 334 I think we need to escape the line.
< Anand> Escape the line?
< marcus_zoq> Anand: It look like he tries to interpreted HTML code. So maybe we need to escape this line.
< Anand> How?
< marcus_zoq> Anand: Nevermind it's another error: write %(metricsFile)s instead of %(metricsFile) in the template file.
< marcus_zoq> Anand: Use methodName = {'methodName': method, 'metricsFile' : metricsFileName} in combination with HTML += groupedBarTemplate % methodName. Remove # HTML += groupedBarTemplate % metricsFileName.
< marcus_zoq> Anand: I can commit the changes if you like.
< Anand> Ok, sure. Please do it
andrewmw94 has joined #mlpack
< marcus_zoq> Anand: Okay you can pull. The is the next error: TypeError: Can't convert 'tuple' object to str implicitly
< marcus_zoq> Anand: k is a tuple -> ('Avg Accuracy', 97.33333333333331)
Anand has quit [Ping timeout: 246 seconds]
< jenkins-mlpack> Project mlpack - svn checkin test build #2066: SUCCESS in 1 hr 30 min: http://big.cc.gt.atl.ga.us:8080/job/mlpack%20-%20svn%20checkin%20test/2066/
< jenkins-mlpack> saxena.udit: Adaboost now works with Decision Stumps; added tests for the same and extended tests for Perceptron too.
Anand has joined #mlpack
< Anand> Marcus : Where is the method name stored in make_reports.py. Btw, I fixed the str conversion error. Still debugging though!
jbc__ has joined #mlpack
< Anand> Marcus : I have removed most of the errors and committed the changes. The final one probably : [FATAL] Exception: [Errno 2] No such file or directory: 'reports/index_2.html'
< marcus_zoq> Anand: Removing the index files in the reports folder should fix the problem.
< Anand> In the error, the count value in the index_<count>.html keeps increasing
< Anand> Marcus : Errors removed, please run the code now
< Anand> Where should the .html file go , btw?
< marcus_zoq> Anand: In the reports folder should be the index.html file.
< marcus_zoq> Anand: Hm, the file is somekind of empty right?
< Anand> There is a <methodName>.html file in the home folder.
< marcus_zoq> Anand: Oh, okay
< marcus_zoq> Anand: There isn't a graph right?
< Anand> Marcus : The plot is not getting generated because the js is taking the file name directly as metrics.csv and not as "metrics.csv" (with the inverted commas")!
< Anand> See in the generated .html file
< Anand> How can we fix this?
< marcus_zoq> Anand: We are talking about the PERCEPTRON.html file right?
< Anand> Marcus : Yes! Please pull again. I have fixed the error. Plot is getting generated
< Anand> Marcus : Where did you comment out the remaining metrics?
< marcus_zoq> Anand: In the perceptron.py file.
< marcus_zoq> Anand: Okay, cool, so what did we need to fix?
< Anand> There are no comments in mlpack.perceptron.py
< Anand> Marcus : We needed to escape the " character once
< marcus_zoq> Anand: I never pushed the code. You can delete the benchmark.db file and create your own database with specified method in the config file.
< marcus_zoq> Anand: Back in a few minutes...
< Anand> Marcus : It is working fine. I just need to fix the dictionary printing at the bottom of the plot!
< marcus_zoq> Anand: Sounds good and the page looks good.
< Anand> Marcus : Ok, thanks!
jbc__ has quit [Quit: jbc__]
Anand has quit [Ping timeout: 246 seconds]
< sumedhghaisas> naywhayare: how to add normal SVD for collaborative filtering??
< sumedhghaisas> should I add some wrapper around arma::svd()?
< naywhayare> sumedhghaisas: yes, that seems reasonable
< sumedhghaisas> naywhayare: and do you agree that we should add template to cleanData??
< naywhayare> can you describe what you mean?
< naywhayare> (sorry for slow responses... I am cleaning my house)
< sumedhghaisas> I mean... I want to add normalization to datasets... and dataset is processed in cleanData... there we can have template to determine which normalization we should apply...
< naywhayare> ok, I agree with that
< sumedhghaisas> okay I will work out some design and discuss with you when its done...
< sumedhghaisas> naywhayare: where should I add the SVD factorization wrapper??
andrewmw94 has quit [Quit: Leaving.]
sumedhghaisas has quit [Ping timeout: 264 seconds]