#ndarray #tensorflow #tensor #api #expose #api-wrapper #view

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

#880 in Machine learning

Download history 7/week @ 2024-02-19 22/week @ 2024-02-26 2/week @ 2024-03-11 64/week @ 2024-04-01

66 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
~431K SLoC