正如标题所述,我正在尝试使用我的Keras(tf后端)预训练模型来预测c#。什么是最好的方法?
我已经尝试过IronPython,但它给了我错误,搜索后我发现它不受支持。简单地调用python脚本是行不通的,因为目标Windows设备不会安装python解释器。
答案 0 :(得分:6)
这个问题有些模糊,但我会尽力回答:
Tensorflow核心是用c ++编写的,并且公开了一个接口,可以被用任何语言编写的客户端使用(尽管是的,Python目前是最发达的)。
你能做什么:
你提到过:
[...]设备没有安装python解释器。
好吧,好的。但是,您可以定义一个引导过程,该过程将级联必要依赖项的安装(包括cpython)。例如,某些应用程序会这样做来设置数据库。在这种情况下,您可以创建一个微服务来启动tensorflow并通过文件,管道或套接字回答预测请求。然后,您的c#应用程序将连接到您的微服务并请求预测。
答案 1 :(得分:0)
尝试Keras.NET。使用C#numpy并调用已安装的Keras和后端。
https://github.com/SciSharp/Keras.NET
我成功地使用它来直接从C#中使用Keras进行训练和预测。不理想,但是可以。
答案 2 :(得分:-5)
它不能那样工作,因为你甚至无法在C#项目中安装tensorflow。放弃C#堆栈并学习python堆栈中的框架,例如。如果您需要在Web应用程序中使用预测结果,请了解Flask或Django