Inferring from the code above (line 29) - `self.variable_def['independent_variables']` is a dict.  In this case, this enumerate is really dangerous since the order items are returned is random yet you are relying on the order to assemble the feature variable.  This could cause all sorts of silent problems.  For example the `predict` code would likely run fine on an already trained model but would output the wrong prediction if this order changes.

You need some other way to deterministically specify the variable order.