CN111149339A - 智能高级内容检索 - Google Patents

智能高级内容检索 Download PDF

Info

Publication number
CN111149339A
CN111149339A CN201880062783.2A CN201880062783A CN111149339A CN 111149339 A CN111149339 A CN 111149339A CN 201880062783 A CN201880062783 A CN 201880062783A CN 111149339 A CN111149339 A CN 111149339A
Authority
CN
China
Prior art keywords
data
user
determining
future time
time
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.)
Granted
Application number
CN201880062783.2A
Other languages
English (en)
Other versions
CN111149339B (zh
Inventor
维克托·克尔布内
桑德罗·弗兹
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 CN111149339A publication Critical patent/CN111149339A/zh
Application granted granted Critical
Publication of CN111149339B publication Critical patent/CN111149339B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5681Pre-fetching or pre-delivering data based on network characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Game Theory and Decision Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

描述了用于实现高级内容检索的方法、系统和装置。可以实现机器学习方法,使得系统可以预测用户设备何时可能经历网络断开。该系统还可以预测用户设备上的一个或多个应用可能试图在网络断开时段期间下载的内容的类型。神经网络可以基于用户活动日志数据来训练并且可以实现机器学习技术来确定用于高级内容检索的用户偏好和设置。系统可以预测用户何时可能想要提前下载内容,用户可能感兴趣的内容的类型,预期的网络连接性和预期的电池消耗。然后,系统可以基于该预测为用户设备生成推荐。如果用户同意推荐,则系统可以获取并缓存内容。

Description

智能高级内容检索
技术领域
本公开一般涉及数据通信。
背景技术
用户越来越依赖便携式电子设备来按需访问信息或获取数据。但是,当用户的设备缺少无线网络连接并且他们忘记在网络断开连接时段之前下载信息时,他们可能会遇到访问信息的困难。
发明内容
本公开总体上描述了其中训练用户设备以在预期没有网络连接性的时间段之前检索数据的系统和方法。
根据实现方式,描述了用于要在将来的时间输出的内容的高级检索的方法和系统。可以实现机器学习方法,从而可以训练具有神经网络的系统以预测用户设备何时可能经历网络断开。该系统还可以预测用户设备上的一个或多个应用在有很少或没有网络连接的预期的时段期间试图下载的内容的类型。然后,系统可以基于预测为用户设备生成内容推荐。如果用户同意内容推荐,则系统可以获取并缓存与该推荐相关联的内容。当用户设备几乎没有或没有网络连接性时或者在将来的任何其他时间,可以输出所存储的内容。
本说明书中描述的高级内容检索方法和系统具有许多优点。例如,用户设备可以在不期望用户设备具有网络连接的时间之前排程内容获取。可以在最少或没有用户输入的情况下获得内容。通过利用用户特定的训练数据,系统可以生成更准确并且与用户设备的实际使用相一致的预测和推荐,从而导致用户设备中的优化和更高效的电池使用。此外,通过学习用户偏好并且不需要用户输入,用户免于提前请求数据下载的负担或预期用户的设备将与网络断开连接的时间段的负担。在用户设备在后台执行一个或多个操作以进行预测并获取内容的同时,用户可以将用户的注意力引向其他地方并进行任何其他活动。
另外,所描述的方法和系统通过即使在没有网络连接可用时也通过向应用提供数据来增强应用的实用性。因此,应用可以在有或没有网络连接的情况下运行。可以使用各种应用来实现高级内容检索方法,并且可以使用应用编程接口来与应用交互以获得特定于每个应用的内容。
在一些实现方式中,本说明书中描述的主题的创新方面包括一种计算机实现的方法,以执行操作,例如,控制内容向诸如无线用户设备之类的用户设备的传输。这些操作包括使用活动日志数据训练神经网络系统。一个或多个计算设备基于使用活动日志数据训练神经网络系统,确定一个或多个参数的相应值以配置在第一未来时间数据的获取,至少基于一个或多个参数以及使用活动日志数据训练神经网络系统来生成在第一未来时间获取数据的推荐,并且接收指示接受或拒绝所生成的在第一未来时间获取数据的推荐的用户输入。响应于接收到指示接受所生成的推荐的用户输入,一个或多个计算设备在第一未来时间从一个或多个内容传递服务器获得数据,进一步使用接收到的用户输入来训练神经网络系统,使用经训练的神经网络系统确定用于输出获得的数据的第二未来时间,并控制输出设备(例如显示器)在第二未来时间输出获得的数据。配置对数据的获取的参数可以指影响向用户设备传输数据的过程的参数,例如,向用户设备传输数据的速率或传输数据项所花费的时间。与将内容提取到用户设备的过程有关的参数可以被称为“提取参数”。输出接口可以是诸如无线用户设备之类的用户设备的输出接口,并且一个或多个计算设备可以被并入用户设备内或者可以与用户设备分离。
每个实现方式可以可选地包括以下特征中的一个或多个。例如,在一些实现方式中,一个或多个参数包括内容类型、内容大小、位置(例如,用户设备的位置)和无线连接性阈值中的一个或多个,并且可选地包括其全部。活动日志数据包括指示用户行为的活动数据。在一些实现方式中,一个或多个参数包括以下的一项或多项:用户可能没有网络连接性的时间量、用户可能在没有网络连接性的预期时段之前保持无线连接的持续时间、要获取的信息内容、要获取的信息的大小限制,要使用该信息的应用(app)、在获取信息时要维持的最小电池阈值以及在获取信息的时间期间的最小网络连接性阈值。除了数据传输过程的这些一个或多个技术参数之外,该实现方式还可以考虑其他要求,诸如例如用于购买数据的财务阈值。
在一些实现方式中,基于使用活动日志数据操作训练神经网络系统来确定一个或多个参数以配置在第一未来时间数据的获取包括确定满足触发条件,确定与触发条件相关联的时间,确定用户在与第一未来时间相关联的时间频繁获得的内容类型,并确定第一未来时间和与触发条件相关联的时间相关联的操作。
在一些实现方式中,基于使用活动日志数据操作训练神经网络系统来确定一个或多个参数以配置在第一未来时间数据的获取还包括确定内容类型的大小。此外,在一些实现方式中,可以确定在第一未来时间获取数据的可能的财务成本;以及用于支付可能的财务成本的资金的可用性。
在一些实现方式中,基于一个或多个参数以及使用活动日志数据操作训练神经网络系统来生成在第一未来时间获取数据的推荐,包括确定用户设备在第一未来时间的无线连接性的可能水平;确定数据的全部在从第一未来时间开始的阈值时间段期间能够以确定的无线连接性的可能水平下载的概率,该阈值时间段是(i)用户设备可能以特定无线连接性阈值水平或更高水平保持连接至无线网络的时间段,或(ii)由第二用户输入选择的时间段;并且确定该概率超过置信度阈值。
在一些实现方式中,操作还包括一个或多个计算设备控制输出设备输出推荐。输出设备包括显示器或扬声器中的一个或多个。当输出设备是显示器时,用户输入使用由显示器显示的图形用户界面来接收。
在一些实现方式中,第二未来时间是包括显示器和一个或多个计算设备的用户设备可能未连接到无线网络的时间。
在一些实现方式中,基于使用活动日志数据操作训练神经网络系统来确定一个或多个参数以配置在第一未来时间数据的获取包括:在使用一个或多个应用输出应用数据之前确定被配置为在特定时间获取应用数据的一个或多个应用;并且确定应用数据的内容类型和应用数据的内容大小。另外,在一些实现方式中,可以确定在第一未来时间获得应用数据的可能的财务成本以及用于支付可能的财务成本的资金的可用性。
这些方面的其他实现方式包括被配置为实现上述方法中的任何一种的动作的相应的系统,装置,计算机可读存储介质以及计算机程序。
一个或多个实现方式的细节在附图和以下描述中阐述。根据说明书,附图和权利要求书,其他特征和优点将变得显而易见。
附图说明
图1A至图1D描绘了高级内容检索的示例性场景。
图2描绘了提供高级内容检索的示例性用户设备。
图3描绘了用于高级内容检索的示例性方法的流程图。
图4描绘了提供高级内容检索的示例性系统。
在各个附图中相同的参考标号和名称指示相同的元件。
具体实施方式
图1A至图1D描绘了高级内容检索的示例性场景,并且一般涉及在出发休息室准备登机的具有用户设备120的用户110。参考图1A,用户设备120可以连接到无线网络,例如机场的WiFi网络。无线连接可以具有信号强度130A。
用户设备120可以提供高级信息检索(AIR)接口,用户设备120通过该接口与用户110通信以获得用户指令或向用户推送通知。AIR接口可以连接到应用(app)管理器和推荐引擎,并且可以输出用于检索一个或多个应用的内容的一个或多个推荐。例如,电子书阅读(e-book)应用可以向应用管理器注册,并且可以在用户可能没有互联网连接的时间段内请求应用管理器提供内容。应用管理器还可以向推荐引擎提供指令,以生成用于在用户可能没有互联网连接的时间之前检索电子书应用的内容的推荐。
例如,在图1A中,推荐引擎可以确定用户110将在30分钟内登机,并且此后很可能没有与互联网的连接。然后,推荐引擎可以为已经向应用管理员注册的一个或多个应用(例如,电子书应用)生成推荐。在图1A所示的示例性实现方式中,用户设备120可以显示查询消息“WOULD YOU LIKE TO DOWNLOAD A NEW BOOK UNDER$15,30MINS BEFORE YOURDEPARTURE?(在您出发的30分钟前,是否愿意用15美元下载新书?)”。下面参考图2和图3详细描述生成推荐的方法。
响应于查询消息,用户110可提供输入以回答查询消息。例如,如图1B所示,用户110可以以肯定响应来响应,以指示用户设备120应该在出发前30分钟下载电子书。用户设备120然后可以使用任何合适的无线网络140(例如云系统)从任何合适的源(例如服务器,数据库或网络存储设备150)下载电子书,如图1C所示。如果用户设备120被配置为仅在网络连接性处于或超过特定阈值(例如最大网络连接性)时才下载内容,则用户设备120可以延迟下载,直到用户设备120的网络连接性130C满足特定阈值为止。
如图1D所示,当用户110坐在飞机上并且没有无线网络连接性130D时,用户110可能希望通过用户设备120阅读下载的电子书125。然后,用户110可以在坐在飞机上的同时并且在没有任何无线网络连接性的情况下,执行电子书应用并且开始阅读电子书125。
图2描绘了可以用于高级内容检索的用户设备220的示例性实现方式。用户设备220可以包括收发器221、推荐引擎222、应用管理器224、存储单元225、用户界面226、处理器227和一个或多个神经网络223。
收发器221包括发射机和接收机,并且可以被用来与其他网络设备通信,其他网络设备可以包括通过无线网络或有线网络连接到用户设备220的任何设备。收发器221可以包括放大器、调制器、解调器、天线和各种其他组件。收发器221可以将从其他设备(例如网络设备)接收的数据引导到用户设备220的其他组件(例如处理器227和存储单元225)。收发器221还可以将从用户设备220的组件接收的数据引导到其他网络设备。
用户界面226可以包括显示单元、扬声器、输入单元和一个或多个传感器中的一个或多个。传感器可以包括可以检测一个或多个条件的光学传感器、电容传感器、电荷耦合器件传感器、陀螺仪、麦克风、高度计、冲击传感器、压电传感器、运动传感器、生物传感器、有源像素传感器以及各种其他传感器。输入单元可以包括被配置为接收一个或多个输入的各种设备。例如,输入单元可以包括鼠标、触摸板、一个或多个传感器或用于接收字母数字文本的键盘。
用户界面226中的显示单元可以显示各种数据,诸如通过AIR接口提供的数据。显示单元可以通过任何合适的显示器来实现,任何合适的显示器包括例如投影显示器,液晶显示器(LCD)或发光二极管(LED)显示器。在一些实现方式中,显示单元、输入单元和一个或多个传感器可以组合成单个集成组件,例如电容触摸屏或电阻触摸屏。在一些实现方式中,显示单元、输入单元和一个或多个传感器可以是多个组件。
处理器227可以耦合到用户设备220的所有组件,并且可以控制用户设备220的操作。处理器227可以包括各种逻辑电路和程序以执行本文描述的各种实现方式。在一些实现方式中,处理器可以包括多个处理器,每个处理器执行一个或多个功能和操作。
存储单元225可以包括一个或多个大容量存储设备,例如,磁,磁光盘、光盘、EPROM、EEPROM、闪存设备,并且可以被实现为内部硬盘、可移动盘、磁光盘、CD ROM或DVD-ROM磁盘,用于存储数据。存储单元225可以存储一个或多个用户活动日志、用于训练神经网络的规则以及用于生成推荐的规则。
应用管理器224可以管理与用户设备220中的一个或多个应用的数据交换。在一些实现方式中,当应用被新下载到用户设备220上或用户设备220第一次被供电时,应用管理器224可以检测到新安装的应用或用户设备220中的所有应用,并向检测到的应用发送消息,该消息指示提供高级内容检索的服务可用。
如果应用对此服务感兴趣,则该应用可以针对高级内容检索服务通过向应用管理器224发送注册该应用的请求来响应广播消息。注册应用的请求可以包括指示应用想要预先获得的内容的类型的数据,要预先获得的内容的任何大小、频率和定时限制,以及一般而言,针对应用感兴趣预先获得的内容的类型的任何其他参数或限制的相应的值。
在接收到要注册的请求之后,应用管理器224可以注册应用,存储指示针对将要预先获得的内容的应用指定的限制的数据,并且向所注册的应用提供应用编程接口(API)。在应用和应用管理器224之间交换的后续数据可以通过API被引导。在一些实现方式中,应用管理器224可以向应用或管理该应用的服务器发送确认消息,该确认消息指示该应用针对高级内容检索服务已经向应用管理器224注册。
在一些实现方式中,在从应用接收到包括针对该应用感兴趣预先获得的内容的类型的参数值或限制的注册请求之后,应用管理器224可以使用户设备220显示要求用户确认针对高级内容检索由应用指定的参数值或限制的消息。然后,用户可以确认由应用指定的参数值或限制,可以删除一个或多个参数值或限制,可以添加一个或多个参数(并指定相应的值)或限制,和/或可以修改参数值。然后,应用管理器224可以保存设置,该设置包括用户已经确认或选择的应用的参数值或限制。
例如,社交网络应用可以基于预测的位置请求应用管理器224提供位置预测和高级内容检索,例如,如果预测用户位于网络连接性差的特定位置,则社交网络应用可能请求预先提供特定位置的餐馆的菜单。但是,用户可以确认或拒绝为社交网络应用提供位置预测和高级内容检索的请求。
在一些实现方式中,在用户设备220启动时或在安装应用时,应用管理器224可以不将消息广播到检测到的应用。在这些实现方式中,应用管理器224可以保持在收听模式中,从一个或多个应用接收注册请求,并且在注册应用管理器224从其接收请求的应用时提供高级内容检索API。
神经网络223可以从各种信号中收集数据,使用收集的数据来训练神经网络223,并生成预测。用于训练神经网络223的信号的源可以在用户设备220的外部或内部。例如,神经网络223可以从一个或多个数据库或服务器接收数据,该数据库或服务器存储用户活动日志并存储用于训练神经网络223的规则。神经网络223也可以从外部服务器接收训练数据或指示电话使用模式的数据,例如电话服务提供商的电话呼叫数据和聊天数据。
在某些情况下,神经网络223可以从指示网络连接性状态的收发器221以及用户设备220中包括的传感器接收数据,传感器例如为位置传感器、运动传感器、温度和环境传感器、音频传感器、光传感器、电容式传感器和电阻传感器。例如,神经网络223可以在某些位置,在某些环境条件下,在一天的特定时间或在某些照明和音频条件下接收有关网络连接性的信息。
神经网络223也可以直接从用户设备220上的应用接收数据,应用例如为日历应用、旅行应用、银行应用,数据指示由应用执行的操作、用户偏好和通过应用进行的选择、应用的使用频率以及由使用的应用执行的功能的频率。用户活动日志还可以收集指示用户或用户设备220的移动、用户设备220或用户可能已经存在的位置、用户旅行计划、购物交易、银行交易以及社交媒体交互的数据。
可以向用户提供控制,该控制允许用户选择是否以及何时此处描述的用户设备220、系统、程序或特征可以收集用于用户活动日志或神经网络训练的数据,以及是否用户有兴趣从用户设备220接收推荐。在存储或使用收集到的任何用户数据之前,都可以用一个或多个方式对其进行处理,以便删除个人可识别信息。例如,可以处理用户的身份,以便无法为该用户确定任何个人可识别信息,或者可以在获得位置信息的情况下将用户的地理位置概括化(例如,概括至城市、邮政编码或州级别),使得无法确定用户的特定位置。因此,用户可以控制什么信息被收集,该信息如何被使用以及什么信息被提供给用户。
在一些实现方式中,神经网络223可以接收用于配置用于神经网络223的训练模型的数据或规则。例如,神经网络223可以接收配置数据以根据任何合适的神经网络模型来执行机器学习操作,神经网络模型包括但不限于递归神经网络(RNN)、门控递归单元(GRU)、长短期记忆(LSTM)或大型前馈神经网络。
由神经网络223收集的数据可以以任何合适的格式收集,并且可以被用源标识符加盖时间戳并被标记,以指示哪个应用、传感器或其他源提供了训练数据以及提供数据的时间和日期。基于收集的数据和训练模型,神经网络223可以生成一个或多个预测。
在一些实现方式中,神经网络223可以预测互联网断开、间歇的连接性或网络连接性的其他状态的时段。在一些实现方式中,神经网络223可以预测用户设备220的网络连接性将小于网络连接性阈值的位置和时间,并且预测在预测的时间和位置处用户最可能消费的内容类型。
例如,在一些实现方式中,当用户设备220具有低于特定信号阈值水平的网络连接性时,神经网络223可以识别过去的断开时间段。神经网络223然后可以确定与断开时间段相关联的对应条件。这些对应条件可以包括紧接断开时间段之前,期间和之后的用户设备220的位置、紧接断开时间段之前,期间和之后用户可能从事的活动、在断开时间段之前,期间和之后立即执行的应用或操作、以及在断开时间段之前,期间和之后立即访问的数据。紧接断开时间段之前或之后的时间段的长度可以由用户设置或由系统设计人员配置。
作为示例,神经网络223可以预测用户将在即将到来的星期一和星期四期间在飞机上观看视频,因为当用户每星期一和星期四乘飞机旅行时该用户在飞机上观看电影并且缺乏互联网连接。在另一个示例中,神经网络223可以预测用户在露营旅行时可能会在当月的第三个星期六阅读电子书,因为用户通常会在一年中六个月或更多的月份的第三个星期六前往缺乏网络连接性的露营地。
作为另一示例,如果用户设备220连接到机场的WiFi网络,则用户设备220可以确定在排程的航班起飞时间之前的持续时间内用户设备220可能具有相同的信号强度。如果用户设备120连接到蜂窝网络,则用户设备220可以确定用户设备220在排程的航班起飞时间之前的持续时间内不太可能具有所需的信号强度。
在一些实现方式中,神经网络223还可预测用户对电话的使用程度以及使用类型以推断电池消耗。例如,使用指示过去相似用户活动的用户活动日志数据,神经网络223可以预测用户可能在工作日晚上跑步并使用GPS跟踪20分钟,或者用户计划与朋友一起乘船旅行,在那里用户很可能没有良好的网络连接性,并且可能会拍摄照片或视频。然后,神经网络223可以通过确定过去相同活动的电池消耗以及可能的电池状态和网络连接性是否足以支持在特定时间下载数据来推断在特定时间可能发生的电池消耗量。
可以训练神经网络223以检测电池消耗可能影响用户设备220下载内容的能力的时间段和位置。例如,当要下载数据时,神经网络223可以确定用户设备220在网络连接性的可能水平下载特定大小(例如100MB)的数据所需的可能的时间和功率量。然后,神经网络223可以将确定的时间量和功率进行比较,并将其与要下载数据时的当前电池电量或预期电池电量进行比较,并确定用户设备220是否具有足够的电池电量。
在一些实现方式中,神经网络223可以预测对参数(诸如要下载的数据的类型、网络连接阈值、电池阈值、以及通常的任何用户设置)的用户偏好。神经网络223还可以预测其他用户偏好,例如成本偏好。神经网络223可以使用来自不同数据源的训练数据来导出用户偏好,所述训练数据包括例如用户活动日志数据。
在某些情况下,基于高级数据内容检索操作的先前实例,当用户设备223的剩余电池电量等于或大于特定阈值(例如,用户设备223的总电池电量的25%)时,神经网络223可以确定用户具有执行高级内容检索操作的强烈偏好。在某些情况下,基于高级数据内容检索操作的先前实例,仅当网络连接的无线信号强度等于或大于特定的网络连接阈值例如25%时,神经网络223才能确定用户具有执行高级内容检索操作的强烈偏好。作为另一示例,如果用户频繁下载电子书,为每本书支付少于15美并且拒绝购买价格超过15美的电子书,则神经网络223可以确定用户具有购买低于15美元的电子书的偏好。
在一些实现方式中,神经网络223可以与推荐引擎222集成,并且在一些实现方式中,神经网络223可以与推荐引擎222分离但连接到推荐引擎222。推荐引擎222可以根据用户设置、神经网络223提供的预测、置信度水平以及一个或多个参数(例如用户预期无法访问网络的时间量、用户可能保持无线连接的持续时间、获取的内容的标识,要获取的内容的大小限制、内容要与其一起使用的应用、在获取内容的同时维持的最小电池阈值以及在获取内容的同时的最低网络连接性阈值)中的一个或多个为已经向应用管理器224注册的应用生成推荐。推荐引擎222在生成推荐时还可以考虑其他因素,例如用于获取内容的财务阈值。
用户设置可以包括但不限于一个或多个设置,这些设置指定应为其提供推荐的应用、应为其提供推荐的位置、在当预测低于网络连接性阈值的网络连接时的时间之前提供推荐的持续时间或时段、预测的置信度阈值以及用户是否希望接收确认通知。
例如,在某些情况下,用户可以指定仅提供针对与导航服务相关的应用(例如Google Map)的推荐。在某些情况下,用户可以指定仅在期望用户旅行时或当用户位于特定位置(例如机场)时才提供推荐。在一些情况下,用户可以选择用户设备220必须请求对推荐引擎222生成的推荐的确认的选项,或者用户设备220应该在没有用户确认的情况下自动执行推荐的选项。在某些情况下,用户可以指定只有具有特定置信度阈值(例如60%或更高)的预测才应生成相应的推荐。如果用户不提供关于特定设置的信息,则推荐引擎222可以使用用于特定设置的默认值。
推荐引擎222可以从神经网络223接收一个或多个预测,确定与该预测相关联的置信度水平,基于用户设置和置信度水平过滤该预测,并基于通过了过滤的预测生成推荐。所生成的推荐可以通过AIR接口显示给用户,并且可以包括与特定推荐相关联的所确定的置信度水平的指示。
置信度水平可以指示预测对用户的确定性或相关性的程度。置信度水平可以基于用户的活动日志、用户的设置以及由应用为某些预测设置的默认置信度水平中的一个或多个。作为示例,神经网络223可以生成这样的预测,即在48小时内,用户可能在没有互联网连接的地方去露营,并且用户可能想要在露营之前下载电影。如果用户在去露营之前频繁地下载了电影,例如在用户先前的八个露营旅行中的六个中,则推荐引擎222可以为该预测分配高置信度水平。相反,如果用户在去露营之前很少地下载电影,例如在之前的八个露营旅行中少于四次,或者如果用户之前仅露营一次,则推荐引擎222可以为该预测分配低置信度水平。
在另一个示例中,神经网络223可以生成预测,即当在三天后,从很少或没有网络访问的远程位置(例如露营位置)返回时,用户可能会通过导航应用请求导航指令。当预测用户位于没有网络访问的位置时,导航应用可以为可能想要获得导航指令的用户的预测分配高置信度水平。因此,推荐引擎222可以将高置信度水平分配给可能想要从露营地点返回到用户家中的驾驶指令的用户的预测。
在一些实现方式中,如果推荐引擎222确定特定预测具有低置信度水平,则神经网络223可以查询用户。例如,如果为用户在3小时内将具有低信号连接性的预测分配了低置信度水平,则神经网络223可以通过用户界面226输出问题以询问用户,例如,“Do youanticipate having low wireless signal connectivity in 3hours?(您是否预期在3小时内具有低无线信号连接性?)”基于对查询的用户反馈,神经网络223可以更新其预测并提高其在更新后的预测中的置信度水平。
在获得预测和与该预测相关联的置信度水平之后,推荐引擎222然后可以基于用户设置和与预测相关联的置信度水平过滤该预测。例如,用户可能先前已指示该用户对接收电子书阅读应用的任何推荐不感兴趣。因此,即使神经网络223可以预测用户将来可能会在用户设备220很可能与网络断开连接的某个时间读书,推荐引擎222仍将分配高置信度水平,但仍会由于用户偏好过滤掉预测。作为另一示例,用户可能先前已经指示用户对查看超过用户设备220的网络连接性低于网络连接性阈值的时间之前的特定时间段(例如1小时)的推荐不感兴趣。
在一些实现方式中,推荐引擎222被配置为过滤掉具有小于特定阈值(例如,50%的置信度水平)的确定的置信度水平的预测。在一些实现方式中,可以实现分层过滤排程。例如,对于具有大于第一阈值例如80%的置信度水平的预测,推荐引擎222可以允许该预测通过并且可以不请求来自用户的任何反馈。对于具有大于第二阈值(例如30%)但小于或等于第一阈值(例如80%)的置信度水平的预测,推荐引擎222可被配置为查询用户以确定用户是否对特定预测感兴趣。然后,用户对查询的响应可以被记录到用户活动日志数据中。对于具有小于或等于第二阈值(例如,30%)的置信度水平的预测,推荐引擎222可以被配置为过滤掉这样的预测并且不生成用于这样的预测的任何推荐。
在响应于查询,特定预测通过过滤或被标记为用户感兴趣之后,推荐引擎222可以使用该特定预测来生成推荐。在一些实现方式中,推荐可以包括置信度指示符,其是针对推荐中的预测的所确定的置信度水平的图形表示。图形表示可以以各种合适的方式输出,例如以数字方式,通过颜色,文本,图标或使用音频信号来输出。
例如,在某些情况下,如果推荐具有高置信度水平,则推荐可以以绿色显示,或者如果推荐具有低置信度水平,则推荐可以以红色显示。在某些情况下,如果推荐具有高置信度水平,则推荐可以用大拇指向上图形图标显示,或者如果推荐具有低置信度水平,则推荐可以用大拇指向下图形图标显示。在某些情况下,指示置信度水平的数字可能会与推荐一起显示。
在一些实现方式中,可以根据用户指定的用户偏好来定制所生成的推荐,或者可以通过训练神经网络223的训练数据来提供所生成的推荐。例如,所生成的推荐可以仅在用户优选的,神经网络223已确定的特定时间、信号电平、或电池电量而被执行。例如,如上所述和图1A中所描绘,神经网络223可以确定用户在登机之前喜欢下载成本低于15美元的电子书。推荐引擎222然后可以定制为用户设备中的电子书阅读器应用生成的电子书推荐,并利用用户优选的,神经网络223已经学习到的成本信息、定时信息以及关联的置信度水平(例如85%)来定制推荐。
在一些实现方式中,用户可以基于预期的电池使用来调整某些推荐的定时。例如,神经网络223可以根据用户在一天中的典型电池消耗模式来预测用于用户设备的电池将持续特定时间段,例如,另外两个小时。如果存在在可能的电池寿命持续时间之后发生的没有网络连接性的时间段的预测,则推荐引擎222可以鉴于未来的电池电量可能不足而修改推荐的定时并提供较早的推荐以下载数据。因此,在图1A所示的示例中,如果神经网络223确定到用户设备的电池的电力可能在下午2:30之前结束,则推荐引擎222可以推荐在下午2:30之前下载电子书。
如果用户先前已经选择了用于获得用户对推荐的确认的选项,则所生成的推荐将包括用于用户确认推荐的请求,如图1A所示。如果用户先前未选择获取用户对推荐的确认的选项,则用户设备220可以自动启动推荐的执行,并且将通过AIR接口显示指示用户设备220将要根据推荐的动作执行操作的通知。例如,用户设备220可以通过AIR接口向用户显示消息,该消息指示用户设备220将在几分钟或特定时间(例如,出发前30分钟)开始下载低于15美元的电子书。在一些实现方式中,连同消息一起,可以向用户呈现可选择按钮以取消下载操作。如果用户不想以推荐引擎222推荐的方式下载电子书,则用户可以选择取消按钮。
尽管上述实现方式包括对用户设备220执行的操作的描述,但是在一些实现方式中,被执行以生成推荐并获得内容的一个或多个操作中的一些或全部可以由服务器执行,或者通常,由与用户设备220分离但可通信地连接到用户设备220的任何计算机系统执行。
图3描绘了用于高级内容检索的示例性方法的流程图。为了方便起见,以下描述将指代如由系统执行的图3中描绘的操作。该系统可以指代用户设备或具有连接到用户设备的一个或多个计算设备和处理器的服务器,计算机网络或系统。尽管在图3中以一定顺序描绘了操作,但是,该操作可以以不同的顺序进行。
参照图3,系统可以注册用于高级内容检索服务的一个或多个应用(310)。如上所述,应用可以通过向系统中的应用管理器进行注册来订阅高级内容检索服务。在某些情况下,用户可以选择应用以预先接收内容。应用注册包括存储指示应用、应用内的功能、要预先获得的内容以及预先获得的该应用感兴趣的内容类型的任何参数或限制中的一个或多个的数据。注册应用后,系统会向已注册的应用提供应用编程接口(API)。可以通过每个应用的相应API发送用于特定应用的推荐。
系统还维护用户活动日志(312)。用户活动日志可以包括指示用户的电话使用模式、由应用执行的操作、应用的使用频率以及所使用的应用执行的功能的频率中的一个或多个的数据。用户活动日志还可以包括指示用户移动、用户位置、用户旅行计划、购物交易、银行交易和社交媒体交互中的一个或多个的数据。用户活动日志可以存储在数据库、服务器或用户设备中。如上所述,用户可以控制收集和存储用户数据的方式,使得不能确定个人可识别信息。
除了维护用户活动日志之外,系统还获得用户设置和偏好(312)。如上所述,用户设置和偏好可以包括以下中的一项或多项:收集用于高级内容检索的用户信息、电池、财务和网络连接性阈值的许可,通过应用做出的用户偏好和选择,允许参与高级内容的应用或应用功能,应提供推荐的位置,在当预测低于网络连接阈值的网络连接性时间之前提供推荐的持续时间或时段,预测的置信度阈值,以及用户是否希望接收请求推荐确认的通知。
在一些实现方式中,可以借助于用户通过AIR接口进行的输入和选择来获得用户设置和偏好。可以利用接收用户输入和选择的各种合适的方法。例如,可以通过运动传感器、陀螺仪或触觉反馈传感器、鼠标、键盘和触摸屏中的一个或多个来接收用户输入。在一些实现方式中,系统可以如上所述通过神经网络预测来确定用户设置和偏好。
用户活动日志数据以及用户设置和偏好数据可以用作训练数据以训练一个或多个神经网络(314)。如上所述,神经网络可以从各种信号收集数据,使用收集的数据进行训练,并生成预测。神经网络可执行用于训练机器学习模型所需的一个或多个计算。通常,可以使用任何合适的神经网络模型,包括但不限于递归神经网络(RNN)、门控递归单元(GRU)、长期短期记忆(LSTM)或大型前馈神经网络。
训练包括:确定当用户设备具有低于特定信号阈值水平的网络连接性时的过去的断开时间段;以及确定与断开时间段相关联的对应条件。这些对应条件可以包括紧接断开时间段之前,期间和之后的用户设备的位置,紧接断开时间段之前,期间和之后用户可能从事的活动,在断开时间段之前,期间和之后立即执行的应用或操作,以及在断开时间段之前,期间和之后立即访问的数据。
在训练之后,系统可以为注册的应用生成一个或多个预测(316)。特别地,当网络连接性可能低于网络连接性阈值时,系统可以识别触发条件或可能的时间段(通常称为断开时间段),并在断开的时间段期间确定可能的对应条件。对应的条件可以包括用户设备的可能位置,在可能的断开时间段期间用户可能参与的活动以及可能在可能的断开时间段执行的应用或操作。
在一些实现方式中,如果用户未提供指示用户可能保持无线连接的持续时间的任何信息,则系统可以预测该持续时间。例如,如果用户在机场利用电子登机牌,则用户设备可以确定该用户设备可以具有从当前或现在的时间到航班的登机时间的无线连接访问。通常,系统可以获得指示用户设备的无线连接状态或物理环境可能发生改变的时间的数据。然后,系统可以计算从当前时间到用户设备的无线连接状态或物理环境可能发生改变的时间之间的差。所计算的时间差可以对应于用户可能保持无线连接的持续时间。
在一些实现方式中,系统可以搜索用户设备的位置历史并确定用户设备以前是否已经在当前位置。如果用户设备以前已经在当前位置,则系统可以计算用户设备通常保持在该位置的平均时间,并将该平均时间设置为用户可能保持无线连接的持续时间。
在一些实现方式中,系统可以针对用户可能连接到网络的时间的量确定可能的无线连接强度。系统可以使用一个或多个信号来确定可能的无线连接强度。例如,在某些情况下,系统可以搜索用户设备的位置历史并确定用户设备以前是否在当前位置。如果用户设备以前曾经在当前位置,则系统可以确定用户设备过去位于当前位置时所具有的平均无线信号强度。过去的平均无线信号强度和当前信号强度可以用作因素,并被加权以确定可能的无线连接强度。
在某些情况下,系统可以基于用户设备的位置来确定用户设备的无线连接性状态改变的可能性。例如,如果系统确定用户设备的位置正在快速改变或者用户设备正在以与车辆移动相对应的模式移动,则系统可以确定用户设备的无线连接性可能频繁改变并且可能不保持在当前的连接性水平。
在某些情况下,系统可以确定用户设备位于诸如购物中心、办公室、学校或咖啡馆的建筑物或设施中,并且用户设备的位置没有改变。然后,系统可以确定无线连接性水平可能在现有连接性水平保持不变。从前述内容应当理解,针对用户可能保持无线连接的时间量,可以使用各种方法来确定用户设备的可能的无线连接强度。
系统还可以预测在可能的断开时间段期间要获得的可能的内容。要获得的可能的内容会根据为其获得内容的应用而不同。在一些实现方式中,为了识别要包括在预测中的内容,系统可以与应用通信并确定可以提供给应用或由应用请求的内容。例如,系统可以与安装在用户设备中的电子书应用进行通信,以获得识别用户的愿望列表上的下一本书的数据。作为另一个示例,为娱乐应用获得的内容可以是用户的愿望列表上的短篇集、电影或音频歌曲。愿望列表可以指用户尚未访问或尚未下载到用户设备上但将来希望访问的数据。为导航应用获取的内容可以包括在可能的断开时间段期间用户预期要到达的特定目的地的往返方向。因此,系统可以预测一个或多个可能的断开时间段以及在可能的断开时间段期间要获得的可能的内容。
在一些实现方式中,在确定要从一个或多个资源获取的内容的数据大小或文件大小以及无线连接的可能强度之后,系统可以基于可能的无线连接强度确定获取内容所需的时间。例如,系统可以预测将以可能的无线连接强度接收数据的可能的数据速率,并利用该可能的数据速率来确定获取内容所需的可能的时间。系统可以将获取内容所需的可能时间与用户设备可能保持无线连接的持续时间进行比较,以确定是否有足够的时间来获取内容。在某些情况下,如下面的示例性表I中所示,系统还可以基于可能的无线连接强度的变形来计算获取内容所需的时间。
表I
Figure BDA0002426899110000201
表I中所示的数据是出于说明性目的。如表I所示,当内容的大小为10MB时,系统可以确定可以以最大信号强度的75%或95%的无线连接性强度从资源获取内容,但不是针对无线连接性强度为40%或5%,因为在可用时间内不会已经从资源下载了内容。
系统还可以实现表I的其他变形,例如,包括可能的无线连接强度的变形,基于不同资源的内容大小的变形,用户设备的电池电量的变形以及任何其他相关变形。
如上所述,推荐引擎可以从神经网络接收一个或多个预测,确定与该预测相关联的置信度水平,基于用户设置和置信度水平过滤该预测,并基于已经通过过滤的预测生成推荐(318)。可以根据以下一项或多项来生成推荐:用户设置、神经网络提供的预测、置信度水平以及一个或多个参数(诸如用户预期无法访问网络的时间量、用户可能会保持无线连接的持续时间、要获取的内容的标识、要获取的内容的大小限制,内容要与其一起使用的应用、获取该内容的财务阈值、在获取内容时维持的最低电池阈值以及在获取内容时的最低网络连接性阈值)。
在一些实现方式中,在生成推荐之前,系统可以识别可以从其获取内容的一个或多个源,并且确定内容获取是否满足下载条件。例如,系统可以对要获得的内容进行搜索,并过滤搜索结果以识别可以从其获得内容的一个或多个资源。然后,系统可以与所识别的一个或多个资源进行通信以获得获取数据,诸如要获得的内容的大小和购买内容的成本。购买内容的成本可以包括与购买相关联的任何成本,诸如例如访问互联网或无线网络以完成在线购买的成本。基于获取数据,系统可以i)确定用户设备是否具有可用于存储内容的足够存储;ii)基于无线网络信号强度的变形确定下载内容可能需要多长时间以及预测的下载时间段中的一个或多个变形,并且iii)确定与获取内容相关的成本是否满足用户的财务阈值。
在一些实现方式中,用于获取内容的财务阈值可以包括用户愿意花费在获取内容上的金钱(例如,美元)的最大量。在一些实现方式中,可以由神经网络基于涉及相似的内容类型的先前的用户金融交易来预测财务阈值。在一些实现方式中,用户可以设置财务阈值。当提供财务阈值信息时,用户还可以提供用于处理支付的支付信息,例如信用卡信息或支付服务帐户。支付信息可以用于处理任何支付以获得内容。
用户设置可以包括但不限于以下一个或多个设置:该设置指定应提供哪些应用推荐,应提供推荐的位置,特定应用的财务阈值,在预测断开时间段之前提供推荐的持续时间或时段,预测的置信度阈值以及用户是否愿意批准或确认生成的推荐。
在一些实现方式中,在获取内容时要维持的最小电池阈值和在获取内容的时间期间的最小网络连接性阈值可以包括百分比阈值。例如,当下载内容时,系统可以确定对于最小网络连接性水平的用户偏好是例如最大信号连接性的30%,并且最小电池电量水平例如是最大电池电量的10%。可以将30%和10%水平分别设置为最小网络连接性阈值和最小电池阈值。然后,当用户设备预测在断开时间段期间高于这些最小阈值的可能的无线信号强度和电池电量时,系统可以仅生成用于获取内容的推荐。
基于上述确定和操作,系统可以确定是否可以获取内容。例如,在一些实现方式中,如果满足以下条件中的一个或多个,则系统可以确定可以获取内容:用户设备被预测以在用户可能保持无线连接的持续时间维持大于用户提供的最小阈值水平的电池电量;用户设备被预测以在用户可能保持无线连接的持续时间内维持大于用户提供的最小阈值水平的无线连接水平;可以基于用户提供的财务阈值来进行用于访问内容的支付;内容可以从一个或多个资源获得;内容的数据大小等于或小于用户设备中的可用存储;并且可用于获取内容的时间超过了获取内容所需的时间。如果可以获取内容,则生成推荐。
所生成的推荐可以通过AIR接口显示给用户,并且可以包括所与特定推荐相关联的确定的置信度水平的指示。在一些实现方式中,如果用户已经指示用户希望批准或确认所生成的推荐,则系统可以显示查询该用户是否愿意接受该推荐的通知。
系统然后可以从用户接收指示用户是接受还是拒绝所生成的推荐的响应(320)。用户的响应可以被记录在用户活动日志数据中并用于进一步训练神经网络(314)。例如,如果推荐被用户重复拒绝超过阈值次数,则系统然后可以过滤掉与被拒绝的推荐相对应的未来预测。
如果用户接受所生成的推荐,则在满足在推荐中包括的条件和时间时下载在推荐中标注的内容(322)。内容可以从任何合适的数据源(例如服务器,数据库或网络存储设备)下载,并且可以缓存在用户设备本地的存储器中,以便用户设备将来可以在任何时候访问内容。为了下载内容,系统可以执行任何操作来获取内容。例如,系统可以进行内容搜索操作,支付处理操作以及与一个或多个内容提供商连接的操作。
可以在用户选择的任何时间输出下载和存储的内容(324)。在一些实现方式中,用户可以在用户设备未连接到任何网络(例如,互联网)的时间打开应用并选择用于输出的内容。通常,可以以各种方式输出内容。例如,如果下载的内容对应于媒体文件,则下载的内容可以被输出为音频信号。在某些情况下,下载的内容可以通过连接或耦合到用户设备的显示设备输出。
本说明书中描述的实施例和所有功能操作和/或动作可以以数字电子电路或计算机软件,固件或硬件来实现,包括本说明书中公开的结构及其等同结构或其中一个或多个的组合。图4是可用于实现本文描述的系统和方法的计算设备400、450的框图。计算设备400代表各种形式的数字计算机,例如工作站,服务器,刀片服务器,大型机和其他适当的计算机。计算设备450代表各种形式的用户设备,例如个人数字助理,蜂窝电话,智能电话,智能电视,手表和其他类似的计算设备。此处所示的组件,它们的连接和关系以及它们的功能是示例性的,并不限制本文所述的实现方式。
计算设备400包括处理器402,存储器404,存储设备406,连接到存储器404和高速扩展端口410的高速接口408,以及连接到低速总线414的低速接口412和存储设备406。组件402、404、406、408、410和412中的每一个都使用各种总线互连,并且可以安装在通用主板上或以其他方式安装。处理器402可以处理用于在计算设备400内执行的指令,包括存储在存储器404或存储设备406上的指令,以在例如耦合到高速接口408的显示器416的外部输入/输出设备上显示GUI的图形信息。在一些实现方式中,可以适当地使用多个处理器和/或多个总线,以及多个存储器和存储器类型。而且,可以连接多个计算设备400,每个设备提供必要的操作的部分(例如,作为服务器组,刀片服务器组或多处理器系统)。通常,处理器402可以控制计算设备400的操作,并且可以包括各种逻辑电路和程序以执行本文描述的实现方式。
存储器404在计算设备400中存储信息。在一些实现方式中,存储器404可以包括计算机可读介质,易失性存储器单元或非易失性存储器单元中的一个或多个。
存储设备406能够为计算设备400提供大容量存储。在一些实现方式中,存储设备406可以包括一个或多个大容量存储设备,例如,磁,磁光盘,光盘,EPROM,EEPROM,闪存设备,并且可以被实现为用于存储数据的内部硬盘,可移动盘,磁光盘,CD ROM或DVD-ROM盘。在一些实现方式中,存储设备406可以包括包含指令的非有形计算机可读存储介质,该指令在被执行时执行上述一个或多个方法或方法的一部分。在一些实现方式中,存储设备406可以存储用于基于用户提供的一个或多个参数来确定是否可以获取内容的规则。
高速控制器408管理计算设备400的带宽密集型操作,而低速控制器412管理较低带宽密集型操作。这种职能分配是示例性的。在一些实现方式中,高速控制器408耦合到存储器404,显示器416(例如,通过图形处理器或加速器),以及耦合到高速扩展端口410,其可以接受各种扩展卡(未示出)。在一些实现方式中,低速控制器412耦合到存储设备406和低速扩展端口414。包括各种通信端口(例如,USB,蓝牙,以太网,无线以太网)的低速扩展端口可以例如,通过网络适配器耦合到一个或多个输入/输出设备,例如键盘,定点设备,扫描仪或联网设备(例如交换机或路由器)。
计算设备400可以以多种不同的形式实现,如图所示。例如,计算设备400可以被实现为标准服务器,一组这样的服务器或者被实现为机架服务器系统的一部分。标准服务器可以是例如网络服务器,播放列表共享应用服务器,内容服务器,播放列表管理服务器中的一个或多个。在一些实现方式中,计算设备400可以被实现为个人计算机,例如膝上型计算机。
在一些实现方式中,计算设备400可通过一个或多个网络与设备450无线通信以执行图3中所描述的方法的一个或多个操作。在一些实现方式中,计算设备400在作为内容提供者操作时,可以从设备450接收对内容的请求,并且作为响应,可以将所请求的内容提供给设备450。在一些实现方式中,计算设备400执行图3所示的操作中的一个或多个,并且可以控制设备450显示AIR和取回参数界面并接收用户输入。
连接计算设备400和450的一个或多个网络可以包括接入点,存储系统,云系统,模块,包括一个或多个媒体数据库的一个或多个数据库,以及包括一个或多个网络服务器的服务器,例如计算设备400.一个或多个网络服务器可以包括耦合到一个或多个网络的任何合适的计算设备,包括但不限于个人计算机,服务器计算机,一系列服务器计算机,小型计算机和大型计算机,或其组合。一个或多个网络服务器还可以包括运行网络操作系统的应用服务器,Web服务器或一系列服务器,其示例可以包括但不限于
Figure BDA0002426899110000261
Server,
Figure BDA0002426899110000262
Figure BDA0002426899110000263
一个或多个网络服务器可以用于和/或提供云和/或网络计算和媒体提供服务。尽管未在图中显示,但是服务器可以与提供消息传递功能(例如电子邮件,SMS消息传递,文本消息传递)和其他功能(例如广告服务,搜索服务等)的外部系统建立连接。
在一些实现方式中,一个或多个网络可以包括可以提供互联网连接性和其他与网络有关的功能的云系统。例如,云系统可以为在系统的组件之间传输的数据的至少一部分提供存储服务。
云系统或一个或多个网络还可以包括一个或多个数据库,其可以包括媒体存储数据库,媒体提供数据库,云数据库或由数据库管理系统(DBMS)管理的数据库。DBMS可以实现为控制数据库中数据的组织,存储,管理和检索的引擎。DBMS通常提供查询,备份和复制数据,执行规则,提供安全性,进行计算,执行更改和访问日志以及自动优化的能力。DBMS通常包括建模语言,数据结构,数据库查询语言和交易机制。根据数据库模型,可以使用建模语言来定义DBMS中每个数据库的架构,该数据库模型可以包括层次模型,网络模型,关系模型,对象模型或某些其他适用的已知或方便的组织。数据结构可以包括字段,记录,文件,对象以及任何其他适用的已知或方便的用于存储数据的结构。DBMS还可以包括有关所存储数据的元数据。
计算设备450可以包括处理器452,存储器464,诸如显示器454之类的用户界面,通信接口466和收发器468以及其他组件。组件450、452、464、454、466和468中的每个可以使用各种总线互连,并且可以将几个组件安装在通用主板上或以其他适当方式安装。
收发器468可以包括发射器和接收器,并且可以被用来与计算设备450内的一个或多个网络和组件中的设备进行通信。收发器468可以包括放大器,调制器,解调器,天线以及各种其他组件。收发器468可以将从其他外部设备(例如,服务器,数据库,连接到无线网络的便携式设备)接收的数据定向到计算设备450中的其他组件(例如,处理器452和存储器464)。收发器468也可以从计算设备450中的组件接收的数据定向到外部设备。
设备450可以通过通信接口466进行无线通信,该通信接口在必要时可以包括数字信号处理电路。通信接口466可以提供各种模式或协议下的通信,诸如GSM语音呼叫,SMS,EMS或MMS消息收发,CDMA,TDMA,PDC,WCDMA,CDMA2000或GPRS等等。这样的通信可以例如通过射频收发器468发生。此外,可以进行短距离通信,诸如使用蓝牙,WiFi或其他这样的收发器(未示出)。此外,GPS接收器模块470可以向设备450提供定位服务和附加无线数据,设备450上运行的应用可以使用这些服务和数据。
存储器464将信息存储在计算设备450内,并且在一些实现方式中,还可以耦合到一个或多个附加存储设备以提供附加存储。存储器464可包括计算机可读存储介质或存储在计算机可读存储介质上编码的计算机程序指令的一个或多个模块,以由数据处理装置执行或控制数据处理装置的操作。所述计算机可读介质可以是机器可读存储设备,机器可读存储基板,存储器设备,影响机器可读传播信号的物质组成或它们中的一个或多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置,设备和机器,例如包括可编程处理器,计算机或多个处理器或计算机。除硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件,协议栈,数据库管理系统,操作系统或其中的一个或多个的组合的代码。传播的信号是人工生成的信号,例如机器生成的电,光或电磁信号,其被生成以对信息进行编码以传输到合适的接收器设备。
计算机程序(也称为程序,软件,软件应用,脚本,插件或代码)可以用任何形式的编程语言(包括编译或解释语言)编写,并且可以以任何形式加以部署,包括作为独立程序或作为模块,组件,子例程或适用于计算环境的其他单元。计算机程序不一定与文件系统中的文件相对应。程序可以存储在用于在专用于所讨论的程序的单个文件中保存其他程序或数据的文件的一部分中,或在多个协调文件中。可以将计算机程序部署为在位于一个站点上或分布在多个站点上并通过通信网络互连的一台计算机或多台计算机上执行。
在一些实现方式中,存储器464可以是一个或多个易失性存储器单元。在一些实现方式中,存储器464可以是一个或多个非易失性存储器单元。还可以提供扩展存储器474,并通过扩展接口472将其连接到设备450,扩展接口472可以包括例如SIMM卡接口。这样的扩展存储器474可以为设备450提供额外的存储空间,或者还可以为设备450存储应用或其他信息。例如,扩展存储器474可以包括用于执行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器474可以被提供为设备450的安全模块,并且可以用允许安全使用设备450的指令来编程。此外,可以经由SIMM卡以及附加信息来提供安全应用。,例如以不可入侵的方式在SIMM卡上放置识别信息。
存储器可以包括例如一个或多个大容量存储设备,例如磁,磁光盘,光盘,EPROM,EEPROM,闪存设备,并且可以被实现为内部硬盘,可移动磁盘,磁光盘,CD ROM或DVD-ROM盘,用于存储数据。在某些情况下,存储器可以存储用于训练神经网络的规则,并且可以包括用于临时存储所获取的内容的高速缓存。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行动作。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以被实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适合于执行计算机程序的处理器包括通用和专用微处理器两者,以及任何种类的数字计算机的任何一个或多个处理器。处理器452可以处理用于在计算设备450内执行的指令,包括存储在存储器464中的指令。处理器还可以包括单独的模拟和数字处理器。处理器可以例如提供用于设备450的其他组件的协调,例如对用户界面的控制,由设备450运行的应用以及通过设备450的无线通信。通常,处理器可以控制计算设备450的操作,并且可以包括各种逻辑电路和程序,以执行本文所述的各种实现方式。
处理器452可以通过用户界面与用户通信,该用户界面包括控制界面458和耦合到显示器454的显示接口456。显示器454可以通过合适的显示器来实现,包括例如投影显示器,液晶显示器(LCD)或发光二极管(LED)显示器以显示各种数据。例如,在一些实现方式中,用户界面326的显示可以显示AIR接口或获取参数界面。显示接口456可以包括用于驱动显示器454以向用户呈现图形和其他信息的适当电路。控制接口458可以从用户接收命令并且将其转换以提交给处理器452。另外,可以提供与处理器452通信的外部接口462,以使得设备450可以与其他设备进行近距离通信。外部接口462可以提供例如用于有线通信(例如,经由对接过程)或用于无线通信(例如,经由蓝牙或其他这样的技术)。
设备450还可以使用音频编解码器460以听觉方式进行通信,该音频编解码器可以从用户接收语音信息并将其转换为可用的数字信息。音频编解码器460可以类似地例如通过在设备450的听筒中的扬声器为用户生成可听见的声音。这种声音可以包括来自语音电话呼叫的声音,可以包括记录的声音(例如,语音消息,音乐文件,等),并且还可以包括在设备450上运行的应用生成的声音。
在某些情况下,音频编解码器460可以连接到麦克风或扬声器或由其实现。在一些实现方式中,可以通过从扬声器发出的音频信号来传达消息,例如指示不能使用用户确认或选择的获取参数值来获取所请求的内容的拒绝消息。在一些实现方式中,诸如语音到文本的应用之类的某些应用可以通过经由麦克风接收音频或语音信号来执行。
尽管未示出,但是计算设备还可以包括传感器和输入单元。传感器可以包括例如光学传感器,电容传感器,电荷耦合器件传感器,陀螺仪,麦克风,高度计,冲击传感器,压电传感器,运动传感器,生物传感器,有源像素传感器和各种其他传感器。输入单元可以包括被配置为接收一个或多个输入的各种设备。例如,输入单元可以包括用于接收字母数字文本的鼠标,触摸板或键盘。
上面提到的实现方式描述了示例性场景,系统和方法,其中系统在用户预期没有访问无线网络连接的时间之前预测并下载内容。为了在用户预期没有无线连接的时间之前上传内容,可以执行类似的实现方式。例如,系统可以预期用户将来可能会无法访问互联网,并且可以为用户设备提供推荐,以将数据从用户设备上载到特定的目的地,例如云网络,数据库或服务器。如果用户同意推荐,则系统可以在推荐的时间上传内容。
虽然本说明书包含许多细节,但是这些细节不应解释为对本公开范围或所要求保护的范围的限制,而应理解为对特定实现方式的特征的描述。在单独的实施例的上下文中在本说明书中描述的某些特征也可以在单个实施例中组合地实现。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何合适的子组合来实现。此外,尽管以上可能将特征描述为以某些组合形式起作用,甚至可以这样要求保护,但是在某些情况下,可以从组合中删除所要求保护的组合中的一个或多个特征,并且可以将所要求保护的组合指向子组合或子组合的变形。
类似地,虽然在附图中以特定顺序描绘了动作,但是这不应理解为要求以所示的特定顺序或以连续的顺序执行这样的动作,或者执行所有示出的动作以实现期望的结果。此外,上述实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或打包在多个软件产品中。
应该理解,短语一个或多个和短语至少一个包括元素的任何组合。例如,短语A和B中的一个或多个包括A,B或A和B两者。类似地,短语A和B中至少一个包括A,B或A和B两者。
因此,已经描述了特定的实现方式。其他实现方式在所附权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。

Claims (20)

1.一种计算机实现的方法,包括:
使用活动日志数据训练神经网络系统;
由一个或多个计算设备基于使用所述活动日志数据训练所述神经网络系统来确定一个或多个参数以配置在第一未来时间数据的获取;
由所述一个或多个计算设备基于所述一个或多个参数以及使用所述活动日志数据训练所述神经网络系统来生成在所述第一未来时间获取所述数据的推荐;
由所述一个或多个计算设备接收指示接受或拒绝所生成的在所述第一未来时间获取所述数据的推荐的用户输入;以及
响应于接收到指示接受所生成的推荐的所述用户输入:
由所述一个或多个计算设备在所述第一未来时间从一个或多个内容传递服务器获得所述数据;
使用接收到的用户输入来训练所述神经网络系统;
使用经训练的神经网络系统确定用于输出所获得的数据的第二未来时间;以及
由所述一个或多个计算设备控制显示器在所述第二未来时间输出所获得的数据。
2.根据权利要求1所述的计算机实现的方法,其中:
所述一个或多个参数包括内容类型、内容大小、位置和无线连接性阈值;以及
所述活动日志数据包括指示用户行为的活动数据。
3.根据权利要求1或2所述的计算机实现的方法,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取包括:
确定满足触发条件;
确定与所述触发条件相关联的时间;
确定用户在与所述第一未来时间相关联的时间频繁获取的内容类型;以及
确定所述第一未来时间和与所述触发条件相关联的时间相关联。
4.根据权利要求3所述的计算机实现的方法,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取进一步包括确定所述内容类型的大小。
5.根据任意前述权利要求所述的计算机实现的方法,其中,基于所述一个或多个参数以及使用所述活动日志数据训练所述神经网络系统来生成在所述第一未来时间获取所述数据的推荐包括:
确定用户设备在所述第一未来时间的无线连接性的可能水平;
确定所述数据的全部在从所述第一未来时间开始的阈值时间段期间能够以所确定的无线连接性的可能水平下载的概率,所述阈值时间段是(i)所述用户设备可能以特定无线连接性阈值水平或更高水平保持连接到无线网络的时间段,或(ii)由第二用户输入选择的时间段;以及
确定所述概率超过置信度阈值。
6.根据任意前述权利要求所述的计算机实现的方法,进一步包括:
由所述一个或多个计算设备控制输出设备输出所述推荐,所述输出设备包括所述显示器或扬声器中的一个或多个,
其中,当所述输出设备是所述显示器时,所述用户输入使用由所述显示器显示的图形用户界面来接收。
7.根据任意前述权利要求所述的计算机实现的方法,其中,所述第二未来时间是包括所述显示器和所述一个或多个计算设备的用户设备可能未连接至无线网络的时间。
8.根据任意前述权利要求所述的计算机实现的方法,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取包括:
在使用一个或多个应用输出应用数据之前,确定被配置为在特定时间获取所述应用数据的所述一个或多个应用;以及
确定所述应用数据的内容类型和所述应用数据的内容大小。
9.一个或多个非暂时性计算机可读存储介质,其包括指令,所述指令在由一个或多个计算设备执行时使所述一个或多个计算设备执行包括以下的操作:
使用活动日志数据训练神经网络系统;
基于使用所述活动日志数据训练所述神经网络系统来确定一个或多个参数以配置在第一未来时间数据的获取;
基于所述一个或多个参数以及使用所述活动日志数据训练所述神经网络系统来生成在所述第一未来时间获取所述数据的推荐;
接收指示接受或拒绝所生成的在所述第一未来时间获取所述数据的推荐的用户输入;以及
响应于接收到指示接受所生成的推荐的所述用户输入:
在所述第一未来时间从一个或多个内容传递服务器获取所述数据;
使用接收到的用户输入来训练所述神经网络系统;
使用经训练的神经网络系统确定用于输出所获得的数据的第二未来时间;以及
控制显示器在所述第二未来时间输出所获得的数据。
10.根据权利要求9所述的一个或多个非暂时性计算机可读存储介质,其中:
所述一个或多个参数包括内容类型、内容大小、位置和无线连接性阈值;
所述活动日志数据包括指示用户行为的活动数据;以及
所述第二未来时间是包括所述显示器和所述一个或多个计算设备的用户设备可能未连接到无线网络的时间。
11.根据权利要求9或10所述的一个或多个非暂时性计算机可读存储介质,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取包括:
确定满足触发条件;
确定与所述触发条件相关联的时间;
确定用户在与所述第一未来时间相关联的时间频繁获取的内容类型;以及
确定所述第一未来时间和与所述触发条件相关联的时间相关联。
12.根据权利要求11所述的一个或多个非暂时性计算机可读存储介质,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取进一步包括确定以下中的一项或多项:
所述内容类型的大小;
在所述第一未来时间获取所述数据的可能的财务成本;以及
支付所述可能的财务成本的资金的可用性。
13.根据权利要求9、10、11或12所述的一个或多个非暂时性计算机可读存储介质,其中,基于所述一个或多个参数和使用所述活动日志数据训练所述神经网络系统来生成在所述第一未来时间获取所述数据的推荐包括:
确定用户设备在所述第一未来时间的无线连接性的可能水平;
确定所述数据的全部在从所述第一未来时间开始的阈值时间段期间能够以所确定的无线连接性的可能水平下载的概率,所述阈值时间段是(i)所述用户设备可能以特定无线连接性阈值水平或更高水平保持连接到无线网络的时间段,或(ii)由第二用户输入选择的时间段;以及
确定所述概率超过置信度阈值。
14.根据权利要求9所述的一个或多个非暂时性计算机可读存储介质,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取包括:
在使用一个或多个应用输出应用数据之前,确定被配置为在特定时间获取所述应用数据的所述一个或多个应用;以及
确定所述应用数据的内容类型和所述应用数据的内容大小。
15.一种系统,包括:
一个或多个计算机和存储可操作的指令的一个或多个存储设备,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行包括以下的动作:
使用活动日志数据训练神经网络系统;
基于使用所述活动日志数据训练所述神经网络系统来确定一个或多个参数以配置在第一未来时间数据的获取;
基于所述一个或多个参数以及使用所述活动日志数据训练所述神经网络系统来生成在所述第一未来时间获取所述数据的推荐;
接收指示接受或拒绝所生成的在所述第一未来时间获取所述数据的推荐的用户输入;以及
响应于接收到指示接受所生成的推荐的所述用户输入:
在所述第一未来时间从一个或多个内容传递服务器获取所述数据;
使用接收到的用户输入来训练所述神经网络系统;
使用经训练的神经网络系统确定用于输出所获得的数据的第二未来时间;以及
控制显示器在所述第二未来时间输出所获得的数据。
16.根据权利要求15所述的系统,其中:
所述一个或多个参数包括内容类型、内容大小、位置和无线连接性阈值;
所述活动日志数据包括指示用户行为的活动数据;以及
所述第二未来时间是包括所述显示器和所述一个或多个计算设备的用户设备可能未连接到无线网络的时间。
17.根据权利要求15或16所述的系统,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取包括:
确定满足触发条件;
确定与所述触发条件相关联的时间;
确定用户在与所述第一未来时间相关联的时间频繁获取的内容类型;以及
确定所述第一未来时间和与所述触发条件相关联的时间相关联。
18.根据权利要求17所述的系统,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取进一步包括确定所述内容类型的大小。
19.根据权利要求15、16、17或18所述的系统,其中,基于所述一个或多个参数以及使用所述活动日志数据训练所述神经网络系统来生成在所述第一未来时间获取所述数据的推荐包括:
确定用户设备在所述第一未来时间的无线连接性的可能水平;
确定所述数据的全部在从所述第一未来时间开始的阈值时间段期间能够以所确定的无线连接性的可能水平下载的概率,所述阈值时间段是(i)所述用户设备可能以特定无线连接性阈值水平或更高水平保持连接到无线网络的时间段,或(ii)由第二用户输入选择的时间段;以及
确定所述概率超过置信度阈值。
20.根据权利要求15至19中的任一项所述的系统,其中,基于使用所述活动日志数据训练所述神经网络系统来确定所述一个或多个参数以配置在所述第一未来时间数据的获取包括:
在使用一个或多个应用输出应用数据之前,确定被配置为在特定时间获取所述应用数据的所述一个或多个应用;以及
确定所述应用数据的内容类型、所述应用数据的内容大小、在所述第一未来时间获得所述应用数据的可能的财务成本以及支付所述可能的财务成本的资金的可用性。
CN201880062783.2A 2017-09-27 2018-05-10 智能高级内容检索 Active CN111149339B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/716,848 2017-09-27
US15/716,848 US11494631B2 (en) 2017-09-27 2017-09-27 Smart advanced content retrieval
PCT/US2018/032094 WO2019067017A1 (en) 2017-09-27 2018-05-10 INTELLIGENT ADVANCED CONTENT RECOVERY

Publications (2)

Publication Number Publication Date
CN111149339A true CN111149339A (zh) 2020-05-12
CN111149339B CN111149339B (zh) 2022-10-14

Family

ID=62716117

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880062783.2A Active CN111149339B (zh) 2017-09-27 2018-05-10 智能高级内容检索

Country Status (4)

Country Link
US (2) US11494631B2 (zh)
EP (1) EP3688965B1 (zh)
CN (1) CN111149339B (zh)
WO (1) WO2019067017A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11716400B2 (en) 2015-08-11 2023-08-01 Ironsource Ltd. Methods circuits devices systems and functionally associated machine executable code for recommendation and distribution of digital content
EP3565261B1 (en) * 2018-05-02 2020-05-27 Spotify AB Predictive caching
US11244222B2 (en) * 2018-06-27 2022-02-08 Sony Corporation Artificial intelligence-enabled device for network connectivity independent delivery of consumable information
US20200210880A1 (en) * 2018-12-26 2020-07-02 Sony Corporation Reconfiguration of embedded services on devices using device functionality information
US11074484B2 (en) * 2019-01-31 2021-07-27 International Business Machines Corporation Self-improving transferring in bot conversation
US11734020B2 (en) * 2019-05-08 2023-08-22 Sony Interactive Entertainment LLC Accelerated application start using estimated play duration
US11218377B2 (en) * 2019-09-20 2022-01-04 Lenovo (Singapore) Pte. Ltd. Prediction of loss of network connection and caching of content
WO2022201089A1 (en) * 2021-03-26 2022-09-29 Ironsource Ltd. Methods and systems for recommendation and distribution of digital content

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006308A1 (en) * 2007-06-29 2009-01-01 Nokia Corporation Systems, Methods, Devices, and Computer Program Products for Downloading Content for Offline Browsing
US20120276845A1 (en) * 2011-04-28 2012-11-01 Sony Mobile Communications Ab Payment processing
CN103823805A (zh) * 2012-11-16 2014-05-28 腾讯科技(深圳)有限公司 基于社区的相关帖推荐系统及推荐方法
US20150154016A1 (en) * 2012-06-19 2015-06-04 Uc Mobile Limited Internal software updating method and system
CN104704522A (zh) * 2012-08-17 2015-06-10 谷歌公司 推荐原生应用
CN104903929A (zh) * 2012-11-12 2015-09-09 谷歌公司 在站点上向用户提供内容推荐
US9247463B1 (en) * 2014-11-05 2016-01-26 LotusFlare, Inc. Systems and methods for providing mobile application access over non-mobile data channels
CN105335391A (zh) * 2014-07-09 2016-02-17 阿里巴巴集团控股有限公司 基于搜索引擎的搜索请求的处理方法和装置
US9414222B1 (en) * 2013-03-12 2016-08-09 Amazon Technologies, Inc. Predictive caching devices, systems and methods
US20160234290A1 (en) * 2015-02-11 2016-08-11 Flipboard, Inc. Providing digital content for offline consumption

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978841A (en) 1996-03-08 1999-11-02 Berger; Louis Look ahead caching process for improved information retrieval response time by caching bodies of information before they are requested by the user
US6256633B1 (en) 1998-06-25 2001-07-03 U.S. Philips Corporation Context-based and user-profile driven information retrieval
US8875198B1 (en) * 2001-08-19 2014-10-28 The Directv Group, Inc. Network video unit
US7478095B2 (en) 2005-01-19 2009-01-13 Microsoft Corporation Generation and retrieval of incident reports
EP2052335A4 (en) * 2006-08-18 2010-11-17 Sony Corp SYSTEM AND METHOD FOR SELECTIVE ACCESS TO MULTIMEDIA CONTENT VIA A RECOMMENDATION ENGINE
US7747458B2 (en) * 2006-10-11 2010-06-29 International Business Machines Corporation Electronic calendar auto event resolution system and method
US9009292B2 (en) * 2007-07-30 2015-04-14 Sybase, Inc. Context-based data pre-fetching and notification for mobile applications
US10117055B2 (en) * 2009-07-08 2018-10-30 Dejero Labs Inc. System and method for providing data services on vehicles
US20130275685A1 (en) * 2012-04-16 2013-10-17 International Business Machines Corporation Intelligent data pre-caching in a relational database management system
US8954092B2 (en) 2012-06-25 2015-02-10 Google Inc. Pre-caching data related to a travel destination
US9058324B2 (en) * 2012-09-28 2015-06-16 Intel Corporation Predictive precaching of data based on context
US9626174B2 (en) * 2013-04-15 2017-04-18 Cellco Partnership Cancelling device over the air software update
WO2014194441A1 (en) 2013-06-06 2014-12-11 Yahoo! Inc Method and system for dynamic content pre-caching
US9411814B2 (en) * 2014-01-06 2016-08-09 Dropbox, Inc. Predictive caching and fetch priority
US10338896B2 (en) * 2014-03-21 2019-07-02 Ptc Inc. Systems and methods for developing and using real-time data applications
US9210662B1 (en) * 2014-05-29 2015-12-08 Apple Inc. Adaptive battery life extension
US10311372B1 (en) * 2014-12-19 2019-06-04 Amazon Technologies, Inc. Machine learning based content delivery
US9948742B1 (en) * 2015-04-30 2018-04-17 Amazon Technologies, Inc. Predictive caching of media content
US11593817B2 (en) * 2015-06-30 2023-02-28 Panasonic Intellectual Property Corporation Of America Demand prediction method, demand prediction apparatus, and non-transitory computer-readable recording medium
US9946653B2 (en) * 2016-04-29 2018-04-17 Ncr Corporation Predictive memory caching
US10311012B2 (en) * 2016-12-31 2019-06-04 Spotify Ab Media content playback with state prediction and caching
US10154501B2 (en) * 2017-03-17 2018-12-11 At&T Intellectual Property I, L.P. Determining wireless network availability for connected vehicles
US10499066B2 (en) * 2017-04-14 2019-12-03 Nokia Technologies Oy Method and apparatus for improving efficiency of content delivery based on consumption data relative to spatial data

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006308A1 (en) * 2007-06-29 2009-01-01 Nokia Corporation Systems, Methods, Devices, and Computer Program Products for Downloading Content for Offline Browsing
US20120276845A1 (en) * 2011-04-28 2012-11-01 Sony Mobile Communications Ab Payment processing
US20150154016A1 (en) * 2012-06-19 2015-06-04 Uc Mobile Limited Internal software updating method and system
CN104704522A (zh) * 2012-08-17 2015-06-10 谷歌公司 推荐原生应用
CN104903929A (zh) * 2012-11-12 2015-09-09 谷歌公司 在站点上向用户提供内容推荐
CN103823805A (zh) * 2012-11-16 2014-05-28 腾讯科技(深圳)有限公司 基于社区的相关帖推荐系统及推荐方法
US9414222B1 (en) * 2013-03-12 2016-08-09 Amazon Technologies, Inc. Predictive caching devices, systems and methods
CN105335391A (zh) * 2014-07-09 2016-02-17 阿里巴巴集团控股有限公司 基于搜索引擎的搜索请求的处理方法和装置
US9247463B1 (en) * 2014-11-05 2016-01-26 LotusFlare, Inc. Systems and methods for providing mobile application access over non-mobile data channels
US20160234290A1 (en) * 2015-02-11 2016-08-11 Flipboard, Inc. Providing digital content for offline consumption

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DANIEL SAUBLE: "离线:当你的应用无法连接网络的时候", 《百度 HTTPS://WWW.UI.CN/DETAIL/46563.HTML》 *
钟艳: "支持离线应用的掘进机售后服务管理系统的研究与设计", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 *

Also Published As

Publication number Publication date
CN111149339B (zh) 2022-10-14
EP3688965B1 (en) 2021-12-15
EP3688965A1 (en) 2020-08-05
WO2019067017A1 (en) 2019-04-04
US11494631B2 (en) 2022-11-08
US20190095786A1 (en) 2019-03-28
US20230068252A1 (en) 2023-03-02

Similar Documents

Publication Publication Date Title
CN111149339B (zh) 智能高级内容检索
US10567568B2 (en) User event pattern prediction and presentation
US20220414545A1 (en) Systems and methods for intelligently providing supporting information using machine-learning
US10909464B2 (en) Semantic locations prediction
KR102452387B1 (ko) 그룹 프로파일 생성을 위한 장치 및 그 방법
KR101674852B1 (ko) 클라이언트 디바이스 상의 애플리케이션들 관리
US9008688B2 (en) Calendar matching of inferred contexts and label propagation
US10586216B2 (en) User work schedule identification
JP2015531913A (ja) プッシュに基づく推奨
US11436293B2 (en) Characterizing a place by features of a user visit
US20220078135A1 (en) Signal upload optimization
CN105229636A (zh) 上下文社交感知本地搜索
US20190090197A1 (en) Saving battery life with inferred location
CN111580893A (zh) 用于提供例程的方法和支持该例程的电子装置
US10389866B2 (en) Advanced content retrieval
EP3610697B1 (en) Signal sharing between trusted groups of devices
AU2018101953A4 (en) Childcare Facility Platform, System and Method
WO2020106499A1 (en) Saving battery life using an inferred location

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
GR01 Patent grant
GR01 Patent grant