How to calculate predictive weights?

bhawnath131
bhawnath131 New Altair Community Member
edited November 5 in Community Q&A
Hello!
I am using multiple variables (rainfall, temperature, wind speed, slope, distance to settlements, etc) for predicting fire events using different machine-learning algorithms. In the below-given example, I have used Random Forest to do so. Using 'Explain Predictions" this result was generated. In Support Prediction, we have Slope = 6.054 (0.378); Agriculture = 0 (0.074) where 6.054 and 0 are respective values and 0.378 & 0.074 are predictive weights.
Is there any method by which we can calculate the cumulative values of these predictive weights that can be converted to an equation? 
I have to input these weights into another software (ArcGIS) to analyze raster data. Is there any other way to use this model on raster images?

Best Answer

  • MartinLiebig
    MartinLiebig
    Altair Employee
    Answer ✓
    Hi,
    short answer: you cannot.

    Longer Answer: If we talk about explainable ai we often talk about local influence factors. They basically answer the question "if this value would not be what it is, how big would be the impact on the prediction?" and then the higher the value, the more impactful the column is.

    It is important to know, that these are _local_ ones. Those influence factors differ, as you see, for one example compared to the other. This is a feature of the method. You can check the wei port of Random Forest to get global influence factors. But then again only because you have a general pattern it does not mean that this is also present locally.

    If you want to learn more about these methods i can recommend this ebook: https://christophm.github.io/interpretable-ml-book/ . It's the source for what I wrote in the Interpretations extension.

    Let me turn the question around a bit: Why do you need an equation? You have the random forest model, which is a function.

    Best,
    Martin

Answers

  • MartinLiebig
    MartinLiebig
    Altair Employee
    Answer ✓
    Hi,
    short answer: you cannot.

    Longer Answer: If we talk about explainable ai we often talk about local influence factors. They basically answer the question "if this value would not be what it is, how big would be the impact on the prediction?" and then the higher the value, the more impactful the column is.

    It is important to know, that these are _local_ ones. Those influence factors differ, as you see, for one example compared to the other. This is a feature of the method. You can check the wei port of Random Forest to get global influence factors. But then again only because you have a general pattern it does not mean that this is also present locally.

    If you want to learn more about these methods i can recommend this ebook: https://christophm.github.io/interpretable-ml-book/ . It's the source for what I wrote in the Interpretations extension.

    Let me turn the question around a bit: Why do you need an equation? You have the random forest model, which is a function.

    Best,
    Martin

  • bhawnath131
    bhawnath131 New Altair Community Member

    Thank you, Martin.

    I am currently working in the field of Geospatial Technology, focusing on satellite imagery analysis. For GIS-based analysis and prediction, we utilize tools such as ArcGIS and R. While R allows us to import raster data and generate raster outputs, it struggles with larger geographical areas. On the other hand, ArcGIS provides similar functionalities but is less flexible when it comes to optimization.

    Therefore, it's more convenient to work with vector data in the form of points. However, we still require outputs in the raster format. To apply algorithms across all pixels of a satellite image or raster data we need to convert it into some form. 

    For example, in the case of logistic regression, where coefficient values are calculated for different variables to form an equation.

    As you mentioned about functions, is there any way to determine the function for this scenario?

  • MartinLiebig
    MartinLiebig
    Altair Employee
    Hey,
    that won't work with Random Forest. While you can export them (as json), you will not be able to execute them natively in R. The usual way to do it would be to use a Real Time Scoring agent and put the scoring process into this. R can then query the Random Forest super quickly using a Werbservice call.

    Is this a commercial request or academia?

    Best,
    Martin
  • bhawnath131
    bhawnath131 New Altair Community Member
    Academic