CN104246757B - 预测性服务访问 - Google Patents

预测性服务访问 Download PDF

Info

Publication number
CN104246757B
CN104246757B CN201280072557.5A CN201280072557A CN104246757B CN 104246757 B CN104246757 B CN 104246757B CN 201280072557 A CN201280072557 A CN 201280072557A CN 104246757 B CN104246757 B CN 104246757B
Authority
CN
China
Prior art keywords
word
experience matrix
prediction
processor
program code
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.)
Expired - Fee Related
Application number
CN201280072557.5A
Other languages
English (en)
Other versions
CN104246757A (zh
Inventor
M·埃尔斯通
M·朗福尔斯
E·莫尼
I·贝茨特里
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.)
Nokia Technologies Oy
Original Assignee
Nokia Technologies Oy
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 Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of CN104246757A publication Critical patent/CN104246757A/zh
Application granted granted Critical
Publication of CN104246757B publication Critical patent/CN104246757B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Abstract

本发明涉及预测性浏览。形成了用于与经验矩阵一起使用的词语的集合,其中该词语描述系统的情境比如当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量。对所述经验矩阵的至少一个稀疏矢量的至少一部分进行访问以形成预测输出,并且响应于所述预测输出而向用户提供对网页的建议。

Description

预测性服务访问
背景技术
当前电子用户设备如智能电话和计算机承载多个功能,例如用于不同需要的各种程序以及用于定位、通信和娱乐的不同模块。可以用这些设备来执行的任务的种类很多,并且各个任务可能实际上很复杂。例如,当今世界执行的任务中的很多任务是在计算机的帮助下进行的。同样地,电子设备也已经成为空闲时间的日常生活的一部分。此外,通过用于不同目的的互联网可获得大量网络服务和应用。
现代电子设备如计算机或智能电话的用户可能被由系统提供的各种功能以及他/她触及的各种服务和应用所淹没。出于这个目的,这些设备可以在设备中提供定制功能的外观和布置的方法,使得用户所需要的设备的功能很容易可获得。然而,系统的状态以及系统于其中被使用的情况可能对性能和用户的需求产生影响。
因此,需要用于向系统的用户提供对互联网中的相关服务的较容易的访问的解决方案。
发明内容
现在,已经发明了一种改进的方法以及一种实现该方法的技术装备,通过该方法以及该技术装备可以缓解以上问题。本发明的多个方面包括一种方法、装置、服务器、客户端、数据结构和包括存储在其中的计算机程序的计算机可读介质,其特征在于在独立权利要求中所指出的内容。在从属权利要求中公开了本发明的多种实施例。
示例实施例涉及预测性浏览。形成了用于与经验矩阵一起使用的词语的集合,其中该词语描述系统的情境比如当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量。访问所述经验矩阵的至少一个稀疏矩阵的至少一部分以形成预测输出,以及响应于所述预测输出而向用户提供对网页的建议。可以使用抽取元数据来形成预测,使得该预测基于描述站点而非内容的词语(有时是偶然的,例如广告)。
根据第一方面,提供了一种方法,包括:形成用于与经验矩阵一起使用的词语的集合,其中该词语描述系统的情境比如当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量;访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出;以及响应于所述预测输出而向用户提供对网页的建议。
根据实施例,该方法包括形成用于采集词语的输入缓冲器以用于更新所述经验矩阵。根据实施例,该方法包括基于网络浏览器活动来形成所述预测输出。根据实施例,该方法包括基于页面加载完成来形成所述预测输出。根据实施例,该方法包括在后台中来形成所述预测输出。根据实施例,该方法包括基于网络浏览器活动来更新所述经验矩阵。根据实施例,该方法包括形成包括网页的图像或文本的预测列表,以及基于网络浏览器活动来更新所述预测列表。根据实施例,该方法包括:作为所述预测输出的结果,提供对其他有关数据而非网页的建议。根据实施例,该方法包括在形成所述经验矩阵时使用抽取元数据。根据实施例,该方法包括在形成所述预测时使用抽取元数据。根据实施例,所述抽取元数据是国别化的。根据实施例,所述抽取元数据为经验矩阵的形式。根据实施例,该方法包括在形成所述预测时以加权方式使用站点内容和所述抽取元数据。
根据第二方面,提供了包括一个或多个指令的一个或多个序列的一种计算机程序产品,所述一个或多个指令的一个或多个序列在由一个或多个处理器执行时使系统执行根据以上权利要求中的任一项所述的方法。
根据第三方面,提供了一种包括如下一个或多个指令的一个或多个序列的计算机程序产品,该一个或多个指令的一个或多个序列在由一个或多个处理器执行时使系统:形成用于与经验矩阵一起使用的词语的集合,其中词语描述系统的情境比如当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量;访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出;以及响应于所述预测输出而向用户提供对网页的建议。
根据实施例,计算机程序产品包括使系统形成包括网页的图像或文本的预测列表并且基于网络浏览器活动来更新所述预测列表的一个或多个指令的一个或多个序列。根据实施例,计算机程序产品包括使系统在形成所述经验矩阵时使用抽取元数据的一个或多个指令的一个或多个序列。根据实施例,计算机程序产品包括使系统在形成所述预测时使用抽取元数据的一个或多个指令的一个或多个序列。
根据第四方面,提供了一种用于控制计算机系统的操作的数据结构,所述数据结构包括具有稀疏高维矢量的经验矩阵,所述矢量包括关于词语在至少一个系统或装置中的同时出现的信息,并且所述经验矩阵已经至少部分地通过使用网站的抽取元数据而被形成。根据实施例,所述抽取元数据为国别化的。
根据第五方面,提供了一种包括至少一个处理器、至少一个存储器的装置,该至少一个存储器包括如下用于一个或多个程序单元的计算机程序代码,该至少一个存储器和计算机程序代码被配置成与处理器一起使该装置形成用于与经验矩阵一起使用的词语的集合,其中词语描述系统的情境比如当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量;访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出;以及响应于所述预测输出而向用户提供对网页的建议。
根据实施例,该装置包括被配置成使该装置形成用户收集词语的输入缓冲器以用于更新所述经验矩阵的计算机程序代码。根据实施例,该装置包括被配置成使该装置基于网络浏览器活动来形成所述预测输出的计算机程序代码。根据实施例,该装置包括被配置成使该装置基于页面加载完成来形成所述预测输出的计算机程序代码。根据实施例,该装置包括被配置成使该装置在后台中形成所述预测输出的计算机程序代码。根据实施例,该装置包括被配置成使该装置基于网络浏览器活动来更新所述经验矩阵的计算机程序代码。根据实施例,该装置包括如下计算机程序代码,该计算机程序代码被配置成使该装置:形成包括网页的图像或文本的预测列表;并且基于网络浏览器活动来更新所述预测列表。根据实施例,该装置包括被配置成使该装置作为所述预测输出的结果来提供对其他有关数据而非网页的建议的计算机程序代码。根据实施例,该装置包括被配置成使该装置在形成所述经验矩阵时使用抽取元数据的计算机程序代码。根据实施例,该装置包括被配置成使该装置在形成所述预测时使用抽取元数据的计算机程序代码。根据实施例,所述抽取元数据是国别化的。根据实施例,所述抽取元数据为经验矩阵的形式。根据实施例,该装置包括被配置成使该装置在形成所述预测时以加权方式使用站点内容和所述抽取元数据的计算机程序代码。
根据第六方面,提供了一种装置,该装置包括:用于形成用于与经验矩阵一起使用的词语的集合的装置,其中词语描述系统的情境比如当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量;用于访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出的装置;以及用于响应于所述预测输出而向用户提供对网页的建议的装置。
根据实施例,该装置包括用于形成用于收集词语的输入缓冲器以用于更新所述经验矩阵的装置。根据实施例,该装置包括用于基于网络浏览器活动来形成所述预测输出的装置。根据实施例,该装置包括用于基于页面加载完成来形成所述预测输出的装置。根据实施例,该装置包括用于在后台中形成所述预测输出的装置。根据实施例,该装置包括用于基于网络浏览器活动来更新所述经验矩阵的装置。根据实施例,该装置包括用于形成包括网页的图像或文本的预测列表的装置、以及用于基于网络浏览器活动来更新所述预测列表的装置。根据实施例,该装置包括用于作为所述预测输出的结果提供对其他有关数据而非网页的建议的装置。根据实施例,该装置包括用于在形成所述经验矩阵时使用抽取元数据的装置。根据实施例,该装置包括用于在形成所述预测时使用抽取元数据的装置。根据一种实施例,所述抽取元数据是国别化的。根据实施例,所述抽取元数据为经验矩阵的形式。根据实施例,该装置包括用于在形成所述预测时以加权方式使用站点内容和所述抽取元数据的装置。
根据第七方面,提供了一种系统,包括至少一个处理器、至少一个存储器,至少一个存储器包括用于一个或多个程序段安逸的计算机程序代码,至少一个存储器和计算机程序代码被配置成与处理器一起使系统:形成用于与经验矩阵一起使用的词语的集合,其中,词语描述系统的情境比如当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量;访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出;以及响应于所述预测输出而向用户提供对网页的访问。
根据实施例,该系统包括被配置成使该系统形成用于收集词语的输入缓冲器以用于更新所述经验矩阵的计算机程序代码。根据实施例,该系统包括被配置成使该系统基于网络浏览器活动来形成所述预测输出的计算机程序代码。根据实施例,该系统包括被配置成使该系统基于页面加载完成来形成所述预测输出的计算机程序代码。根据实施例,该系统包括被配置成使该系统在后台中形成所述预测输出的计算机程序代码。根据实施例,该系统包括被配置成使该系统基于网络浏览器活动来更新所述经验矩阵的计算机程序代码。根据实施例,该系统包括如下计算机程序代码,该计算机程序代码被配置成使该系统:形成包括网页的图像或文本的预测列表;以及基于网络浏览器活动来更新所述预测列表。根据实施例,该系统包括被配置成使该系统作为所述预测输出的结果提供对其他有关数据而非网页的建议的计算机程序代码。根据实施例,该系统包括被配置成使该系统在形成所述经验矩阵时使用抽取元数据的计算机程序代码。根据实施例,该系统包括被配置成使该系统在形成所述预测时使用抽取元数据的计算机程序代码。根据实施例,该系统包括被配置成使该系统在形成所述预测时以加权方式使用站点内容和所述抽取元数据的计算机程序代码。
附图说明
下面,将参考示例实施例的附图更详细地描述本发明的多种实施例,在附图中:
图1a、图1b和图1c示出将词语表示为基本稀疏矢量、词语口袋,以及在与词语口袋一起更新之后的经验矩阵,
图2示出使用词语口袋和基本稀疏矢量来更新经验矩阵,
图3a、图3b和图3c示出使用经验矩阵提供预测;确定情境空间中的矢量的差异,以及使用经验矩阵提供预测,
图4a、图4b和图4c示出将词语口袋表示为基本稀疏矢量;使用词语口袋和基本稀疏矢量来更新经验矩阵,以及更新之后的经验矩阵,
图5a和图5b示出将词语收集至口袋,以及其中词语表示不同时刻的情况,
图6图示在包括经验矩阵的系统中采集和处理数据,
图7a示出被配置成使用经验矩阵来采集和处理数据的系统,
图7b示出被布置成提供词语作为输出的传感器,
图7c示出包括词语哈希表和基本稀疏矢量组的稀疏矢量供应,
图7d示出包括基本稀疏矢量组的稀疏矢量供应,
图7e示出包括被配置成生成基本稀疏矢量的随机数发生器的稀疏矢量供应,
图7f示出基于使用经验矩阵进行的预测而被控制的系统,
图8a、图8b、图8c和图8d示出词语口袋,基于预测而被控制的用户界面,以及用于针对日历事件而对系统进行准备的方法步骤。
图9a、图9b和图9c示出将经验矩阵表示为哈希表组,更新经验矩阵,以及使用经验矩阵用于进行预测,
图10a和图10b示出使用日历和/或词典生成辅助词语,以及使用词典用第二词语代替词语,
图11示出包括经验矩阵的系统,
图12a和图12b示出不同的数据处理设备,
图13a示出根据实施例的预测性浏览器的用户界面序列的示例,
图13b示出根据实施例的具有用于相关内容的建议的预测式浏览器的用户界面的示例,
图14示出根据实施例的用于预测性浏览的抽取索引,
图15示出根据实施例的预测性浏览的流程图,以及
图16示出根据实施例的预测性浏览的流程图。
具体实施方式
下面,将参考系统的情境以及随机索引的框架来描述本发明的若干示例实施例。然而,应当注意,本发明不限于这些用途或备选。实际上,不同的实施例可应用于其中需要系统的语义处理和适应性的任何环境。
可以基于词语在在先情况下的同时出现而采集同时出现的数据。经验矩阵可以包含关于词语在不同情况下的同时出现的历史数据。经验矩阵EX1可以实际上包含多个稀疏矢量,稀疏矢量又包含关于与系统有关的词语的历史共同出现的信息。矩阵EX1可以理解为记忆由一个或多个系统采集的经验。经验矩阵可以包含由一个或多个系统采集的“经验”。经验矩阵可以用来例如“预测”合适的动作或操作模式,这些模式在与给定情况有关的一个或多个(其他)词语已知的情况下可以适用于该情况。因此,通过使用系统的经验矩阵中所存储的在先经验,系统可以基于所观察到的事实来改变其操作。
通过使用经验矩阵中所存储的数据,可以从查询词语中确定一个或多个预测词语。随后可以基于预测词语来控制系统。查询词语可以是描述当前情况的词语。预测词语是很可能描述当前情况的词语。可以将同时出现的数据存储为经验矩阵EX1的矢量。同时出现的数据随后可以用于进行预测。将同时出现的数据存储在经验矩阵EX1中以及利用经验矩阵EX1中所存储的同时出现的数据都可能需要词汇表VOC1。在实施例中,词汇表VOC1也可以结合被称为基本矩阵
RM1的另一矩阵来使用。
参考图1a,词汇表VOC1可以包括不同词语w1、w2、……、wn的组。词汇表VOC1可以是哈希表,其包含指向基本矩阵RM1的稀疏矢量的指针。稀疏矢量也可以称为随机索引矢量(RI矢量)。因此,可以使词汇表VOC1的每个词语w1、w2、……、wn与基本稀疏矢量a1、a2、……、an关联。例如,可以使词语wk(例如,“meeting”)与基本稀疏矢量ak关联。可以将基本稀疏矢量a1、a2、……、ak、……、an存储例如作为基本矩阵RM1的行。
词汇表VOC1可以是哈希表,其通过使用词语(例如,wk)作为密钥来指示稀疏矢量在基本稀疏矩阵RM1中的位置(例如,行k)。
矩阵RM1的每个基本稀疏矢量可以代表词语。例如,基本矢量ak可以理解为代表稀疏矢量格式中的词语wk。每个基本稀疏矢量ak包括元素R1,k、R2,k、……、Ri,k、……、Rm,k。在实施例中,矩阵RM1的基本稀疏矢量a1、a2、……、ak、……、an可以唯一并且不同。基本矩阵RM1的每行可以是与不同词语关联的唯一的基本稀疏矢量。每个基本稀疏矢量ak可以具有大量零元素和仅几个非零元素。例如,基本稀疏矢量ak可以具有例如10000个元素R,其中二十个元素可以是非零并且9980个元素可以是零。
在实施例中,基本稀疏矢量ak的所有元素之和可以等于零。这可以使存储器消耗最小化,可以简化数学操作和/或可以增加数据处理速度。具体地,非零元素中的50%可以等于-1(负一),非零元素中的50%可以等于1(一)。换言之,元素的值可以是-1、0或1,基本稀疏矢量ak可以是三元矢量。
每个矢量a1、a2、……、ak、……、an可以用多维空间中的点来代表。更精确地,当每个矢量的起点位于相同点(例如原点)时,每个矢量a1、a2、……、ak、……、an可以用同一多维空间中的不同的终点来代表。基本稀疏矢量ak的元素R的数目m可以例如在100至106的范围内。基本稀疏矢量ak的非零元素R的数目mnz可以在数目m的0.1%至10%的范围内,所述非零元素的数目mnz也在4至103的范围内。增加总数目m和/或非零元素的数目mnz可以使得能够使用较大的词汇表VOC1和/或可以提供更可靠的预测。然而,增加数目m和/或mnz也可能需要更多的存储器空间和更强的数据处理能力。
Ri,k表示基本矩阵RM1的属于第i列和第k行的元素。在实施例中,矢量可以是三元的,各个元素ei,k的值可以是以下中的一种:-1、0或1。负的非零元素R的数目可以等于正的非零元素R的数目,非零元素R的值为整数。这很可能使数据处理速度最大化,并且使存储器的使用最小化。然而,这不是必须的。例如,基本稀疏矢量ak可以具有十六个值为-0.5的元素R和四个值为2的元素R。
在将矩阵RM1的矢量a1、a2、……、ak、……、an彼此比较时,非零元素在基本稀疏矢量ak中的位置和基本稀疏矢量ak的非零元素的值可以随机分布。基本稀疏矢量也可以称为随机索引矢量。这个随机性可以以高可能性确保代表多维空间中的基本稀疏矢量的指针彼此不太靠近。如果表示两个不同词语的两个指针可能彼此太靠近,这可能导致随后的处理期间的错误预测。当位置和值随机分布时,这也可以以高可靠性确保词汇表VOC1的每个词语与唯一并且不同的基本稀疏矢量关联。在索引为随机时,很可能的是与两个不同的词语关联的元素稀疏矢量正交或接近正交。因此,所述元素稀疏矢量的点乘以高可能性等于零。词语的伪正交性可以保护每个词语或事件的唯一标识或矩阵中所存储的唯一出现,即使在它们用稀疏矢量代表的情况下。在词语、事件和/或出现被表示为经验矩阵EX1中的稀疏矢量的组合时,词语的这个伪正交性可以保护每个词语的唯一标识、经验矩阵EX1中所存储的事件或唯一出现。该词汇表的词语可以按照例如字母表顺序来布置。
图1b示出若干可以被称为例如“口袋”的词语的集合。口袋包括彼此相关的两个或多个不同的词语。口袋中的词语的数目可以例如在2至1000的范围内。每个口袋也可以被称为“文档”。
口袋代表词语的同时出现。口袋可以用于训练系统。可以将关于词语的同时出现的信息存储在矩阵EX1(图1c、图4b)中。
口袋中的词语可以例如描述情况和/或在所述情况下使用的系统。具体地,词语可以表示所观察到的事实。
例如,第一口袋BAG1可以包括词语“工作”、“上午”和“邮件”。词语“工作”可以例如基于例如系统的日历中的标记来确定。词语“上午”可以例如通过该系统的时钟来提供。词语“邮件”可以与词语例如“工作”和“上午”相关,因为该系统已经检测到用户已经在由词语“工作”和“上午”所描述的情况下接收到和/或发送书面消息。
第二口袋BAG2可以包括词语“家”、“进餐”和“音乐”。词语“家”可以例如当由用户携带的导航单元指示所检测的位置与被称为“家”的位置匹配时来提供。词语“进餐”可以被提供因为例如食物(例如,披萨)刚刚经由递送服务被预定给位置“家”。系统可以被布置成提供词语“音乐”因为例如用户已经指示系统播放音乐。
词语“家”、“进餐”和“音乐”可以表示例如在第一瞬时t1当时的情况。词语“家”、“进餐”和“音乐”可以是内部相关的。如果这个词语组合在过去已经出现了若干次,则其可以例如用来评估(预测)用户当在家吃饭时希望听音乐的可能性。例如,当确定用户正在家吃饭时,便携式设备可以被布置成将其自己设置成音乐播放模式。
第三口袋BAG3可以包括词语“工作”、“会议”和“静音”。词语“工作”和“会议”可以例如基于例如系统的日历中的标记来确定。系统可以被布置成基于例如用户的日历中所包含的信息来提供状况描述符“工作”。系统也可以在用户的便携式设备的位置与工作地点的位置匹配的情况下确定词语“工作”。词语“静音”可以被取得因为例如参加会议的用户已经将系统设置为静音模式。具体地,用户可能已经将移动电话设置成工作模式,其中电话在有来电呼叫的情况下不生成声音警报。
现在,词语“工作”、“会议”和“静音”可以代表在第二时间t2当时的情况。如果这个词语组合在过去已经出现了若干次,则其可以例如用来评估(预测)用户在工作中参加会议时希望将其便携式设备设置成静音模式的可能性。例如,在确定用户正在参加会议时,用户的便携式设备现在可以被布置成自动建议设置成静音模式。
参考图1c,从所观察到的词语的同时出现取得的数据可以存储为矩阵EX1的矢量v1、v2、……、vk、……、vn,其可以被称为例如“经验矩阵”。词汇表VOC1的每个词语w1、w2、……、wn(也)可以与经验矩阵EX1的稀疏矢量关联。稀疏矢量v1、v2、……、vk、……、vn可以存储为例如经验矩阵EX1的行。
词汇表VOC1可以与图1a中的(哈希表)相同。
经验矩阵EX1的每个矢量可以是稀疏矢量与初始矢量的线性组合。
具体地,经验矩阵EX1的每个矢量可以是基本稀疏矩阵RM1(图1a)的基本稀疏矢量的线性组合。
单个矢量vk的元素ei,k的数目n可以等于图1a所示各个基本稀疏矢量的元素R的数目n。稀疏矢量的组合可以根据口袋的内容(图1b)来执行。
经验矩阵EX1可以包含从多个口袋BAG1、BAG2获得的同时出现数据。当从口袋获得的同时出现数据存储在经验矩阵EX1中作为稀疏矢量的线性组合时,这可以代表用压缩格式存储同时出现数据。
在实施例中,单个矢量矢量vk的元素ei,k的数目n可以基本上小于从其中获得存储在矩阵EX1中的同时出现数据的口袋的数目。
在从新的口袋添加新的数据时,不必改变元素ei,k的数目n。这意味着可以通过使用从另外的口袋获得的同时出现数据来快速且容易地更新矩阵EX1。这也表示即使通过使用从另外的口袋获得的同时出现数据来更新矩阵EX1,矩阵EX1的大小(及,行和列的数目)仍然可以保持不变。
然而,在实施例中,不能够明白地(通过使用仅词汇表VOC1和矩阵RM1、EX1)确定口袋中的用于更新的哪些口袋包含给定词语。在这个意义上,将口袋的同时出现词语存储在矩阵EX1中可以代表一种有损的存储同时出现数据的方式。
经验矩阵EX1初始可以是零矩阵(空矩阵),但这不是必须的。经验矩阵EX1的若干矢量的初始值可以展示平滑的空间变化。
图2图示可以如何通过使用词语口袋来更新经验矩阵EX1。词语口袋可以是例如图1b中所示的口袋BAG1。
(具有大写字母的)符号W1、W2、W3表示口袋BAG1的词语。(具有小写字母的)w1、w2、……、wn表示词汇表VOC1的词语。通常,口袋的第一词语W1与词汇表的第一词语w1不同,但是有时词语W1可能与词语w1相同。
可以基于口袋中所包含的词语来更新经验矩阵EX1的矢量。在更新期间,经验矩阵EX1的矢量可以被称为例如目标矢量。
更新可以包括修改与口袋BAG1的词语(例如,“邮件”)关联的目标矢量(例如,vP)。口袋包含两个或多个词语W1、W2、W3、……。当词语W1、W2、W3属于同一口袋BAG1时,这表示词语W1和W2属于词语W3的情境。
连同第一词语属于口袋的一个或多个其他词语可以被认为属于第一词语的情境。词语可以代表例如系统和/或外部情况的状态。
可以通过使用词汇表VOC1来识别与口袋BAG1的词语W3关联的经验矩阵EX1的目标矢量vP。更精确地,可以通过使用词汇表VOC1来确定与词语W3的值(=wP,“邮件”)关联的经验矩阵EX1的矢量vP(行)的位置。
也可以通过使用词汇表VOC1来查找代表口袋BAG1的其他词语W1、W2的基本稀疏矢量(例如,ak+1和an-1)。
向经验矩阵EX1添加口袋BAG1的同时出现数据可以包括用如下已修改矢量代替与口袋BAG1的词语W3关联的(第一)目标矢量vP,其中,该已修改矢量是(第一)目标矢量vP与代表口袋BAG1的其他词语W1、W2的基本稀疏矢量ak+1、an-1的线性组合。
在实施例中,可以简单地将基本稀疏矢量ak+1、an-1求和成目标矢量vP。换言之,线性组合中所使用的每个基本稀疏矢量ak+1、an-1的加权系数可以等于1。然而,基本稀疏矢量的加权系数也可以偏离1,以强调或降低用所述基本矢量代表的词语的贡献。加权系数可以例如在0.1到10的范围内。
图2示出基本矢量aP上绘制的交叉。在通过使用基本矩阵RM1的代表性矢量来更新经验矩阵EX1时,可以对矢量进行组合使得代表词语W3的基本矢量aP对于所述词语W3关联的已修改目标矢量vP没有贡献。词语通常与其自身同时出现。添加词语自己的基本矢量的贡献不太可能向经验矩阵添加新的有意义的数据。
可以通过用如下已修改矢量代替代表口袋BAG1的第二词语(工作,W2)的第二目标矢量(例如,图1c所示的vn-1)来修改第二目标矢量vn-1,其中该已修改矢量是第二目标矢量vP与代表口袋BAG1的其他词语W1(上午)、W3(邮件)的基本稀疏矢量ak+1、aP的线性组合。如果口袋包含第三词语,则可以通过用如下已修改矢量代替代表口袋BAG1的第三词语(上午、W1)的第三目标矢量(例如,图1c所示的vk+1)来修改第三目标矢量vk+1,其中该已修改矢量是第三目标矢量vk+1与代表口袋BAG1的其他词语W2(工作)、W3(邮件)的基本稀疏矢量an-1、aP的线性组合。
如果口袋包含多于三个词语,则可以通过分别添加口袋的其他词语的贡献来更新与每个附加词语关联的目标矢量。
可以分别通过使用第二口袋的词语以及通过使用任何随后口袋的词语来更新矩阵。
可以由系统(系统词语)和/或由客户端(客户端词语)来提供口袋BAG1的两个或多个词语W1、W2、W3、……。系统词语可以是例如描述时间和/或位置的词语。“客户端”可以是例如个人用户、应用或网络服务。客户端词语可以是例如从个人用户和/或从正在运行的软件应用获得的词语。词语可以例如描述系统的状态。
图3a示出通过使用经验矩阵EX1进行预测。经验矩阵EX1可以是例如图1c或图4b所示的矩阵。
可以通过使用经验矩阵EX1来预测表示系统的状态的一个或多个词语。预测方法可以包括接收一个或多个查询词语Q1、Q2、……(图3c示出通过使用两个查询词语进行预测)。查询词语Q1、Q2可以例如由系统和/或由客户端来提供。在实施例中,客户端可以通过发送一个或多个查询词语Q1、Q2来开始预测处理。可以通过使用词汇表VOC1来查找与查询词语Q1(例如,上午)关联的经验矩阵EX1的矢量vk。在单个查询词语Q1的情况下,可以使用关联矢量vk作为代表查询的查询矢量QV1。
现在可以将查询矢量QV1与经验矩阵EX1的矢量v1、v2、……vn比较,以识别经验矩阵EX1的基本上类似于查询矢量QV1的一个或多个矢量v1、v2、……vn。在比较期间,经验矩阵EX1的矢量v1、v2、……vn可以被称为候选矢量。可以确定和与查询矢量QV1具有最小差异的矢量关联的词语并且将其提供作为预测输出OUT1。预测方法可以包括确定查询矢量QV1与经验矩阵EX1的每个矢量v1、v2、……vn之间的差异。
图3b图示在矢量的起点一致的情况下(例如,在原点ORIG1处)多维空间中的查询矢量QV1和经验矩阵EX1的若干矢量。DIM和DIM’表示多维空间的两个维度(如以上所讨论的,空间的维度的数目可以是例如10000或更高)。如果两个矢量在多维空间中具有至少近似相同的长度和至少近似相同的方向,则这可以被理解为指示所述两个矢量与在基本上类似的情境中出现的两个词语关联。如果所述词语中的一个为用于系统的状态的有效描述符,则很可能其他词语也是用于系统的状态的有效描述符。
DV(QV1,v)表示查询矢量QV1与经验矩阵EX1的矢量v之间的差异矢量。可以基于查询矢量QV1和经验矩阵EX1的矢量v来确定指示查询矢量QV1与经验矩阵EX1的矢量v之间的差异的值。可以例如用查询矢量QV1与经验矩阵EX1的矢量v之间的角度θ来表达“差异”。可以例如用查询矢量QV1与经验矩阵EX1的矢量v之间的角度θ的余弦cos(θ)来表达“差异”。可以通过使用等式|v||QV1|cos(θ)=v·QV1而根据点乘来计算查询矢量QV1与经验矩阵EX1的矢量v之间的角度θ的余弦(cos(θ))。差异可以用例如差异矢量DV的欧几里德长度|DV|来表达。差异可以用例如矢量的点乘QV1·v来表达。差异可以用例如差异矢量DV的欧几里德长度|DV|的平方|DV|2来表达。差异可以表达为例如差异矢量DV的出租车(taxicab)长度(曼哈顿长度)。在定义差异矢量DV的长度时也可以使用其他度量。在评估矢量之间的差异时也可以使用其他度量。
现在可以基于查询矢量QV1与经验矩阵EX1的矢量之间的差异从词汇表VOC1选择一个或多个预测输出词语。如果查询矢量QV1与候选矢量之间的差异满足选择准则,则可以提供与所述候选矢量关联的词语作为预测词语。
可以将差异DV相互比较以寻找从查询矢量QV1偏离最小距离DV的稀疏矢量。具体地,可以对差异DV分类。可以提供与具有最小距离DV的稀疏矢量关联的词语作为预测方法的输出OUT1。输出可以被称为预测。也可以提供与具有最小距离DV的稀疏矢量关联的若干词语作为输出OUT1。例如,可以提供与具有最小距离DV的候选矢量关联的NP个词语作为输出OUT1,其中整数NP可以在例如2至10的范围内。在图3a的示例中,最小差异值(|DV|2=6)与矢量vP、vk和vn-2关联。如果数目NP被设置成等于三,则可以提供词语“邮件”、“会议”和“静音”作为预测词语。
查询词语Q1、Q2已经公知用于描述情形。查询词语Q1、Q2可以从预测词语OUT1中排除。在将查询矢量QV1与经验矩阵EX1的其他矢量比较时,可以根据比较将与查询矢量QV1关联的矢量排除。
预测词语可以理解为对如下状况问题的回答:“哪些预测词语OUT1很可能描述情形,如果该情形已经用一个或多个(已知)查询词语Q1、Q2描述”。在图3a的示例中,预测词语为“邮件”、“会议”和“静音”,如从单个查询词语Q1“上午”所确定的。
可以使用这些预测词语中的一个或多个词语用于控制系统。例如,系统在一种情形下可以自动激活用于接收和发送电子邮件的应用,其可以用词语“上午”来描述。例如,系统在一种情形下可以自动将其自己设置成静音操作模式,其可以用词语“上午”来描述。
可以将一个或多个预测词语传回客户端从而进行查询。可以将一个或多个预测词语传给不同的客户端。可以将系统布置成使用所有预测词语用于控制,或者可以将系统布置成使用预测词语的较小子集用于控制,其中可以忽略一个或多个预测词语。
图3c示出通过使用两个或多个查询词语Q1、Q2来进行查询。增加单个查询的查询词语Q1、Q2的数目可以改善预测词语可以是用于这个情形的有效描述符的可能性。在这个示例中,查询包括两个词语Q1、Q2。可以通过使用词汇表VOC1来寻找经验矩阵EX1的与查询词语Q1(例如,上午)关联的第一矢量vk。可以通过使用词汇表VOC1来寻找与查询词语Q2(例如,工作)关联的第二矢量vn-1。现在可以将查询矢量QV1确定为与查询词语Q1、Q2关联的矢量vk、vn-1的组合。具体地,可以将查询矢量QV1确定为矢量vk、vn-1之和。备选地,可以通过例如从矢量Q1和Q2中选择具有最大绝对值的元素形成查询矢量QV1或者通过另一组合方法来形成查询矢量QV1。随后可以通过比较查询矢量QV1与经验矩阵EX1的矢量v1、v2、……vn来确定预测词语,如以上针对图3a的情况所描述的。
随后可以用包括以下步骤的方法来形成预测词语:
-确定查询矢量QV1与经验矩阵EX1的第一矢量之间的第一差异,
-确定查询矢量QV1与经验矩阵EX1的第二矢量之间的第二差异,以及
-比较第一差异与第二差异。
可以根据比较排除经验矩阵EX1的与查询词语Q1、Q2关联的矢量vk+1、vn-1
在这种情况下,经验矩阵EX1的矢量vP看起来提供具有最小长度(|DV|2=2)的差异矢量DV。在这种情况下,与矢量vP对应的预测词语为“邮件”。也可以提供与具有至查询矢量的最小距离矢量DV的NP个矢量关联的若干词语作为预测。数目NP可以是例如三个。在这种情况下,可以提供词语“邮件”、“会议”和“静音”作为预测词语。
图1a至图2所示的更新方法基于用不同的基本稀疏矢量a1、a2、……an来代表各个词语w1、w2、……wn。图4a和图4b图示将同时出现数据存储在经验矩阵EX1中的另一方式。图4a和图4c所示的更新方法基于用基本稀疏矢量代表口袋。
图4a示出词语的三个口袋BAG1、BAG2、BAG3。这些口袋可以与图1b的口袋相同。每个口袋BAG1、BAG2、BAG3可以与基本稀疏矢量b1、b2、b3关联。每个口袋BAG1、BAG2、BAG3可以与不同的基本稀疏矢量b1、b2、b3关联,使得单个口袋(例如,BAG1)的所有词语与同一基本稀疏矢量(例如,b1)关联。基本稀疏矢量b1、b2、b3可以与图1a所示的基本稀疏矢量满足相同的准则。
图4b示出通过使用从口袋BAG1取得的同时出现数据来更新经验矩阵EX1。口袋包含两个或多个词语W1、W2、W3(例如,词语“上午”、“工作”和“邮件”)。现在可以用同一基本稀疏矢量(例如,b1)来代表口袋BAG1的每个词语W1、W2、W3。口袋BAG1的词语W1、W2、W3与词汇表VOC1的词语wP、wk+1、wn-1相同。这使得能够寻找经验矩阵EX1的与口袋BAG1的词语关联的矢量vP、vk+1、vn-1。这些矢量可以称为目标矢量。
经验矩阵EX1初始可以为零矩阵(空矩阵),但这不是必须的。经验矩阵EX1的若干矢量的初始值可以展示平滑的空间变化。矩阵EX可以已经包含被获得作为矩阵EX1的先前矢量和稀疏矢量的线性组合的矢量。经验矩阵在在后的情形下可以是使得其不饱和,即添加至矩阵的新的数据仍然可以可靠地被取回。具有不饱和属性的经验矩阵可以被理解为在本实施例的意义上而言是稀疏的,即使其大多数元素偏离零。
现在可以向与口袋BAG1的词语关联的每个目标矢量vP、vk+1、vn-1添加表达口袋BAG1的基本稀疏矢量b1。现在同一基本即使矢量b1对于口袋BAG1的所有词语而言是公共的。可以向与口袋BAG1的词语关联的所有目标矢量vP、vk+1、vn-1添加同一基本稀疏矢量b1。总之,可以将与口袋BAG1的词语关联的已修改目标矢量形成为与所述词语关联的目标矢量和基本稀疏矢量b1的线性组合。第二口袋BAG2可以用不同的基本稀疏矢量(例如,b2)来代表。现在可以向与口袋BAG2的词语关联的每个目标矢量添加代表第二口袋BAG2的基本稀疏矢量b2。第三口袋BAG3可以用不同的基本稀疏矢量(例如,b3)来代表。现在可以向与口袋BAG3的词语关联的每个目标矢量添加代表第三口袋BAG3的基本稀疏矢量b3
因此,可以通过使用多个口袋BAG1、BAG2、BAG3的内容来更新经验矩阵EX1。经验矩阵EX1的若干矢量实际上可以是不同的稀疏矢量b1、b2、b3的线性组合。
图4c示出在已经将口袋BAG1、BAG2、BAG3的同时出现数据存储在经验矩阵EX1中之后通过使用代表口袋的不同的基本稀疏矢量b3获得的经验矩阵EX1。矩阵EX1的所有元素ei,k之和等于零。ei,k表示经验矩阵EX1的属于第i列和第k行的元素。元素ei,k的值可以是整数,以使数据处理速度最大化。元素ei,k的值不限于从-1至1的范围。
通过使用图4b所示的方法确定的经验矩阵EX1可以用于通过使用图3a至图3c所示的方法来确定预测词语。经验矩阵EX1可以与参考图1c讨论的经验矩阵具有相同的列数目(m)和行数目(m)。经验矩阵EX1的各个元素ei,k可以具有整数值。整数值也可以大于1(例如,2)或小于-1(例如,-2)。
图5a至图5c示出从缓冲器向单个口袋收集词语。词语可以从一个或多个客户端和/或从系统接收。所接收的词语可以(暂时)存储在一个或多个缓冲器中。可以从缓冲器至口袋收集词语。可以通过使用口袋的内容来更新经验矩阵。随后可以通过使用第二(不同)口袋的内容来更新经验矩阵。
在图5a中,口袋的词语W1,t1、W2,t1、W3,t1可以代表相同的时刻t1。口袋可以包含代表单个瞬时的词语。然而,可以通过使用口袋来向经验矩阵添加时间关系,其中该口袋包含代表系统在两个或多个不同时刻t1、t2的状态的词语。通过这种时间组合(时间“配对”)聚合的口袋也可以用于例如评估如果系统先前处于第一状态则对于连续的第二状态的可能性。
在图5b中,口袋的词语W1,t1、W2,t1、W3,t1、W1,t2、W2,t2、W3,t2可以代表两个或更多个时刻t1、t2。单个口袋可以包含代表两个或多个不同时刻t1、t2的词语。在图5b的情况下,单个口袋中的词语的数目可以大于代表单个时刻t1、t2的词语的数目。时刻t1与t2之间的时间段可以称为时间跨度。
在图5c中,口袋的词语W1,t1、W2,t1、W3,t1、W1,t2、W2,t2、W3,t2可以代表两个或多个时刻t1、t2。口袋可以包含代表两个或多个不同时刻t1、t2的词语。图5b和图5c所示的词语的收集可以在例如旨在聚合关于词语之间的时间关系的信息的情况下使用。图5b和图5c所示的词语的收集可以在例如旨在聚合关于系统的状态之间的时间关系的信息的情况下使用。
图5b的方法可以在例如不存在关于词语的相关性的较早的知识和/或不存在关于词语的时间关系的较早的知识的情况下使用。图5c的方法可以在例如关于词语的原因和时间关系的一些先前的知识可用的情况下使用。例如,如果已知词语W2,t2的值取决于词语W1,t1的值,则可以将词语W1,t1、W2,t2收集在同一口袋中,其中时刻t2稍后于时刻t1
词语W1,t1可以描述例如时间t1的天气情况(例如,在时间14:00“下雨”),词语W2,t2可以描述例如用户的日历中的标记(例如,18:00“运动”)。可以例如从互联网服务来接收当时天气情况。在这种情况下,在14:00当时的天气情况可能对用户可能在18:00在户外真实地进行运动有因果效应。在这个意义上,将较早的词语“下雨”和在后的词语“运动”收集到同一口袋中可能是有用的。
图6示出用于将同时出现数据存储至经验矩阵的系统。可以从例如时钟来接收描述时间的系统词语。可以从例如GPS导航单元(GPS表示全球定位卫星系统)接收描述(便携式设备的)位置的系统词语。可以从加速计接收描述加速度设备(便携式设备的加速度)的系统词语。也可以从其他物理传感器接收词语。可以从一个或多个客户端接收客户端词语。
术语“拉取”可以意味着从传感器至缓冲器传送数据可以发生使得传送未由传感器发起。在实施例中,传感器可以在任何需要的时候提供系统词语。在实施例中,从传感器传送数据未开始更新经验矩阵。
术语“推送”可以意味着从客户端至缓冲器传输数据可以由客户端来发起。在实施例中,从客户端传送数据也可以发起更新经验矩阵。
术语“刷新”可以意味着通过使用词语的一个或多个口袋来更新经验矩阵。口袋可以从缓冲器的内容来收集。
经验矩阵也可以在提供预测时使用,如上所述(参见与图3a至图3c有关的讨论)。
图7a示出用于处理同时存在数据的子系统400。子系统400可以被布置成将同时出现数据存储在经验矩阵EX1中。子系统400可以被布置成基于经验矩阵EX1中所存储的同时出现数据提供预测。
子系统400可以包括用于接收和存储词语的缓冲器BFU1、用于将词语收集至口袋的收集单元WRU、用于存储口袋的词语的存储器MEM1、用于提供基本稀疏矢量的稀疏矢量供应SUP1、用于存储词汇表VOC1的存储器MEM3(词汇表存储在存储器MEM3中)、用于修改经验矩阵EX1的矢量和/或用于形成查询矢量QV1的组合单元LCU1、用于存储经验矩阵EX1的存储器MEM2(经验矩阵EX1存储在存储器EME2中)、用于存储查询矢量QV1的存储器MEM4、和/或用于比较查询矢量QV1与经验矩阵EX1的矢量的差异分析单元DAU1。子系统400可以可选地包括用于存储查询Q1和/或预测OUT1的缓冲器BUF2和/或缓冲器BUF3。
词语可以从一个或多个传感器NAV1、G1、从时钟CLK1和/或从一个或多个客户端C1接收。词语可以通过采集单元WRU1采集至各个口袋。口袋的词语可以采集(即,暂时存储)在存储器MEM1中。每个口袋的内容可以从存储器MEM1传送至稀疏矢量供应SUP1。稀疏矢量供应SUP1可以被配置成提供用于更新经验矩阵EX1的基本稀疏矢量。
每个口袋的内容和基本稀疏矢量可以被传送至组合单元LCU1,其可以被配置成修改经验矩阵EX1的矢量(例如,通过形成线性组合)。具体地,组合单元LCU1可以被配置成向由每个口袋的词语指定的目标矢量添加基本稀疏矢量。组合单元LCU1可以被布置成在硬件级执行矢量求和。组合单元LCU1的电学和/或光学电路装置可以被布置成同时修改与单个口袋的词语关联的若干目标矢量。这可以允许高数据处理速率。
经验矩阵EX1可以存储在存储器EME2中。词语可以通过使用存储器EME3中所存储的词汇表VOC1而与经验矩阵EX1的矢量关联。矢量供应SUP1也可以被配置成使用词汇表VOC1(或者不同的词汇表)例如以提供与口袋的词语关联的基本稀疏矢量。
子系统400可以包括组合单元LCU1或被配置成基于查询Q1的词语形成查询矢量QV1的另外的组合单元。查询矢量QV1可以被形成为经验矩阵EX1的矢量的线性组合。经验矩阵EX1的相关矢量的位置可以通过使用词汇表VOC1来寻找。查询矢量QV1可以存储在存储器MEM4中。
差异分析单元DAU1可以被配置成比较查询矢量QV1与经验矩阵EX1的矢量。差异分析单元DAU1可以被布置成确定经验矩阵EX1的矢量与查询矢量QV1之间的差异。差异分析单元DAU1可以被布置成对针对若干矢量确定的差异进行分类。差异分析单元DAU1可以被配置成基于所述比较提供预测OUT1。查询词语Q1、Q2本身可以从预测词语中被排除。
差异分析单元DAU1可以被布置成在硬件级比较矢量。组合单元LCU1的电学和/或光学电路装置可以被布置成同时确定用于经验矩阵EX1的若干矢量的数量不同的描述符(DV)。这可以允许高数据处理速率。
子系统400可以包括用于控制子系统400的操作和/或用于控制系统500的操作的控制单元CNT(参见图11)。控制单元CNT可以包括一个或多个数据处理器。子系统400可以包括用于存储程序代码PROG1的存储器MEM5。程序代码PROG1在由一个或多个数据处理器执行时可以用于执行本发明的方法。
词语可以例如从一个或多个客户端C1、从一个或多个传感器G1、从位置传感器NAV1、和/或从时钟CLK1接收。预测词语OUT1可以传送至客户端C1或至不同的客户端。客户端C1也可以例如从缓冲器BUF1取回系统词语以形成查询Q1。
图7b通过示例的方式示出可以如何基于传感器与其环境之间的物理交互来提供词语。传感器G1可以通过监视其物理环境来提供一个或多个电或光传感器信号。监视包括与物理环境的无源或有源交互。例如,在无源交互的情况下,光传感器的麦克风可以接收声波或光波(其未被系统发起)。信号S0可以是例如代表麦克风所接收的声波的幅度和频率的模拟信号。信号S0可以是例如代表加速度传感器检测的振动的幅度和频率的模拟信号。
在有源交互的情况下,传感器G1可以发送例如超声光或红外光,其可以从环境的表面被反射。例如,可以基于例如光传感器的麦克风所接收的被反射的声波或光波来估计距表面的距离。
可选地,数字传感器信号S1可以通过处理传感器界面GIN1中的(模拟)信号S0来提供。数字传感器信号S1可以包括例如麦克风所接收的声音的谱分析。数字传感器信号S1可以包括图像传感器所捕获的数字图像。
一些传感器可以直接提供量子化的数字信号,其可以被直接用作系统词语。例如,微型开关邻近传感器可以或操纵杆的数字编码器可以直接提供代表系统的状态的数字词语。例如,微型开关可以提供指出有东西在按压开关的词语“1”或没有东西在按压开关的词语“0”。
可选地,量化器QU1可以被布置成基于数字传感器信号S1提供量化后的传感器信号S2。如果需要,则量化可以通过使用映射功能来执行,其可以是在后的修改器。例如,可以将在0至127的范围内的音量值映射成较小数值(例如,0、1、2)。
可选地,量化器QU1可以包括分析器,其被布置成将信号S1分类成两个或多个不同的种类。量化器QU1可以是分类器。量化器QU1可以提供规定信号S1的种类的值。例如,量化器QU1可以被布置成提供值,这些值基于谱分析规定声音的类(例如,“0”=电机,“1”音乐、“2”人声)。
可以使用量化器QU1提供的值作为用于子系统400的输入词语。可选地,可以将值转换成(不同的)词语,例如以使其对于个人用户而言更容易理解。
可以可选地将量化后的传感器信号S2转换成用自然语言(例如,用英语或用芬兰语)描述传感器的物理环境的词语。可以通过使用词典将信号S2转换成词语。词典的内容可以是固定的或其可以在稍后的阶段被更新。可以通过使用以下词典将描述声音的属性的大量词语(0、1、2)转换成自然语言的词语:“0”-“监视”、“1”-“音乐”、“2”-“语音”。可以通过使用以下词典将描述音量的数字词语(0、1、2)转换成自然语言的词语:“0”-“静音”、“1”-“标准”、“2”-“响亮”。
可选地,标记单元MRK1可以被布置成通过添加标识符来修改词语,标识符使得词语唯一并且不同于其他词语。标识符例如可以指定传感器S1的标识或所属词语指定的质量的类型。例如,当词语为描述音量的数字词语(例如,“0”、“1”和“2”)时,可以将前缀“音量”附接至词语以形成例如词语“音量0”。
因此,传感器S1可以被布置成提供使用上述一个或多个方法步骤来提供传感器词语(系统词语)。
在实施例中,从加速度传感器接收信号的分析单元可以被布置成确定例如便携式设备是固定的、是由走动的人携带的、是由跑动的人携带的还是在移动的车辆中携带的。分析单元可以提供描述这些不同状态的词语例如“静止的”、“走动的”、“跑动的”、“行进的”。加速度传感器可以是例如电容式或压电式加速度传感器。
然而,从传感器G1获得的信号不必转换成具有清楚的语义含义的传感器词语,即不必使用词典THESA1。在实施例中,从加速度传感器接收信号的分析单元可以被布置成提供描述不同的加速度情况例如“加速度A”、“加速度B”和“加速度C”的传感器词语。包括子系统400和传感器G1的系统500可以被操作成使得即使不知道传感器词语的语义含义系统500也能够进行成功的预测。
传感器G1提供的词语可以呈现为例如包含方案和方案特定的部分的统一资源标识符(URI)。例如,通过使用加速度传感器而提供的词语可以是例如“运动://移动的”或“运动://静止的”,其中第一部分“运动”为方案,第二部分“移动的”或“静止的”为方案特定的部分。这些部分可以用符号“://”来分开。通过使用加速度传感器提供的词语也可以是例如“取向://竖直”或“取向://水平”。
参考图7a至图7c,稀疏矢量供应SUP1可以例如通过从存储器(表)取回先前生成的稀疏矢量和/或通过实时地生成稀疏矢量来提供稀疏矢量。
参考图7c,稀疏矢量供应SUP1可以包括用于存储与词汇表VOC1的词语关联的基本稀疏矢量a1、a2、……、an(参见图1a)的存储器。基本稀疏矢量a1、a2、……、an可以形成基本稀疏矩阵RM1。基本稀疏矢量a1、a2、……、an可以先前存储在稀疏矢量供应SUP1的存储器中。备选地或者附加地,可以在词语在口袋中首次使用时实时地生成与所述词语关联的单个基本稀疏矢量。基本稀疏矢量例如可以通过随机数发生器来生成。图7c的配置可以在例如执行图1a至图2所示的更新方法时使用。
参考图7d,稀疏矢量供应SUP1可以包括用于存储多个先前确定的基本稀疏矢量b1、b2、……的存储器。当新的口袋到来时,可以生成触发信号,并且可以改变计数器的计数值。因此,可以从存储器的由计数器指示的位置处取回下一基本稀疏矢量。因此,每个口袋可以被分配不同的基本稀疏矢量。相同的基本稀疏矢量可以代表所述口袋的每个词语,如在图4a和图4b的更新方法中所描述的。
参考图7e,每当新的口袋到来时,可以通过随机数发生器RVGU1生成新的基本稀疏矢量bk。因此,每个口袋可以被分配不同的基本稀疏矢量(生成两个一致的稀疏矢量的可能性可以是可忽略的)。相同的基本稀疏矢量可以代表所述口袋的每个词语,如图4a和图4b的更新方法中所描述的。
参考图7f,系统500可以包括用于存储同时出现数据和/或用于提供预测的子系统400。系统可以被配置成:
-提供与情形关联的一个或多个查询词语,
-通过使用经验矩阵和所述一个或多个查询词语进行预测,以及
-基于所述预测控制所述系统的操作。
系统500可以可选地包括用于提供描述例如系统的状态或系统的环境的属性的系统词语的一个或多个传感器G1。系统500可以可选地包括用于提供时间数据的时钟CLK1。系统500可以可选地包括用于提供位置数据的位置检测器NAV1。位置检测器可以是例如GPS导航单元。
同时出现数据如上所述可以存储在经验矩阵EX1中。
客户端C1可以向子系统400发送查询Q1。查询Q1可以包括例如个人用户经由用户界面501从应用APP1和/或从系统500的传感器G1提供的词语。查询Q1可以包括例如从互联网服务接收的词语(例如,天气信息)。子系统400可以基于查询Q1提供一个或多个预测词语OUT1,如上所述。系统500可以被配置成基于预测OUT1开始和/或停止应用APP1、APP2。可以基于预测OUT1来控制系统500的操作。预测OUT1可以用作例如用于网络浏览器的输入。系统500可以被配置成基于预测OUT1在用户界面501的显示器上显示信息(用户界面管理)。系统500可以被配置成基于预测OUT1来设置操作模式。系统500可以被配置成基于预测OUT1而向不同的应用和/或单位分配数据处理能力。系统500可以被配置成基于预测OUT1开始和/或停止系统的功能(物理)单元(例如,GPS导航单元或音频放大器)的操作。
可以基于从系统500的第二设备获得的词语来控制系统500的第一设备的操作。例如,第一设备可以由用户(第一人)携带,而第二设备可以由第二人携带。第二人可以是例如第一人的家庭成员、朋友或同事。查询Q1可以包括与第二设备的状态有关的和/或与第二人的日历有关的一个或多个词语。系统现在可以基于查询Q1来提供预测OUT1。系统可以基于预测OUT1来提议功能的激活。
例如,如果第二设备已经被设置成静音模式,则系统500可以基于预测建议联系第二人的优选方式是例如SMS消息或电子邮件消息,而非进行电话呼叫。经验矩阵EX1可以存储同时出现数据,其指示在第二设备已经被设置成静音模式时进行电话呼叫的尝试几乎从来没有成功过。经验矩阵EX1可以存储同时出现数据,其指示第二设备的用户有时立刻对电子邮件消息作出响应,即使第二设备已经被设置成静音模式。因此,当第一设备的用户尝试与第二人进行电话呼叫时,系统500可以提议激活用于向第二设备发送消息(例如,SMS消息或电子邮件)的应用。
图8a至图8c示出用于通过使用预测来控制通信系统的操作的示例。
系统500的经验矩阵EX可以通过使用图8a所示的口袋BAG4至BAG9来更新。在这个示例中,口袋BAG4和BAG7包含词语“会议”、“人物A”和“静音模式”。口袋BAG5和BAG8包含词语“会议”、“人物B”和“与人物C的电话会议”。口袋BAG6和BAG9包含词语“会议”、“人物C”和“标准模式”。口袋BAG4至BAG9也包含规定一周的时间和日期的词语。
参考图8b,系统500可以基于日历中的标记确定例如与人物A的会议预定在9:00开始。
基于经验,词语“会议”和“人物A”通常与词语“静音模式”一起出现。这一同时出现词语已经被存储在经验矩阵EX1中。系统500的客户可以形成包含词语“9:00”、“会议”、“人物A”的查询Q1。子系统400可以基于查询Q1通过使用包括图8a的同时出现数据的经验矩阵EX1来提供预测。在这一示例中,由子系统400提供的预测可以包括例如词语“静音模式”。查询Q1的词语指定的时间和/或数据也对预测结果有影响。例如,在特定时间和/或日期举行的会议可以看起来与例如“播放视频”关联。然而,在这一示例中,口袋的日期和时间被分布成使得不可能检测关联的种类。
当会议要开始时(例如,在时间8:59),系统500可以提议将操作模式(“profile”(设置))改为静音模式例如以避免来电呼叫中断会议。可以向用户显示一个或多个信息字段F1至F4。字段F1可以提议改为静音模式。用户可以例如通过触摸(虚拟)键B1或B2来尝试或拒绝提议。在实施例中,可以省略键B2。如果用户在预定时间段内没有触摸键B2,则系统可以自动改为静音模式。在实施例中,可以省略键B1。如果用户没有触摸键B1,则系统可以继续在标准模式下操作。在实施例中,可以省略两个键B1、B2。用户先前已经授权系统自动地基于预测来设置操作模式。
字段F2至F4可以显示辅助信息。字段F3可以可选地显示例如实际时间。字段F2可以可选地显示例如下一相关事件(例如,与人物A进行会议)。字段F4可以可选地显示例如日历视图。除了设置操作模式,系统500还可以基于预测来控制显示字段F1至F4和/或显示键B1、B2。
由于基于预测控制操作,所以用户现在可以通过仅触摸一个键来将系统设置成静音模式。在实施例中,用户不需要做任何事情就能够将系统设置成静音模式。
在没有预测的情况下,用户可能需要从系统的菜单结构中寻找合适的菜单以将系统设置成静音模式。通常,这一操作可能需要在用户界面501的菜单结构的菜单中进行和确认若干选择。
参考图8c,系统500可以基于日历中的标记来确定例如与人物B的会议预定在13:00开始。基于经验,词语“会议”和“人物B”通常与词语“与人物C的电话会议”一起出现。这一同时出现数据已经存储在经验矩阵EX1中。
系统500的客户可以形成包含词语“9:00”、“会议”、“人物B”的查询Q1。子系统400可以基于查询Q1通过使用包括图8a的同时出现数据的经验矩阵EX1来提供预测。在这一示例中,子系统400提供的预测可以包括例如词语“与人物C的电话会议”。在会议要开始时(例如,在时间12:59),系统500可以提议开始与人物C的电话会议。可以向用户显示一个或多个信息字段F1至F4。字段F1可以提议开始与人物C的电话会议。用户可以例如通过触摸(虚拟)键B1或B2来尝试或拒绝提议。
如果用户接受提议,则系统可以自动开始电话会议。这可以包括自动激活照相模块用于捕捉用户的视频图像。这可以包括(自动)打开与远程位置处的人物C的界面的视频通信链路和/或音频通信链路。
在实施例中,可以省略键B2。如果用户在预定时间段内没有触摸键B2,则系统可以自动打开电信链路。在实施例中,可以省略B1。如果用户没有触摸键B1,则系统不打开电信链路。在实施例中,可以省略两个键B1、B2。用户先前已经授权系统自动地打开电信链路。
由于基于预测控制操作,所以用户现在可以通过仅触摸一个键来打开通信链路。在实施例中,用户不需要做任何事情就能够打开通信链路。
在没有预测的情况下,用户可能需要从系统的菜单结构中寻找合适的菜单以打开电信链路。通常,这一操作可能需要在用户界面501的菜单结构的菜单中进行若干选择并且确认这些选择。
图8d示出用于更新经验矩阵EX以及用于基于预测来控制系统的方法步骤。在步骤705,可以将已安排事件或实际事件存储在系统的存储器中。具体地,可以由用户或另一人经由例如界面501向存储器添加日历事件。在步骤710,用户或另一人可以设置系统的与步骤705中提及的事件关联的操作模式。在步骤715,用户或另一人可以开始和/或停止与步骤705中提及的事件关联的一个或多个应用。在步骤720,可以将描述事件、操作模式和/或应用的词语收集到口袋中。可以通过使用口袋来更新系统500的经验矩阵EX1。代表先前事件的同时出现数据在这一步骤之前已经存储为矩阵EX1的(稀疏)矢量,即,矩阵在步骤720之前不必为空。可以将步骤705至720重复若干次以收集与若干不同事件有关的同时出现数据。
在步骤750,系统可以形成包括描述事件的词语的查询Q1。查询Q1还可以包括指定与事件关联的附加信息例如与事件关联的人员的身份的词语。在步骤755,子系统400可以通过使用查询Q1和先前存储在经验矩阵EX1中的矢量来提供预测。在步骤760,系统500可以提议开始和/或停止一个或多个应用,和/或其可以提议基于预测来设置操作模式。在步骤765,系统可以向用户请求执行在步骤760中提议的动作。在实施例中,用户可能已经预先给予允许。在步骤770,用户给出的响应可以被记录在存储器中并且用于更新经验矩阵EX1。具体地,可以将描述响应的词语连同与查询Q1有关的一个或多个其他词语收集在同一口袋中。口袋的词语可以用于更新经验矩阵EX1。在步骤755,可以根据预测设置操作模式,如果这在步骤765被用户接受。在步骤780,可以根据预测开始和/或停止一个或多个应用,如果这在步骤765被用户接受。
步骤705至780可以重复若干次。步骤705至780在属于系统500的便携式设备的寿命期间每天重复例如若干次。寿命可以是若干年,例如,多于三年。因此,经验矩阵EX1实际上可以包含代表例如多于1000个事件的同时出现数据(代表多于1000个口袋的数据)。
包含经验矩阵EX1的存储器MEM2可以包括在用户所携带的第一便携式设备中。第一便携式设备可以被称为例如智能电话和/或便携式计算机(其可以具有无线通信功能)。第一便携式设备可以是例如图11所示的设备1260、1251、1250中的一个。
迟早,第一便携式设备可能变得过时。其可能被丢掉,或者其可能坏掉。可以将经验矩阵EX1的拷贝(备份)存储在系统500中的与存储器MEM2的位置远离和/或分离的位置处。如果需要,可以很容易地将包含先前数据的经验矩阵EX1拷贝至一个或多个便携式设备。
可以将经验矩阵EX1从第一人的设备拷贝至第二人的设备。可以将经验矩阵EX1从第一设备传送或拷贝至另一设备,例如经由互联网、经由电缆、经由光缆、经由射频链路、经由移动电话网络、或通过使用存储经验矩阵EX1的物理存储器(即,计算机存储器产品)。拷贝可以与支付关联,即,经验矩阵EX1也可以作为单个产品与用于将数据收集到矩阵EX1中的原始系统500分离地出售。经验矩阵EX1可以整体或部分从一个设备传送至另一设备,并且可以而非必须部分或整体代替目的矩阵。例如,用户可以接收与度假旅行有关的经验矩阵的更新,如与Italian Alps有关的信息。
经验矩阵EX1中所存储的数据在查询Q1包含用于更新经验矩阵EX1的相同的或相似的词语时很可能很有用。经验矩阵EX1中所存储的先前数据仅在如下某些类型的系统中可能是可用的,其中数据在第二类型的系统中可能基本上无用,第二类型的系统在根本不同的环境下使用不同的查询词语和/或操作。例如,仅包括与专业会议有关的数据的经验矩阵EX1对于预测用户希望在其闲暇时间观看哪些视频剪辑而言不可能很有用。
图9a示出如何通过使用哈希表来表达经验矩阵EX。经验矩阵EX1的大部分元素ei,k为零元素。经验矩阵EX1的若干矢量可以是零矢量。在这种情况下,存储零值不需要使用存储空间。词汇表VOC1可以是哈希表,其中词汇表VOC1中的每个词语可以用作密钥。词汇表VOC1中的实体指向值阵列INDH,其包含经验矩阵EX1的非零元素的实际值。例如,单个词语wk可以指向包含经验矩阵EX的矢量vk的非零元素的值的值阵列INDHk,所述矢量vk与词语wk关联。值阵列INDHk的所有元素可以都为非零。
可以使用第二哈希表CAH1来保持对经验矩阵的包含非零元素的这些列的跟踪。第二哈希表CAH1可以被称为例如“列激活的哈希表”。第二哈希表CAH1可以使用列编号(i)作为键。第二哈希表中的实体指向出现阵列OCCL,其又可以包含对经验矩阵EX1的每个列做出贡献的一系列行编号(k)个词语(wk)。例如,同时出现阵列OCCLi可以包含用于指示在列i并且在行k1、k2、k3的元素e为非零的行号k1、k2、k3
哈希表VOC1、CAH1、值阵列INDH的组以及出现阵列OCCL的组可以一起全部指定经验矩阵EX1的非零元素的值和位置。
值阵列INDH可以仅包含经验矩阵EX1的单个矢量的非零元素的值。不需要指定经验矩阵EX1的包含所述非零值的列的索引,因为这一信息可以从指向与所述值阵列INDH关联的词语的出现阵列取得。然而,除了非零元素的值,值阵列INDH可以包含附加信息,例如,经验矩阵EX1的包含非零值的列的索引。值阵列INDH可以一起形成值矩阵。出现阵列OCCL可以一起形成出现矩阵。
图9b示出用于更新用哈希表所代表的经验矩阵EX1的方法步骤。在这种情况下,可以使用词汇表VOC1中所包含的预定的词语组以避免改变经验矩阵EX1的行编号。可以忽略不属于所述预定词汇表VOC1的词语。在步骤810,可以接收词语口袋。在步骤830,可以检查词汇表VOC1中是否包含口袋的词语。可以在步骤820忽略没有包含在词汇表VOC1中的词语,以避免改变经验矩阵EX1的行编号。在步骤840,可以通过使用词汇表VOC1和基本稀疏矢量RM1来确定代表口袋的每个词语的基本稀疏矢量(参见图1a)。备选地,可以给单个口袋的每个词语分配共同(即,相同的)稀疏矢量(参见图4a)。可以通过使用基本稀疏矢量来更新值阵列INDHk中所存储的与口袋的词语wk关联的元素值。可以使用图1a至图2所描述的更新方法或者图4a至图4b所描述的更新方法。单个元素值可以被增加、减小,或者具有其先前值。在更新操作之后,元素的值可以变为零。在这种情况下,可以将元素从矩阵代表移除以节约存储器,或者其可以留在零值。
还需要在更新期间增加经验矩阵EX1的矢量的非零元素的数目。因此,可以增加值阵列INDHk的长度以存储附加值。值阵列INDHk中所存储的值的位置的顺序可以与所述值阵列所代表的经验矩阵EX1的矢量的顺序相同。这表示也可以向值阵列INDHk的中间和/或向值阵列INDHk的端部添加元素。
在步骤860,可以根据新的元素更新哈希表CAH1和出现阵列OCCL,其可能被添加至值阵列INDH。如果非零值被存储在先前为零列的列(i)中的元素ei,k中,则可以更新哈希表CAH1以包含指向出现阵列OCCL的指针,其又包含指向使用列(i)的词语的一个或多个指针。哈希表VOC1、CAH1以及阵列INDH和OCCL包含经验矩阵EX1的同时出现数据。可以通过使用哈希表VOC1、CAH1以及阵列INDH和OCCL用哈希表格式来代表经验矩阵EX1。
图9c示出用于通过使用经验矩阵EX1来进行预测的方法步骤。根据图9a可以用哈希表格式代表经验矩阵EX1。在步骤910,可以接收包含一个或多个查询词语Q1、Q2的查询。在步骤920,可以通过使用词汇表VOC1来识别经验矩阵EX1的与每个查询词语Q1、Q2关联的矢量v。当用哈希表格式代表经验矩阵EX1时,可以用阵列INDH来指定矢量的非零值。
在步骤930,可以形成查询矢量QV1。在单个查询词语Q1的情况下,可以使用经验矩阵EX1的关联矢量作为查询矢量QV1。在查询包括两个或多个查询词语Q1、Q2的情况下,可以将查询矢量QV1形成为在步骤930识别的矢量的线性组合。具体地,可以将查询矢量QV1形成为在步骤930识别的矢量之和。
在步骤940,可以将在步骤930确定的查询矢量QV1与经验矩阵EX1的矢量比较。比较可以包括计算查询矢量QV1与经验矩阵EX1的每个矢量之间的差异。在用哈希表格式代表经验矩阵EX1的情况下,可以用阵列INDH指定矢量的非零值。在步骤950,可以选择与和查询矢量QV1的差异最小的一个或多个矢量关联的一个或多个词语,并且将其提供为预测词语。如上所述,预测词语可以用于控制系统500的操作。
图10a示出基于一个或多个原始词语T1生成一个或多个辅助词语T2至T6。在更新经验矩阵EX1时和/或在进行预测时,使用辅助词语而非原始词语或者使用辅助词语以及原始词语有时可能更有用。
原始词语可以是例如串“2012年1月2日09:03”。原则上,可以将另一基本相同的串“2012年1月2日09:04”理解为完全不同的词语。这可能降低更新和使用经验矩阵EX1的效率。更新操作的目的可能是例如收集同时出现数据,其使得能够进行预测动作,这些预测动作很可能在一周的某天执行。出于这一目的,可以用辅助词语T5代替原始词语“2012年1月2日09:03”,其指定与日期2012年1月2日对应的一周的一天(星期一)。可以通过使用例如日历根据原始词语确定辅助词语T5。
原始词语“2012年1月2日09:03”中所包含的时间表达出于某些目的可以具有过高的时间分辨率。例如,如果旨在预测何时将是开始例如病毒扫描应用的合适时间(这可能消耗电池电力和数据处理资源),可以确定辅助词语T6,使得辅助词语T6根据原始词语“2012年1月2日09:03”而用较低分辨率代表时钟时间(例如,“上午”)。辅助词语可以例如通过使用词典和/或通过使用量化器(分类器)来提供。
例如,以下词语可以用来代表时间:
时间://深夜(用来代表从00:16到04:00的时间)
时间://黎明(用来代表从04:01到06:00的时间)
时间://上午(用来代表从06:01到11:45的时间)
时间://中午(用来代表从11:46到12:15的时间)
时间://下午(用来代表从12:16到17:00的时间)
时间://傍晚(用来代表从17:01到19:00的时间)
时间://晚上(用来代表从19:01到23:45的时间)
时间://午夜(用来代表从23:46到00:15的时间)
原始词语可以指定例如位置。位置可以例如通过使用GPS坐标和/或通过提供位置的名称来指定。可以例如通过使用电子地图根据原始词语来确定指定位置的一个或多个辅助词语。地图可以例如从互联网下载。一个或多个辅助词语可以由远程(互联网)服务来提供。
例如,系统500的第一设备可以位于被称为“Vantaa”(芬兰语)的地方,系统500的第二设备可以位于被称为“Espoo”(芬兰语)的地方。例如,可以例如通过使用电子地图或位置词典而根据词语“Vantaa”来确定辅助词语“芬兰南部”或“芬兰的首都地区”。例如,可以例如通过使用电子地图或位置词典而根据词语“Espoo”来确定辅助词语“芬兰南部”或“芬兰的首都地区”。由于公共辅助词语,因此可以将第一设备收集的同时出现词语用于提供与第二设备的用户有关的预测。
系统500的用户也使位置与名称关联。例如,用户携带的便携式设备可以例如通过GPS导航单元确定其位置,并且设备也可以请求用户给出所检测的位置的名称。随后可以将用户给出的名称用作与所述(GPS)位置关联的词语。名称可以是例如“家”、“学校”、“大学”、或“工作地点”。可以通过令牌和/或解析而根据原始词语形成一个或多个辅助词语T2、T3、T4。辅助词语T2至T6可以用在口袋中,代替使用原始词语T1或与原始词语T1一起使用。也可以基于较窄统一资源定位符(URL)来确定较宽URL。具体地,可以基于互联网的较窄URL确定互联网的较宽URL。
参考图10b,可以基于具有较窄语义含义的原始词语SPEC1(“种”)来确定具有较宽语义含义的辅助词语GEN1(“属”)。可以通过使用(语义)词典DC1而根据原始词语SPEC1确定具有较宽语义含义的辅助词语GEN1(“属”)。例如,可以基于原始词语“披萨”确定词语“餐食”或“食物”。词典DC1可以从例如(互联网)服务下载。可以由远程服务基于被传送给服务的原始Ciudad来提供辅助词语GEN1。系统可以被配置成确定原始词语的语义祖先GEN1。随后可以将语义祖先GEN1用作口袋中的词语或者查询的部分。
也可以基于具有较宽语义含义的原始词语(“属”)(通过使用词典)来确定具有较窄语义含义的辅助词语(“种”)。系统可以被配置成确定原始词语的语义后代。这一操作可以用于存储同时出现数据,例如在词汇表VOC1中不包含原始词语但是词汇表VOC1中包含具有较窄语义含义的术语的情况下。例如,可以基于原始词语“晚上”生成词语“接近9PM”。然而,这一操作有时可能涉及部分添加错误信息的风险。
图11、图12a和图12b示出用于使用经验矩阵来确定情境(或进行预测)的系统和设备。可以通过一个或多个服务器以及一个或多个用户设备在单个设备中、在彼此连接的多个设备中、或者例如在网络服务框架中确定情境。
图11通过示例的方式示出用于将同时出现数据收集、存储在经验矩阵中以及使用经验矩阵中的同时出现数据的系统500。可以基于通过使用被存储为经验矩阵EX1中的矢量的同时出现数据而确定的预测来控制系统500的操作。系统500可以包括用于更新经验矩阵EX1和用于提供预测的一个或多个子系统400。图7a和图7f示出了子系统400的示例。系统500可以包括单个设备,或者系统500可以包括被布置成彼此通信的多个设备。子系统400可以用单个设备或者被布置成彼此通信的多个设备来实现。系统500可以包括具有一个或多个服务器以及一个或多个用户设备的网络服务框架。子系统400可以用具有一个或多个服务器以及一个或多个用户设备的网络服务框架来实现。
图11示出包括经验矩阵的系统。在图11中,可以经由固定网络1210如互联网或局域网、或者移动通信网络1220如全球移动通信系统(GSM)网络、第三代(3G)网络、第3.5代(3.5G)网络、第四代(4G)网络、无线局域网(WLAN)、或其他同时代的和未来的网络来连接不同的设备。不同的网络借助于通信接口1280彼此连接。网络包括用于处理数据的网络元件如路由器和交换机(未示出)、以及通信接口如基站1230和1231,以向网络提供对于不同设备的访问,并且基站1230、1231本身经由固定连接1276或无线连接1277连接至移动网络。
可以存在大量连接至网络的服务器,并且在图11的示例中,示出了服务器1240,、服务器1241和服务器1242,服务器1240用于提供网络服务如社交媒体服务、新闻站点、音乐存储或照片存储/共享服务并且连接至固定网络1210,服务器1241用于提供其他服务如数据存储和备份服务或者用于存储和共享经验矩阵的服务并且连接至固定网络1210,服务器1242用于提供与上述不同的或者相同的服务并且连接至移动网络1220。以上设备中的一些例如服务器1240、1241、1242可以是这样,它们与固定网络1210中驻留的通信元件构成互联网。可以将经验矩阵存储在服务器1240、1241、1242中的一个或多个服务器中或者分布在这些服务器之间,例如使得经验矩阵的一些矢量可以存储在一个服务器中而一些矢量可以存储在另一服务器中。可以有大量经验矩阵存储在这些服务器中的任何服务器中,例如,来自不同用户和/或用于不同目的。服务器1240、1241、1242中的一个或多个服务器可以提供服务或者具有修改经验矩阵的能力,例如通过用另一种方式教导、修改、重新定尺寸或组合。服务器1240、1241、1242中的一个或多个服务器可以提供服务或者具有使用经验矩阵(例如,通过确定情境)进行预测的能力。
也存在大量端用户设备如移动电话和智能电话1251、互联网访问设备(互联网平板)1250、各种大小和版本个人计算机1260、电视机和其他观看设备1261、视频解码器和播放器1262以及摄像机1263和其他编码器如用于音频捕获的数字麦克风。这些设备1250、1251、1260、1261、1262和1263也可以由多个部分构成。各种设备可以经由通信连接如与互联网的固定连接1270、1271、1272和1280、与互联网1210的无线连接1273、与移动网络1220的固定连接1275、以及与移动网络1220的无线连接1278、1279和1282连接至网络1210和1220。连接1271至1282可以借助于通信连接的各个端部处的通信接口来实现。各种端用户设备可以在其存储器中具有一个或多个经验矩阵或者经验矩阵的部分。各种端用户设备可以具有修改经验矩阵和/或使用经验矩阵进行预测的能力。
需要理解的是,不同的实施例允许不同的部分在不同的元件中来实现。例如,软件应用的执行可以完全在一个用户设备如1250、1251或1260中、或者在一个服务器设备1240、1241或1242中来执行,或者在多个用户设备1250、1251、1260之间来执行,或者在多个网络设备1240、1241或1242之间来执行,或者在用户设备1250、1251、1260以及网络设备1240、1241或1242二者之间来进行。例如,通过用户界面捕获用户输入可以在一个设备中发生,数据处理和向用户提供信息可以在另一设备中发生,情境处理的控制和管理可以在第三设备中进行。作为另一示例,形成经验矩阵可以在一个设备(或多个设备)中发生,处理经验矩阵可以在一个设备处发生,进行预测可以在另一设备处发生。不同的应用元素和库可以实现为驻留于一个设备上或者分布在若干设备之间的软件部件,如上所述,例如,使得设备形成所谓的云。用户设备1250、1251或1260也可以用作网络服务服务器,正如各种网络设备1240、1241、和1242。这个网络服务服务器的功能也可以分布在多个设备之间。
不同的实施例可以实现为在移动设备上运行的以及可选地在提供基于网络的服务的设备上运行的软件。移动设备可以至少配备有存储器或者多个存储器、一个或多个处理器、显示器、小键盘、运动检测硬件和通信装置如2G、3G、WLAN或其他。不同的设备可以具有硬件如触摸屏(单触摸或多触摸)和用于定位的装置如网络定位或全球定位系统(GPS)模块。它们可以是设备上的各种应用,如日历应用、联系人应用、地图应用、消息应用、浏览器应用、图库应用、视频播放应用和用于办公室和/或私人用途的各种其他应用。不同的设备可以具有例如用于确定物理属性或者环境或设备的状态如温度、时间、湿度、发光、音量、气压、位置和运动的各种传感器。
用户设备1251可以包括用户界面501。用户可以经由界面501接收信息。用户可以通过经由用户界面501给出命令来控制设备1251和/或系统500的操作。用户界面可以包括硬件例如显示器、小键盘和/或触摸屏。用户界面可以包括用于观看屏幕上所显示的图形元素的显示屏。用户界面还可以包括例如用于在触摸屏上显示各种不同的虚拟键的软件应用。
用户界面501可以在例如固定或可移动设备中实现,其可以包含被布置成基于手势识别来接收来自用户的命令的相机。设备可以包括被布置成基于语音识别接收来自用户的命令的麦克风。用户不需要(机械)接触用户界面501的部分。
用户界面501还可以在如下设备中实现,其可以例如被缠绕在用户的手腕周围(即,腕表型设备)。用户界面501可以在例如护目镜(眼镜)中来实现,其可以包括例如用于显示信息的虚拟显示器和/或用于通过遵循其凝视方向来接收来自用户的命令的凝视方向检测器。
系统500可以被配置成执行多种任务。可以在系统中运行程序代码以执行这些任务。这些任务可以包括例如创建文本、接收和发送消息、播放音乐、捕获视频、接收新闻、接收天气信息、更新和观看日历、浏览互联网和/或在城市的街道中导航等等。系统还可以包括用于执行这些任务的一个或多个功能(物理)单元。作为功能单元,系统可以包括例如摄像机、麦克风、音频重现单元、显示屏幕、图像投影装置、射频通信单元(WLAN、Bluetooth、NFC)、能够与移动通信网络通信的单元、GPS导航单元等。
用于口袋的词语可以例如从一个或多个传感器G1获得。传感器可以包括例如加速度传感器、位置传感器、麦克风、无线电接收器、照度传感器、相机、红外辐射传感器、温度传感器、气压传感器、磁罗盘。
用户设备可以用可充电电池来供电。例如,用户设备可以由旅行的用户携带,使得用户设备的电池仅偶尔被充电(即,不是任何时间)。所收集的同时出现数据可以例如揭示用户通常在任何情况下激活能耗功能。所收集的同时出现数据可以例如揭示对电池重新充电的可能性通常何时可用。
在实施例中,可以偶尔例如从不可靠的主供电网络、从本地发电机、从太阳能电池盒/或从风力涡轮机对电池操作的系统充电。同时出现数据可以揭示例如通常在哪种情况下激活能耗功能。同时出现数据可以揭示能量的可用性通常如何取决于例如时间(例如,白天或者晚上)、季节(冬季或夏季)、天气情况(刮风、无缝、晴天、非晴天)。同时出现数据可以揭示主电力网络的故障通常什么时候出现。
系统500可以包括不可中断电源(UPS)。在电力故障的情况下,可以基于子系统400提供的预测将不需要的功能切断。
词语可以是串。词语可以是数字。词语可以包括如下序列,该序列包括字母和/或数字。词语可以包括用二进制、十进制或十六进制格式代表的ASCII代码的序列。词语可以具有语义含义,但是并非必须如此。词语可以是统一资源标识符(URI)如统一资源名称(URN)或统一资源定位符(URL)。词语可以是缩写或首字母缩写。“词语”还可以称为“标记”。
通过使用被称为口袋的词语组将同时出现词语收集至经验矩阵EX。词语口袋也可以称为词语组或词语集合。
可以通过使用经验矩阵EX1中所存储的同时出现数据来进行预测。“预测”也可以包括确定代表当前事件或过去事件的词语,即并非必须指代未来的事件。预测可以表示估计描述情形的最困难的词语。
即使从大量的口袋收集数据,也不需要增加经验矩阵EX1的矢量的长度。在实施例中,经验矩阵EX1可以包括从NBG个口袋收集的同时出现数据,使得口袋(即,“文档”)的数目NBG基本上大于经验矩阵EX1的列的数目m。
词语的“情境”可以表示所述词语的语言环境,使得所述词语(本身)从所述环境被排除。在这个意义上,词语不属于其自己的情境。
经验矩阵EX1的矢量和查询矢量QV1可以包括关于一个或多个词语的语言环境的信息。经验矩阵EX1的矢量也可以被称为情境矢量。查询矢量QV1也可以被称为情境矢量。
总之,词汇表VOC1的实体可以是包含一个或多个符号的串。
在实施例中,词汇表VOC1的实体可以是数字而非自然语言词语。辅助表格的实体可以是自然语言词语,并且辅助表格可以包含指向词汇表VOC1的数字的指针。可以通过使用辅助表格将自然语言的词语映射至数字。可以通过使用辅助表格将数字映射至自然语言的词语。辅助表格可以被称为例如自然语言词典。具体地,辅助表格可以是包含若干不同自然语言的词语的多语言词典。通过使用多语言词典可以使第一自然元以内的第一词语和第二自然语言的第二词语与词汇表VOC1的同相同的实体关联。通过使用多语言词典可以使第一自然元以内的第一词语和第二自然语言的第二词语与词汇表VOC1的相同的数字关联。多语言词典可以包括例如英语至数字词典、芬兰语至数字词典和/或德语至数字词典。因此,可以与应用、芬兰语和/或德语词语一起使用相同的词汇表VOC1、相同的基本矩阵RM1和/或相同的经验矩阵EX1。
表格1:用于使一个或多个自然语言的词语与数字关联的词典的示例
第一语言 第二语言 第三语言 数字
Dog Koira Hund 23624521
Cat Kissa Katze 63245234
因此,系统500可以处理多语言信息。系统500可以例如经由互联网从若干不同的状态收集信息。所得经验矩阵EX1可以独立于语言。同一经验矩阵EX1可以全局使用。
图12a和图12b示出可以根据示例实施例来执行形成和/或修改和/或确定情境(或者进行预测)的情况下不同的数据处理设备。如图12b所示,服务器1240包含存储器1245、一个或多个处理器1246、1247以及驻留于存储器1245中用于实现例如软件应用如用于存储或处理经验矩阵的功能的计算机程序代码1248。不同的服务器1240、1241、1242可以至少包含用于实现与每个服务器有关的功能的这些同样的元件。类似地,端用户设备1251包含存储器1252、至少一个处理器1253和1256以及驻留于存储器1252中用于实现例如软件应用如操作系统的浏览器或用户界面的功能的计算机程序代码1254。端用户设备还可以具有用于捕获图像数据例如视频的一个或多个相机1255和1259。端用户设备还可以包含用于捕获声音的一个、两个或多个麦克风1257和1258。端用户设备还可以具有附接至其的一个或多个无线或有线麦克风。不同的端用户设备1250、1260可以至少包含用于实现与每个设备有关的功能的这些同样的元件。端用户设备还可以包括用于查看图形用户界面的屏幕。
图13a示出根据实施例的预测式浏览器的用户界面序列的示例。可以使用如用图1至图12说明的基于经验矩阵(随机指数)的预测系统来给用户建议要访问的下一网页。建议可以基于先前的浏览历史、情境信息(时间、位置、传感器等),并且也可以基于来自其他客户端应用如日历的信息。因为经验矩阵被教导,所以算法是持续学习和自适应。其可以学习用户的偏好并且建议最适合给定情况的URL(地址)。建议可以用图像而非文本来表达。
浏览器可以通过以下异步操作来与服务交互。
在推送操作期间,浏览器提供词语口袋。词语可以是简明词语和/或系统词语。简明词语可以从页面内容来取得,或者可以基于内容来生成。系统词语可以命令服务使用系统信息如时间、位置和传感器数据。这一操作可以在推送操作和预测操作期间直接由浏览器来发起。可以在同一推送中混合简明词语和系统词语。词语口袋可以限定情境。相同情境下的词语是相关词语。推送的词语存储在输入缓冲器中,直到下一刷新操作。在刷新之前可能存在多个推送操作。预测式浏览器可以在用户浏览期间在后台中执行推送、刷新和预测。
词语之间的关系在刷新操作期间被捕获在经验矩阵中。这是预测提供者如何学习浏览偏好。URL也被认为是词语。这样,可以捕获情境信息、内容和URL之间的关系。在刷新期间,用输入缓冲器的内容来更新经验矩阵。
为了发起预测,浏览器提供描述实际情境的词语口袋。词语口袋可以与如在推送操作中列出的词语的种类相同。这一词语口袋可以用于计算经验矩阵中的最相关URL。即,如早先描述地,确定经验矩阵中的距离口袋的词语的稀疏矢量最近的稀疏矢量。所得到的URL然后可以用在浏览器的预测视图中以将建议页面示出为例如图像。图像可以被提供为先前访问的页面的快照或者访问的站点的图标等。快照也可以从快照服务器获得。
推送、刷新和预测操作可以由浏览器事件来发起。例如,“页面加载”事件可以用于发起推送-刷新-预测序列。自然地,其他事件和序列也是可能的。
在图13a中,用户初始浏览网页。当页面被加载时,页面内容、情境系统信息和/或URL可以被发送给例如后台中的基于经验矩阵的预测服务。可以命令该服务刷新其输入缓冲器(更新经验矩阵)。然后(仍然在后台中)可以使用刷新中相同的情境来从该服务请求预测。可以将该服务发送回用于更新预测视图的URL。
当用户想要导航离开页面并且轻击地址条时,这使得浏览器切换至已经更新的预测视图。在预测视图中,例如,可以示出所建议的页面的图像或标题。在这一视图中,用户可以判定选择预测之一或者测定新的URL或搜索文本的类型。
用户可以通过在其图像上轻击来导航至所建议的页面。然后视图改变回浏览视图并且所选页面被下载。
当开始浏览器时,可能还没有加载页面。在这个具体情况下,可以通过仅使用情境信息例如系统时间、位置、传感器信息等来提供预测。
图13b示出根据实施例的具有对于相关内容的建议的预测式浏览器的用户界面的示例。以类似于图13a的方式,可以基于情境和浏览历史例如当前页面来形成预测。除了网页,预测式浏览器或其他应用可以提供与当前网页有关的其他数据的建议。例如,可以使用位置、时间和名称来取回网站上的地点的照片、天气服务以及娱乐相关如音乐、电影或游戏。可以用相似的方式来识别这些附加数据以基于数据的描述来识别网页。
图14示出根据实施例的用于预测性浏览的抽取索引。
可以用如下方式来提供预测式浏览器的预测能力:该方式使得能够将所访问的网页的第一内容推向经验矩阵。为此,可以采用网页源代码,从HTML以及其他这样的标记和程序代码来学习,并且将其余内容向经验矩阵推送。这样,随机索引算法能够学习用户的情境。
然而,通过使用这一基本方法,有时可能难以得到精确的预测。网页上可能有太多与用户情境实际上不相关的内容。这包括不相关的广告、不相关的弹出式广告、和互联网中普遍存在的其他这样的事情。在一些互联网站点,看起来甚至用户所感兴趣的项目被很好地隐藏在所有不相关的内容背后从而激怒了用户。对于软件程序而言尝试根据这种杂乱来预测用户的情境是一项很难的任务。需要根据用户的预测来从所有环境噪音中从程序上分离和精确地揭示重要的内容。
为了克服和减轻这些挑战,在此提供了向经验矩阵中创建抽取数据的方法。用于互联网站点的抽取数据可以在系统制造、启动或者在周期更新时手动(或通过机器)并且馈送到经验矩阵中。
在这一方法中,人们(或者机器)可以选择一些数目的最常被访问的互联网站点,浏览至这些站点,并且创建站点抽取数据(元数据),其示例在图14示出。元数据可以包含站点的URL、该URL可能对于其用户很重要的地区或国家、内嵌在页面中的超链接、网站的公司名称以及在抽象级与站点内容有关的词语。为了从网页中找到最相关的词语口袋,可以在例如单独的服务器中进行预处理,其然后可以被查询。可以存在更多种类的信息,如某天的时间,例如,其也将被收集作为元数据。
抽取数据(元数据)可以被预先教导至承载预测式浏览器的用户设备的经验矩阵中。这样,预测式浏览器应用可以使用这一抽取元数据作为用于计算和建议要由用户来访问的下一站点的基础。预测式浏览器可以使用这一元数据甚至单独作为用于情境计算的基础。这与在网站上找到的所有数据用于情境计算的方法是相反的。
抽取元数据可以被创建用于大量互联网站点,如每个国家。选择要包括哪些URL可以基于站点流行度(例如,站点是否属于这一国家的1000个最常被访问的站点)。这样,用户最有可能得到预先教导抽取元数据的益处。以这样的方式形成的抽取元数据可以被做成在图11的服务器中的一个或多个服务器上运行的网络服务。由此,预测性浏览系统可以从该服务加载这些抽取元数据以更新经验矩阵。元数据服务也可以提供现成的抽取元数据经验矩阵,该现成的抽取元数据经验矩阵可以被简单地添加至用户的设备中的经验矩阵,或者可以被用于诸如预测式浏览器。
这一方法也可以包含元数据在线更新的可能性。在这一场景下,元数据在如下一些预定更新服务器处可用:从这些预定更新服务器处,经验矩阵实现在用户的请求下周期性地或者异步地转向提取新的元数据。这样,站点内容的变化可以被有效地反映给客户的设备上的预测式浏览器。
如图14中的抽取元数据可以手动或用机器来准备。这一元数据可以被加载至系统中的经验矩阵实现中。这可以通过例如以下三种途径来进行:在用户设备的制造期间在装配线,当设备首次被连接至互联网时从预定服务器提取,或者在设备的寿命期间在周期性的或异步的更新时。出于创建并且加载输入至经验矩阵中的目的,可以例如从网络服务中的用户账户获取先前使用的信息例如对网站的访问。这样的服务可以例如从用户设备收集这样的信息,使得其可以被用在创建经验矩阵更新中。
预测式浏览器可以具有用于使用抽取元数据的配置选项。例如,可以有用于在情境处理(使用经验矩阵)期间完全忽略站点内容的选项以及仅使用抽取元数据用于站点的选项。作为另一示例,可以一起使用抽取元数据和站点内容。作为又一示例,可以在情境处理中在某种程度上强调以上两种方式中的一种,即,经验矩阵可以对例如抽取元数据相比站点内容而使用更大的权重。
根据以上描述的方法可以使得能够在预测式浏览器处创建更有意义的预测。此外,可以避免在情境处理期间从网页在线选择词语的任务(可能很难知道要选择哪些词语)。
图15示出根据实施例的预测性浏览的流程图。在阶段1510,形成用于与经验矩阵一起使用的词语的集合。这些词语可以描述系统的情境,如当前网页、日历数据、位置、电子邮件等。经验矩阵可以包括与词语关联的稀疏矢量,并且可以被形成为使得其在稀疏矢量系数中具有网页的词语的关联性和共同位置的数据以及设备的情境信息。
在阶段1520,访问经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出。这可以如早先说明的那样发生,例如,在用户设备中本地发生或者通过访问网络服务中的经验矩阵来发生。
在阶段1530,可以响应于预测输出而向用户提供对网页的建议。例如,可以向用户示出预测网页的图标/图片,或者可以呈现网页的标题。用户可以能够通过例如对触摸屏用户界面进行触摸来浏览预测。除了触摸以向用户示出下一预测,也可以使用其他形式,诸如通过说出“下一”或者向前徘徊。用户可以能够通过敲击或触摸预测网页的图标或者通过指示待访问的页面的其他方式(诸如语音)来直接浏览至网页。
图16示出根据实施例的预测性浏览的流程图。在阶段1610,可以形成用于更新所述经验矩阵的用于收集词语的输入缓冲器。在阶段1620,形成用于与经验矩阵一起使用的词语的集合,例如,作为来自输入缓冲器的输出。这些词语可以描述系统的情境,诸如当前网页、日历数据、位置、电子邮件等。词语可以被扩展以更好地捕获类似术语的同时出现。例如,语句“他住在Espoo”可以被扩展至“他住在Espoo位置://Finland位置://首都地区位置://南部-Finland”。即,与例如地理位置、时间等其他这样的事情有关的某些词语可以被量化以更好地形成经验矩阵中词语之间的连接。例如,温度41℃和42℃二者可以例如用如“温度://温暖”等方式被量化成词语“温暖”。
在阶段1630,可以在形成经验矩阵时使用抽取元数据。可以基于网络浏览器活动来更新经验矩阵。经验矩阵可以包括与词语关联的稀疏矢量,并且被形成为使得其在稀疏矢量系数中具有网页的词语的关联性和共同位置的数据以及设备的情境信息。
在阶段1640,可以检测网络浏览器活动,并且基于所检测到的活动,可以形成预测输出。例如,可以基于页面加载完成来形成预测输出。
在阶段1650,访问经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出。这可以如早先说明的那样发生,例如,在用户设备中本地发生或者通过访问网络服务中的经验矩阵来发生。可以在形成预测时使用抽取元数据。抽取元数据可以是国别化的。抽取元数据可以是经验矩阵的形式。可以在形成预测时以加权形式使用站点内容和抽取元数据。形成预测输出可以在后台中发生。
在阶段1660,可以形成包括网页的图像或文本的预测列表,和/或基于网络浏览器活动对预测列表进行更新。
在阶段1670,可以响应于预测输出而向用户提供对网页的建议。这些预测或建议也可以包括被浏览的页面内的超链接。例如,可以向用户示出预测网页的图标/图片,或者可以呈现网页的标题。用户可以能够通过敲击或触摸预测网页的图标来直接浏览至网页。
在阶段1680,可以使用预测输出来提供对其他相关数据而非网页的建议。
也可以例如用喜欢或者不喜欢按钮、滑动控制或选择控制来向用户呈现用于给出预测是否成功的评级的机会。
也可以向用户示出哪些词语(抽取元数据词语)刚引起网页的这些预测出现,并且可以由用户来编辑词语以改变预测。例如,可以给予用户去除例如他/她认为不正确的抽取词语和/或添加词语或者改变词语的机会。
预测式浏览器可以提供优点。例如,这里呈现的浏览器可以通过适配页面建议来提供更好的用户体验,通过排除很多种情况下的打字来加快浏览。对所建议的页面的预浏览可以加速浏览。与文本相比,使用图像作为页面建议对人而言可能更自然。在经验矩阵中或者针对经验矩阵设置预加载的经验矩阵可以提供好的开始经验,因为可以在首次开始时已经提供建议。可以在设备中生成预测,而没有通过网络或者在服务器处的服务器交互。
可以在驻留于存储器中并且使得相关装置执行本发明的计算机程序代码的帮助下实现本发明的多种实施方式。例如,终端设备可以包括用于处理、接收和发送数据的电路装置和电子器件、存储器中的计算机程序代码、以及在运行计算机程序代码时使得终端设备执行实施方式的特征的处理器。此外,网络设备可以包括用于处理、接收和发送数据的电路装置和电子器件、存储器中的计算机程序代码、以及当运行计算机程序代码时使得网络设备执行实施方式的特征的处理器。数据结构可以被形成为使得当在计算机中与计算机程序一起使用数据结构用于控制计算机程序时,数据结构使得计算机程序和计算机能够根据数据结构和潜在的数据来操作。
很明显,本发明不仅限于以上呈现的实施方式,其可以在所附权利要求的范围内修改。

Claims (54)

1.一种用于电子设备的方法,包括:
-形成用于与经验矩阵一起使用的词语的集合,其中所述词语描述系统的情境,所述情境为当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量,并且所述稀疏矢量包括关于所述词语的共同出现的信息,
-访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出,
-响应于所述预测输出而向用户提供对网页的建议,以及
-向所述用户提供用于给出对所述建议的评级的机会。
2.根据权利要求1所述的方法,包括:
-形成用于收集词语的输入缓冲器以用于更新所述经验矩阵。
3.根据权利要求1所述的方法,包括:
-基于网络浏览器活动来形成所述预测输出。
4.根据权利要求3所述的方法,包括:
-基于页面加载完成来形成所述预测输出。
5.根据权利要求1所述的方法,包括:
-在后台中形成所述预测输出。
6.根据权利要求1所述的方法,包括:
-基于网络浏览器活动来更新所述经验矩阵。
7.根据权利要求1所述的方法,包括:
-形成预测列表,所述预测列表包括网页的图像或文本,以及
-基于网络浏览器活动来更新所述预测列表。
8.根据权利要求1所述的方法,包括:
-作为所述预测输出的结果,提供对其他有关数据而非网页的建议。
9.根据权利要求1所述的方法,包括:
-在形成所述经验矩阵时使用抽取元数据。
10.根据权利要求1所述的方法,包括:
-在形成所述预测时使用抽取元数据。
11.根据权利要求9或10所述的方法,其中所述抽取元数据是国别化的。
12.根据权利要求9或10所述的方法,其中所述抽取元数据为经验矩阵的形式。
13.根据权利要求9或10所述的方法,包括:
-在形成所述预测时以加权方式使用站点内容和所述抽取元数据。
14.一种用于控制计算机系统的操作的装置,所述装置包括具有稀疏高维矢量的经验矩阵,所述矢量包括关于词语在至少一个系统或装置中的同时出现的信息,并且所述经验矩阵已经至少部分地通过使用网站的抽取元数据而被形成,所述装置被配置为执行根据权利要求1-13中的任一项所述的方法。
15.根据权利要求14所述的装置,其中所述抽取元数据是国别化的。
16.一种电子装置,包括至少一个处理器、至少一个存储器,所述至少一个存储器包括用于一个或多个程序单元的计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置成与所述处理器一起使所述装置执行至少以下操作:
-形成用于与经验矩阵一起使用的词语的集合,其中所述词语描述系统的情境,所述情境为当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量,并且所述稀疏矢量包括关于所述词语的共同出现的信息,
-访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出,
-响应于所述预测输出而向用户提供对网页的建议,以及
-向所述用户提供用于给出对所述建议的评级的机会。
17.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-形成用于收集词语的输入缓冲器以用于更新所述经验矩阵。
18.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-基于网络浏览器活动来形成所述预测输出。
19.根据权利要求18所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-基于页面加载完成来形成所述预测输出。
20.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-在后台中形成所述预测输出。
21.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-基于网络浏览器活动来更新所述经验矩阵。
22.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-形成预测列表,所述预测列表包括网页的图像或文本,以及
-基于网络浏览器活动来更新所述预测列表。
23.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-作为所述预测输出的结果,提供对其他有关数据而非网页的建议。
24.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-在形成所述经验矩阵时使用抽取元数据。
25.根据权利要求16所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-在形成所述预测时使用抽取元数据。
26.根据权利要求24或25所述的装置,其中所述抽取元数据是国别化的。
27.根据权利要求24或25所述的装置,其中所述抽取元数据为经验矩阵的形式。
28.根据权利要求24或25所述的装置,还包括被配置成与所述至少一个处理器一起使所述装置执行至少以下操作的计算机程序代码:
-在形成所述预测时以加权方式使用站点内容和所述抽取元数据。
29.一种用于电子设备的装置,包括:
-用于形成用于与经验矩阵一起使用的词语的集合的装置,其中所述词语描述系统的情境,所述情境为当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量,并且所述稀疏矢量包括关于所述词语的共同出现的信息,
-用于访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出的装置,
-用于响应于所述预测输出而向用户提供对网页的建议的装置,以及
-用于向用户提供用于给出对所述建议的评级的机会的装置。
30.根据权利要求29所述的装置,包括:
-用于形成用于收集词语的输入缓冲器以用于更新所述经验矩阵的装置。
31.根据权利要求29所述的装置,包括:
-用于基于网络浏览器活动来形成所述预测输出的装置。
32.根据权利要求31所述的装置,包括:
-用于基于页面加载完成来形成所述预测输出的装置。
33.根据权利要求29所述的装置,包括:
-用于在后台中形成所述预测输出的装置。
34.根据权利要求29所述的装置,包括:
-用于基于网络浏览器活动来更新所述经验矩阵的装置。
35.根据权利要求29所述的装置,包括:
-用于形成预测列表的装置,所述预测列表包括网页的图像或文本,以及
-用于基于网络浏览器活动来更新所述预测列表的装置。
36.根据权利要求29所述的装置,包括:
-用于作为所述预测输出的结果提供对其他有关数据而非网页的建议的装置。
37.根据权利要求29所述的装置,包括:
-用于在形成所述经验矩阵时使用抽取元数据的装置。
38.根据权利要求29所述的装置,包括:
-用于在形成所述预测时使用抽取元数据的装置。
39.根据权利要求37或38所述的装置,其中所述抽取元数据是国别化的。
40.根据权利要求37或38所述的装置,其中所述抽取元数据为经验矩阵的形式。
41.根据权利要求37或38所述的装置,包括:
用于在形成所述预测时以加权方式使用站点内容和所述抽取元数据的装置。
42.一种用于电子设备的系统,包括至少一个处理器、至少一个存储器,所述至少一个存储器包括用于一个或多个程序单元的计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置成与所述处理器一起使所述系统执行至少以下操作:
-形成用于与经验矩阵一起使用的词语的集合,其中所述词语描述系统的情境,所述情境为当前网页,并且其中所述经验矩阵包括与词语关联的稀疏矢量,并且所述稀疏矢量包括关于所述词语的共同出现的信息,
-访问所述经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出,
-响应于所述预测输出而向用户提供对网页的建议,以及
-向用户提供用于给出对所述建议的评级的机会。
43.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-形成用于收集词语的输入缓冲器以用于更新所述经验矩阵。
44.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-基于网络浏览器活动来形成所述预测输出。
45.根据权利要求44所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-基于页面加载完成来形成所述预测输出。
46.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-在后台中形成所述预测输出。
47.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-基于网络浏览器活动来更新所述经验矩阵。
48.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-形成预测列表,所述预测列表包括网页的图像或文本,以及
-基于网络浏览器活动来更新所述预测列表。
49.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-作为所述预测输出的结果,提供对其他有关数据而非网页的建议。
50.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-在形成所述经验矩阵时使用抽取元数据。
51.根据权利要求42所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-在形成所述预测时使用抽取元数据。
52.根据权利要求50或51所述的系统,其中所述抽取元数据是国别化的。
53.根据权利要求50或51所述的系统,其中所述抽取元数据为经验矩阵的形式。
54.根据权利要求50或51所述的系统,还包括被配置成与所述至少一个处理器一起使所述系统执行至少以下操作的计算机程序代码:
-在形成所述预测时以加权方式使用站点内容和所述抽取元数据。
CN201280072557.5A 2012-02-22 2012-02-22 预测性服务访问 Expired - Fee Related CN104246757B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FI2012/050178 WO2013124519A1 (en) 2012-02-22 2012-02-22 Predictive service access

Publications (2)

Publication Number Publication Date
CN104246757A CN104246757A (zh) 2014-12-24
CN104246757B true CN104246757B (zh) 2018-11-06

Family

ID=49005054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280072557.5A Expired - Fee Related CN104246757B (zh) 2012-02-22 2012-02-22 预测性服务访问

Country Status (5)

Country Link
US (1) US10324916B2 (zh)
EP (1) EP2817738B1 (zh)
JP (1) JP5890539B2 (zh)
CN (1) CN104246757B (zh)
WO (1) WO2013124519A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104246758B (zh) * 2012-02-22 2018-05-18 诺基亚技术有限公司 自适应系统
US9412067B2 (en) * 2012-09-05 2016-08-09 Numenta, Inc. Anomaly detection in spatial and temporal memory system
US9979796B1 (en) * 2014-07-16 2018-05-22 Tensera Networks Ltd. Efficient pre-fetching notifications
CN106664592B (zh) 2014-07-16 2020-08-18 腾赛拉网络有限公司 用于内容分发的方法和系统及相应的计算机可读介质
US11095743B2 (en) 2014-07-16 2021-08-17 Tensera Networks Ltd. Optimized content-delivery network (CDN) for the wireless last mile
EP3106973A1 (en) * 2015-06-16 2016-12-21 Huawei Technologies Co., Ltd. Context-driven adaptive application launcher grid user interface based on random index predictor for mobile devices
US20180203939A1 (en) 2015-08-11 2018-07-19 Mitsubishi Electric Corporation Web browsing apparatus and computer readable medium
US20180341716A1 (en) * 2017-05-26 2018-11-29 Microsoft Technology Licensing, Llc Suggested content generation
US11625450B1 (en) * 2022-07-07 2023-04-11 Fmr Llc Automated predictive virtual assistant intervention in real time
WO2024018541A1 (ja) * 2022-07-19 2024-01-25 日本電信電話株式会社 情報処理装置、情報処理方法および情報処理プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5895470A (en) * 1997-04-09 1999-04-20 Xerox Corporation System for categorizing documents in a linked collection of documents
CN101297291A (zh) * 2005-05-04 2008-10-29 谷歌公司 基于原始用户输入建议和细分用户输入
CN101470754A (zh) * 2007-12-27 2009-07-01 国际商业机器公司 社区服务器系统和用于社区服务器系统的活动记录方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7251637B1 (en) * 1993-09-20 2007-07-31 Fair Isaac Corporation Context vector generation and retrieval
JPH11250091A (ja) 1998-03-04 1999-09-17 Hitachi Ltd 類推と遺伝的アルゴリズムを利用した情報提供方法
US6334127B1 (en) 1998-07-17 2001-12-25 Net Perceptions, Inc. System, method and article of manufacture for making serendipity-weighted recommendations to a user
GB9820993D0 (en) 1998-09-28 1998-11-18 Philips Electronics Nv Web browser graphics management
US7461058B1 (en) 1999-09-24 2008-12-02 Thalveg Data Flow Llc Optimized rule based constraints for collaborative filtering systems
US6889250B2 (en) 2000-03-01 2005-05-03 Amazon.Com, Inc. Method and system for information exchange between users of different web pages
JP2003134220A (ja) * 2001-10-22 2003-05-09 Sony Corp 電話番号情報提供システム、情報処理装置及び情報処理方法
WO2009021198A1 (en) * 2007-08-08 2009-02-12 Baynote, Inc. Method and apparatus for context-based content recommendation
WO2006085314A2 (en) 2005-02-11 2006-08-17 Flash Networks Ltd Method and system for improving user experience while browsing
EP1783632B1 (en) * 2005-11-08 2012-12-19 Intel Corporation Content recommendation method with user feedback
GB2436377B (en) * 2006-03-23 2011-02-23 Cambridge Display Tech Ltd Data processing hardware
US9405830B2 (en) * 2007-02-28 2016-08-02 Aol Inc. Personalization techniques using image clouds
KR100755468B1 (ko) 2007-05-29 2007-09-04 (주)이즈포유 웹 페이지 구조 분석을 통한 웹 사이트의 정보 파악 방법
US20090172021A1 (en) 2007-12-28 2009-07-02 Kane Francis J Recommendations based on actions performed on multiple remote servers
WO2009086014A1 (en) 2007-12-28 2009-07-09 Amazon Technologies, Inc. Widget-assisted detection and exposure of behavioral associations
US20090209339A1 (en) 2008-02-14 2009-08-20 Aruze Gaming America, Inc. Gaming Apparatus Capable of Conversation with Player, Control Method Thereof, Gaming System Capable of Conversation with Player, and Control Method Thereof
US8560964B2 (en) * 2008-02-20 2013-10-15 International Business Machines Corporation Method and system for predictive browsing
US8131732B2 (en) * 2008-06-03 2012-03-06 Nec Laboratories America, Inc. Recommender system with fast matrix factorization using infinite dimensions
EP2291778A4 (en) * 2008-06-14 2011-09-21 Corp One Ltd SEARCH BY UTILITY MODELS
US8359282B2 (en) * 2009-01-12 2013-01-22 Nec Laboratories America, Inc. Supervised semantic indexing and its extensions
CN101493832A (zh) 2009-03-06 2009-07-29 辽宁般若网络科技有限公司 网站内容联合推荐系统与方法
US8078691B2 (en) * 2009-08-26 2011-12-13 Microsoft Corporation Web page load time prediction and simulation
JP2011175362A (ja) * 2010-02-23 2011-09-08 Sony Corp 情報処理装置、重要度算出方法及びプログラム
US20110302099A1 (en) * 2010-06-04 2011-12-08 James Jeffries Apparatus, system, and method for providing a social network
CN102314450B (zh) * 2010-06-30 2014-11-26 国际商业机器公司 用于增强网页浏览的方法和设备
US8516205B2 (en) * 2010-10-29 2013-08-20 Nokia Corporation Method and apparatus for providing efficient context classification
WO2012123621A1 (en) 2011-03-16 2012-09-20 Nokia Corporation Method, device and system for user interface adaptation
WO2012123619A1 (en) 2011-03-16 2012-09-20 Nokia Corporation Method, device and system for energy management
EP2817739A4 (en) 2012-02-22 2016-04-20 Nokia Technologies Oy SYSTEM AND METHOD FOR PROVIDING A FORECAST FOR CONTROLLING A SYSTEM

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5895470A (en) * 1997-04-09 1999-04-20 Xerox Corporation System for categorizing documents in a linked collection of documents
CN101297291A (zh) * 2005-05-04 2008-10-29 谷歌公司 基于原始用户输入建议和细分用户输入
CN101470754A (zh) * 2007-12-27 2009-07-01 国际商业机器公司 社区服务器系统和用于社区服务器系统的活动记录方法

Also Published As

Publication number Publication date
US10324916B2 (en) 2019-06-18
EP2817738B1 (en) 2022-06-22
EP2817738A4 (en) 2016-04-06
JP2015509626A (ja) 2015-03-30
WO2013124519A1 (en) 2013-08-29
US20150178337A1 (en) 2015-06-25
EP2817738A1 (en) 2014-12-31
JP5890539B2 (ja) 2016-03-22
CN104246757A (zh) 2014-12-24

Similar Documents

Publication Publication Date Title
CN104246757B (zh) 预测性服务访问
CN104246758B (zh) 自适应系统
CN104246756B (zh) 用于提供用于控制系统的预测的系统和方法
CN104246748B (zh) 用于确定情境的系统和方法
CN106845644B (zh) 一种通过相互关系学习用户及移动应用的联系的异构网络
CN108701149A (zh) 一种智能推荐方法和终端
WO2010021833A2 (en) System and method for context enhanced messaging
WO2009117582A2 (en) Method and apparatus for detecting patterns of behavior
CN107958042A (zh) 一种目标专题的推送方法及移动终端
CN111432347B (zh) 信息处理方法、装置、存储介质及电子设备
CN104246658B (zh) 系统、用于控制系统的数据结构和用于更新数据结构的方法
Rajaraman Breakthroughs in information and communication technologies part III
CN115687944B (zh) 一种短信采集方法及相关设备
Lee et al. Automatic weblog generation using mobile context
CN116485468A (zh) 一种信息推送的方法以及相关装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160114

Address after: Espoo, Finland

Applicant after: NOKIA TECHNOLOGIES OY

Address before: Espoo, Finland

Applicant before: NOKIA Corp.

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181106

CF01 Termination of patent right due to non-payment of annual fee