I've built a SARIMAX model based on my personal spendings record as a college thesis and have reached a point where I'm pretty content with how it turned out and am getting ready to start writing the documentation.
However, besides technical details, I have to provide an easy to understand view on the system's performance to people unfamiliar with machine learning.
At the moment I've implemented an error function like this: MAE_i = abs(predicted_i - observed_i) / observed_i
and then I calculate the sum of parts and average them out MAE = sum(MAE_i) / len(observations)
. This gives me an error of about 7%.
Is this acceptable or can I devise an easier to understand view on the accuracy of my model?
def computeError(pred, originalData):
slice = originalData.loc['2019-08-25 00:00:00':]
meanError = 0
for pair in zip(slice.values, pred):
meanError += abs(pair[0] - pair[1]) / pair[1]
print(f'Mean Absolute Error is {meanError/len(pred)*100}%')
```