Frequently Asked Questions

I don’t have the derivative. Can I still use derivative-based approaches?

Using a technique called automatic differentiation, you may be able to avoid computing the derivative by hand. There exist various projects which implement this technique, e.g. the package JAX (through the function grad):

from jax import grad

def f(x):
    return x ** 5 + 30 * x

df = grad(f)

For more information on automatic differentiation, visit the notebook on automatic differentiation linked below.

How can I use custom implementations for algorithms/estimators/…?

There is a plugin system available, so you can add custom functionality to expand upon the capabilites of the PyZEAL package. Once you have implemented e.g. your own FinderAlgorithm there is a short standard procedure which allows you to incorporate your custom script with the project’s code base without having to change a single line of its code.

You can find a detailed description of this procedure in the notebook linked below.

Additional Resources