【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

Android Smart Linkify API 背后的机器学习

  • 2018-08-23
  • 本文字数:918 字

    阅读完需:约 3 分钟

上周,谷歌发布了代号为 Pie 的 Android 9 。Android 正在推出一系列由人工智能提供支持的新功能。 Android Smart Linkify 是最重要的新 AI 功能之一。

Smart Linkify 建立在先前版本 Android Oreo 发布的 Smart Text Selection 之上。Smart Linkify 可以检测文本中的某些类型的实体(例如地址、电话号码)并添加可点击的链接,允许用户直接启动地图或拨打电话。它由设备内的前馈神经网络提供支持,每种语言大小仅 500KB,推理代码不超过 250KB。这个系统为几近实时的系统,在 Google Pixel 手机上计算时间短于 20 毫秒。

系统首先通过空格将输入文本拆分为单词,并计算最多 15 个单词所有可能的单词子序列。每个子序列被提供给神经网络,神经网络基于其有效性为它们分配 [0 … 1] 范围的值。在删除重叠实体后,系统为子序列打较高的分数。在整个过程的第一部分结束时,每个未知类型都有一个不重复单词子序列。

然后使用第二个神经网络来识别每个单词子序列的类型,无论是电话号码、地址还是未识别的实体。神经网络将上下文中的单词子序列作为输入。通过将子序列的前三个和后三个单词作为实体,将它们前面的五个单词作为左上下文,将随后的五个单词作为右上下文,然后将它们作为不同的特征来识别单词的含义。这个神经网络中一个有趣的优化是使用二进制特征来识别以大写字母开头的单词。其背后的原因是,邮政地址非常独特,使用这种方式更容易识别出来。

为了训练神经网络,谷歌团队从真实数据中生成了虚假样本。他们使用 Schema.org 注解的实体、地址、电话号码和随机单词的自定义列表合成了一个训练集。他们采用可观察的实体并用随机单词围绕它们达到更理想的结果。另外,有意生成负数据训练样本,让神经网络避免将“ID:”识别为电话号码。

国际化是这个功能的一个重要方面,根据测试,一种模型适用于所有拉丁语言,并可以为中文、日文、韩文、泰文、阿拉伯文和俄文添加单独的模型。目前,API 支持 16 种语言,未来几个月将支持更多语言。这些模型使用 TensorFlow 进行训练,自定义的推理库由 TensorFlow Lite 和 FlatBuffers 提供支持。开发人员可以通过 TextClassifier API generateLinks 方法开始使用 Smart Linkify。

查看英文原文 The Machine Learning behind Android Smart Linkify API

2018-08-23 07:441220
用户头像

发布了 731 篇内容, 共 434.7 次阅读, 收获喜欢 1997 次。

关注

评论

发布
暂无评论
发现更多内容

全面解析|搞懂Nginx这一篇就够了

浅羽技术

Java nginx 反向代理 服务器 三周年连更

异步编程|五分钟让你学会局部刷新Ajax技术

浅羽技术

Java ajax js jsp 三周年连更

测试需求平台10-DBUtils优化数据连接与SQL Limit实现分页

MegaQi

测试平台开发 三周年连更

我用ChatGPT的一些实践案例

石云升

AI ChatGPT 三周年连更

响应系统设置的事件

智趣匠

Configuration 响应系统 三周年连更

2023 年 10 个最佳 Linux 桌面发行版,每个都是那么的漂亮!

wljslmz

三周年连更

磁盘I/O性能监控的指标

阿泽🧸

三周年连更 磁盘IO

陆奇:“模仿”微软Copilot,结构性代际因边际成本转为固定成本

B Impact

如何将 Java 文件转换为 InputStream?这两种方法很管用!

wljslmz

三周年连更

OpenHarmony接收指定网络的状态变化通知

坚果

OpenHarmony 三周年连更

OpenHarmony设备开发常用接口

鸿蒙之旅

OpenHarmony 终端设备开发 三周年连更

OneNet服务器LWM2M物联网协议(智能井盖方案)

DS小龙哥

三周年连更

TPU、TensorFlow—谷歌云“增强”AI 芯片团队,与微软云竞争AI云份额

B Impact

灾备的级别和等级划分

穿过生命散发芬芳

灾备 三周年连更

Sam Altman:巨型AI模型时代已结束, GPT-4是OpenAI最后成果

B Impact

用Python也能画图?用Python来画个“python”

Bob

Python

零代码以“王者荣耀”为例解析设计七原则,助你面试拿“五杀”

陈言必行

设计原则 三周年连更

Qz学算法-数据结构篇(查找算法--插值、斐波那契查找)

浅辄

数据结构 三周年连更

美国To B软件公司受到ChatGPT“威胁”解析

B Impact

IDEA用上这十大插件绝对舒服

越长大越悲伤

IDEA idea插件

阿里云DTS数据同步实施

乌龟哥哥

三周年连更

Go语言并发编程核心-Channel的典型应用场景分析

Jack

Kafkaide让IDEA开发者不在游走

扬_帆_起_航

kafka kafka manager

Java 继承 Minio 实现文件上传、文件下载、文件删除等功能

Java架构历程

三周年连更

Django REST项目实战:在线中文字符识别

TiAmo

django RESTful 三周年连更

2022-04-25:给定两个长度为N的数组,a[]和b[] 也就是对于每个位置i来说,有a[i]和b[i]两个属性 i a[i] b[i] j a[j] b[j] 现在想为了i,选一个最

福大大架构师每日一题

golang 算法 rust 福大大

音视频八股文(5)--SDL音视频渲染实战。会使用就行,不需要深究。

福大大架构师每日一题

音视频 SDL 流媒体 福大大

成立3年,云服务厂商火山引擎全景扫描

B Impact

Prometheus实战-从0构建高可用监控平台(二)

小毛驴的烂笔头

Linux Prometheus

跨平台应用开发进阶(五十七):uni-app 通过 overrideUrlLoading 实现拦截 webview 窗口的 URL 跳转请求

No Silver Bullet

uni-app 跨平台应用开发 三周年连更 webview 窗口 URL 跳转请求拦截

【云原生】Docker之创建并进入mysql容器

A-刘晨阳

MySQL Docker Linux 三周年连更

Android Smart Linkify API背后的机器学习_移动_Alex Giamas_InfoQ精选文章