在哪里为图像分类器编写python脚本

时间:2017-11-10 21:45:50

标签: python tensorflow terminal classification

我正在尝试学习如何使用转移学习重新训练图像分类器。我按照this tutorial.

中显示的步骤操作

我成功地重新训练了模型,但是在最后一步中他遇到了问题,他编写了python脚本来对新训练的模型进行分类。在视频中,他开始在4:18编写代码但未指定位置。我尝试在docker容器中编写它,但它给出了See `convertMaps` for details on converting a floating point representation to fixed-point for speed. 错误和no module named platform错误。我尝试在我的机器上本地编写它并获得错误,因为我没有在本地安装依赖项。我不知道在教程的最后一步编写python代码的位置。任何帮助表示赞赏。

终端代码和错误:

NameError: name 'sys' is not defined

2 个答案:

答案 0 :(得分:0)

容器中的tensorflow包是broken。我认为最好的方法是再次卸载并fresh install tensorflow,但请确保您使用的是最新版本(1.4)。

第二个错误"NameError: name 'sys' is not defined"只是在第一个错误之后。语句import tensorflow as tf引发错误,这就是导入sys模块的原因。

让tensorflow工作后,您可以在python控制台中编写代码,ipython notebook或创建standalone python scripts

答案 1 :(得分:0)

在这种情况下,正确的方法是只使用任何IDE并将python脚本写入计算机本地的.py文件中,然后将该文件复制到Docker容器中。如果您没有在本地安装tensorflow库,那么像import tensorflow as tf这样的特定于张量流的语句会生成错误,但可以忽略它们,因为文件最终会在容器中运行。

假设您将.py文件命名为myScript.py。要将.py文件从计算机传输到容器,请运行命令:docker cp myScript.py myContainer:/myScript.py

确保将.py文件放在容器中的某个位置,以便轻松找到它。重新训练模型时,请确保通过运行以下命令运行正确的脚本: python tensorflow/examples/image_retraining/myScript.py 然后,这将指向正确的文件,它将被读取,就像您在本地执行所有操作一样。

查看以下链接以获取更多信息:

Copying files from host to Docker container

https://docs.docker.com/engine/reference/commandline/cp/