#tensor-flow #ndarray

ndarray-tensorflow

Adapter for Tensorflow tensors to expose the ndarray API

3 releases (breaking)

0.3.0 Nov 28, 2019
0.2.0 May 21, 2019
0.1.0 May 4, 2019

#18 in #tensor-flow

Download history 15/week @ 2023-11-06 10/week @ 2023-11-13 16/week @ 2023-11-20 17/week @ 2023-11-27 9/week @ 2023-12-04 8/week @ 2023-12-11 13/week @ 2023-12-18 14/week @ 2023-12-25 7/week @ 2024-01-01 11/week @ 2024-01-08 6/week @ 2024-01-15 9/week @ 2024-01-22 19/week @ 2024-01-29 10/week @ 2024-02-05 20/week @ 2024-02-12 83/week @ 2024-02-19

132 downloads per month
Used in 2 crates (via sticker)

Apache-2.0

8KB
123 lines

Introduction

crates.io docs.rs Travis CI

This crate provides a wrapper for the Tensor type of the tensorflow crate that can create ArrayView and ArrayViewMut instances. This makes it possible to use tensors through the ndarray API.


lib.rs:

Tensor wrapper that exposes the ndarray API.

This crate provides a small wrapper around the Tensor data structure of the tensorflow crate, to make it possible to use the ndarray API. This wrapper, NdTensor, provides the view and view_mut methods to respectively obtain ArrayView and ArrayViewMut instances.

The following example shows how to wrap a Tensor and obtain an ArrayView:

use ndarray::{arr2, Ix2};
use ndarray_tensorflow::NdTensor;
use tensorflow::Tensor;

let tensor = Tensor::new(&[2, 3])
    .with_values(&[0u32, 1, 2, 3, 4, 5])
    .unwrap();
let array: NdTensor<_, Ix2> =
    NdTensor::from_tensor(tensor)
    .unwrap();
assert_eq!(array.view(),
    arr2(&[[0, 1, 2], [3, 4, 5]]));

Dependencies

~19MB
~433K SLoC