使用 ML Kit 与 NNAPI

我正在尝试在运行 Android 9 的设备上使用新的 Google 机器学习 SDK,ML Kit。根据官方网站:

ML Kit 通过将 Google 的机器学习技术(如 Google Cloud Vision API、TensorFlow Lite 和 Android Neural Networks API)整合到一个 SDK 中,使您能够轻松地在应用程序中应用机器学习技术。无论您需要基于云的处理能力、移动优化设备模型的实时能力,还是自定义 TensorFlow Lite 模型的灵活性,ML Kit 都只需几行代码即可实现。

我认为这意味着在至少运行 Android 8.1(根据 nnapi 文档)的设备上,SDK 可以使用 NNAPI。但当我在运行 Android 7.1 的设备上(nnapi 不受支持)运行相同应用时,我获得了与使用 Android 9(理论上使用 NNAPI)的设备相同的性能。我该如何使用 ML Kit 与 NNAPI?我做错了什么?ML Kit 的文档链接:https://firebase.google.com/docs/ml-kit/


回答:

根据 2018 年 10 月的论文:AI Benchmark: Running Deep Neural Networkson Android Smartphones,当没有特定的硬件和/或驱动程序可用时,NNAPI 默认使用 CPU 路径。在论文的末尾指出,一些设备存在实现问题。

由于论文的作者包括来自 Qualcomm、ARM、华为、MediaTek 和苏黎世联邦理工学院的代表,这可能是关于 Android 机器学习状态的最全面的概述。

在 2019 年 1 月,Google 宣布了TensorFlow Lite 具有 GPU 加速的开发者预览版,这将解决论文中提出的部分问题。

2020 年 7 月更新:

研究人员有一个网站:http://ai-benchmark.com/

他们在 2019 年 10 月更新了他们的论文:AI Benchmark: All About Deep Learning on Smartphones in 2019

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注