CN111989665A - 设备上图像识别 - Google Patents

设备上图像识别 Download PDF

Info

Publication number
CN111989665A
CN111989665A CN201980025571.1A CN201980025571A CN111989665A CN 111989665 A CN111989665 A CN 111989665A CN 201980025571 A CN201980025571 A CN 201980025571A CN 111989665 A CN111989665 A CN 111989665A
Authority
CN
China
Prior art keywords
entity
model
mobile device
geographic location
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980025571.1A
Other languages
English (en)
Inventor
A.夏尔马
F.祖巴赫
T.宾德
L.马赫
S.E.贾扎尔
M.沙里菲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN111989665A publication Critical patent/CN111989665A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/587Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/413Classification of content, e.g. text, photographs or tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/42Document-oriented image-based pattern recognition based on the type of document
    • G06V30/422Technical drawings; Geographical maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/387Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Multimedia (AREA)
  • Library & Information Science (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

方法、系统和装置,包括编码在计算机存储介质上的计算机程序,用于训练第二模型以近似第一模型的输出,以根据分类方案对作为输入接收的图像数据进行分类,并在训练第二模型之后访问指定多个地理位置的地图数据,并针对与实体关联的每个地理位置针对描绘位于该地理位置处的实体的一个或多个图像中的每个图像,将图像提供给第二模型以生成图像的嵌套,将由第二模型生成的一个或多个嵌套中的每一个与地理位置关联,并将指定地理位置的位置数据、关联的一个或多个嵌套以及指定实体的数据存储在数据库中,作为实体的关联实体条目。

Description

设备上图像识别
背景技术
本说明书涉及训练可以在移动设备上用于图像识别的机器学习模型。例如,用户可能期望与用户正在移动设备上查看的内容有关的附加信息。这样的内容可以是文本或图像。用户可能期望使感兴趣的对象或地点突显在用户设备上或指示对用户可能有用的信息的某种其他特征。例如,用户可能遇到一家餐厅,并期望知道关于该餐厅的附加信息。
机器学习模型可以接收输入并基于接收的输入和模型的参数值来生成输出。例如,机器学习模型可以接收图像并针对类别集中的每个类别生成分数,给定类别的分数表示图像包含属于该类别的对象的图像的概率。
机器学习模型可以由例如单层级的线性或非线性操作组成,或者可以是深度网络,即由卷积神经网络组成的机器学习模型。深度网络的示例是具有一个或多个隐藏层的神经网络。神经网络是机器学习模型,其使用非线性单元的层来为接收的输入预测输出。一些神经网络是深度神经网络,除了输出层之外其还包括隐藏层。每个隐藏层的输出用作网络中下一层的输入。网络的每一层根据相应的一组参数的当前值从接收的输入生成输出。
发明内容
本说明书描述了与用于移动设备上的图像识别的系统和方法有关的技术。本主题提供识别模型的实施方式,该识别模型允许移动设备的有限的处理和存储能力,尤其是在与较大的后端计算装置相比时,并且在网络使用方面是有效的。
总体上,本说明书中描述的主题的一个创新方面可以体现在方法中,该方法包括以下动作:访问第一模型,该第一模型已被训练为根据分类方案生成对作为输入接收的图像数据进行分类的输出;使用第一模型训练第二模型以近似第一模型的输出,以根据分类方案对作为输入接收的图像数据进行分类,其中,第二模型包括多个连接层,多个连接层包括输出层、输入层和多个中间层;以及在训练第二模型之后:访问指定多个地理位置的地图数据,其中,地理位置的至少子集中的每个地理位置与位于该地理位置处的实体以及描绘该地理位置处的实体的一个或多个图像关联;对于与实体关联的每个地理位置:对于描绘位于该地理位置处的实体的一个或多个图像中的每个图像,将该图像提供给第二模型以生成该图像的嵌套,其中,嵌套是由中间层之一生成的数据;将由第二模型生成的一个或多个嵌套中的每个嵌套与该地理位置关联;和将指定该地理位置的位置数据、关联的一个或多个嵌套以及指定实体的数据存储在数据库中,作为实体的关联实体条目。该方面的其他实施例包括对应的系统、装置和编码在计算机存储设备上被配置为执行方法的动作的计算机程序。
这些和其他实施方式可各自可选地包括以下特征中的一个或多个。在一些方面,该方法可以进一步包括:从移动设备接收对数据库中的实体条目的请求,该请求包括指定移动设备的地理位置的位置数据;和基于移动设备的地理位置,选择数据库中的实体条目的真子集,其中,实体条目的真子集中的每个实体条目具有被确定为满足接近度阈值的位置数据,该接近度阈值指示实体的地理位置被确定为接近移动设备的地理位置。
在一些方面,接近度阈值是指定地理距离的值。在一些方面,接近度阈值是指定包括移动设备的地理位置的预定义区域的值。
在一些方面,指定实体的数据包括描述该实体的实体描述以及该实体的实体名称。在一些方面,实体是企业实体。在一些方面,该实体是地标实体。
在一些方面,第二模型是卷积神经网络。
总体上,本说明书中描述的主题的一个创新方面可以体现在移动设备上实现的方法中,并且该方法包括以下动作:在移动设备上存储第一模型,第一模型已被训练为近似根据分类方案对作为输入接收的图像数据进行分类的第二模型的输出,其中,第一模型包括多个连接层,多个连接层包括输出层、输入层和多个中间层;向移动设备外部的计算机系统发送对由计算机系统管理的数据库中的实体条目的请求,该请求包括指定移动设备的地理位置的位置数据,其中,每个实体条目包括:指定地理位置的位置数据;指定位于地理位置处的实体的数据;在计算机系统处由第一模型生成的一个或多个嵌套,该一个或多个嵌套中的每一个从作为第一模型的输入接收的一个或多个图像生成,并且图像中的每一个是描绘该地理位置处的实体的图像,并且其中,每个嵌套是由中间层之一生成的数据;从计算机系统接收数据库中的实体条目的真子集,该真子集基于移动设备的地理位置而选择,并将实体条目的真子集存储在移动设备上;由移动设备捕获图像,并将图像作为输入提供给第一模型,以生成捕获的图像嵌套;确定实体条目的真子集中的匹配嵌套集,每个匹配嵌套是根据匹配标准被确定为与捕获的图像嵌套匹配的嵌套;基于匹配嵌套集,在实体条目的真子集中选择实体条目作为匹配实体条目;以及在移动设备的显示设备上提供描述匹配实体条目的实体的显示数据。该方面的其他实施例包括对应的系统、装置和编码在计算机存储设备上被配置为执行方法的动作的计算机程序。
这些和其他实施方式可各自可选地包括以下特征中的一个或多个。在一些方面,基于所述匹配嵌套集,在实体条目的真子集中选择实体条目作为匹配实体条目包括:对于具有匹配嵌套的每个实体条目,基于实体条目的位置数据和移动设备的位置数据确定距离值;和选择相对于具有匹配嵌套的其他实体条目的距离值具有最小距离值的实体条目。
在一些方面,提供描述匹配实体条目的实体的显示数据包括:在捕获的图像上选择显示位置;和将显示数据在显示位置处显示在的捕获的图像上。
在一些方面,在捕获的图像上选择显示位置包括:从捕获的图像嵌套确定相对于捕获的图像嵌套中的其他活跃值作为最高值的激活值;和选择与捕获的图像嵌套中的该激活值对应的显示位置。
在一些方面,捕获的图像是由移动设备捕获的多个图像帧之一,并且对于该多个图像帧进行:确定实体条目的真子集中的匹配嵌套集、选择与捕获的图像嵌套中的激活值对应的显示位置和将显示数据在显示位置处显示在捕获的图像上。
在一些方面,捕获的图像是由移动设备捕获的多个图像帧之一;并且对于该多个图像帧进行:确定实体条目的真子集中的匹配嵌套集、在实体条目的真子集中选择实体条目作为匹配实体条目并提供描述匹配实体条目的实体的显示数据。
在一些方面,该方法可以进一步包括:从计算机系统接收数据库中的实体条目的另外的真子集,该另外的真子集基于移动设备的更新的地理位置而选择,并且将实体条目的另外的真子集存储在移动设备上;由移动设备捕获另外的图像,并将该另外的图像作为输入提供给第一模型,以生成另外的捕获的图像嵌套;确定实体条目的另外的真子集中的匹配嵌套集,每个匹配嵌套是根据匹配标准被确定为与另外的捕获的图像嵌套匹配的嵌套;基于匹配嵌套集,在实体条目的另外的真子集中选择另外的实体条目作为另外的匹配实体条目;以及在移动设备的显示设备上提供描述另外的匹配实体条目的实体的显示数据。
在一些方面,该方法可以进一步包括:当确定移动设备处于更新的地理位置中时,从移动设备删除实体条目的真子集。
可以实现本说明书中描述的主题的特定实施例,以取得以下优点中的一个或多个。本主题提供了稳健的图像识别机器学习模型的实施方式,其允许移动设备的有限的处理和存储能力,尤其是在与较大的后端计算装置相比时。
此外,本主题提供了在网络使用方面有效的实施方式,因为使用可一次下载到移动设备的嵌套数据库的子集在移动设备上部署经训练的机器学习模型。该实施方式允许用户使用图像识别应用,而不必通过网络针对每个图像访问服务器,只要用户位于与嵌套数据库的子集关联的位置区域内。因此,通过基于移动设备的位置(诸如城市或区域的定义的地理部分(例如,X×Y米的预定单元等))使用嵌套数据库的子集,系统减少了处理循环的数量,并减少了必须从服务器下载附加数据的次数。这减少了所需的处理资源并减少了整体系统带宽要求(或者替代地,能够在不相应增加处理资源的情况下为更多数量的用户服务)。因此,搜索处理技术领域的这种改进是通过以下描述的系统和方法实现的另一明显的优点。
另外,经训练的学生模型(student model)比教师模型(teacher model)更容易部署在移动设备上,因为与教师机器学习模型相比,在运行时间生成输出需要更少的计算、存储器或计算和存储器两者。一旦使用教师模型被训练,学生模型就可以生成比教师机器学习模型生成的输出不显著较不准确的输出,尽管与教师机器学习模型相比较易于部署或使用较少的计算资源。
在一些实施方式中,系统可以接收图像数据(单个图像、连续视频等)和请求识别移动设备上的图像数据中的感兴趣物品的用户输入、确定图像数据内是否存在感兴趣的对象并生成显示数据以在用户设备上显示那些感兴趣的对象。显示数据可以包括任何类型的视觉或听觉反馈,以向用户通知感兴趣的对象在图像数据中。另外,系统可以向用户提供与所识别的对象有关的附加信息。
在一些实施方式中,系统允许在移动设备上处理更多帧,以减少在图像识别过程期间使用的带宽和服务器资源。在移动设备处执行图像识别还可以导致更高的准确性,因为存在从不同的视点进行的识别对象的更多尝试。
本说明书中描述的主题的一个或多个实施例的细节在附图和以下描述中阐明。根据描述、附图和权利要求书,本主题的其他特征、方面和优点将变得显而易见。
附图说明
图1是示例机器学习模型训练系统。
图2是示例环境的框图,在该示例环境中,可以发生使用经训练的机器学习模型从地图数据生成嵌套的实体数据库的过程。
图3是示例环境的框图,在该示例环境中,可以使用图像嵌套数据库子集在移动设备上发生图像识别过程。
图4是呈现描述匹配的实体条目的实体的显示数据的移动设备的示例屏幕快照的序列。
图5是用于训练和使用机器学习模型进行图像识别的示例过程的流程图。
图6是用于将机器学习模型用于移动设备上的图像识别过程的示例过程的流程图。
图7是可用于实现本公开中描述的方法、系统和过程的示例计算设备的框图。
在各个附图中,同样的附图标号和标记指示同样的要素。
具体实施方式
描述了用于移动设备的设备上图像识别的系统、方法和计算机程序产品。示例移动设备包括个人计算机、移动通信设备以及可以通过网络发送和接收数据的其他设备。本主题解决了针对移动设备捕获的图像在移动设备上提供和实施稳健的图像识别模型的技术挑战,其中,该图像识别模型将用户设备的地理位置作为图像识别过程的一部分考虑在内。尤其是在与较大的后端计算装置的处理和存储能力相比时,该识别模型允许移动设备的有限的处理和存储能力,并且在网络使用方面是有效的。如下所述,主题可以涉及基于移动设备的位置向移动设备提供大图像嵌套数据库的真子集。这可以涉及基于将移动设备的地理位置与存储在数据库中的地理位置进行比较和仅提供满足接近度阈值的数据库的条目,来提供嵌套数据库的子集。主题还可以涉及蒸馏,或生成模拟或近似较大模型的输出的压缩模型的任何其他机器学习过程,以便可以将压缩模型存储和实现在移动设备上,而不存在由于移动设备的有限能力的不期望的处理影响。
为了生成设备上模型,系统访问第一模型,该第一模型已经被训练以生成根据分类方案准确地对作为输入接收的图像数据进行分类的输出。使用第一模型,系统训练第二模型(“设备上模型(on-device model)”)以近似第一模型的输出,从而根据分类方案对作为输入接收的图像数据进行分类。第二模型包括多个连接层,该多个连接层包括输出层、输入层和多个中间层。与第一模型相比,第二模型可以具有较少的层、较少的卷积过滤器或每层较少的节点,并且在计算机存储器中占据较小的空间。如下面进一步解释的,作为第二模型的输入接收的图像数据可以包括来自由第二模型存储在其上的设备的相机捕获的图像的数据,使得该设备可以使用第二模型执行一个或多个推断步骤来准确地识别图像的方面,而无需通过数据网络发送图像数据供后端计算系统识别。
在训练第二模型之后,系统访问指定多个地理位置的地图数据。地理位置的至少子集中的每个地理位置与位于该地理位置处的实体以及描绘该地理位置处的实体的一个或多个图像关联。该实体可以是商店、建筑物、地标或任何其他可识别的物理、现实世界实体。
对于与实体关联的每个地理位置,对于描绘位于该地理位置处的实体的每个图像,系统将该图像提供给第二模型,以生成该图像的嵌套。嵌套是由中间层之一生成的数据。然后,系统将由第二模型生成的嵌套中的每一个与地理位置关联,并将指定地理位置的位置数据、关联的一个或多个嵌套以及指定实体的数据存储在数据库中作为实体的关联实体条目。
然后将第二模型提供给移动设备。然后,移动设备可以使用第二模型以轻量(lightweight)但稳健的方式识别实体。更特别地,系统可以从移动设备接收对数据库中实体条目的请求。该请求可以包括指定移动设备的地理位置的位置数据。系统基于移动设备的地理位置选择数据库中实体条目的真子集。实体条目的真子集中的每个实体条目具有被确定为满足接近度阈值的位置数据,该接近度阈值指示实体的地理位置被确定为接近移动设备的地理位置。
移动设备接收数据库中实体条目的真子集并将其存储在例如高速缓冲存储器中。移动设备捕获图像,例如,用户拍摄店面的照片,并将该图像作为输入提供给第二模型以生成捕获的图像嵌套。然后,移动设备确定实体条目的真子集中的匹配嵌套集。每个匹配嵌套是根据匹配标准被确定为匹配捕获的图像嵌套的嵌套。移动设备基于匹配嵌套集在实体条目的真子集中选择实体条目作为匹配实体条目,然后在移动设备的显示设备上提供描述该匹配实体条目的实体的显示数据。
当两个或更多个实体条目具有匹配嵌套时,诸如在两个不同的商店的实体数据被存储在移动设备处的情况下,移动设备可以选择最靠近的实体条目进行显示。例如,对于具有匹配嵌套的每个实体条目,移动设备可以基于该实体条目的位置数据和移动设备的位置数据来确定距离值。然后,移动设备选择相对于具有匹配嵌套的其他实体条目的距离值具有最小距离值的实体条目。
这些特征和附加特征在下面更详细地进行描述。
图1是示例机器学习模型训练系统100的框图。机器学习模型训练系统100是被实现为一个或多个位置的一个或多个计算机上的计算机程序的系统的示例,在其中实现下面描述的系统、组件和技术。
机器学习模型训练系统100使用经训练的第一机器学习模型110训练第二机器学习模型120。通常,机器学习模型接收输入并基于接收的输入和模型的参数值生成输出。根据一些实施方式,创建经训练的第二模型的一种方式是通过蒸馏(distillation)。根据一些实施方式,可以使用用于使用神经网络生成第二模型的其他机器学习过程。
特别地,第二机器学习模型120和经训练的第一机器学习模型110都是已经被配置为接收输入并处理接收的输入以针对预定类别集中的每个类别生成相应分数的机器学习模型。第一机器学习模型110和第二机器学习模型120都包括多个连接层。连接层包括输出层、输入层和多个中间层。通常,第二机器学习模型120是具有与第一机器学习模型110不同的架构的模型,例如,由于第二机器学习模型120与第一机器学习模型110相比需要较少的计算、存储器或计算和存储器两者来在运行时间生成输出,因此使第二机器学习模型120比第一机器学习模型110更易于部署。例如,第二机器学习模型120可以具有比第一机器学习模型110更少的层、更少的参数或更少的层和参数两者。
已使用常规机器学习训练技术在训练输入集上训练了经训练的第一机器学习模型110,以确定第一机器学习模型110的参数的经训练值。特别地,经训练的第一机器学习模型110已被训练为使得由经训练的第一机器学习模型110为给定输入针对给定类别生成的分数表示该类别是该输入的准确分类的概率。
例如,如果第一机器学习模型110的输入是图像,则针对给定类别的分数可以表示输入图像包含属于该类别的对象的图像的概率。在特定示例中,第一机器学习模型110可以确定图像是否描绘被分类为以下类别中的一个或多个的对象:建筑物(例如,餐厅、企业等)、文本、条形码、地标、媒体对象(例如,专辑封面、电影海报等)或艺术品对象(例如,绘画、雕塑等)。作为另一示例,如果第一机器学习模型110的输入是文本片段,则类别可以是话题,并且针对给定话题的分数可以表示输入文本片段与该话题有关的概率。
根据一些实施方式,第一机器学习模型110是单个机器学习模型。在一些其他情况下,第一机器学习模型110是集成(ensemble)机器学习模型,其是已经被单独训练的多个单独机器学习模型的汇集(compilation),其中单独机器学习模型的输出被组合以生成第一机器学习模型110的输出。此外,在某些情况下,集成机器学习模型中的模型包括针对类别中的每一个生成分数的一个或多个完全模型(full model),以及仅针对该类别的相应子集生成分数的一个或多个专用模型(specialist model)。
模型训练系统100在训练输入集上训练第二机器学习模型120,以确定第二机器学习模型120的参数的经训练值,使得由第二机器学习模型120为给定输入针对给定类别生成的分数也表示该类别是输入的准确分类的概率。
特别地,为了训练第二机器学习模型120,模型训练系统100将第二机器学习模型120和第一机器学习模型110都配置为在训练第二机器学习模型120期间从训练输入生成软输出。
机器学习模型针对给定输入的软输出包括由机器学习模型的最后层针对类别中的每一个生成的相应软分数。与原始训练数据相比,该软分数在输入的类别集上定义更软的分数分布。
在训练期间,模型训练系统100使用第一机器学习模型110处理训练输入102以生成训练输入102的目标软输出112。模型训练系统100还使用第二机器学习模型120处理训练输入102以生成训练输入102的软输出122。然后,模型训练系统100通过调整第二机器学习模型120的参数值来训练第二机器学习模型120以生成与训练输入102的目标软输出112匹配的软输出122。
图1所示的模型训练系统仅是用于训练蒸馏机器学习模型的一个示例模型训练系统100。其他机器学习过程可以用来训练第二模型。在一些实施方式中,可以通过使用多种类型的模型或信号来执行图像识别。例如,使用嵌套和光学字符识别(OCR)两者。
然后,将经训练的第二机器学习模型120用于从地图数据库生成实体数据库。下面参考图2更详细地描述该数据的这种生成,图2是示例环境200的框图,在该示例环境200中,过程使用第二机器学习模型从地图数据生成嵌套的数据库。示例环境200包括地图数据库210、图1的经训练的第二机器学习模型120、数据库生成器220和实体数据库230。
地图数据库210是包括地理位置数据、实体数据和图像数据的数据存储(datastore)。地理位置数据可以是GPS坐标、地图坐标(例如,纬度和经度)或系统可以识别的任何其他位置信息。实体数据可以包括实体名称和其他元数据(例如,评论分数、地点类型、菜单等)。图像数据可以是来自移动设备的相机的一个或多个单帧图像、连续视频、图像流等。图像数据(也称为参考图像)可以由若干个用户和评价者(例如,餐厅的社交媒体评价者)拍摄。另外,可以从街景(street view)数据库中提取图像数据,该街景数据库从沿着世界上许多街道的位置提供全景视图。
根据一些方面,地图数据指定多个地理位置,其中,地理位置的至少子集中的每个地理位置与位于该地理位置处的实体以及描绘该地理位置处的实体的一个或多个图像关联。例如,实体可以是商店、建筑物、地标或任何其他可识别的物理、现实世界实体,并且地图数据指定相应的所识别实体在图像中的位置。根据一些方面,地图数据中的若干个图像可以与一个相应的实体关联。
第二机器学习模型120访问地图数据库210,并且第二模型120访问数据库210中的图像,以生成每个被访问的图像的图像嵌套215。图像嵌套215是由第二机器学习模型120的中间层之一(例如,输出层之前的最后层)生成的数据。当然,不同的中间层也可以用于嵌套。然后,数据库生成器220可以从生成的图像嵌套215创建实体数据库230。
实体数据库230是可以包括地图数据库210的地理位置数据和实体数据以及由第二模型120生成的图像嵌套215的数据存储。根据一些方面,位置数据、实体数据和图像嵌套215与相应的实体关联。根据一些方面,若干个图像嵌套215可以与一个相应的实体关联。例如,如果特定实体——特定位置处的特定咖啡店——使该位置处的咖啡店的十几个店面图像存储在地图数据库中,则可以针对每个店面图像创建相应的嵌套。在一些实施方式中,当存在与一个相应的实体关联的若干个图像嵌套215时(例如,识别往往共享相似特征的连锁级餐厅),可以使用平均嵌套。
一旦创建实体数据库230,就可以将其与第二模型一起提供给移动设备。然而,由于数据库230的大小,仅一部分,即数据库230的真子集被提供给移动设备。提供的特定部分取决于移动设备的位置。下面参考图3更详细地描述移动设备访问和使用实体数据库230的子集。
图3是示例环境300的框图,在示例环境300中,可以使用图像嵌套数据库子集在移动设备上发生图像识别过程。计算机网络302(诸如,局域网(LAN)、广域网(WAN)、互联网或其组合)连接服务器320和移动设备310。
服务器320可以表示应用服务器、数据库服务器、通信服务器、web服务器等的组合,其包括用于从本文描述的各种移动设备310上所使用的应用和模块收集数据、控制和管理这些应用和模块的移动平台提供商的系统。服务器320可以访问实体数据库230,以基于移动设备的地理位置向移动设备提供数据库中实体条目的子集。
移动设备310可以使用应用来呈现媒体。媒体是用户使用在移动设备310上运行的应用所消耗的图像、视频、音频、文本或类似的某种组合。web浏览器可以使用户能够显示文本、图像、视频、音乐以及通常位于万维网或局域网上的网站处的网页上的其他信息并与之交互。
移动设备310可以包括经训练的设备上机器学习模型,诸如,第二机器学习模型120。移动设备310还可以运行各种应用。移动设备310上的应用可以包括在其中可以示出图像的应用环境,例如,图形用户界面(GUI)。这样的应用的示例是可以使用设备上相机来捕获图像的相机启用应用、可以通过网络302从发布者接收图像并显示图像的应用和可以访问和显示存储在移动设备310上的图像的应用。例如,应用可以访问存储在移动设备310上的图像数据的存储库(repository),其中,应用环境可以从图像数据加载图像。此外,应用可以促进第二机器学习模型120的使用。
根据一些实施方式,移动设备310请求来自服务器320的实体条目的子集。移动设备310可以接收实体条目的子集并将其存储在实体数据库子集232中(例如,设备上存储器中)。
根据一些实施方式,移动设备310捕获图像,例如,用户拍摄店面的照片,并将该图像作为输入提供给第二模型120,以生成捕获的图像嵌套。移动设备310可以确定实体条目的子集中的匹配嵌套集。每个匹配嵌套是根据匹配标准被确定为匹配捕获的图像嵌套的嵌套。移动设备基于匹配嵌套集在实体条目的子集中选择实体条目作为匹配实体条目,然后在移动设备310的显示设备上提供描述该匹配实体条目的实体的显示数据。下面参考图4更详细地描述移动设备310的显示设备上的显示数据的示例。
图4描绘了移动设备的示例屏幕快照410和420的序列,该序列呈现了描述匹配实体条目的实体的显示数据。第一屏幕快照410描绘了诸如移动设备310的移动设备的示例用户界面412。在该示例中,用户正在通过呈现在用户界面412中的相机的取景器来查看实体414,咖啡店。用户界面412可以由移动设备上的应用生成和呈现。
第二屏幕快照420呈现了示例用户界面422,其具有描述所识别的实体414的显示数据430。在此示例中,用户界面422将显示数据430呈现为用户界面422的当前视图上的图形叠加。特别地,显示数据430在所识别的实体414的一部分上方呈现图形叠加,该识别的实体414在此示例中是名为“ACME COFFEE”的咖啡店。在显示数据430中向用户呈现与所识别的实体414有关的信息。显示数据430可以包括例如但不限于实体414的所识别的名称、来自其他用户的社交评价(如果适用)、在实体414处出售的物品的平均价格、地址、营业时间、网站链接或与该实体有关的任何其他信息。
移动设备310可以通过将来自诸如实体数据库230的实体条目的子集的嵌套和来自实体414的捕获的图像的嵌套进行匹配,以基于移动设备310的地理位置来识别实体414。识别过程使用在上面并在下面参考图5和6更详细地描述的过程在移动设备310上实现第二模型120。
图5是用于训练并使用机器学习模型用于图像识别的示例过程500的流程图。
过程500访问已被训练为生成对作为输入接收的图像数据进行分类的输出的第一模型(502)。可以根据分类方案对图像数据进行分类。例如,如图1所示,可以训练第一机器学习模型110以针对给定类别评分,分数可以表示输入图像包含属于该类别的对象的图像的概率。在特定示例中,第一机器学习模型110可以确定图像是否描绘被分类为以下类别中的一个或多个的对象:建筑物(例如,餐厅、企业等)、文本、条形码、地标、媒体对象(例如,专辑封面、电影海报等)或艺术品对象(例如,绘画、雕塑等)。另外,可以将任何数量的不同类别或类别的子集用于分类方案。
过程500训练第二模型以近似第一模型的输出,来根据分类方案对作为输入接收的图像数据进行分类(504)。例如,如图1所示,可以训练第二机器学习模型120以将第一机器学习模型110的目标软输出112近似为软输出122。根据一些实施方式,第二模型是卷积神经网络。
在训练第二模型之后,过程500访问指定多个地理位置的地图数据(506)。在一些实施方式中,地理位置的至少子集中的每个地理位置与位于该地理位置处的实体以及描绘该地理位置处的实体的一个或多个图像关联。例如,如图2所示,第二机器学习模型120访问来自地图数据库210的地图数据。
对于与实体关联的每个地理位置,过程500将描绘位于该地理位置处的实体的每个图像提供给第二模型以生成图像的嵌套(508)。根据一些实施方式,嵌套是由第二模型的中间层之一生成的数据。例如,如图2所示,第二机器学习模型120将从地图数据库210的地图数据生成描绘位于该地理位置处的实体的一个或多个图像中的每个图像的图像嵌套215。
对于与实体关联的每个地理位置,过程500将由第二模型生成的嵌套中的每一个与地理位置关联(510)。例如,如图2所示,数据库生成器220接收从第二机器学习模型120生成的图像嵌套215,以及来自地图数据库210的位置数据和实体数据,以生成实体数据库230。
对于与实体关联的每个地理位置,过程500将指定该地理位置的位置数据、关联嵌套以及指定实体的数据存储为该实体的关联实体条目(512)。例如,如图2所示,实体数据库230接收从第二机器学习模型120生成的图像嵌套215以及来自地图数据库210的位置数据和实体数据,并存储与实体关联的每个地理位置的相应数据。
根据一些实施方式,指定实体的数据包括描述该实体的实体描述和该实体的实体名称。例如,如图4所示,显示数据430描述了实体414,包括实体414的名称。根据一些实施方式,该实体是企业实体,诸如实体414。根据一些实施方式,该实体是地标实体。例如,移动设备的捕获的图像可以是城市中的雕像,该移动设备的用户不熟悉该雕像或用户可能想要关于该雕像的附加信息。因此,指定实体的数据可以指定雕像的名称以及关于雕像的附加信息。
在训练第二模型并且第二模型已经生成描绘位于地理位置处的实体的一个或多个图像中的每个图像的嵌套之后,过程500接收对实体条目的请求(514)。根据一些实施方式,该请求包括指定移动设备的地理位置的位置数据。例如,如图3所示,移动设备310向服务器320发送对实体数据库230中的实体条目的子集的请求。该请求包括移动设备的地理位置。
过程500基于移动设备的地理位置选择数据库中的实体条目的真子集(516)。根据一些实施方式,实体条目的子集中的每个实体条目具有被确定为满足接近度阈值的位置数据,该接近度阈值指示实体的地理位置被确定为与移动设备的地理位置接近。例如,来自移动设备(例如,GPS)的位置信息位于特定城市中,使得服务器320可以提供该特定城市的实体数据库的子集以限制移动设备所需的数据的大小。
在一些实施方式中,预定义的单元数据(cell data)可以用于进一步限制实体条目的子集的大小。例如,某些城市可能包含成千上万个可识别的实体,其中,所请求的子集的数据的大小可能太大或太繁琐以至于移动设备无法下载。因此,将数据划分为预定义的单元区域。在某些实施方式中,单元是一种数学机制,该数学机制帮助计算机将地球的球形3D形状转换为2D几何形状,并可以辅助将诸如大城市的大区域划分为若干个有组织的单元。在一些实施方式中,可以使用划分地理位置区域的其他已知方式。
根据一些实施方式,接近度阈值是指定地理距离的值。根据一些实施方式,接近度阈值是指定包括移动设备的地理位置的预定义区域的值。例如,接近度阈值可以是由从电话的位置向外的径向距离确定的距离,从而创建相对于移动设备的位置的位置数据的圆周。当用户或移动设备上的应用请求实体条目的新子集时,数据子集可以是围绕移动设备的位置的圆形区域的嵌套数据。
图6是用于将机器学习模型用于移动设备上的图像识别过程的示例过程600的流程图。
过程600在移动设备上存储已被训练为近似对作为输入接收的图像数据进行分类的第二模型的输出的第一模型(602)。可以根据分类方案对图像数据进行分类。例如,如图1所示,第二机器学习模型120可以被训练为近似第一机器学习模型110的输出,其中,第一机器学习模型110可以被训练为针对给定类别评分,分数可以表示输入图像包含属于该类别的对象的图像的概率。注意,过程600的第一模型是指学生模型,例如,图1的第二机器学习模型120,而过程600的第二模型是指教学模型(teaching model),例如,图1的第一机器学习模型110。
过程600向移动设备外部的计算机系统发送对由计算机系统管理的数据库中的实体条目的请求(604)。根据一些实施方式,该请求包括指定移动设备的地理位置的位置数据。例如,如图3所示,移动设备310向服务器320发送对基于移动设备的地理位置的实体数据库230中的实体条目的子集的请求。
根据一些实施方式,每个实体条目包括指定地理位置的位置数据、指定位于该地理位置处的实体的数据以及在计算机系统处由第一模型生成的一个或多个嵌套。另外,一个或多个嵌套中的每个嵌套从作为第一模型的输入接收的一个或多个图像生成,并且图像中的每一个是描绘该地理位置处的实体的图像。根据一些实施方式,每个嵌套是由第一模型(即,第二机器学习模型120)的中间层之一生成的数据。
过程600基于移动设备的地理位置从计算机系统接收数据库中的实体条目的真子集,并将该真子集存储在移动设备上(606)。例如,如图3所示,移动设备310可以将实体条目的真子集存储在移动设备中的实体数据库子集232中。
过程600通过移动设备捕获图像,并将该图像作为输入提供给第一模型以生成捕获的图像嵌套(608)。例如,如图4所示,屏幕快照410描绘了移动设备的用户界面412中的图像。然后,将此图像提供给存储在移动设备上的模型,诸如第二机器学习模型120,以生成捕获的图像嵌套。
过程600确定实体条目的真子集中的匹配嵌套集(610)。根据一些实施方式,每个匹配嵌套是根据匹配标准被确定为匹配捕获的图像嵌套的嵌套。例如,如图3所示,移动设备310可以确定由模型生成的捕获的图像嵌套是否与存储在移动设备上的实体数据库子集232中的嵌套匹配。
过程600基于匹配嵌套集在实体条目的真子集中选择实体条目作为匹配实体条目(612)。例如,如图3所示,如果存在由模型生成的捕获的图像嵌套和存储在移动设备上的实体数据库子集232中的嵌套之间的匹配的确定,则移动设备310将选择实体条目。
根据一些实施方式,在实体条目的真子集中选择实体条目作为匹配实体条目包括对于具有匹配嵌套的每个实体条目确定基于该实体条目的位置数据和移动设备的位置数据的距离值。在一些方面,选择实体条目包括选择相对于具有匹配嵌套的其他实体条目的距离值具有最小距离值的实体条目。例如,当两个或更多个实体条目具有匹配嵌套时,诸如在两个不同的商店的实体数据被存储在移动设备处的情况下,移动设备可以选择最靠近的实体条目进行显示。然后,移动设备选择相对于具有匹配嵌套的其他实体条目的距离值具有最小距离值的实体条目。
过程600提供描述匹配实体条目的实体的显示数据(614)。根据一些实施方式,提供描述匹配实体条目的实体的显示数据包括在捕获的图像上选择显示位置,以及将显示数据在显示位置处显示在捕获的图像上。例如,如图4所示,第二屏幕快照420呈现了示例用户界面422,其具有描述所识别的实体414的显示数据430。在该示例中,用户界面422将显示数据430呈现为用户界面422的当前视图上的图形叠加。特别地,显示数据430在所识别的实体414的一部分上方呈现图形叠加,该所识别的实体在此示例中为咖啡店:“ACME COFFEE”。
根据一些实施方式,在捕获的图像上选择显示位置包括从捕获的图像嵌套确定相对于捕获的图像嵌套中的其他活跃值作为最高值的激活值,并选择与捕获的图像嵌套中的该激活值对应的显示位置。
根据一些实施方式,捕获的图像是由移动设备捕获的多个图像帧之一,使得对于该多个图像帧进行:确定实体条目的真子集中的匹配嵌套集、选择与捕获的图像嵌套中的激活值对应的显示位置和将显示数据在显示位置处显示在捕获的图像上。
根据一些实施方式,过程600可以进一步包括接收基于移动设备的更新的地理位置的数据库中的实体条目的另一真子集。例如,移动设备地理位置移动到不同的位置(诸如不同的城市),或移动到第一真子集覆盖的地理区域之外。另外,该过程可以包括捕获另外的图像,确定根据匹配标准被确定为匹配另外的捕获的图像嵌套的匹配嵌套集,在实体条目的另外的真子集中选择另外的实体条目作为另外的匹配实体条目,并提供描述另外的匹配实体条目的实体的显示数据。
根据一些实施方式,在处理基于更新的地理位置的实体条目的另外的或更新的真子集之后,过程600还可以包括在确定移动设备位于更新的地理位置中时,从移动设备中删除实体条目的真子集。例如,移动设备可以仅存储该移动设备的当前地理位置的数据。此特征可以帮助减少移动设备上的存储容量需求。此外,通过移除实体条目的第一真子集,如果用户返回该地理位置并且需要再次下载实体条目的该第一真子集,则当移动设备下载实体条目的真子集时,更新的嵌套可以被包括。
根据一些实施方式,传送或训练机器学习模型、访问数据的子集(例如,地图数据的地理位置的子集)以及使用数据的子集来识别数据并将其存储在子集数据库中的过程可以单独地被处理、一起被处理作为本文描述的一个过程(例如,过程600)或以任何组合被处理。根据一些实施方式,除了地理位置之外,可以使用其他信号或数据来识别类似于子集信号(诸如本文所述的地理位置)的子集数据库。
图7是示例计算设备700、750的框图,该示例计算设备700、750可以用于实现本文档中描述的系统和方法,作为客户端或作为一个服务器或多个服务器。计算设备700旨在表示各种形式的数字计算机,诸如膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算设备700还旨在表示任何其他的一般的非移动设备,诸如其中嵌入了一个或多个处理器或被附接有一个或多个处理器的电视或其他电子设备。计算设备750旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他计算设备。在本文示出的组件、它们的连接和关系以及它们的功能应当仅是示例,而不应当限制在本文档中描述和/或请求保护的本公开的实施方式。
计算设备700包括处理器702、存储器704、存储设备706、连接到存储器704和高速扩展端口710的高速控制器708以及连接到低速总线714和存储设备706的低速控制器712。组件702、704、706、708、710和712中的每一个使用各种总线互连,并且可安装在共同的母板上或者酌情以其他方式安装。处理器702可以处理用于在计算设备700内执行的指令,包括存储在存储器704中或在存储设备706上的指令以在外部输入/输出设备(诸如联接到高速控制器708的显示器716)上显示图形用户界面(GUI)的图形信息。在其他实施方式中,可酌情连同多个存储器或多种类型的存储器使用多个处理器和/或多个总线。另外,可以连接多个计算设备700,其中每个设备提供所需操作的一些部分(例如,作为服务器阵列(bank)、一组刀片服务器或多处理器系统)。
存储器704存储计算设备700内的信息。在一个实施方式中,存储器704是计算机可读介质。在一个实施方式中,存储器704是一个或多个易失性存储器单元。在另一实施方式中,存储器704是一个或多个非易失性存储器单元。
存储设备706能够为计算设备700提供大容量存储。在一个实施方式中,存储设备706是计算机可读介质。在各种不同的实施方式中,存储设备706可为软盘设备、硬盘设备、光盘设备或带设备、闪存或其他类似的固态存储器设备或设备的阵列,包括在存储区域网络或其他配置中的设备。在一个实施方式中,计算机程序产品被有形地体现在信息载体中。计算机程序产品包含指令,所述指令在被执行时执行诸如上述方法的一个或多个方法。信息载体是计算机可读介质或机器可读介质,诸如存储器704、存储设备706或处理器702上的存储器。
高速控制器708管理计算设备700的带宽密集的操作,而低速控制器712管理较低的带宽密集的操作。这样的职能分配仅是示例。在一个实施方式中,高速控制器708联接到存储器704、显示器716(例如,通过图形处理器或加速器)并且联接到高速扩展端口710,高速扩展端口710可接受各种扩展卡(未示出)。在该实施方式中,低速控制器712联接到存储设备706和低速总线714。可包括各种通信端口(例如,USB、
Figure BDA0002721432850000171
以太网、无线以太网)的低速总线714(例如,低速扩展端口)可联接到一个或多个输入/输出设备,诸如键盘、指向设备、扫描仪或(例如通过网络适配器)联接到联网设备,诸如交换机或路由器。
如图中所示,计算设备700可以以许多不同形式来实现。例如,其可以被实现为标准服务器720或在一组这样的服务器中实现多次。其也可以被实现为机架服务器系统724的一部分。此外,其可以实现在个人计算机(诸如,膝上型计算机722)中。替代地,来自计算设备700的组件可以与移动设备(诸如,计算设备750)中的其他组件(未示出)组合。每个这样的设备可以包含一个或多个计算设备700、750,并且整个系统可以由彼此通信的多个计算设备700、750组成。
计算设备750除了其他组件之外包括处理器752、存储器764、输入/输出设备(诸如显示器754)、通信接口766和收发器768。计算设备750还可以被提供有存储设备,诸如微硬盘(micro-drive)或其他设备,以提供附加存储。组件750、752、764、754、766和768中的每一个使用各种总线互连,并且这些组件中的若干组件可安装在共同的母板上或者酌情以其他方式安装。
处理器752可以处理用于在计算设备750内执行的指令,包括存储在存储器764中的指令。处理器还可以包括单独的模拟或数字处理器。处理器可以例如提供计算设备750的其他组件的协调,诸如控制用户接口、计算设备750所运行的应用和计算设备750进行的无线通信。
处理器752可以通过联接到显示器754的控制接口758和显示接口756与用户通信。显示器754可以例如是TFT LCD显示器或OLED显示器或其他适当的显示器技术。显示接口756可以包括用于驱动显示器754以向用户呈现图形和其他信息的适当电路。控制接口758可以接收来自用户的命令并且对命令进行转换以提交给处理器752。此外,可以提供与处理器752通信的外部接口762,以便使得能够进行计算设备750与其他设备的近区域通信。外部接口762可以提供例如有线通信(例如,经由对接过程)或无线通信(例如,经由
Figure BDA0002721432850000181
或其他这样的技术)。
存储器764存储计算设备750内的信息。在一个实施方式中,存储器764是计算机可读介质。在一个实施方式中,存储器764是一个或多个易失性存储器单元。在另一实施方式中,存储器764是一个或多个非易失性存储器单元。还可以提供扩展存储器774并将其通过扩展接口772连接到计算设备750,扩展接口772可以包括例如订户识别模块(SIM)卡接口。这样的扩展存储器774可以为计算设备750提供额外存储空间,或者可以存储用于计算设备750的应用或其他信息。特别地,扩展存储器774可以包括执行或补充上述过程的指令,并且还可以包括安全信息。这样,例如,扩展存储器774可以被提供为计算设备750的安全模块,并且可以被编程有允许计算设备750的安全使用的指令。此外,可以经由SIM卡提供安全应用连同附加信息,诸如,以不可破解的方式将识别信息置于SIM卡上。
存储器可以包括例如闪存和/或MRAM存储器,如下面所讨论。在一个实施方式中,计算机程序产品被有形地体现在信息载体中。计算机程序产品包含指令,所述指令在被执行时执行诸如上述方法的一个或多个方法。信息载体是计算机可读介质或机器可读介质,诸如存储器764、扩展存储器774或处理器752上的存储器。
计算设备750可以通过通信接口766无线通信,通信接口766在需要的情况下可以包括数字信号处理电路。通信接口766可以提供各种模式或协议(诸如,GSM语音呼叫、SMS、EMS或MMS消息传输、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS以及其他)下的通信。这样的通信可以例如通过收发器768(例如,射频收发器)发生。此外,可以进行短程通信,例如使用
Figure BDA0002721432850000191
WiFi或其他收发器(未示出)。此外,GPS接收器模块770可以向计算设备750提供附加的无线数据,其可以酌情由计算设备750上运行的应用使用。
计算设备750还可以使用音频编解码器760进行可听地通信,音频编解码器760可以从用户接收口头信息并将其转换成可用的数字信息。音频编解码器760可以同样为用户生成可听声音,诸如通过(例如,计算设备750的手持接送话器(handset)中的)扬声器。这样的声音可以包括来自语音电话呼叫的声音,可以包括记录的声音(例如,语音消息、音乐文件等),并且还可以包括由计算设备750上进行操作的应用生成的声音。
如图中所示,计算设备750可以以许多不同形式来实现。例如,其可以被实现为蜂窝电话780。其还可以被实现为智能电话782、个人数字助理或其他移动设备的一部分。
在本文讨论的系统收集关于用户的个人信息或可能会利用个人信息的情况下,可以给用户提供控制应用或特征是否收集用户信息(例如,关于用户的社交网络、社交动作或行为、职业、用户的偏好或用户的当前位置的信息)或控制是否和/或如何接收可能与用户较相关的内容的机会。此外,可以在存储或使用某些数据之前以一种或多种方式处理所述数据,以便去除个人可识别信息。例如,可以处理用户的身份以使得不能够确定该用户的个人可识别信息,或者可以笼统化获得位置信息的用户的地理位置(诸如,到市、邮政编码或州级),以使得不能够确定用户的具体位置。因此,用户可以控制如何收集关于用户的信息和如何由内容服务器使用信息。
本说明书中描述的主题和操作的实施例可以在数字电子电路或在计算机软件、固件或硬件(包括本说明书中公开的结构以及其结构等效物)或在它们中的一个或多个的组合中实现。本说明书中描述的主题的实施例可以被实现为一个或多个计算机程序,即编码在计算机存储介质上以供数据处理装置执行或控制数据处理装置的操作的计算机程序指令的一个或多个模块。
计算机存储介质可以是计算机可读存储设备、计算机可读存储基片、随机或顺序存取存储器阵列或设备或它们中的一个或多个的组合,或可以被包括在计算机可读存储设备、计算机可读存储基片、随机或顺序存取存储器阵列或设备或它们中的一个或多个的组合中。另外,尽管计算机存储介质不是传播信号,但是计算机存储介质可以是以人工生成的传播信号进行编码的计算机程序指令的源或目的地。计算机存储介质还可以是一个或多个分离的物理组件或介质(例如,多个CD、盘或其他存储设备),或被包括在一个或多个分离的物理组件或介质(例如,多个CD、盘或其他存储设备)中。
本说明书中描述的操作可以被实现为由数据处理装置对存储在一个或多个计算机可读存储设备上或从其他源接收的数据执行的操作。
术语“数据处理装置”涵盖用于处理数据的所有种类的装置、设备和机器,举例来说包括可编程处理器、计算机、芯片上系统或前述中的多个或组合。所述装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,装置还可以包括代码,该代码为所讨论的计算机程序创建执行环境,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时间环境、虚拟机或它们中的一个或多个的组合的代码。所述装置和执行环境可以实现各种不同的计算模型基础设施,诸如web服务、分布式计算和网格计算基础设施。
计算机程序(也被称为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言编写,包括编译或解释性语言、陈述性或过程语言,并且可以以任何形式部署计算机程序,包括作为独立程序或作为模块、组件、子例程、对象或适于用在计算环境中的其他单元。计算机程序可以但不必与文件系统中的文件对应。程序可以存储在保持其他程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本)中、在专用于所讨论的程序的单个文件中或在多个协作的文件(例如,存储一个或多个模块、子程序或代码的一些部分的文件)中。计算机程序可以部署为在一个或多个计算机上执行,这些计算机位于一个站点或跨多个站点分布并通过通信网络互连。
本说明书中描述的过程和逻辑流可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,从而通过对输入数据进行操作并生成输出来执行动作。过程和逻辑流也可以由专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(专用集成电路))来执行,并且装置可以被实现为专用逻辑电路。
举例来说,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或二者接收指令和数据。计算机的基本元件是用于根据指令执行动作的处理器和用于存储指令和数据的一个或多个存储器设备。一般来说,计算机也将包括用于存储数据的一个或多个大容量存储设备(例如、磁盘、磁光盘或光盘)或可以操作性地联接一个或多个大容量存储设备以从其接收数据或将数据传输到其处或者接收和传输二者。然而,计算机不必具有这样的设备。另外,计算机可以嵌入在另一设备(例如,仅举例几个,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)快闪驱动器))中。适用于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,举例来说,包括半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路来补充或可以结合到其中。
为了提供与用户的交互,本说明书中描述的主题的实施例可以实现在具有显示设备及键盘和指向设备的计算机上,显示设备例如为用于为用户显示信息的CRT(阴极射线管)或LCD(液晶显示)监视器,用户可以通过键盘和指向设备向计算机提供输入,指向设备例如为鼠标或轨迹球。也可以使用其他种类的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。此外,通过向由用户使用的设备发送文档和接收来自该设备的文档,计算机可以与用户交互;例如,通过响应于从web浏览器接收的请求而将网页发送到用户的用户设备上的web浏览器。
本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括后端组件(例如作为数据服务器)或包括中间件组件(例如应用服务器)或包括前端组件(例如具有图形用户界面和web浏览器的用户计算机,用户可通过图形用户界面和web浏览器与本说明书中描述的主题的实施方式进行交互),或者一个或多个这样的后端、中间件或前端组件的任意组合。可以通过任意形式或媒介的数字数据通信(例如通信网络)将系统的组件互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、互联网(例如,因特网)和点对点网络(例如,自组(ad hoc)点对点网络)。
计算系统可以包括用户和服务器。一般来说,用户和服务器彼此远离,并且通常通过通信网络交互。通过运行在相应计算机上并且彼此具有用户-服务器关系的计算机程序而形成用户和服务器的关系。在一些实施例中,服务器向用户设备传输数据(例如,HTML页面)(例如,为了向与用户设备交互的用户显示数据和从其接收用户输入的目的)。在用户设备处生成的数据(例如,用户交互的结果)可以在服务器处从用户设备接收。
尽管本说明书包含许多具体的实现细节,但是这些细节不应当被解释为对任何特征或可能请求保护的范围进行限制,而应该被解释为特定于特定实施例的特征的描述。在本说明书中在单独的实施例的上下文中描述的某些特征也可以以组合实现在单个实施例中。相反,在单个实施例的上下文中描述的各种特征也可以在多个独立的实施例中分开实施或在任何合适的子组合中实施。此外,尽管特征可以如上描述为以某些组合起作用并且甚至最初也这样地请求保护,但在一些情况下,来自所请求保护的组合的一个或多个特征可以从组合中排除,并且所请求保护的组合可以指向子组合或子组合的变体。
类似地,尽管在附图中以特定顺序描绘了操作,但是这不应当被理解为需要以示出的特定顺序或以相继的顺序来执行这样的操作或者需要执行所有示意的操作来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。另外,在上述实施例中对各种系统组件的分离不应当被理解为在所有实施例中要求这样的分离,而是应当要理解,所描述的程序组件和系统可一般地在单个软件产品中被集成在一起或者被封装成多个软件产品。
这样,已经描述了主题的特定实施例。其他实施例在所附权利要求的范围内。在一些情况下,记载在权利要求中的动作可以以不同的顺序执行而仍然实现期望的结果。此外,附图中描绘的过程不一定需要所示出的特定顺序或者相继的顺序来实现期望的结果。在某些实施方式中,多任务和并行处理可能是有利的。

Claims (20)

1.一种在数据处理装置中实现的方法,包括:
访问第一模型,所述第一模型已被训练为根据分类方案生成对作为输入接收的图像数据进行分类的输出;
使用所述第一模型训练第二模型以近似所述第一模型的所述输出,以根据所述分类方案对作为输入接收的图像数据进行分类,其中,所述第二模型包括多个连接层,所述多个连接层包括输出层、输入层和多个中间层;以及
在训练所述第二模型之后:
访问指定多个地理位置的地图数据,其中,所述地理位置的至少子集中的每个地理位置与位于所述地理位置处的实体以及描绘所述地理位置处的所述实体的一个或多个图像关联;
对于与实体关联的每个地理位置:
对于描绘位于所述地理位置处的实体的所述一个或多个图像中的每个图像,将所述图像提供给所述第二模型以生成所述图像的嵌套,其中,所述嵌套是由所述中间层之一生成的数据;
将由所述第二模型生成的一个或多个嵌套中的每个嵌套与所述地理位置关联;以及
将指定所述地理位置的位置数据、关联的一个或多个嵌套以及指定所述实体的数据存储在数据库中,作为所述实体的关联实体条目。
2.根据权利要求1所述的方法,还包括:
从移动设备接收对所述数据库中的实体条目的请求,所述请求包括指定所述移动设备的地理位置的位置数据;以及
基于所述移动设备的所述地理位置,选择所述数据库中的实体条目的真子集,其中,实体条目的所述真子集中的每个实体条目具有被确定为满足接近度阈值的位置数据,所述接近度阈值指示所述实体的地理位置被确定为接近所述移动设备的地理位置。
3.根据权利要求2所述的方法,其中,所述接近度阈值是指定地理距离的值。
4.根据权利要求2所述的方法,其中,所述接近度阈值是指定包括所述移动设备的地理位置的预定义区域的值。
5.根据权利要求1所述的方法,其中,指定所述实体的所述数据包括描述所述实体的实体描述以及所述实体的实体名称。
6.根据权利要求5所述的方法,其中,所述实体是企业实体。
7.根据权利要求5所述的方法,其中,所述实体是地标实体。
8.根据权利要求1所述的方法,其中,所述第二模型是卷积神经网络。
9.一种在移动设备中实现的方法,包括:
在所述移动设备上存储第一模型,所述第一模型已被训练为近似根据分类方案对作为输入接收的图像数据进行分类的第二模型的输出,其中,所述第一模型包括多个连接层,所述多个连接层包括输出层、输入层和多个中间层;
向所述移动设备外部的计算机系统发送对由所述计算机系统管理的数据库中的实体条目的请求,所述请求包括指定所述移动设备的地理位置的位置数据,其中,每个实体条目包括:
指定地理位置的位置数据;
指定位于所述地理位置处的实体的数据;以及
在所述计算机系统处由所述第一模型生成的一个或多个嵌套,所述一个或多个嵌套中的每一个从作为所述第一模型的输入接收的一个或多个图像生成,并且图像中的每一个是描绘所述地理位置处的所述实体的图像,并且其中,每个嵌套是由所述中间层之一生成的数据;
从所述计算机系统接收所述数据库中的实体条目的真子集,所述真子集基于所述移动设备的地理位置而选择,并将实体条目的所述真子集存储在所述移动设备上;
由所述移动设备捕获图像,并将所述图像作为输入提供给所述第一模型,以生成捕获的图像嵌套;
确定实体条目的所述真子集中的匹配嵌套集,每个匹配嵌套是根据匹配标准被确定为与所述捕获的图像嵌套匹配的嵌套;
基于所述匹配嵌套集,在实体条目的所述真子集中选择实体条目作为匹配实体条目;以及
在所述移动设备的显示设备上提供描述所述匹配实体条目的实体的显示数据。
10.根据权利要求9所述的方法,其中,基于所述匹配嵌套集,在实体条目的所述真子集中选择实体条目作为匹配实体条目包括:
对于具有匹配嵌套的每个实体条目,基于所述实体条目的位置数据和所述移动设备的位置数据确定距离值;以及
选择相对于具有匹配嵌套的其他实体条目的距离值具有最小距离值的实体条目。
11.根据权利要求9所述的方法,其中,提供描述所述匹配实体条目的实体的显示数据包括:
在所述捕获的图像上选择显示位置;以及
将所述显示数据在所述显示位置处显示在所述捕获的图像上。
12.根据权利要求11所述的方法,其中,在所述捕获的图像上选择显示位置包括:
从所述捕获的图像嵌套确定相对于所述捕获的图像嵌套中的其他活跃值作为最高值的激活值;以及
选择与所述捕获的图像嵌套中的所述激活值对应的显示位置。
13.根据权利要求12所述的方法,其中,所述捕获的图像是由所述移动设备捕获的多个图像帧之一,并且对于所述多个图像帧进行:确定实体条目的所述真子集中的所述匹配嵌套集、选择与所述捕获的图像嵌套中的激活值对应的显示位置和将所述显示数据在所述显示位置处显示在所述捕获的图像上。
14.根据权利要求11中的任一项所述的方法,其中:
所述捕获的图像是由所述移动设备捕获的多个图像帧之一;以及
对于所述多个图像帧进行:确定实体条目的所述真子集中的匹配嵌套集、在实体条目的所述真子集中选择实体条目作为匹配实体条目并提供描述所述匹配实体条目的实体的显示数据。
15.根据权利要求9所述的方法,还包括:
从所述计算机系统接收所述数据库中的实体条目的另外的真子集,所述另外的真子集基于所述移动设备的更新的地理位置而选择,并且将实体条目的所述另外的真子集存储在所述移动设备上;
由所述移动设备捕获另外的图像,并将所述另外的图像作为输入提供给所述第一模型,以生成另外的捕获的图像嵌套;
确定实体条目的所述另外的真子集中的匹配嵌套集,每个匹配嵌套是根据匹配标准被确定为与所述另外的捕获的图像嵌套匹配的嵌套;
基于所述匹配嵌套集,在实体条目的所述另外的真子集中选择另外的实体条目作为另外的匹配实体条目;以及
在所述移动设备的显示设备上提供描述所述另外的匹配实体条目的实体的显示数据。
16.根据权利要求15所述的方法,还包括:
当确定所述移动设备处于更新的地理位置中时,从所述移动设备删除实体条目的所述真子集。
17.一种系统,包括:
数据处理装置;以及
非暂时性计算机可读存储介质,其与所述数据处理装置进行数据通信,并存储由所述数据处理装置可执行并且在这样的执行时使所述数据处理装置执行操作的指令,所述操作包括:
访问第一模型,所述第一模型已被训练为根据分类方案生成对作为输入接收的图像数据进行分类的输出;
使用所述第一模型训练第二模型以近似所述第一模型的输出,以根据所述分类方案对作为输入接收的图像数据进行分类,其中,所述第二模型包括多个连接层,所述多个连接层包括输出层、输入层和多个中间层;以及
在训练所述第二模型之后:
访问指定多个地理位置的地图数据,其中,所述地理位置的至少子集中的每个地理位置与位于所述地理位置处的实体以及描绘所述地理位置处的实体的一个或多个图像关联;
对于与实体关联的每个地理位置:
对于描绘位于所述地理位置处的实体的所述一个或多个图像中的每个图像,将所述图像提供给所述第二模型以生成所述图像的嵌套,其中,所述嵌套是由所述中间层之一生成的数据;
将由所述第二模型生成的一个或多个嵌套中的每个嵌套与所述地理位置关联;以及
将指定所述地理位置的位置数据、关联的一个或多个嵌套以及指定所述实体的数据存储在数据库中,作为所述实体的关联实体条目。
18.一种编码有计算机程序的非暂时性计算机存储介质,所述计算机程序包括指令,所述指令在由数据处理装置执行时使所述数据处理装置执行操作,所述操作包括:
访问第一模型,所述第一模型已被训练为根据分类方案生成对作为输入接收的图像数据进行分类的输出;
使用所述第一模型训练第二模型以近似所述第一模型的所述输出,以根据所述分类方案对作为输入接收的图像数据进行分类,其中,所述第二模型包括多个连接层,所述多个连接层包括输出层、输入层和多个中间层;以及
在训练所述第二模型之后:
访问指定多个地理位置的地图数据,其中,所述地理位置的至少子集中的每个地理位置与位于所述地理位置处的实体以及描绘所述地理位置处的所述实体的一个或多个图像关联;
对于与实体关联的每个地理位置:
对于描绘位于所述地理位置处的实体的所述一个或多个图像中的每个图像,将所述图像提供给所述第二模型以生成所述图像的嵌套,其中,所述嵌套是由所述中间层之一生成的数据;
将由所述第二模型生成的一个或多个嵌套中的每个嵌套与所述地理位置关联;以及
将指定所述地理位置的位置数据、关联的一个或多个嵌套以及指定所述实体的数据存储在数据库中,作为所述实体的关联实体条目。
19.一种系统,包括:
数据处理装置;以及
非暂时性计算机可读存储介质,其与所述数据处理装置进行数据通信,并存储由所述数据处理装置可执行并且在这样的执行时使所述数据处理装置执行操作的指令,所述操作包括:
在移动设备上存储第一模型,所述第一模型已被训练为近似根据分类方案对作为输入接收的图像数据进行分类的第二模型的输出,其中,所述第一模型包括多个连接层,所述多个连接层包括输出层、输入层和多个中间层;
向所述移动设备外部的计算机系统发送对由所述计算机系统管理的数据库中的实体条目的请求,所述请求包括指定所述移动设备的地理位置的位置数据,其中,每个实体条目包括:
指定地理位置的位置数据;
指定位于所述地理位置处的实体的数据;以及
在所述计算机系统处由所述第一模型生成的一个或多个嵌套,所述一个或多个嵌套中的每一个从作为所述第一模型的输入接收的一个或多个图像生成,并且图像中的每一个是描绘所述地理位置处的所述实体的图像,并且其中,每个嵌套是由所述中间层之一生成的数据;
从所述计算机系统接收所述数据库中的实体条目的真子集,所述真子集基于所述移动设备的地理位置而选择,并将实体条目的所述真子集存储在所述移动设备上;
由所述移动设备捕获图像,并将所述图像作为输入提供给所述第一模型,以生成捕获的图像嵌套;
确定实体条目的所述真子集中的匹配嵌套集,每个匹配嵌套是根据匹配标准被确定为与所述捕获的图像嵌套匹配的嵌套;
基于所述匹配嵌套集,在实体条目的所述真子集中选择实体条目作为匹配实体条目;以及
在所述移动设备的显示设备上提供描述所述匹配实体条目的实体的显示数据。
20.一种编码有计算机程序的非暂时性计算机存储介质,所述计算机程序包括指令,所述指令在由数据处理装置执行时使所述数据处理装置执行操作,所述操作包括:
在移动设备上存储第一模型,所述第一模型已被训练为近似根据分类方案对作为输入接收的图像数据进行分类的第二模型的输出,其中,所述第一模型包括多个连接层,所述多个连接层包括输出层、输入层和多个中间层;
向所述移动设备外部的计算机系统发送对由所述计算机系统管理的数据库中的实体条目的请求,所述请求包括指定所述移动设备的地理位置的位置数据,其中,每个实体条目包括:
指定地理位置的位置数据;
指定位于所述地理位置处的实体的数据;以及
在所述计算机系统处由所述第一模型生成的一个或多个嵌套,所述一个或多个嵌套中的每一个从作为所述第一模型的输入接收的一个或多个图像生成,并且图像中的每一个是描绘所述地理位置处的实体的图像,并且其中,每个嵌套是由所述中间层之一生成的数据;
从所述计算机系统接收所述数据库中的实体条目的真子集,所述真子集基于所述移动设备的地理位置而选择,并将实体条目的所述真子集存储在所述移动设备上;
由所述移动设备捕获图像,并将所述图像作为输入提供给所述第一模型,以生成捕获的图像嵌套;
确定实体条目的所述真子集中的匹配嵌套集,每个匹配嵌套是根据匹配标准被确定为与所述捕获的图像嵌套匹配的嵌套;
基于所述匹配嵌套集,在实体条目的所述真子集中选择实体条目作为匹配实体条目;以及
在所述移动设备的显示设备上提供描述所述匹配实体条目的实体的显示数据。
CN201980025571.1A 2018-08-13 2019-08-12 设备上图像识别 Pending CN111989665A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/101,594 US10769428B2 (en) 2018-08-13 2018-08-13 On-device image recognition
US16/101,594 2018-08-13
PCT/US2019/046169 WO2020036874A1 (en) 2018-08-13 2019-08-12 On-device image recognition

Publications (1)

Publication Number Publication Date
CN111989665A true CN111989665A (zh) 2020-11-24

Family

ID=67766389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980025571.1A Pending CN111989665A (zh) 2018-08-13 2019-08-12 设备上图像识别

Country Status (3)

Country Link
US (1) US10769428B2 (zh)
CN (1) CN111989665A (zh)
WO (1) WO2020036874A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10992646B2 (en) 2016-01-15 2021-04-27 Xingchang Zhou Data transmission method and data transmission apparatus

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6572269B2 (ja) * 2017-09-06 2019-09-04 株式会社東芝 学習装置、学習方法、およびプログラム
US11042611B2 (en) * 2018-12-10 2021-06-22 XNOR.ai, Inc. Digital watermarking of machine-learning models
US11151993B2 (en) * 2018-12-28 2021-10-19 Baidu Usa Llc Activating voice commands of a smart display device based on a vision-based mechanism
US11444845B1 (en) * 2019-03-05 2022-09-13 Amazon Technologies, Inc. Processing requests using compressed and complete machine learning models
US11163940B2 (en) * 2019-05-25 2021-11-02 Microsoft Technology Licensing Llc Pipeline for identifying supplemental content items that are related to objects in images
US20220092404A1 (en) * 2020-09-18 2022-03-24 Arm Cloud Technology, Inc. Neural network selection

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100305844A1 (en) * 2009-06-01 2010-12-02 Choi Sung-Ha Mobile vehicle navigation method and apparatus thereof
US9542948B2 (en) * 2014-04-09 2017-01-10 Google Inc. Text-dependent speaker identification
US20180012107A1 (en) * 2015-12-11 2018-01-11 Tencent Technology (Shenzhen) Company Limited Image classification method, electronic device, and storage medium
CN107832799A (zh) * 2017-11-20 2018-03-23 北京奇虎科技有限公司 基于摄像头场景的对象识别方法及装置、计算设备
CN108270794A (zh) * 2018-02-06 2018-07-10 腾讯科技(深圳)有限公司 内容发布方法、装置及可读介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08227410A (ja) * 1994-12-22 1996-09-03 Just Syst Corp ニューラルネットワークの学習方法、ニューラルネットワークおよびニューラルネットワークを利用した音声認識装置
US20080082549A1 (en) * 2006-10-02 2008-04-03 Vic Baker Multi-Dimensional Web-Enabled Data Viewer
WO2012086054A1 (ja) * 2010-12-24 2012-06-28 パイオニア株式会社 ナビゲーション装置、制御方法、プログラム、及び記憶媒体
US9524435B2 (en) * 2015-03-20 2016-12-20 Google Inc. Detecting the location of a mobile device based on semantic indicators
US20160334969A1 (en) * 2015-05-11 2016-11-17 Facebook, Inc. Methods and Systems for Viewing an Associated Location of an Image

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100305844A1 (en) * 2009-06-01 2010-12-02 Choi Sung-Ha Mobile vehicle navigation method and apparatus thereof
US9542948B2 (en) * 2014-04-09 2017-01-10 Google Inc. Text-dependent speaker identification
US20180012107A1 (en) * 2015-12-11 2018-01-11 Tencent Technology (Shenzhen) Company Limited Image classification method, electronic device, and storage medium
CN107832799A (zh) * 2017-11-20 2018-03-23 北京奇虎科技有限公司 基于摄像头场景的对象识别方法及装置、计算设备
CN108270794A (zh) * 2018-02-06 2018-07-10 腾讯科技(深圳)有限公司 内容发布方法、装置及可读介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GABRIEL TAKACS 等: "Outdoors augmented reality on mobile phone using loxel-based visual feature organization", 《PROCEEDINGS OF THE WORKSHOP ON MULTIMEDIA INFORMATION RETRIEVAL(MIRO)》 *
GEORGE SEIF: "Deep Learning for Image Recognition: why it"s challenging, where we"ve been, and what"s next", 《URL:HTTPS://TOWARDSDATASCIENCE.COM/DEEP-LEARNING-FOR-IMAGE-CLASSIFICATION-WHY-ITS-CHALLENGING-WHERE-WE-VE-BEEN-AND-WHAT-S-NEXT-93B56948FCEF》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10992646B2 (en) 2016-01-15 2021-04-27 Xingchang Zhou Data transmission method and data transmission apparatus

Also Published As

Publication number Publication date
US10769428B2 (en) 2020-09-08
WO2020036874A1 (en) 2020-02-20
US20200050846A1 (en) 2020-02-13

Similar Documents

Publication Publication Date Title
US11483268B2 (en) Content navigation with automated curation
US10769428B2 (en) On-device image recognition
US11715473B2 (en) Intuitive computing methods and systems
US11328008B2 (en) Query matching to media collections in a messaging system
JP5843207B2 (ja) 直観的コンピューティング方法及びシステム
JP6569313B2 (ja) 施設特性を更新する方法、施設をプロファイリングする方法、及びコンピュータ・システム
KR101780034B1 (ko) 증강 현실 표본 생성
US11954142B2 (en) Method and system for producing story video
US20240202550A1 (en) Machine learning modeling using social graph signals
US11601391B2 (en) Automated image processing and insight presentation
US10846550B2 (en) Object classification for image recognition processing
KR20230162062A (ko) 노래로부터의 신경망 반주 추출
KR20230162078A (ko) 보컬들의 특성들을 변경하기 위한 신경망들

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination