TensorFlow Lite

Tensorflow Lite tflite模型的生成与导入

妖精的绣舞 提交于 2021-02-10 16:59:25
假如想要在ARM板上用 tensorflow lite ,那么意味着必须要把PC上的模型生成 tflite 文件,然后在ARM上导入这个 tflite 文件,通过解析这个文件来进行计算。 根据前面所说, tensorflow 的所有计算都会在内部生成一个图,包括变量的初始化,输入定义等,那么即便不是经过训练的神经网络模型,只是简单的三角函数计算,也可以生成一个 tflite 模型用于在 tensorflow lite 上导入。所以,这里我就只做了简单的 sin() 计算来跑一编这个流程。 生成 tflite 模型 这部分主要是调用 TFLiteConverter 函数,直接生成 tflite 文件,不再通过 pb 文件转化。 先上代码: import numpy as np import time import math import tensorflow as tf SIZE = 1000 X = np.random.rand(SIZE, 1 ) X = X*(math.pi/2.0 ) start = time.time() x1 = tf.placeholder(tf.float32, [SIZE, 1], name= ' x1-input ' ) x2 = tf.placeholder(tf.float32, [SIZE, 1], name= ' x2-input ' )

蚂蚁金服研究员何征宇:系统软件和开源都是手段,不是目的

混江龙づ霸主 提交于 2021-01-12 23:46:38
2019年12月15日,蚂蚁金服研究员兼系统部负责人何征宇在OS2ATC 2019上分享了蚂蚁在金融级系统软件上的实践经验,以及对开源协作的理念和做法。以下为演讲整理: 我今天想和大家分享一下我在蚂蚁的一些工作,以及在金融级系统软件中开源协作的探索和实践。 金融行业实际上是一个非常注重科技的行业,因为技术的价值可以得到很直观的展现,然后它是非常注重极致,非常追求技术的先进性的,技术上的先进性可以很快的转化为业务的领先性。 蚂蚁金服作为国内金融企业的领头羊,对于技术的追求是永无止境的。蚂蚁的梦想是服务20亿的消费者,1亿的全球小微经营者,这是一个非常大的愿景,而我们相信只有不断发展的技术才能让这些不可能成为可能。例如我们的310贷款能力,就是建立在一流的金融级大规模数据智能的技术能力之上的。 那么我们系统软件的挑战和做软件的压力是什么?如果用一句话来总结的话,就是在海量数据压力下的服务连续性保障和资损风险监控。首先是要达到一个非常高的可用率,这个跟我们常说高可用系统,例如电信级系统不一样,这个后面除了5个9之外,还有金融机构非常严格的一些要求,比如100%保证资金安全,这是蚂蚁金服一直在追求的能力。 蚂蚁金服与系统软件 蚂蚁金服也确实在各个系统软件的方向上追求极致。首先从数据库的角度来讲,OceanBase 在 TPC-C 评测中打破了 Oracle 多年的垄断,这一结果是

NeurIPS 2020 | 清华大学提出:通用、高效的神经网络自适应推理框架

邮差的信 提交于 2020-11-17 03:45:34
来源:人工智能AI技术 本文 约3400字 ,建议阅读 7 分钟 本文介绍我们被NeurIPS 2020会议录用的一篇文章。 本文主要介绍我们被NeurIPS 2020会议录用的一篇文章:Glance and Focus: a Dynamic Approach to Reducing Spatial Redundancy in Image Classification。 论文: https://arxiv.org/abs/2010.05300 代码和预训练模型已经在Github上面放出: https://github.com/blackfeather-wang/GFNet-Pytorch 这项工作提出了一个通用于 绝大多数CNN 的自适应推理框架,其效果比较明显,在同等精度的条件下, 将MobileNetV3的平均推理速度加快了30%,将ResNet/DenseNet加速了3倍以上,且在iPhone XS Max上的实际测速和理论结果高度吻合。 此外,它的计算开销可以简单地 动态在线调整,无需额外训练。 (太长不看版)下面一张图可以概括我们做的事情:将图像识别建模为序列决策过程,先将缩略图输入神经网络(Glance),再不断选择最关键的图像区域进行处理(Focus,利用强化学习实现),直至网络产生一个足够可信的预测结果时停止;对于简单和困难的样本分配不同的计算资源,以提升整体效率。

TFLite基础知识

痞子三分冷 提交于 2020-11-08 18:55:21
此基础知识仅为个人学习记录,如有错误或遗漏之处,还请各位同行给个提示。 概述 TFLite主要含有如下内容: (1)TFLite提供一系列针对移动平台的核心算子,包括量化和浮点运算。另外,TFLite也支持在模型中使用自定义算子。 (2)TFLite基于FlatBuffers定义了一种新的模型文件格式。FlatBuffers类似于protocol buffers, FlatBuffers在访问数据之前不需要进行解析/解包步骤,通常与每个对象的内存分配相结合。而且,FlatBuffers的代码占用空间比protocol buffers小一个量级。 (3)TFLite拥有一个新的优化解释器,其主要目标是保持应用程序的精简和快速。 解释器使用静态图形排序和自定义(动态性较小)内存分配器来确保最小的负载、初始化和执行延迟。 (4)TFLite提供了一个利用硬件加速的接口,通过安卓端的神经网络接口(NNAPI)实现,可在Android 8.1(API级别27)及更高版本上使用。 TFLite提供的支持: (1)一组核心ops,包括量化和浮点运算,其中许多已经针对移动平台进行了调整。 这些可用于创建和运行自定义模型。开发人员还可以编写自己的自定义ops,并在模型中使用。 (2)一种新的基于FlatBuffers的模型文件格式。 (3)MobileNet模型的量化版本

Android Studio新特性:使用TFLite模型更简单

我的未来我决定 提交于 2020-10-25 12:40:57
Android Studio仍然在疯狂更新中,隔一段时间打开Android Studio,就会提示有新版本,对此我已经见怪不怪。一般而言,我会顺手点击一下升级。今天我又点击了升级,粗略看了一下新版本4.1的特性说明,其中有一项是: 使用TensorFlow Lite模型 。出于对机器学习的兴趣,于是就研究了一番这个新特性。 TensorFlow Lite是最受欢迎的编写移动端机器学习模型的开发库,在我之前的文章中也写过如何在Android程序中使用TFLite模型。有了TFLite模型后,我们需要模型开发者提供模型的输入、输出等信息,然后编写封装类,对图片进行预处理(比如裁剪、规范化等等),这对于开发者而言,枯燥而且容易出错。而在Android Studio 4.1中,这个开发过程得到了简化,导入模型后,Android Studio会生成辅助类,我们只需编写极少的代码即可运行模型,而且还提升了类型安全性。 我们先说说如何导入TFLite模型并使用,然后再来解释是如何做到的。 导入模型文件 按照如下步骤即可导入TFLite模型: 新建或打开现有Android项目工程。 通过菜单项 File > New > Other > TensorFlow Lite Model 打开TFLite模型导入对话框。 Android Studio菜单 选择后缀名为.tflite的模型文件

倒计时 4 天!高通人工智能应用创新大赛颁奖典礼线上隆重举行

南笙酒味 提交于 2020-10-01 04:12:18
经过7 个月的激烈角逐,由高通公司(Qualcomm)、中国智谷·重庆经开区、CSDN、Testin云测、OPPO、极视角、中科创达、创业邦联合主办,重庆经开区·高通中国·中科创达联合创新中心协办, TensorFlow Lite 作为开源技术合作伙伴的行业内专业性质的“高通人工智能应用创新大赛”已于不久前顺利收官! 本次大赛中,参赛选手们经过初赛和决赛两轮 PK,最终在行业知名领袖和技术专家评委的严格把控下,从全球 270 多位 AI 高手提交的共计 110 个参赛作品中,在移动应用和 AIoT 两大赛道中评选出 1 名白金奖,以及商业模式创新奖、重庆创新中心特别奖、AI 视觉计算创新应用奖、算法创新奖、AI 应用场景创新奖、终端侧人工智能创新奖、5G 边缘应用技术奖与 AIOT DSP 应用创新奖 8 名分项赛道金奖获得者,作品涵盖工业、农业、交通、电商、游戏、慈善、智能家居、健康、民政服务等多个领域的应用及解决方案。 两轮PK后,获奖者名单出炉! 9 月 27 日,“高通人工智能应用创新大赛”将在线上全程直播颁奖典礼。 届时,将对在前文 《高通人工智能应用创新大赛收官!9大奖项花落谁家?》 中介绍的获奖团队/个人进行奖项授予。 进行奖项授予: 荣获本届大赛“白金奖”的是,赵天奇博士及其团队,获奖作品为《人工智能动画系统:赛博化身Cybatar》。 荣获“商业模式创新奖”的是

Flutter Weekly Issue 62

人盡茶涼 提交于 2020-08-19 05:27:21
教程 美团外卖Flutter动态化实践 插件 native-draggable Native Drag and Drop for Flutter on iOS and MacOS flutter-mvvm Flutter plugin to rapidly create a Page with MVVM design pattern animated-selection-slide This flutter project allows you to make your choices with animation in inbox. flutter-gestures Custom Gesture Detector for Flutter. Empower your users with custom gestures. flutter-tv-autofocus A new Flutter widget that add support for AndroidTV app. Using keyboard to control focus node. flutter-dynamic-widget A Dynamic Widget Runtime from JSON for Flutter Widgets. pdf-flutter Flutter Widget to display

Tensorflow Lite tflite模型的生成与导入

有些话、适合烂在心里 提交于 2020-08-18 14:45:09
假如想要在ARM板上用 tensorflow lite ,那么意味着必须要把PC上的模型生成 tflite 文件,然后在ARM上导入这个 tflite 文件,通过解析这个文件来进行计算。 根据前面所说, tensorflow 的所有计算都会在内部生成一个图,包括变量的初始化,输入定义等,那么即便不是经过训练的神经网络模型,只是简单的三角函数计算,也可以生成一个 tflite 模型用于在 tensorflow lite 上导入。所以,这里我就只做了简单的 sin() 计算来跑一编这个流程。 生成 tflite 模型 这部分主要是调用 TFLiteConverter 函数,直接生成 tflite 文件,不再通过 pb 文件转化。 先上代码: import numpy as np import time import math import tensorflow as tf SIZE = 1000 X = np.random.rand(SIZE, 1 ) X = X*(math.pi/2.0 ) start = time.time() x1 = tf.placeholder(tf.float32, [SIZE, 1], name= ' x1-input ' ) x2 = tf.placeholder(tf.float32, [SIZE, 1], name= ' x2-input ' )

Iphone 11 训练神经网络的开源项目火了,准确率可与 i7 MacBook Pro 持平

旧时模样 提交于 2020-08-18 04:38:47
前几天有人发布了一个可以在 ios 设备上直接训练神经网络的 开源项目 MNIST-CoreML-Training ,引起热议。 项目使用 MNIST 手写数字数据集部署图像分类模型,不需要在其他 ML 框架中训练,而是 基于 Core ML 直接 本地 训练出一个卷积神经网络 ( LeNet CNN ) 模型。项目作者还 将之 和其他设备模型做了对比。在模型架构和训练参数相同的情况下,同时在 iphone 11上运行 Core ML 和在 i7 MacBook Pro 上运行 TensorFlow 2.0,两种方式的准确率都超过了0.98,前者训练时间大概为248秒,后者为158秒。 虽然用时上还有一定差距。但该项目和实验被认为证明了 ios 设备计算性能的提升,也探索了移动设备在本地训练的可能性。目前移动设备本地训练还难以完美实现,但想要在移动端部署 AI 应用还是有很多途径的, 今天就来看看移动端的 AI 开发。 ios 的 Core ML 和 Andorid 的 NNAPI 在移动端实现卷积神经网络,一般可以先在 GPU 或 TPU 上训练模型,之后 再 压缩部署到移动端。早前,有人基于开源的计算机视觉库 OpenCV 和开源训练模型 Caffe,在 Android 端 实现 车牌识别。Caffe 便是在 GPU 机器上训练,然后部署到商品集群或移动设备,在 CPU 和

Web上的MediaPipe

拟墨画扇 提交于 2020-08-17 06:22:27
由MediaPipe团队的Michael Hays和Tyler Mullen发布 MediaPipe 是用于构建跨平台多模式应用ML管道的框架。我们之前已经演示了如何 在移动设备(Android,iOS) 和 边缘设备(例如Google Coral ) 上 以MediaPipe图形的形式构建和运行ML管道。在这篇文章中,我们很高兴现在 MediaPipe图表 运行住在Web浏览器中,通过WebAssembly启用并加速 XNNPack ML推理库 。通过将此预览功能集成到我们基于Web的Visualizer工具中,我们提供了一个游乐场,可以快速迭代图形设计。由于所有内容都直接在浏览器中运行,因此视频永远不会离开用户的计算机,并且每次迭代都可以在实时网络摄像头流(以及很快的任意视频)上立即进行测试。 图1显示了在Visualizer中 运行MediaPipe人 脸检测示例 MediaPipe可视化器 MediaPipe Visualizer(参见图2)位于 viz.mediapipe.dev 。可以通过将图形代码粘贴到“编辑器”选项卡中或将图形文件上传到可视化器中来检查MediaPipe图形。用户可以使用鼠标和滚轮来平移和放大图形的图形表示。该图形还将实时响应编辑器中所做的更改。 图2托管在 https://viz.mediapipe.dev的 MediaPipe