Поделиться через


TensorPrimitives.Dot Метод

Определение

Перегрузки

Dot(ReadOnlySpan<Single>, ReadOnlySpan<Single>)

Вычисляет точечный продукт двух тензоров, содержащих числа с плавающей запятой с одной точностью.

Dot<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Вычисляет точечный продукт двух тензоров, содержащих числа.

Dot(ReadOnlySpan<Single>, ReadOnlySpan<Single>)

Исходный код:
TensorPrimitives.cs
Исходный код:
TensorPrimitives.Single.cs
Исходный код:
TensorPrimitives.Single.cs

Вычисляет точечный продукт двух тензоров, содержащих числа с плавающей запятой с одной точностью.

public:
 static float Dot(ReadOnlySpan<float> x, ReadOnlySpan<float> y);
public static float Dot (ReadOnlySpan<float> x, ReadOnlySpan<float> y);
static member Dot : ReadOnlySpan<single> * ReadOnlySpan<single> -> single
Public Shared Function Dot (x As ReadOnlySpan(Of Single), y As ReadOnlySpan(Of Single)) As Single

Параметры

x
ReadOnlySpan<Single>

Первый тензор, представленный как диапазон.

y
ReadOnlySpan<Single>

Второй тензор, представленный в виде диапазона.

Возвращаемое значение

Продукт dot.

Исключения

Длина x должна совпадать с длиной y.

Комментарии

Этот метод эффективно вычисляет эквивалент: Span<float> products = ...; TensorPrimitives.Multiply(x, y, products); float result = TensorPrimitives.Sum(products); , но не требуя дополнительного временного хранилища для промежуточных продуктов. Он соответствует методу dot, определенному BLAS1.

Если любой из входных элементов равен NaN, результирующее значение также равно NaN.

Этот метод может вызывать базовую среду выполнения C или использовать инструкции, относящиеся к текущей архитектуре. Точные результаты могут отличаться между различными операционными системами или архитектурами.

Применяется к

Dot<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Исходный код:
TensorPrimitives.Dot.cs
Исходный код:
TensorPrimitives.Dot.cs

Вычисляет точечный продукт двух тензоров, содержащих числа.

public:
generic <typename T>
 where T : System::Numerics::IAdditionOperators<T, T, T>, System::Numerics::IAdditiveIdentity<T, T>, System::Numerics::IMultiplyOperators<T, T, T>, System::Numerics::IMultiplicativeIdentity<T, T> static T Dot(ReadOnlySpan<T> x, ReadOnlySpan<T> y);
public static T Dot<T> (ReadOnlySpan<T> x, ReadOnlySpan<T> y) where T : System.Numerics.IAdditionOperators<T,T,T>, System.Numerics.IAdditiveIdentity<T,T>, System.Numerics.IMultiplyOperators<T,T,T>, System.Numerics.IMultiplicativeIdentity<T,T>;
static member Dot : ReadOnlySpan<'T (requires 'T :> System.Numerics.IAdditionOperators<'T, 'T, 'T> and 'T :> System.Numerics.IAdditiveIdentity<'T, 'T> and 'T :> System.Numerics.IMultiplyOperators<'T, 'T, 'T> and 'T :> System.Numerics.IMultiplicativeIdentity<'T, 'T>)> * ReadOnlySpan<'T (requires 'T :> System.Numerics.IAdditionOperators<'T, 'T, 'T> and 'T :> System.Numerics.IAdditiveIdentity<'T, 'T> and 'T :> System.Numerics.IMultiplyOperators<'T, 'T, 'T> and 'T :> System.Numerics.IMultiplicativeIdentity<'T, 'T>)> -> 'T (requires 'T :> System.Numerics.IAdditionOperators<'T, 'T, 'T> and 'T :> System.Numerics.IAdditiveIdentity<'T, 'T> and 'T :> System.Numerics.IMultiplyOperators<'T, 'T, 'T> and 'T :> System.Numerics.IMultiplicativeIdentity<'T, 'T>)
Public Shared Function Dot(Of T As {IAdditionOperators(Of T, T, T), IAdditiveIdentity(Of T, T), IMultiplyOperators(Of T, T, T), IMultiplicativeIdentity(Of T, T)}) (x As ReadOnlySpan(Of T), y As ReadOnlySpan(Of T)) As T

Параметры типа

T

Параметры

x
ReadOnlySpan<T>

Первый тензор, представленный как диапазон.

y
ReadOnlySpan<T>

Второй тензор, представленный в виде диапазона.

Возвращаемое значение

T

Продукт dot.

Исключения

Длина x должна совпадать с длиной y.

Комментарии

Этот метод эффективно вычисляет эквивалент: Span<T> products = ...; TensorPrimitives.Multiply(x, y, products); T result = TensorPrimitives.Sum(products); , но не требуя дополнительного временного хранилища для промежуточных продуктов. Он соответствует методу dot, определенному BLAS1.

Если любой из входных элементов равен NaN, результирующее значение также равно NaN.

Этот метод может вызывать базовую среду выполнения C или использовать инструкции, относящиеся к текущей архитектуре. Точные результаты могут отличаться между различными операционными системами или архитектурами.

Применяется к