A newer version of the Gradio SDK is available: 6.20.0
simple_functions
A collection of simple functions.
TypeVar’s
class ComparableT
TypeVar('ComparableT', bound=Comparable)
Classes
Functions
binary_search(function, target, lower_bound, upper_bound, tolerance=0.0001)
Searches for a value in a range by repeatedly dividing the range in half.
To be more precise, performs numerical binary search to determine the
input to function, between the bounds given, that outputs target
to within tolerance (default of 0.0001).
Returns None if no input can be found within the bounds.
Examples
Consider the polynomial $x^2 + 3x + 1$ where we search for a target value of $11$. An exact solution is $x = 2$.
>>> solution = binary_search(lambda x: x**2 + 3*x + 1, 11, 0, 5)
>>> bool(abs(solution - 2) < 1e-4)
True
>>> solution = binary_search(lambda x: x**2 + 3*x + 1, 11, 0, 5, tolerance=0.01)
>>> bool(abs(solution - 2) < 0.01)
True
Searching in the interval $[0, 5]$ for a target value of $71$ does not yield a solution:
>>> binary_search(lambda x: x**2 + 3*x + 1, 71, 0, 5) is None
True
- Parameters:
- function (Callable [ *[*float ] , float ])
- target (float)
- lower_bound (float)
- upper_bound (float)
- tolerance (float)
- Return type: float | None
choose(n, k)
The binomial coefficient n choose k.
$\binom{n}{k}$ describes the number of possible choices of $k$ elements from a set of $n$ elements.
References
- https://en.wikipedia.org/wiki/Combination
- https://docs.scipy.org/doc/scipy/reference/generated/scipy.special.comb.html
- Parameters:
- n (int)
- k (int)
- Return type: int
clip(a, min_a, max_a)
Clips a to the interval [min_a, max_a].
Accepts any comparable objects (i.e. those that support <, >).
Returns a if it is between min_a and max_a.
Otherwise, whichever of min_a and max_a is closest.
Examples
>>> clip(15, 11, 20)
15
>>> clip('a', 'h', 'k')
'h'
- Parameters:
- a (ComparableT)
- min_a (ComparableT)
- max_a (ComparableT)
- Return type: ComparableT
sigmoid(x)
Returns the output of the logistic function.
The logistic function, a common example of a sigmoid function, is defined as $\frac{1}{1 + e^{-x}}$.
References
- Parameters: x (float)
- Return type: float