The htm.core predictor was originally taken from nupic and then it was cleaned up and simplified.
The Predictor (both nupic & htm-core) can only predict categories (which are encoded as integers). So to predict a real value it is first converted into a integer category. The hotgym example does this using the variable
predictor_resolution which controls the size of the categories.
In nupic the input’s “bucket index” was being used as the category, and in htm.core you must calculate that category and give it to the predictor.
In htm-core: The predictor should be able to work with multiple categories, to predict multiple things at once. Everywhere where a single category is expected, the code should also accept a list of categories. Simply convert all of your real valued inputs into distinct categories and pass them into the predictor as a list.
However, given what you’ve described about your inputs, I think you’re correct to use
multiple predictors, one for each input value. You have multiple inputs, one htm, and multiple predictors (one per input)? That sounds like a reasonable setup.
HTM (and I) do not know anything about “joint probabilities”.
hope this helps