pub fn bernoulli<'a>(
p: impl Into<Option<&'a Array>>,
shape: impl IntoOption<&'a [i32]>,
key: impl Into<Option<&'a Array>>,
) -> Result<Array>Expand description
Generate Bernoulli random values with a given p value.
The values are sampled from the bernoulli distribution with parameter
p. The parameter p must have a floating point type and
must be broadcastable to shape.
use mlx_rs::{array, Array, random};
let key = random::key(0).unwrap();
// generate a single random Bool with p = 0.8
let p: Array = 0.8.into();
let value = random::bernoulli(&p, None, &key);
// generate an array of shape [50, 2] of random Bool with p = 0.8
let array = random::bernoulli(&p, &[50, 2], &key);
// generate an array of [3] Bool with the given p values
let array = random::bernoulli(&array!([0.1, 0.5, 0.8]), None, &key);