【问题标题】:Tensorflow in android: Linear regressionandroid中的Tensorflow:线性回归
【发布时间】:2017-07-04 09:15:07
【问题描述】:

我已经使用 tensorflow 在 jupyter notebook 上完成了一个简单的线性回归模型的训练,我可以像这样保存和恢复保存的变量:

现在我正在尝试在 android 应用程序上使用该模型。

按照教程here,我可以像这样进入导入tensorflow库的阶段:

现在我想为模型提供输入数据并获得输出值。(请参阅下面的应用程序流程)但是,他们正在使用 .pb 文件(不知道这是什么)他们的申请。在 4 个文件中:

我从保存模型中得到,我没有让我目瞪口呆的 .pb 文件。

应用程序的作用: 使用用户输入的高度值通过预训练的张量流模型预测 SoC。 其中,使用线性回归方程:y = Wx + b

y - SoC

W - 重量

x - 高度

b - 偏见

所有变量都是浮点值。

Android 应用流程:

  1. 用户在文本框中输入高度值,然后按下“预测”按钮。

  2. 应用程序使用已保存模型的权重、偏差和高度值来预测 SoC。

  3. 应用程序在文本视图中显示预测的 SoC。

所以我的问题是:如何使用 android studios 2.3.1 在 Android 应用程序中导入和使用我的模型?

这是我的 ipynb 和 csv 数据files

【问题讨论】:

  • 有关冻结模型以创建 pb 图的信息在您在问题中链接的教程中...在教程的第一部分中,它准确地解释了如何将图和检查点冻结到一个模型。

标签: android python tensorflow linear-regression nightly-build


【解决方案1】:

我可能误解了这个问题,但是:

鉴于模型是预训练的,权重和偏差不会改变,您可以简单地使用 Jupyter notebook 中计算的 W 和 b 值,并将它们硬编码为一个简单的表达式

<soc> = -56.0719*<height> + 98.3029

不需要为此导入张量流模型。

更新 为确保问题得到解答,*.pb 文件来自冻结检查点文件和图表 - 请参阅链接教程中的第二个代码面板了解如何执行此操作。

关于什么是冻结请参考here

【讨论】:

  • 这是回答问题但没有回答的答案之一!我经常想知道为什么这么多人试图在他们的应用程序中加入简单的线性回归,而它只是一个求解方程!
  • 感谢您的回复,但我的项目是学校模块的一部分,我必须学习如何在 android 上获取数据并将数据输入到 tensorflow 模型中,因为未来的项目需要这些知识。
  • pypypy 现在为您更新了他们的答案。您的问题的答案一直在教程中!也许您没有阅读所有内容?如果您没有阅读 omid.al/posts/… ,在您发布的教程中链接的另一个教程,这也可能是您学校项目的好读物。祝你好运。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-11-25
  • 1970-01-01
  • 1970-01-01
  • 2018-01-06
  • 2019-04-12
  • 2021-11-18
  • 2019-12-31
相关资源
最近更新 更多