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, 2016 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$ Jan 29, 2016 at 2:53

1 Answer 1


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.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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