Not all functions have an inverse function. There are many functions that output the same value for different input values.
However I had an idea that if you rewrite the inverse as just a find function. Then why not use several values to pinpoint that single input value. I mean. This would make it more likely to find that single value.
Say we have a function f(x) = sin(x) + sin(2x) and we want to find somekind of inverse to it. I imagine that if you have 3 close points from that function you could map or find what the input values were that produced those three numbers.
simple enough … with machine learning I think you would only need to specify the input matrix with say 5 or more function values, f(x) per row and the corresponding target values, x.
On the left you can see the trained find inverse function which had a little problem with values around zero. It used ten values. Five of those were the derivative.