Как мне создать tenorflow :: Tensor из Eigen :: Tensor? Я мог бы просто скопировать элементы по одному, но я надеюсь, что есть лучший способ.
Не существует общедоступного API для создания tenorflow :: Tensor из Eigen :: Tensor без копирования данных. Тем не менее, вы можете создать tenorflow :: Tensor и интерпретировать его как Eigen :: TensorMap, используя следующий apis:
tensorflow::Tensor tf_tensor(tensor_constructor_args);
// For the general case:
Eigen::TensorMap<type_params> eigen_tensor = tf_tensor.tensor<Type, NumDims>();
// shortcuts if you know the tensor is a matrix/vector/scalar
Eigen::TensorMap<type_params> eigen_matrix = tf_tensor.matrix<Type>();
Eigen::TensorMap<type_params> eigen_vector = tf_tensor.vector<Type>();
Eigen::TensorMap<type_params> eigen_scalar = tf_tensor.scalar<Type>();
Это позволит избежать копирования. Более того, собственные тензоры и тензорные карты имеют одинаковые apis, поэтому вы можете использовать их взаимозаменяемо.
Других решений пока нет …