Optimizers are a set of procedures defined in SciPy that either find the minimum value of a function, or the root of an equation.
Optimizing Functions : Essentially, all of the algorithms in Machine Learning are nothing more than a complex equation that needs to be minimized with the help of given data.
Roots of an Equation : NumPy is capable of finding roots for polynomials and linear equations, but it can not find roots for non linear equations, like this x + cos(x)
for that you can use SciPy's optimze.root
function.
This function takes two required arguments there are :
fun :
a function representing an equation.
x0 :
an initial guess for the root.
The function returns an object with information regarding the solution.