nabla_ml::nabla

Struct Nabla

Source
pub struct Nabla;
Expand description

Nabla is where all the magic happens and where all the gradients are calculated.

Implementations§

Source§

impl Nabla

Calculates the gradients (nabla) for linear regression with multiple features

§Arguments

  • X - The input feature matrix as an NDArray
  • y - The actual target values as an NDArray
  • y_pred - The predicted values as an NDArray
  • N - The number of samples

§Returns

A vector containing the gradients for each parameter, including intercept

Source

pub fn linear_regression_gradients( X: &NDArray, y: &NDArray, y_pred: &NDArray, N: usize, ) -> Vec<f64>

Source§

impl Nabla

Source

pub fn linear_regression( X: &NDArray, y: &NDArray, alpha: f64, epochs: usize, ) -> (Vec<f64>, Vec<f64>)

Performs linear regression using gradient descent with multiple features

§Arguments
  • X - The input feature matrix as an NDArray.
  • y - The output target as an NDArray.
  • alpha - The learning rate.
  • epochs - The number of iterations for gradient descent.
§Returns

A tuple containing the optimized parameters and the history of MSE for each epoch.

Auto Trait Implementations§

§

impl Freeze for Nabla

§

impl RefUnwindSafe for Nabla

§

impl Send for Nabla

§

impl Sync for Nabla

§

impl Unpin for Nabla

§

impl UnwindSafe for Nabla

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V