We are working with a complex application i.e. a physical measurement in a lab, that has approximately 230 different input parameters, many of which are ranges or multiple-value.

The application produces a single output, which is then verified in an external (physical) process. At the end of the process the individual tests are marked as "success" or "fail". That is, despite the many input parameters, the output is assessed in a boolean manner.

When tests fail, the parameters are 'loosened' slightly and re-tested.

We have about 20,000 entries in our database, with both "success" and "fail", and we are considering a machine learning application to help in two areas:

1) Initial selection of optimum parameters
2) Suggestions for how to tune the parameters after a "fail"

Many of the input parameters are strongly related to each other.

I studied computer science in the mid-90s, when the focus was mostly expert systems and neural networks. We also have access to some free CPU hours of Microsoft Azure Machine Learning.

What type of machine learning would fit these use-cases?

  • $\begingroup$ With 230 features (that you describe as likely actually being 1,000 features) the best machine learning method and cross validation method depends quite a bit on whether "many thousands of entries" means 4,000 or 900,000. Please consider editing your post to add a bit more specificity here. Also, is the application the generates the guess and the "success" and "fail" an ML algorithm or some sort of deterministic system? Why not just use ML for the whole thing? Some additional information will help generate the best possible answer... $\endgroup$
    – AN6U5
    Aug 26 '15 at 15:04
  • $\begingroup$ Thanks for your comment. The user enters the success / fail.... it needs outside (human) evaluation. $\endgroup$ Aug 26 '15 at 15:27
  • 1
    $\begingroup$ A physical measurement in a lab $\endgroup$ Aug 26 '15 at 15:33
  • $\begingroup$ Good question: about 20,000, I updated the question. $\endgroup$ Aug 27 '15 at 0:38
  • 2
    $\begingroup$ How about first conducting a sensitivity study on your 230 input parameters? PCA? Expert knowledge? Something? $\endgroup$
    – Pete
    Sep 2 '15 at 5:01

With using R, You could look at trees / randomforests. Since you have correlated variables, you could look into Projection pursuit classification trees (R package pptree). And there soon will be a ppforest package. But this is still under development. You could also combine randomforest with the package forestFloor to see the curvature of the randomforest and work from there.

  • $\begingroup$ Why particularly do you feel that decision trees would be appropriate for the OP's data? $\endgroup$ Aug 26 '15 at 15:40
  • $\begingroup$ These combinations are used in the pharmaceutical industry to see which combinations molecules are working. after the test they want to know which combinations of molecules have an effect on each other and which don't. So they know where not to look and that saves money and time. $\endgroup$
    – phiver
    Aug 26 '15 at 19:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.