写点什么

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:441629
用户头像

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

关注

评论

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

软件测试学习笔记丨Python 内置库 多线程threding

测试人

软件测试

和鲸101计划:解读BrainPy,数字化大脑计算基建

ModelWhale

大数据 数字化

pr 2021下载:Premiere Pro 2021 for Mac/win版

你的猪会飞吗

pr2020破解 视频剪辑软件

HDC2024直播盛宴,HarmonyOS最新进展不容错过!

极客天地

解读自然语言处理:技术、应用与未来展望

天津汇柏科技有限公司

人工智能 自然语言处理

ShineScrum捷行近期课程安排

ShineScrum

Web3 游戏周报(6.09 - 6.15)

Footprint Analytics

链游

一文读懂Partisia Blockchain 全新开发者计划,最高25k $MPC 资助

加密眼界

很多人容易犯的面试错误

老张

面试 面试经验

跨云迁移新选择:NineData 助力GCP Cloud SQL MySQL安全快速迁移

NineData

MySQL Google 数据迁移 跨云迁移 GCP Cloud SQL MySQL

和鲸101计划:R语言医学数据分析,复现顶刊图表

ModelWhale

数据分析 R语言 医学

结硬寨:联想服务器的向前之路

脑极体

AI

咖啡价格卷至6块6,这次轮到库迪慌了?

Alter

和鲸101计划:数据驱动的临床预测模型构建

ModelWhale

数据 医学

Open To Buy(OTB)计划:零售业者的库存管理利器

第七在线

敏捷开发时代,彻底结束了

禅道项目管理

团队管理 项目管理 DevOps 敏捷开发

高效开发系列:鸿蒙原生app套用混合app开发思路

FinFish

HarmonyOS 鸿蒙应用开发 小程序容器 混合app开发 鸿蒙原生app

一文看懂人工智能、机器学习、深度学习是什么、有什么区别!

不在线第一只蜗牛

人工智能 机器学习 深度学习

人工智能大模型——零样本提示

霍格沃兹测试开发学社

TikTok运营为什么需要独立IP?怎样获得独立IP?

Ogcloud

TikTok 云手机 海外云手机 tiktok云手机 tiktok运营

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