I'm new to machine learning programming and am working on an application which will calculate weights of the attributes to calculate the ETAT (Estimated Turn Around Time) of some tasks in workflow. The set of attributes is not fixed.

For example: ETAT will depend on-

  1. Language
  2. No of properties
  3. Experience level of resources and many more.

For each workflow entity there can by a set of these attributes, i.e. a single workflow may be like:

  • Language - English
  • No. of properties - 1200
  • Experience level of resources - Expert


  • Language - Russian

  • No. of properties - 21000

  • Experience level of resources - Basic

Now for the above set of attributes, how can I design my machine learning algorithm? Any pointers will be highly useful.

  • $\begingroup$ Can you shed more light on, what is "no. of properties" ? I believe this is a regresion problem with numerical and categorical variables. $\endgroup$ – ML_Passion Jan 27 '16 at 17:07
  • $\begingroup$ @ML_Passion "No. of properties" here is the total subtasks, resources have to work on. And yes, earlier we were trying with Regression algorithm when the entities were fixed. Now there can be multiple sets of the entity values which can vary. $\endgroup$ – Ankit Jaiswal Jan 29 '16 at 2:53

I would train a gamma-distributed GLM; one for each language. Now, I assume the set of parameters is fixed within each language. You can incorporate ordinal variables (basic -> intermediate -> expert) using dummy coding (i.e., treat them as categorical variables). If there is no intermediate level one bit will do (0 = basic, 1 = expert). And so on for the other properties.

You can find free software to implement GLMs in various language, including python and R.

| improve this answer | |

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.