初遇TensorFlow,高并发系统基础篇
2022/1/18 23:35:11
本文主要是介绍初遇TensorFlow,高并发系统基础篇,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
bazel version
- 检查版本更新
brew upgrade bazel
各平台安装 Bazel 按照可参考:Installing Bazel
-
设置 WORKSPACE 中 NDK 和 SDK 的路径配置
-
修改clone 下来的TensorFlow中的WROKSPACE文件:
Uncomment and update the paths in these entries to build the Android demo.
#android_sdk_repository(
name = “androidsdk”,
api_level = 23,
build_tools_version = “25.0.1”,
# Replace with path to Android SDK on your system
path = “<PATH_TO_SDK>”,
#)
#android_ndk_repository(
name=“androidndk”,
path="<PATH_TO_NDK>",
api_level=14)
找到 WORKSPACE 文件中 NDK 和 SDK 的配置部分,反注释掉原有代码后,按照版本要求填写自己本地环境配置。
注意:NDK 版本要设置为 14b ,如果选择 NDK 16 版本编译会出现未知问题!
Uncomment and update the paths in these entries to build the Android demo.
android_sdk_repository(
name = “androidsdk”,
api_level = 26,
Ensure that you have the build_tools_version below installed in the
SDK manager as it updates periodically.
build_tools_version = “26.0.2”,
Replace with path to Android SDK on your system
path = “/Users/baishixian/Library/Android/sdk”,
)
android_ndk_repository(
name=“androidndk”,
path="/Users/baishixian/Library/Android/sdk/android-ndk-r14b",
This needs to be 14 or higher to compile TensorFlow.
Please specify API level to >= 21 to build for 64-bit
archtectures or the Android NDK will automatically select biggest
API level that it supports without notice.
Note that the NDK version is not the API level.
api_level=25)
- Build so文件
bazel build -c opt //tensorflow/contrib/android:libtensorflow_inference.so --crosstool_top=//external:android/crosstool --host_crosstool_top=@bazel_tools//tools/cpp:toolchain --cpu=armeabi-v7a
- 编译后文件位置
bazel-bin/tensorflow/contrib/android/libtensorflow_inference.so
- 编译jar文件
bazel build //tensorflow/contrib/android:android_tensorflow_inference_java
- 编译后文件位置
bazel-bin/tensorflow/contrib/android/libandroid_tensorflow_inference_java.jar
现在我们有了so文件和jar文件,在以下的Android工程中会用到。
2. 下载训练模型和标签文件
===============
这里我们用google的数据就可以,下载地址,下载后解压可以得到imagenet_comp_graph_label_strings.txt
(label for objects) and tensorflow_inception_graph.pb (pre-trained model) 两个文件,这两个文件放置在Android工程的Assets中即可。
- 编译运行 example 项目
找到下载的 tensorflow 目录,其中 tensorflow/tensorflow/examples/android 路径下,是 Google 提供的 example 项目 for Android,我们可以通过编译运行该项目了解在 Android 平台上实现的几个典型的应用场景实力。
- 通过 Android Studio 进行编译
使用 Android Studio 找到对应的项目目录打开,修改 ndk 的环境配置后,点击编译运行即可。
- 通过命令行进行
通过命令行进入 tensorflow 目录,也就在 WORKSPACE 所在的项目根目录。
- 1. 编译项目
bazel build -c opt //tensorflow/examples/android:tensorflow_demo
找到对应的项目目录打开,修改 ndk 的环境配置后,点击编译运行即可。
- 通过命令行进行
通过命令行进入 tensorflow 目录,也就在 WORKSPACE 所在的项目根目录。
- 1. 编译项目
bazel build -c opt //tensorflow/examples/android:tensorflow_demo
这篇关于初遇TensorFlow,高并发系统基础篇的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-30tensorflow是什么-icode9专业技术文章分享
- 2024-10-15成功地使用本地的 NVIDIA GPU 运行 PyTorch 或 TensorFlow
- 2024-01-23供应链投毒预警 | 恶意Py包仿冒tensorflow AI框架实施后门投毒攻击
- 2024-01-19attributeerror: module 'tensorflow' has no attribute 'placeholder'
- 2024-01-19module 'tensorflow.compat.v2' has no attribute 'internal'
- 2023-07-17【2023年】第33天 Neural Networks and Deep Learning with TensorFlow
- 2023-07-10【2023年】第32天 Boosted Trees with TensorFlow 2.0(随机森林)
- 2023-07-09【2023年】第31天 Logistic Regression with TensorFlow 2.0(用TensorFlow进行逻辑回归)
- 2023-07-01【2023年】第30天 Supervised Learning with TensorFlow 2(用TensorFlow进行监督学习 2)
- 2023-06-18【2023年】第29天 Supervised Learning with TensorFlow 1(用TensorFlow进行监督学习 1)