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/
benchmark has joined #mlpack
benchmark has quit [Client Quit]
Stellar_Mind has joined #mlpack
Stellar_Mind has quit [Ping timeout: 246 seconds]
Stellar_Mind has joined #mlpack
sumedhghaisas_ has quit [Ping timeout: 260 seconds]
govg has joined #mlpack
Stellar_Mind has quit [Ping timeout: 260 seconds]
Stellar_Mind has joined #mlpack
Stellar_Mind has quit [Ping timeout: 246 seconds]
govg has quit [Ping timeout: 246 seconds]
Stellar_Mind has joined #mlpack
gtank has quit [Ping timeout: 258 seconds]
keonkim has quit [Ping timeout: 258 seconds]
gtank has joined #mlpack
zoq_ has joined #mlpack
Stellar_Mind has quit [Ping timeout: 260 seconds]
zoq has quit [Ping timeout: 258 seconds]
keonkim has joined #mlpack
zoq_ is now known as zoq
keonkim has quit [Ping timeout: 240 seconds]
keonkim has joined #mlpack
govg has joined #mlpack
sumedhghaisas_ has joined #mlpack
sumedhghaisas_ has quit [Ping timeout: 260 seconds]
sumedhghaisas_ has joined #mlpack
sumedhghaisas_ has quit [Ping timeout: 260 seconds]
a-l-e has joined #mlpack
sumedhghaisas_ has joined #mlpack
sumedhghaisas_ has quit [Client Quit]
sumedhghaisas_ has joined #mlpack
sumedhghaisas_ has quit [Client Quit]
sumedhghaisas_ has joined #mlpack
sumedhghaisas_ has quit [Client Quit]
sumedhghaisas__ has joined #mlpack
sumedhghaisas__ has quit [Client Quit]
sumedhghaisas_ has joined #mlpack
sumedhghaisas_ has quit [Ping timeout: 260 seconds]
govg has quit [Ping timeout: 265 seconds]
govg has joined #mlpack
travis-ci has joined #mlpack
< travis-ci>
mlpack/mlpack#1629 (master - 86689aa : Ryan Curtin): The build passed.
< radens>
Hello, does MLPack impement AdaBoost+Random forest? I have a python sci-kit learn script which I need to port to C++ and I'm evaluating libraries.
< rcurtin>
radens: do you mean AdaBoost with random forests as the weak learners?
< radens>
rcurtin: I believe so, but my knowledge of machine learning is weak.
< radens>
Yes, that sounds right.
< rcurtin>
mlpack does implement AdaBoost but not random forests (there is some experimental code for streaming random forests, but I doubt that will be useful)
< radens>
In your opinion can I change the weak learners for Adaboost, or should I keep looking at other libraries?
< rcurtin>
ok, so, for what it's worth, the whole idea of AdaBoost is that it does boosting with a bunch of weak learners, so it doesn't really make sense to use a strong learner instead
< rcurtin>
(hang on, phone)
< radens>
Yeah, I get that, but that's what the guy in research used, and I'd like to follow his lead. Take your time, I'll be around.
< rcurtin>
ok, sorry for the delay, I'm back now
< rcurtin>
typically _either_ adaboost or random forests are used, so it is strange to me that you would use both together
< radens>
:)
< radens>
I'm just the engineer with a monkey wrench.
< rcurtin>
:)
< radens>
Do you think I could use them together with this library, or is dlib a better option, or something else?
< rcurtin>
I don't think that dlib has adaboost, but it may have random forests
< rcurtin>
basically, the mlpack adaboost implementation allows you to specify, as a template class, the weak learner
< rcurtin>
if you definitely need random forests to be used as your weak learner, then you would need to implement random forests in mlpack (semi-difficult and could be time consuming, I dunno what your timeframe is)
< rcurtin>
and then you could plug them in like 'AdaBoost<RandomForest>' and the AdaBoost algorithm should work fine
< radens>
So MLPack doesn't implement random forests? Or do they just not fulfill the weak learner interface?
< rcurtin>
unfortunately there aren't random forests in mlpack at the moment
< rcurtin>
what we do have (which was actually written specifically to be an adaboost weak learner) are 'decision stumps'
< rcurtin>
which are... part of the way to random forests but not very much :)
< radens>
heh
< rcurtin>
you could take the existing decision stump code and adapt it into a decision tree (I think someone has worked on this before but I don't think the code was ever finished), then writing random forests on top of that is not so hard
< radens>
Are there other libraries I should look at first?
< rcurtin>
looking at dlib, it doesn't seem to have either adaboost or random forests
< rcurtin>
there's shogun, but I don't think it has either of those algorithms either (not 100% sure)
< rcurtin>
there's also Ross Quinlan's C5.0 package, which is open source and implements a C5.0 decision tree and random forests
< rcurtin>
if you were clever you could use the C5.0 decision trees from there, wrap an mlpack weak learner interface around it, and then use them together
< rcurtin>
to be honest I think that might be your best bet
< rcurtin>
probably C5.0 is a different type of decision tree than what your researcher used, but there are a lot of similarities so it should give comparable results
< rcurtin>
I suspect that even if you did use adaboost with a weak learner (like decision stumps or perceptrons, which are already in mlpack ready to go), you'd get comparable performance to adaboost which uses random forests as weak learners
< rcurtin>
but I only mention that again because it could be a nice way to save a lot of potential work :)
< radens>
rcurtin: thank you, I appreciate your help. I'll go run through a couple tutorials for both libraries and see about trying that.
< radens>
I may just start with the stumps.
< radens>
Oh, is C5.0 LGPL?
< rcurtin>
sure, feel free to come ask for help if you have any problems
< rcurtin>
well, that's the other issue, the license is weird for C5.0
< rcurtin>
C5.0 is GPL only, so if you're in a company that's almost certainly a non-starter
< radens>
Dang.
< radens>
I mean, I'm a dyed in the wool open source head, but that will go over like a lead balloon here.
< rcurtin>
I know exactly what you mean
< rcurtin>
I'm at Symantec and we've done some experiments with C5.0 here before but whenever the word "GPL" comes out everyone runs
< radens>
I'll focus on the weak learner for now and see how performance compares. Thanks!
< rcurtin>
it took no small amount of paperwork just to get them to be ok with me contributing to mlpack too :)
< rcurtin>
sounds good---like I said, feel free to ping with questions if you have any
< radens>
See that's the nice thing about startups, you don't have to worry about that sort of paperwork.
< radens>
Thanks!
< rcurtin>
:)
mentekid has joined #mlpack
< radens>
rcurtin: Hey, I just installed mlpack and armadillo from homebrew (because the work box runs OS X) and tried to compile it like this and got a whole bunch of linker errors: https://pastebin.osuosl.org/43781/
< rcurtin>
sure; I have to go get dinner now, but I'll be back later, and I (and others) check the logs here so if you leave a question it'll be answered eventually