Android 制作Tensorflow库+;预训练的MobileNet尽可能小,以使APK更小 要求

Android 制作Tensorflow库+;预训练的MobileNet尽可能小,以使APK更小 要求,android,tensorflow,apk,size-reduction,Android,Tensorflow,Apk,Size Reduction,我正在开发一款具有标签功能的照片管理Android应用程序,它必须识别日常物体/建筑物/动物/植物。当我拍摄一张显示自行车、房子和山的照片时,我的应用程序会将照片添加到这些类别中 Tensorflow+预先培训过的MobileNet v2完全符合要求,在我的build.gradle中有这种依赖关系: implementation 'org.tensorflow:tensorflow-android:1.2.0' 问题 问题:它使APK的容量增加了十倍,达到32MB,这对于我的目标受众(移动数据

我正在开发一款具有标签功能的照片管理Android应用程序,它必须识别日常物体/建筑物/动物/植物。当我拍摄一张显示自行车、房子和山的照片时,我的应用程序会将照片添加到这些类别中

Tensorflow+预先培训过的MobileNet v2完全符合要求,在我的
build.gradle中有这种依赖关系

implementation 'org.tensorflow:tensorflow-android:1.2.0'
问题 问题:它使APK的容量增加了十倍,达到32MB,这对于我的目标受众(移动数据计划缓慢/昂贵,没有WiFi/LAN/宽带的人)来说是不可接受的

问题:我可以使用什么技巧使Tensorflow+预先训练的MobileNet v2更小


特别是,如何从Tensorflow中删除标记时未使用的类?没有培训将在Android上进行,所以我不需要所有的培训课程,例如。如果需要,我可以重新编译,但也欢迎使用任何其他方法。

您可以使用一些选项来减小模式大小

  • 将Mobilenet与alpha 0.25配合使用将使模型尺寸减小约4倍 小的
  • 尝试转换为.tflite
  • 量化后的.tflite模型也将减少4倍

  • 您可以阅读很多,我假设您的模型在转换后将为4MB。

    有一些选项可以减少模式大小

  • 将Mobilenet与alpha 0.25配合使用将使模型尺寸减小约4倍 小的
  • 尝试转换为.tflite
  • 量化后的.tflite模型也将减少4倍

  • 你可以阅读很多,我假设你的模型在转换后将是4MB。

    可能你已经阅读了以下内容:@shizhen关于第一个链接:我知道这个页面,是的,我正在进一步寻找Tensorflow+MobileNet的特定内容,它占应用程序大小的90%。关于第二个链接:我没有在我的项目中添加任何
    。因此
    。一个
    文件,但实际上Gradle可能会拉一些。。。如果您使用这些技术显著减小了Tensorflow APK的尺寸,请根据这些链接发布答案,谢谢!也许你已经读过这个:@shizhen关于第一个链接:我知道这个页面,是的,我正在进一步寻找Tensorflow+MobileNet的特定内容,它占了应用程序的90%。关于第二个链接:我没有在我的项目中添加任何
    。因此
    。一个
    文件,但实际上Gradle可能会拉一些。。。如果您使用这些技术显著减小了Tensorflow APK的尺寸,请根据这些链接发布答案,谢谢!