flashlight_tensor 0.2.7

tensor library focused around matrix operations, *not* abandoned
Documentation
flashlight_tensor-0.2.7 has been yanked.

flashlight_tensor

Tests Crates.io Docs.rs

Tensor library written in pure rust, designed mostly for matrix operations

Earlier I decided to abandon the project, but I guess, I still want to work on that project

project not related to similarly named flashlight. The name was coincidental and chosen independently.

Features

  • n-dimensional tensors
  • Element-wise operations
  • Scalar multiplication and addition
  • Tensor multiplication and addition
  • Matrix transformation
  • Dot product
  • ReLU and sigmoid
  • CPU only, with partial GPU support

Instalation

[dependencies]
flashlight_tensor = "0.2.7"

// Experimental
flashlight_tensor = { git = "https://github.com/Bejmach/flashlight_tensor"}

Documentation

Docs

all tensor operations in tensor category

Quick Start

For gpu usage go to examples on github

use flashlight_tensor::prelude::*;

fn main(){
    //2 rows, 2 collumns, fill with 1.0
    let a: Tensor<f32> = Tensor::fill(1.0, &[2, 2]);
}

Tests

Run tests with:
cargo test

G# means github version # of patch. You can treat that as alpha patch of next version. Versions G are avilable on github early, and those features will be released on cargo with next bigger patch. Not everything in G version is tested and working. You are using it at your own responsibility.

Patch notes

  • V0.2.4:
    • matrix_vec/col, now return a matrix, not vector
    • matrix_col/row_sum/prod, return a sum/product of all collumns/rows in matrix
  • V0.2.5
    • G1
      • mutable operations for iterative functions
    • G2
      • better file structure
  • V0.2.6
    • activation functions for neural network
  • V0.2.6
    • G1
      • wgpu preparation, currently not working
    • G2
      • gpu_buffers that allows for running tensor operations on gpu, for now only addition, and cpu preparation unoptimized
    • G3
      • first gpu operations and tests, and matmul gpu vs cpu comparison in examples
    • G4
      • most operations and tests on gpu, No docs for now
  • V0.3.0 - most operations + basic docs

Plans for 0.4.0?

  • Good question, but currently no