打造更智能的应用 - 机器学习和Andorid

news/2024/7/7 22:05:10

打造更智能的应用 - 机器学习和Andorid

  • 一、关于机器学习和Andorid
  • 二、使用 Gemini 让您的 Android 应用如虎添翼
    • 2.1 Gemini API
    • 2.2 Android AICore
  • 三、现成可用的还是自定义的机器学习
    • 3.1 机器学习套件 SDK 的常见用户流
    • 3.2 高性能自定义机器学习
  • 四、机器学习套件 SDK:可立即使用,适用于常见用户流
  • 五、Android 的自定义机器学习堆栈:高性能机器学习
    • 5.1 适用于机器学习运行时的 TensorFlow Lite
    • 5.2 借助 TensorFlow Lite Delegate 实现硬件加速
  • 六、Android AICore
    • 6.1 通过 AICore 访问 AI 基础模型的优势
    • 6.2 支持的功能
    • 6.3 架构
    • 6.4 用例

机器学习是一种人工智能的分支,通过使用数据和统计模型来训练计算机系统,使其能够从经验中学习和改进。通过将机器学习与 Android 相结合,我们可以为移动应用带来许多有趣和强大的功能。

一、关于机器学习和Andorid

机器学习 (ML) 可让您的应用大幅提升,并添加用于处理图片、声音和文本的功能。

无论您是经验丰富的开发者,还是刚刚入门的新手,都可以向自己的应用中添加机器学习功能。

  • 低延迟时间:通过实时处理文本、音频和视频,解锁新的用户体验。

  • 将数据保留在设备上:在本地执行推断,而无需将用户数据发送到云端。

  • 可离线使用:无需网络连接,也不需要在云端运行服务。

  • 节省费用:通过在设备上运行机器学习功能来减少云费用。

二、使用 Gemini 让您的 Android 应用如虎添翼

2.1 Gemini API

在服务器上运行 Gemini

借助新的 Gemini API,您可以在 Google 服务器上运行模型推断。您可以从后端调用 API,也可以直接集成新的 Google AI SDK(一种适用于 Android 的客户端 SDK)。

2.2 Android AICore

在设备上运行 Gemini

从 Android 14 开始,Android AICore 是一项新的系统功能,可让您直接在设备上运行基础模型(例如 Gemini Nano)。

三、现成可用的还是自定义的机器学习

3.1 机器学习套件 SDK 的常见用户流

机器学习套件可针对常见问题提供可直接用于生产环境的解决方案,并且无需具备机器学习专业知识。模型是内置的,且针对移动设备进行了优化。机器学习套件易于使用,可让您专注于功能开发,而不是模型训练和优化。

3.2 高性能自定义机器学习

如果您想要获得更多控制权或部署自己的机器学习模型,Android 提供了基于 TensorFlow Lite 和 Google Play 服务构建的自定义机器学习堆栈,其中涵盖了部署高性能机器学习功能所需的基本信息。

四、机器学习套件 SDK:可立即使用,适用于常见用户流

机器学习套件让您可以在设备上访问可直接用于生产环境的机器学习模型。ML Kit API 针对移动设备进行了优化,不需要机器学习专业知识。机器学习套件 API 的示例包括:

人脸检测:在设备上实时检测某张照片是否包含人脸以及出现多少个人脸。

文字识别:识别中文、梵文、日语、韩语或任何拉丁字符语言的文本。

条形码扫描:读取采用最常见线性和 2D(二维码)格式的条形码编码数据。

更多机器学习 API:机器学习套件提供 10 多种视觉和语言 API,例如为图片加标签、姿势检测、翻译、智能回复等。

五、Android 的自定义机器学习堆栈:高性能机器学习

将高性能自定义机器学习功能部署到 Android 应用的基础知识。

5.1 适用于机器学习运行时的 TensorFlow Lite

通过 Android 的官方机器学习推断运行时 Google Play 服务使用 TensorFlow Lite 在您的应用中运行高性能机器学习推断。

5.2 借助 TensorFlow Lite Delegate 实现硬件加速

使用通过 Google Play 服务分发的 TensorFlow Lite Delegate 在 GPU、NPU 或 DSP 等专用硬件上运行加速的机器学习。这样可以帮助您使用高级设备端计算功能,为您的用户提供更流畅、更低延迟的用户体验。
在这里插入图片描述

我们目前为 GPU 和 NNAPI 受托人提供支持,并且我们正在与合作伙伴合作,通过 Google Play 服务提供其自定义受托人的访问权限,以支持高级用例。

由 Google Play 服务启用:使用 Play 服务访问 TensorFlow Lite 运行时和委托。这样可确保使用最新的稳定版,同时最大限度减少对应用的二进制文件大小的影响。

六、Android AICore

Android AICore 是一项新的系统服务,可让您访问在设备上运行的 AI 基础模型。

借助 AICore,您的 Android 应用可以访问 Gemini Nano,这是最小的 Gemini Nano,是 Google 在支持的设备上推出的先进基础模型。目前,多个 Google 产品都在使用 AICore。

6.1 通过 AICore 访问 AI 基础模型的优势

AICore 让 Android OS 能够提供和管理 AI 基础模型。这可显著降低在应用中使用这些大型模型的费用,主要原因如下:

  • 易于部署:AICore 负责管理 Gemini Nano 的分发并处理未来的更新。您无需担心通过网络下载或更新大型模型,也无需费心于对应用的磁盘和运行时内存预算的影响。
  • 使用硬件加速功能:AICore 运行时经过优化,可以从硬件加速中受益。您的应用可在每台设备上获得最佳性能,您无需担心底层硬件接口。

6.2 支持的功能

以下是 AICore 目前支持的核心功能:

  • 支持的设备:AICore 目前仅适用于 Pixel 8 Pro 设备。
  • 支持的模态:AICore 目前支持 Gemini Nano 的文本模态。

设备和模态支持是积极投资的领域。

6.3 架构

作为系统级模块,您可以通过一系列 API 访问 AICore,以便在设备上运行推断。您还可以提供 LoRA 微调块,以进一步优化 Gemini Nano 的应用性能。下图概述了应用如何访问 AICore 以在设备上运行 Gemini Nano。

在这里插入图片描述

6.4 用例

您可以通过 AICore 使用 Gemini Nano 完成以下任务:

  • AI 增强的内容消费:例如摘要、解答问题和实体提取。
  • AI 增强的内容生成功能:例如校对、语法更正、撰写辅助和上下文智能回复。

一些 Google 产品已在 Pixel 上使用 AICore,包括 Pixel 语音录制器和 Gboard。


http://lihuaxi.xjx100.cn/news/1974212.html

相关文章

datavrap可视化设计器使用手册

datavrap使用手册 一、产品简介 datavrap是一个动态数据可视化设计器,通过简单配置生成可视化视频,图片和gif。 站长:B站UP,夹克mnnm 这个产品的灵感是在做B站视频时,觉得每次通过修改代码录屏实现视频制作太过于繁琐&…

无心剑七绝《忆彭德怀》

七绝忆彭德怀 彭公铁骨傲苍松 德布黎民逆赤龙 怀义光华传百代 真金火炼自从容 2024年1月16日 平水韵二冬平韵 这首七绝以“忆彭德怀”为题,通过四句二十八字的凝练表达,深情缅怀了彭德怀元帅的高尚品质和坚韧精神。作者无心剑运用古典诗词的形式&#xf…

第18章_JDK8-17新特性拓展练习(lambda表达式,Stream API,Optional的使用)

文章目录 第18章_JDK8-17新特性拓展练习lambda表达式1、Supplier接口练习12、Supplier接口练习23、Consumer接口和BiConsumer接口4、Consumer接口5、Comparator接口6、Comparator接口7、Comparator接口8、Predicate接口9、Predicate接口、Consumer接口10、Function接口11、BiFu…

backtrader策略库:强化学习二:应用

点此获取backtrader技术教程 前一个帖子介绍了梯度提升gradient ascent的概念,本文介绍如何使用梯度提升最大化回报函数。 文末有github源码链接。 In my last post we learned what gradient ascent is, and how we can use it to maximize a reward function. T…

IDA Pro 7.7和8.3共用方案

1.问题 IDA 8.3版本放出来后,我安装之后,把之前用的正好的7.7给卸载了,然后发现:IDA 8.3版本只能反编译x86和x64两个架构,而我又是arm和arm64的重度用户,只能把旧版下载回来。问题就出现在这里。 &#x…

【SpringBoot】SpringBoot 项目初始化方法

github 搜索 springboot 模板 github 搜索 springboot 模板,拉取现成代码。 SpringBoot 官方的模板生成器 SpringBoot 官方的模板生成器(https://start.spring.io/) 在 IDEA 开发工具中生成 这里我修改成阿里的镜像主要是要使用 Java8。 …

Scrcpy:掌握你的Android设备

Scrcpy:掌握你的Android设备 本文将介绍Scrcpy工具,它是一种强大的安卓设备控制工具,可以实现屏幕镜像、操作控制等功能。我们将探讨Scrcpy的基本原理和工作方式,并介绍如何使用Scrcpy连接和控制安卓设备。此外,我们还…

【Git】 取消上一次commit或push

一、取消上一次commit 如果你需要取消上一次的 Git 提交,有几个不同的方法可以实现。其中包括撤消提交、提交到新的分支、使用 Git 回滚等等。 下面介绍三种方法: 方法1:使用 Git reset 使用 Git reset 命令来取消上一次提交: …