官方推荐 | 在 Flutter 中使用 TensorFlow Lite 插件实现文字分类

Posted Flutter社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了官方推荐 | 在 Flutter 中使用 TensorFlow Lite 插件实现文字分类相关的知识,希望对你有一定的参考价值。

如果您希望能有一种简单、高效且灵活的方式把 TensorFlow 模型集成到 Flutter 应用里,那请您一定不要错过我们今天介绍的这个全新插件 tflite_flutter。这个插件的开发者是 Google Summer of Code (GSoC) 的一名实习生 Amish Garg。

tflite_flutter 插件的核心特性:

  • 插件提供了与 TFLite Java 和 Swift API 相似的 Dart API,所以其灵活性和在这些平台上的效果是完全一样的;
  • 插件通过 dart:ffi 直接与 TensorFlow Lite C API 相绑定,所以它比其它平台集成方式更加高效;
  • 无需编写特定平台的代码;
  • 通过 NNAPI 提供加速支持,在 android 上使用 GPU Delegate,在 ios 上使用 Metal Delegate。

本文中,我们将使用 tflite_flutter 构建一个 文字分类 Flutter 应用,带您体验 tflite_flutter 插件。首先从新建一个 Flutter 项目 text_classification_app 开始。 

初始化配置

Linux 和 Mac 用户

install.sh 拷贝到您应用的根目录,然后在根目录执行 sh install.sh,本例中就是目录 text_classification_app/

Windows 用户

将 install.bat 文件拷贝到应用根目录,并在根目录运行批处理文件 install.bat,本例中就是目录 text_classification_app/

它会自动从 GitHub 仓库的 releases 里下载最新的二进制资源,然后把它放到指定的目录下。

请点击到 README 文件里查看更多 关于初始配置的信息

获取插件

pubspec.yaml 添加 tflite_flutter: ^<latest_version>

下载模型

要在移动端上运行 TensorFlow 训练模型,我们需要使用 .tflite 格式。如果需要了解如何将 TensorFlow 训练的模型转换为 .tflite 格式,请参阅 官方指南

这里我们准备使用 TensorFlow 官方站点上预训练的文字分类模型,模型下载链接见本节链接注释文字

该预训练的模型可以预测当前段落的情感是积极还是消极。它是基于来自 Mass 等人的  Large Movie Review Dataset v1.0 数据集进行训练的。数据集由基于 IMDB 电影评论所标记的积极或消极标签组成,查看更多信息

text_classification.tflitetext_classification_vocab.txt 文件拷贝到 text_classification_app/assets/ 目录下。

pubspec.yaml 文件中添加 assets/

assets:    
  - assets/

现在万事俱备,我们可以开始写代码了。

以上是关于官方推荐 | 在 Flutter 中使用 TensorFlow Lite 插件实现文字分类的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 在运行选项卡中禁用系统调试消息

Mac下如何配置环境变量

Flutter环境配置备忘(2022)

在 iOS 中不推荐使用 Flutter 依赖项

如何使用firebase在flutter中添加推荐程序[关闭]

Flutter混合开发之FlutterFragment