如何在 Tensorflow 的 c++ API 中使用复杂数据类型?

How to use Complex Data Type in c++ API of Tensorflow?

我使用 Tensorflow C++ API 有一段时间了,我有一个共享构建在工作,所以我可以在 C++ 中加载图表 api 并执行如图所示的简单示例 here. 我需要在 C++ 中使用 tensorflow 的复杂数据类型,但我找不到任何相关示例。你能推荐一个非常简单的复杂数据类型的用法吗?

如果有人给你投了反对票,那么我很抱歉新手。 Stack Overflow 对于新用户来说可能有点奇怪,但它是程序员的好地方,你绝对应该尽你所能使用它。

至于你的问题,你可以简单地使用复数library

如果你有共享构建工作,那么你可以试试这个例子(在你为所需的必要文件调整包含路径之后)

#include <bits/stdc++.h>
#include "tensorflow/core/public/tensor_c_api.h"
#include "tf_session_helper.h"
#include "tf_session_helper.cc"
#include "tf_tensor_helper.cc"
using namespace std;

main()
{ 

    long long adims[] ={3};
    std::complex<double> aData[3]={{1, 2},{3, 4}, {231,452}};     
    auto c = tensorflow::TF_NewTensor_wrapper(TF_DataType::TF_COMPLEX128,adims,(sizeof(adims)/sizeof(*adims)),aData,16*(sizeof(aData)/sizeof(*aData)));
    std::complex<double>* tensor_data = static_cast<std::complex<double>*>(TF_TensorData(c));
    auto dims = TF_NumDims(c);
    auto total_elements = 1;
    for (int i = 0; i < dims; ++i) {
        total_elements *= TF_Dim(c, i);
    }
    for (int i = 0; i < total_elements; ++i) {
        cout << std::real(tensor_data[i]) << " " << std::imag(tensor_data[i]) << endl; 
    }

} 

如果您有任何问题,请告诉我。