繁体   English   中英

Tensorflow C API:如何在张量中修改值

[英]Tensorflow C API: How to modify the value in tensor

如何在不创建新张量的情况下更改张量中的值?

例如,我有一个tensor

const size_t input_dims_len = 3;
int64_t input_dims[input_dims_len] = {1, 5, 12};
float input[5 * 12] = {...};
TF_Tensor* input_tensor = TF_NewTensor(TF_FLOAT,
                                       input_dims,
                                       input_dims_len,
                                       input,
                                       5 * 12 * sizeof(float),
                                       deallocate_tensor,
                                       nullptr);

当我更改input的值时,如何使它也可以更改input_tensor中的值?

// Allocate tensor
const int input_dims_len = 3;
int64_t input_dims[input_dims_len] = {1, 5, 12};
const int data_size = 5 * 12 * sizeof(float));
TF_Tensor* tensor = TF_AllocateTensor(TF_FLOAT,
                                      input_dims, input_dims_len,
                                      data_size);
// Change values ​​in a tensor
float input[5 * 12] = {...};
std::memcpy(TF_TensorData(tensor), input, std::min(data_size, TF_TensorByteSize(tensor)));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM