Proxem.NumNet by Jocelyn Coulmance, Thomas Perrais, Guillaume Wenzek, Amine Benhalloum, Jean-Marc Marty

<PackageReference Include="Proxem.NumNet" Version="1.6.0" />

 NN

public static class NN
Collection of methods to create and manipulate Arrays.
public static int MIN_SIZE_FOR_PARELLELISM

public static Random Random

public static Array<double> Abs(Array<double> a, Array<double> result = null)

public static Array<float> Abs(Array<float> a, Array<float> result = null)

public static Array<R> Apply<T1, R>(this Array<T1> a, Func<T1, R> fn, Array<R> result = null)

public static Array<R> Apply<T1, T2, R>(Array<T1> a, Array<T2> b, Func<T1, T2, R> fn, Array<R> result = null)

public static Array<R> Apply<T1, T2, T3, R>(Array<T1> a, Array<T2> b, Array<T3> c, Func<T1, T2, T3, R> fn, Array<R> result = null)

public static Array<R> Apply<T1, T2, T3, T4, R>(this Array<T1> a, Array<T2> b, Array<T3> c, Array<T4> d, Func<T1, T2, T3, T4, R> fn, Array<R> result = null)

public static int Argmax(Array<double> a)

public static Array<int> Argmax(Array<double> a, int axis, Array<int> result = null)

public static int Argmax(Array<int> a)

public static Array<int> Argmax(Array<int> a, int axis, Array<int> result = null)

public static int Argmax(Array<float> a)

public static Array<int> Argmax(Array<float> a, int axis, Array<int> result = null)

public static int Argmin(Array<double> a)

public static int Argmin(Array<float> a)

public static Array<T> Array<T>(T[] values)

public static Array<T> Array<T>(T[,] values)

public static Array<T> Array<T>(T[,,] values)

public static Array<T> Array<T>(T[,,,] values)

public static Array<T> Array<T>(T[][] values)

public static Array<T> Array<T>(Array<T> a)

public static Array<T> Concat<T>(int axis, IEnumerable<Array<T>> inputs)

public static Array<T> Concat<T>(int axis, Array<T>[] inputs)

public static Array<T> Concat<T>(int axis, Array<T>[] inputs, Array<T> result)

public static Array<T> Const<T>(T a, int[] shape)

public static Array<T> Copy<T>(Array<T> a, Array<T> result = null)

public static Array<double> Copy(Array<double> a, Array<double> result = null)

public static Array<float> Copy(Array<float> a, Array<float> result = null)

public static Array<double> Cov(Array<double> m, int ddof = 1, Array<double> result = null)

public static Array<float> Cov(Array<float> m, int ddof = 1, Array<float> result = null)

public static Array<T> Diag<T>(Array<T> v)

public static Array<T> Diag<T>(T[] diag)

public static double DirichletPdf(double alpha, Array<double> z)

public static float DirichletPdf(float alpha, Array<float> z)

public static Array<double> Dot(Array<double> a, Array<double> b, Array<double> result = null, bool transA = false, bool transB = false, float alpha = 1, float beta = 0)

Matrix multiplication. Returns: alpha * dot(a, b) + beta * result Ie with default value: dot(a, b)

public static Array<float> Dot(Array<float> a, Array<float> b, Array<float> result = null, bool transA = false, bool transB = false, float alpha = 1, float beta = 0)

Matrix multiplication. Returns: alpha * dot(a, b) + beta * result Ie with default value: dot(a, b)

public static Array<double> DownSample_MaxPooling2d(Array<double> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static Array<float> DownSample_MaxPooling2d(Array<float> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static Array<int> DownSample_MaxPooling2d_IndexArray(Array<double> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static Array<int> DownSample_MaxPooling2d_IndexArray(Array<float> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static Array<float> EinsteinSum(Array<float> x, Array<float> y, string einstein, Array<float> result = null)

public static Array<float> EinsteinSum(Array<float> x, Array<float> y, Einstein[] einstein, Array<float> result = null)

public static Array<T> Empty<T>()

public static double EuclidianDistance(Array<double> a, Array<double> b)

Implementations of Euclidian distance that doesn't create intermediary array (unlike NN.Norm(a - b)). Faster for small arrays, longer for really big arrays

public static float EuclidianDistance(Array<float> a, Array<float> b)

Implementations of Euclidian distance that doesn't create intermediary array (unlike NN.Norm(a - b)). Faster for small arrays, longer for really big arrays

public static Array<float> Exchange(int n)

public static Array<T> Exchange<T>(int n)

public static Array<double> Exp(Array<double> a, Array<double> result = null)

public static Array<float> Exp(Array<float> a, Array<float> result = null)

public static Array<float> Eye(int n)

public static Array<T> Eye<T>(int n)

public static Array<T> Fill<T>(Func<T> f, int[] shape)

public static Array<T> Fill<T>(Func<T> f, Array<T> result)

public static IEnumerable<int> GetOffsets<T>(this Array<T> t, int[] shape)

public static double LnBeta(double alpha, int k)

public static double LnDirichlet(double alpha, int k, double ln_z_sum)

The Ln of Dirichlet pdf for symetric alpha.

public static float LnDirichlet(float alpha, int k, float ln_z_sum)

The Ln of Dirichlet pdf for symetric alpha.

public static double LnDirichletPdf(double alpha, Array<double> z)

The Ln of Dirichlet pdf for symetric alpha.

public static float LnDirichletPdf(float alpha, Array<float> z)

The Ln of Dirichlet pdf for symetric alpha.

public static double LnGamma(double z)

Computes the logarithm of the Gamma function.

public static Array<T> LoadText<T>(string path)

public static Array<double> Log(Array<double> a, Array<double> result = null)

public static Array<float> Log(Array<float> a, Array<float> result = null)

public static Array<double> LogSumExp(Array<double> a, int axis = -1, bool keepDims = false, Array<double> result = null)

Numerically stable shortcut of Log(Sum(Exp(a), axis, keepsDim).

public static Array<float> LogSumExp(Array<float> a, int axis = -1, bool keepDims = false, Array<float> result = null)

Numerically stable shortcut of Log(Sum(Exp(a), axis, keepsDim).

public static double Max(Array<double> a)

public static Array<double> Max(Array<double> a, int axis, bool keepDims = false, Array<double> result = null)

public static int Max(Array<int> a)

public static Array<int> Max(Array<int> a, int axis, bool keepDims = false)

public static float Max(Array<float> a)

public static Array<float> Max(Array<float> a, int axis, bool keepDims = false, Array<float> result = null)

public static Array<double> Maximum(Array<double> a, double m)

public static Array<float> Maximum(Array<float> a, float m)

public static double Mean(Array<double> a)

public static Array<double> Mean(Array<double> a, int axis, bool keepdims = false, Array<double> result = null)

public static int Mean(Array<int> a)

public static float Mean(Array<float> a)

public static Array<float> Mean(Array<float> a, int axis, bool keepdims = false, Array<float> result = null)

public static double Min(Array<double> a)

public static Array<double> Min(Array<double> a, int axis)

public static int Min(Array<int> a)

public static Array<int> Min(Array<int> a, int axis)

public static float Min(Array<float> a)

public static Array<float> Min(Array<float> a, int axis)

public static Array<T> MinifyDim<T>(Array<T> a)

public static Array<double> Minimum(Array<double> a, double m)

public static Array<float> Minimum(Array<float> a, float m)

public static Array<double> new_Unpooling(Array<double> delta, Array<int> switches, int pool_h, int pool_w, bool ignoreBorder = true)

public static Array<float> new_Unpooling(Array<float> delta, Array<int> switches, int pool_h, int pool_w, bool ignoreBorder = true)

public static Tuple<Array<double>, Array<int>> NewDownSample_MaxPooling2d(Array<double> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static Tuple<Array<float>, Array<int>> NewDownSample_MaxPooling2d(Array<float> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static double Norm(Array<double> a)

public static float Norm(Array<float> a)

public static double Norm2(Array<double> a)

public static float Norm2(Array<float> a)

public static Array<T> OneHot<T>(int hot, int size)

public static Array<T> OneHot<T>(int[] hot, int[] shape)

public static Array<float> OneHot(int hot, int size)

public static Array<float> OneHot(int[] hot, int[] shape)

public static Array<float> Ones(int[] shape)

public static Array<T> Ones<T>(int[] shape)

public static Array<double> Pow(Array<double> a, double b, Array<double> result = null)

public static Array<float> Pow(Array<float> a, float b, Array<float> result = null)

public static Array<int> Range(int start, int stop, int step = 1)

public static Array<T> Range<T>(int start, int stop, int step = 1, Array<T> result = null)

public static Array<int> Range(int upper)

public static Array<T> Range<T>(int upper)

public static Array<double> Rectify(Array<double> a, Array<double> result = null)

public static Array<float> Rectify(Array<float> a, Array<float> result = null)

public static Array<T> Repeat<T>(Array<T> a, int n, int axis = 0)

public static Array<T> Reshape<T>(Array<T> a, int[] shape)

public static double RowNorm(this Array<double> a, int axis = 0)

public static float RowNorm(this Array<float> a, int axis = 0)

public static Array<T> Scalar<T>(T a)

public static Array<T> ShapePadLeft<T>(Array<T> a, int pad = 1)

public static Array<double> Sigmoid(Array<double> a, Array<double> result = null)

public static Array<float> Sigmoid(Array<float> a, Array<float> result = null)

public static Array<double> Sign(Array<double> a, Array<double> result = null)

public static Array<float> Sign(Array<float> a, Array<float> result = null)

public static Array<double> Softmax(Array<double> a, int axis = -1, Array<double> result = null, Array<double> buffer = null)

http://aelag.com/translation-of-theano-softmax-function

public static Array<float> Softmax(Array<float> a, int axis = -1, Array<float> result = null, Array<float> buffer = null)

http://aelag.com/translation-of-theano-softmax-function

public static Array<double> Softmax_(Array<double> a, Array<double> result = null)

public static Array<float> Softmax_(Array<float> a, Array<float> result = null)

public static Array<double> Sq(Array<double> a, Array<double> result = null)

public static Array<float> Sq(Array<float> a, Array<float> result = null)

public static Array<double> Sqrt(Array<double> a, Array<double> result = null)

public static Array<float> Sqrt(Array<float> a, Array<float> result = null)

public static double Sum(Array<double> a)

public static Array<double> Sum(Array<double> a, int axis, bool keepDims = false, Array<double> result = null)

public static int Sum(Array<int> a)

public static float Sum(Array<float> a)

public static Array<float> Sum(Array<float> a, int axis, bool keepDims = false, Array<float> result = null)

public static Array<T> Switch<T>(Array<float> mask, Array<T> ifTrue, Array<T> ifFalse, Array<T> result = null)

public static Array<T> Switch<T>(Array<int> mask, Array<T> ifTrue, Array<T> ifFalse, Array<T> result = null)

public static Array<double> Tanh(Array<double> a, Array<double> result = null)

public static Array<float> Tanh(Array<float> a, Array<float> result = null)

public static Array<double> TensorDot(this Array<double> a, Array<double> b, int axes)

Dot the last axes of a with the first axes of b.

public static Array<double> TensorDot(Array<double> a, IList<int> axesA, Array<double> b, IList<int> axesB, Array<double> result = null)

TensorDot, see http://deeplearning.net/software/theano/library/tensor/basic.html Given two tensors a and b,tensordot computes a generalized dot product over the provided axes. Theano’s implementation reduces all expressions to matrix or vector dot products and is based on code from Tijmen Tieleman’s gnumpy.

public static Array<float> TensorDot(this Array<float> a, Array<float> b, int axes)

Dot the last axes of a with the first axes of b.

public static Array<float> TensorDot(Array<float> a, IList<int> axesA, Array<float> b, IList<int> axesB, Array<float> result = null)

TensorDot, see http://deeplearning.net/software/theano/library/tensor/basic.html Given two tensors a and b,tensordot computes a generalized dot product over the provided axes. Theano’s implementation reduces all expressions to matrix or vector dot products and is based on code from Tijmen Tieleman’s gnumpy.

public static Array<T> Tile<T>(Array<T> a, int[] reps)

public static Array<T> Transpose<T>(Array<T> a, int[] axes)

public static Array<T> UnArgmax<T>(this Array<T> thiz, Array<int> selected, int axis, int axisSize, bool keepDims = false, Array<T> result = null)

Fills the result array using the value from a, and the indexes from selected.

public static Array<double> Unpooling(Array<double> delta, Array<double> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static Array<float> Unpooling(Array<float> delta, Array<float> arr, int pool_h, int pool_w, bool ignoreBorder = true)

public static double Variance(Array<double> a, Array<double> mean = null)

public static Array<double> Variance(Array<double> a, int axis, Array<double> result = null)

public static float Variance(Array<float> a, Array<float> mean = null)

public static Array<float> Variance(Array<float> a, int axis, Array<float> result = null)

public static Array<float> Zeros(int[] shape)

public static Array<T> Zeros<T>(int[] shape)