tensorflow打包exe

在本教程中,我们将学习如何将TensorFlow应用程序打包成一个独立的可执行文件,在Windows平台下使用,无需每个用户都安装TensorFlow环境。此过程通常包括两个主要步骤:首先,利用PyInstaller工具将Python代码打包为一个单独的exe;然后,确保exe可以在没有TensorFlow库的系统上运行。

1. 环境准备

确保您的系统中已经安装了Python 3.x 和 TensorFlow。如果尚未安装,请按照以下指南进行操作:

```

pip install tensorflow

```

2. 安装PyInstaller

PyInstaller是一个非常受欢迎的Python应用程序打包工具,它将Python脚本打包成独立的可执行文件。使用以下命令安装PyInstaller:

```

pip install pyinstaller

```

3. 创建一个简单的TensorFlow应用程序

下面是一个简单的TensorFlow应用程序样例,我们假设将其命名为`example.py`。这个小程序将使用TensorFlow创建一个简单的神经网络模型,并进行一次前向传播。

```python

import tensorflow as tf

model = tf.keras.models.Sequential([

tf.keras.layers.Dense(10, activation='relu', input_shape=(8,)),

tf.keras.layers.Dense(1, activation='sigmoid')

])

data = tf.ones((1, 8))

result = model(data)

print("模型预测的结果是:", result)

```

保存此文件后,在同一文件夹中创建一个名为`freeze.py`的文件。这个文件是为了冻结原有的example.py中的GPU支持。在`freeze.py`中添加以下内容:

```python

import sys

from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need fine tuning.

build_exe_options = {

"packages": ['tensorflow', 'numpy'],

"include_files": [],

"excludes": ['numpy.core._dotblas', 'numpy.compat', 'tensorflow.compat',

'tensorflow.python.pywrap_tensorflow', 'scipy.lib.lapack.flapack']

}

# GUI applications require a different base on Windows (the default is for a console application).

base = 'Win32GUI' if sys.platform == 'win32' else None

setup(

name="Simple TensorFlow App",

version="0.1",

description="A simple TensorFlow application packaged with PyInstaller",

options={"build_exe": build_exe_options},

executables=[Executable("example.py", base=base)]

)

```

4. 使用PyInstaller打包exe

打开命令提示符或终端,并转到存放`example.py`的目录:

```

pyinstaller example.py --onefile

```

上述命令将执行以下操作:

- 将`example.py`及其所有依赖项打包为单个exe文件。

- 在dist(分发)文件夹中创建名称为example.exe的可执行文件。

5. 运行打包好的exe文件

在dist文件夹中找到打包好的`example.exe`文件并双击运行。您应该看到输出中包含“模型预测的结果是:”以及一个TensorFlow预测的结果。

恭喜!您已经学会了如何将TensorFlow Python应用程序打包成一个独立的exe文件。现在,您可以轻松将此exe文件与其他用户共享,而无需他们安装TensorFlow运行环境。