CN104246758B - 自适应系统 - Google Patents
自适应系统 Download PDFInfo
- Publication number
- CN104246758B CN104246758B CN201280072558.XA CN201280072558A CN104246758B CN 104246758 B CN104246758 B CN 104246758B CN 201280072558 A CN201280072558 A CN 201280072558A CN 104246758 B CN104246758 B CN 104246758B
- Authority
- CN
- China
- Prior art keywords
- experience matrix
- matrix
- experience
- combination
- word
- 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.)
- Active
Links
- 239000011159 matrix material Substances 0.000 claims abstract description 689
- 239000013598 vector Substances 0.000 claims abstract description 284
- 230000004044 response Effects 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 66
- 238000004590 computer program Methods 0.000 claims description 37
- 230000015654 memory Effects 0.000 claims description 34
- 238000004891 communication Methods 0.000 claims description 25
- 230000000694 effects Effects 0.000 claims description 12
- 238000012360 testing method Methods 0.000 claims description 11
- 230000015572 biosynthetic process Effects 0.000 claims description 9
- 230000006855 networking Effects 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 6
- 101100497923 Viola odorata Voc1 gene Proteins 0.000 description 36
- WVAKRQOMAINQPU-UHFFFAOYSA-N 2-[4-[2-[5-(2,2-dimethylbutyl)-1h-imidazol-2-yl]ethyl]phenyl]pyridine Chemical compound N1C(CC(C)(C)CC)=CN=C1CCC1=CC=C(C=2N=CC=CC=2)C=C1 WVAKRQOMAINQPU-UHFFFAOYSA-N 0.000 description 21
- 102100037152 BAG family molecular chaperone regulator 1 Human genes 0.000 description 21
- 101000740062 Homo sapiens BAG family molecular chaperone regulator 1 Proteins 0.000 description 21
- 230000006870 function Effects 0.000 description 19
- 238000012545 processing Methods 0.000 description 14
- 230000001133 acceleration Effects 0.000 description 13
- 101100072624 Arabidopsis thaliana INDH gene Proteins 0.000 description 11
- OENIXTHWZWFYIV-UHFFFAOYSA-N 2-[4-[2-[5-(cyclopentylmethyl)-1h-imidazol-2-yl]ethyl]phenyl]benzoic acid Chemical compound OC(=O)C1=CC=CC=C1C(C=C1)=CC=C1CCC(N1)=NC=C1CC1CCCC1 OENIXTHWZWFYIV-UHFFFAOYSA-N 0.000 description 10
- 102100027961 BAG family molecular chaperone regulator 2 Human genes 0.000 description 10
- 101000697872 Homo sapiens BAG family molecular chaperone regulator 2 Proteins 0.000 description 10
- 239000000872 buffer Substances 0.000 description 10
- 102100027954 BAG family molecular chaperone regulator 3 Human genes 0.000 description 8
- 101100388504 Chlamydomonas reinhardtii ODA4 gene Proteins 0.000 description 8
- 101000697871 Homo sapiens BAG family molecular chaperone regulator 3 Proteins 0.000 description 8
- 101000861263 Homo sapiens Steroid 21-hydroxylase Proteins 0.000 description 8
- 101100389631 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SUP45 gene Proteins 0.000 description 8
- 102100027545 Steroid 21-hydroxylase Human genes 0.000 description 8
- 230000008859 change Effects 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 8
- 102100024058 Flap endonuclease GEN homolog 1 Human genes 0.000 description 5
- 101000833646 Homo sapiens Flap endonuclease GEN homolog 1 Proteins 0.000 description 5
- 230000004913 activation Effects 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 5
- 230000005611 electricity Effects 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 239000012528 membrane Substances 0.000 description 4
- 102100027955 BAG family molecular chaperone regulator 4 Human genes 0.000 description 3
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 3
- 101000697866 Homo sapiens BAG family molecular chaperone regulator 4 Proteins 0.000 description 3
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 3
- 101001128969 Homo sapiens Neuron navigator 1 Proteins 0.000 description 3
- 102100031225 Neuron navigator 1 Human genes 0.000 description 3
- 235000013305 food Nutrition 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 241000894007 species Species 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 101150053844 APP1 gene Proteins 0.000 description 2
- 102100030154 CDC42 small effector protein 1 Human genes 0.000 description 2
- 101000794295 Homo sapiens CDC42 small effector protein 1 Proteins 0.000 description 2
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 2
- 101000921256 Homo sapiens Probable crossover junction endonuclease EME2 Proteins 0.000 description 2
- 241000009328 Perro Species 0.000 description 2
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 2
- 102100032060 Probable crossover junction endonuclease EME2 Human genes 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 235000012054 meals Nutrition 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000007935 neutral effect Effects 0.000 description 2
- 235000013550 pizza Nutrition 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000010183 spectrum analysis Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 210000000707 wrist Anatomy 0.000 description 2
- ZTENZJJCFACIAK-ADWVOTLJSA-N (2r)-2-[[(1r,3s,4s)-3-[[4-(5-benzyl-2-ethylpyrazol-3-yl)piperidin-1-yl]methyl]-4-(3-fluorophenyl)cyclopentyl]-methylamino]-3-methylbutanoic acid Chemical compound C1=C(C2CCN(C[C@@H]3[C@H](C[C@H](C3)N(C)[C@H](C(C)C)C(O)=O)C=3C=C(F)C=CC=3)CC2)N(CC)N=C1CC1=CC=CC=C1 ZTENZJJCFACIAK-ADWVOTLJSA-N 0.000 description 1
- 101100055496 Arabidopsis thaliana APP2 gene Proteins 0.000 description 1
- 102100028046 BAG family molecular chaperone regulator 5 Human genes 0.000 description 1
- 101150080345 BAG7 gene Proteins 0.000 description 1
- 102100038919 Dynein axonemal assembly factor 1 Human genes 0.000 description 1
- 101000697498 Homo sapiens BAG family molecular chaperone regulator 5 Proteins 0.000 description 1
- 101000955707 Homo sapiens Dynein axonemal assembly factor 1 Proteins 0.000 description 1
- 101000697493 Homo sapiens Large proline-rich protein BAG6 Proteins 0.000 description 1
- 102100028047 Large proline-rich protein BAG6 Human genes 0.000 description 1
- 101150100772 MRK1 gene Proteins 0.000 description 1
- 101100016250 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GYL1 gene Proteins 0.000 description 1
- 101100033865 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RFA1 gene Proteins 0.000 description 1
- 101100524516 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RFA2 gene Proteins 0.000 description 1
- 229910000831 Steel Inorganic materials 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- XNKARWLGLZGMGX-UHFFFAOYSA-N ethyl 4-(4-chloro-2-methylphenoxy)butanoate Chemical compound CCOC(=O)CCCOC1=CC=C(Cl)C=C1C XNKARWLGLZGMGX-UHFFFAOYSA-N 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Data Mining & Analysis (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及使用经验矩阵、基于稀疏矢量诸如随机索引矢量的矩阵来形成预测。使第一经验矩阵的至少部分与第二经验矩阵的至少部分被组合(1410)以获得组合经验矩阵。该经验矩阵包括稀疏矢量或本质上相似的矢量,并且所述经验矩阵包括至少一个系统的信息,例如系统的情境。访问组合经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出(1420),以及响应于所述预测输出而控制系统(1430)。
Description
技术领域
当前电子用户设备如智能电话和计算机承载多个功能,例如用于不同需要的各种程序以及用于定位、通信和娱乐的不同模块。可以用这些设备来执行的任务的种类很多,并且各个任务可能实际上很复杂。例如,当今世界执行的任务中的很多任务是在计算机的帮助下进行的。同样地,电子设备也已经成为空闲时间的日常生活的一部分。此外,通过用于不同目的的互联网可获得大量网络服务和应用。
现代电子设备如计算机或智能电话的用户可能被由系统提供的各种功能以及他/她触及的各种服务和应用所淹没。出于这个目的,这些设备可以在设备中提供定制功能的外观和布置的方法,使得用户所需要的设备的功能很容易可获得。然而,系统的状态以及系统于其中被使用的情况可能对性能和用户的需求产生影响。
因此,需要用于向系统的服务和应用提供的较容易的访问的解决方案。
发明内容
现在,已经发明了一种改进的方法以及一种实现该方法的技术装备,通过该方法以及该技术装备可以缓解以上问题。本发明的多个方面包括一种方法、装置、服务器、客户端、数据结构和包括存储在其中的计算机程序的计算机可读介质,其特征在于在独立权利要求中所指出的内容。在从属权利要求中公开了本发明的多种实施例。
示例实施例涉及使用经验矩阵、基于稀疏矢量诸如随机索引矢量的矩阵来形成预测。使第一经验矩阵的至少一部分与第二经验矩阵的至少一部分被组合以获得组合经验矩阵。该经验矩阵包括稀疏矢量或者本质上类似的矢量,并且所述经验矩阵包括至少一个系统的信息例如系统的情境。访问组合经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出,并且响应于所述预测输出而控制系统。
附图说明
下面,将参考示例实施例的附图更详细地描述本发明的多种实施例,在附图中:
图1a、图1b和图1c示出将词语表示为基本稀疏矢量、词语口袋,以及在与词语口袋一起更新之后的经验矩阵,
图2示出使用词语口袋和基本稀疏矢量来更新经验矩阵,
图3a、图3b和图3c示出使用经验矩阵提供预测;确定情境空间中的矢量的差异,以及使用经验矩阵提供预测,
图4a、图4b和图4c示出将词语口袋表示为基本稀疏矢量;使用词语口袋和基本稀疏矢量来更新经验矩阵,以及更新之后的经验矩阵,
图5a、图5b和图5c示出将词语收集至口袋,以及其中词语表示不同时刻的情况,
图6图示在包括经验矩阵的系统中采集和处理数据,
图7a示出被配置成使用经验矩阵来采集和处理数据的系统,
图7b示出被布置成提供词语作为输出的传感器,
图7c示出包括词语哈希表和基本稀疏矢量组的稀疏矢量供应,
图7d示出包括基本稀疏矢量组的稀疏矢量供应,
图7e示出包括被配置成生成基本稀疏矢量的随机数发生器的稀疏矢量供应,
图7f示出基于使用经验矩阵进行的预测而被控制的系统,
图8a、图8b、图8c和图8d示出词语口袋,基于预测而被控制的用户界面,以及用于针对日历事件而对系统进行准备的方法步骤。
图9a、图9b和图9c示出将经验矩阵表示为哈希表组,更新经验矩阵,以及使用经验矩阵用于进行预测,
图10a和图10b示出使用日历和/或词典生成辅助词语,以及使用词典用第二词语代替词语,
图11示出包括经验矩阵的系统,
图12a和图12b示出不同的数据处理设备,
图13a和图13b示出各种组合两个经验矩阵或经验矩阵的一部分的方式、以及各种所得到的经验矩阵(数据结构),
图14示出根据实施例的使用组合经验矩阵用于进行预测的流程图,以及
图15示出根据实施例的使用组合经验矩阵用于进行预测的流程图。
具体实施方式
下面,将参考系统的情境以及随机索引的框架来描述本发明的若干示例实施例。然而,应当注意,本发明不限于这些用途或备选。实际上,不同的实施例可应用于其中需要系统的语义处理和适应性的任何环境。
可以基于词语在在先情况下的同时出现而采集同时出现的数据。经验矩阵可以包含关于词语在不同情况下的同时出现的历史数据。经验矩阵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的若干矢量实际上可以是不同的稀疏矢量的线性组合。
图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和图13b示出各种组合两个经验矩阵或经验矩阵的一部分的方法、以及各种所得到的经验矩阵(数据结构)。
根据方法A,可以通过向经验矩阵1例如在端部处、在中间处添加经验矩阵2的用于词语(例如“拉普兰(Lapland)、鲁道夫(Rudolf)、驯鹿”)的稀疏矢量(用水平条表示)、或者通过用交织的方式混合来组合两个经验矩阵1和2。所得到的经验矩阵包括来自矩阵1的稀疏矢量诸如用于“钢笔”的矢量“2 0 0 0 0 0 7 0 0 0”以及用于“置放者”的矢量“0 0 3 00 0 0 0 0 0”。出于实际原因,在此示出的矢量是短的并且具有比实际所使用的矢量少的稀疏矢量,如早先所描述的。所得到的矩阵还包括来自矩阵2的矢量诸如用于“鲁道夫”的矢量“0 0 0 0 0 0 0 0 -7 0”以及用于“驯鹿”的矢量“0-2 0 0 0 4 0 0 0 0”。所得到的矩阵使得当用于输入矢量的最近匹配被寻找时,搜索可以返回来自原始矩阵1和矩阵2二者的矢量/词语。在一个备选方案中,要从矩阵1和矩阵2中取出的词语(和矢量)的数目例如使用滑动控制、通过用户界面从用户接收,或者通过用另一方式来确定组合比率。
根据方法B,可以通过逐矢量地向矩阵1的稀疏矢量例如在端部处、在中间添加来自经验矩阵2的稀疏矢量的元素、或者通过用交织方式混合来组合两个经验矩阵1和2。所得到的经验矩阵包括具有来自矩阵1的元素诸如用于“钢笔”的矢量元素“2 0 0 0 0 0 7 0 00”和用于“置放者”的矢量元素“0 0 3 0 0 0 0 0 0 0”的稀疏矢量。所得到的矩阵还包括来自矩阵2的元素,诸如用于“钢笔”的矢量元素“0 0”和用于“置放者”的矢量元素“0-7”的稀疏矢量。所得到的矢量因此用于“钢笔”的矢量元素“2 0 0 0 0 0 7 0 0 0 0 0”和用于“置放者”的矢量元素“0 0 3 0 0 0 0 0 0 0 0 -7”的稀疏矢量。即,作为示例,可以级联来自矩阵1和矩阵2的对应矢量。所得到的矩阵使得当用于输入矢量的最近匹配被寻找时,搜索可以返回来自原始矩阵1和矩阵2二者或者任意矩阵的矢量/词语。在一个备选方案中,要从矩阵1和矩阵2中取出的元素的数目例如使用滑动控制、通过用户界面从用户接收,或者通过用另一方式来确定组合比率。
根据方法C,可以通过逐元素执行组合元素来组合两个经验矩阵1和2,例如通过对对应矢量的各个元素求和。所得到的经验矩阵包括具有作为来自矩阵1和矩阵2的元素的组合的元素的稀疏矢量。例如,每个元素可以通过求和、通过求差、通过取最大值或最小值或者通过任何其他形式的组合来形成。作为示例,“钢笔”在经验矩阵1中具有对应矢量“2 0 00 0 0 7 0 0 0”并且在矩阵2中具有对应矢量“0 0 0 -7 0 0 0 0 0 0”,并且用于词语“钢笔”的组合(在这种情况下为求和)结果矢量为“2 0 0 -7 0 0 7 0 0 0”。对于“置放者”,来自矩阵1和2的矢量为“0 0 3 0 0 0 0 0 0 0”和“0 0 1 0 0 0 0 -5 0 0”,并且所得到的用于“置放者”的矢量为“0 0 4 0 0 0 0 -5 0 0”。组合也可以用加权方式发生,例如,使得相对加权例如使用滑动控制、通过用户界面从用户接收,或者通过用另一方式来确定组合比率。
可以如图13b所示一起使用各种组合方法。
在一起使用方法A和B时,添加矢量,并且可以组合对应矢量。还可以修改矢量,使得一些元素(矩阵内的较小的矩形)取自矩阵2,而一些取自矩阵1。换言之,所得到的矩阵中的矢量的数目可以不同于矩阵1或者矩阵2中的矢量的原始数目,并且每个矢量中的元素的数目可以不同于原始矢量。
在一起使用方法A和C时,逐元素对矩阵1中的在矩阵2中具有对应矢量的矢量进行组合(如在方法C中的),并且向矩阵1添加矩阵2中的在矩阵1中不具有对应矢量的矢量。
在一起使用方法B和C时,可以组合来自矩阵1和矩阵2的对应矢量,或者可以组合对应矢量的一部分。例如,第一数目的元素可以取自矩阵1,第二数目的元素可以取自矩阵2。除了通过例如级联来组合,还可以通过逐元素组合来组合矢量,其可以以加权方式发生。
在一起使用方法A、B和C时,可以组合不同大小的经验矩阵。例如,可以通过逐元素添加对应元素并且级联来自较长矢量的元素来组合对应矢量(对应于同一词语的矢量)。此外,可以向所得到的矩阵添加不具有对应矢量的那些矢量。所得到的矩阵因此可以包括用于所有具有经验矩阵1或2中的矢量的词语的矢量,并且在经验矩阵1和2中都存在对应矢量的情况下这些矢量可以是矢量的组合。
在所有方法中,组合可以以加权方式发生,例如,使得相对加权例如使用滑动控制、通过用户界面从用户接收,或者通过用另一方式来确定加权比率。加权可以控制例如逐元素组合时的加权和中的加权、或者要从矩阵1和2取得的元素的(相对)数目。在可以从矩阵1和矩阵2取得乘以加权系数的元素值以形成组合矩阵的情况下,加权可以是线性的。备选地,加权或组合可以以非线性方式发生,例如,使得来自矩阵1和矩阵2的值可以被非线性地映射至映射值1和2,并且然后组合这些值。组合还可以进行使得组合元素值c分别通过映射c=f(a,b)被获得作为来自矩阵1和2的值a和b的函数,其中,f为映射函数。组合值可以是例如通过取整获得的整数值,或者它们可以例如用浮点表示代表的有理或无理值。加权也可以进行使得一些矢量或者一些元素例如通过在组合之前用系数(例如,大于1.0)乘以其元素值来被增加。
组合也可以作为减法来发生。例如,可以从同一经验矩阵的在后版本从减去该经验矩阵的在先版本。可以例如已经通过训练来推断出经验矩阵。在这样的情况下,所得到的矩阵可以仅包含两个矩阵之间的变化。以这样的方式,在某种情况或某种情境下当某些信息需要可用于例如进行预测时,可以形成可以被添加至“基线”经验矩阵的矩阵。
需要理解的是,如上所述,可以用相似的方式组合多于两个经验矩阵(例如,三个、四个、五个或更多个)。即,上述组合不限于两个经验矩阵。实际上,可以用这一方式组合甚至大量的经验矩阵,例如,20、50或100或甚至更多,例如与社交网络服务有关以及例如用户和所有其朋友的经验矩阵。
图14示出根据实施例的使用组合经验矩阵用于进行预测的流程图。在阶段1410,使得第一经验矩阵的至少一部分与第二经验矩阵的至少一部分被组合。组合可以产生组合经验矩阵,组合经验矩阵具有来自这两个原始经验矩阵的信息。组合可以如通过图13a和图13b说明的那样发生。组合可以在执行其他处理的装置中发生,例如在用户设备中,或者组合可以在其他设备或系统处发生,并且通过第一设备来指令(引起)。
在阶段1420,访问组合经验矩阵的至少稀疏矢量的至少一部分以形成预测输出。所得的组合经验矩阵被存储在访问矩阵的相同的装置中,或者存储在另一设备处,例如,在网络服务中。访问可以包括例如确定用于稀疏矢量的最近匹配、或者确定组合经验矩阵中的对应稀疏矢量。形成预测输出可以类似于早先针对普通经验矩阵所说明的那样发生。
在阶段1430,响应于或者通过使用来自阶段1420的预测输出对系统进行控制或适配。例如,可以通过使用预测输出来改变或控制系统的用户界面。用户界面可以是装置的用户界面或者网络服务的用户界面。还可以用其他方式来对系统进行控制或适配,例如,可以使用预测输出来向用户推荐网站(地址),使得用户可以从当前情境中的网站找到相关信息。还可以对系统进行适配,使得其找到或推荐要下载或安装至系统的相关应用。站点或应用的推荐还可以在用户设备或网络服务(服务器设备)处发生。
可以使用等同权重来组合经验矩阵,但是也可以用不同的权重值来组合经验矩阵。这例如可以发生,使得用户被呈现以用户界面(UI),在UI处用户具有他/她可以从左至右移动的条。最左位置可以等于给予用户自己的矩阵X以所有权重,这可以产生所有预测都对于该用户而言是个人的。最右位置可以给予另一矩阵Y以所有权重,可以使得所有预测对于矩阵Y而言都是完全特定的,即,给予社交经验矩阵。中间点可以等同地考虑两个矩阵。
通过这种系统,用户可以控制他/她有想要向他的/她的个人信息给予多大权重以及他/她有想要多么依赖于“社交”信息。
基于云的系统可以用于从各个用户收集经验矩阵。在这一实现中,每个客户端设备可以向云发送其自己的经验矩阵。云然后如早先所说明的那样创建组合经验矩阵。在形成这一组合矩阵之后,可以将组合矩阵发送给客户端设备。
矩阵共享可以通过其他通道以及比如使用近程无线电如蓝牙或NFC来发生。在这些情况下,共享经验矩阵可以在客户端设备之间直接进行。
在客户端设备从云接收到经验矩阵之后,其可以将其本地存储在设备上。设备可以向端用户提供U1,其使得用户能够配置如何在设备上构造预测。在这种情况下,相关参数为系统如何使用设备自己的个人经验矩阵以及其如何使用社交矩阵。这一配置可以例如通过使用用户界面被提供给端用户。
此外,用户可以周期性地存储他的或她的随机矩阵的备份。该备份可以用仅包含来自某个时段的增量变化的方式被存储,如早先所说明的。可以通过组合所有时段来创建综合用户历史。用户综合历史与最近时段的组合可以用于采用用户图案的变化,如果该变化被检测到。
可以根据用户图案的变化来触发收集的随机矩阵的不同例示的重新加权。这可以从系统的变坏的预测精度来检测(即,用户没有选择所建议的项目)。例如,在假日季节和假期,可以从用户已经腾出的哪些时间段来收集相关经验矩阵。这也使得能够实现共享其他人的假期随机矩阵分量并且然后将其去除的能力,如先前使用“社交”随机矩阵时所描述的。
此外,可以假设这些矩阵可以成为从知名人士处可购买的条目,并且这样做仅为了创建例如大的假日矩阵。
图15示出根据实施例的使用组合经验矩阵用于进行预测的流程图。在阶段1510,例如通过训练形成至少一个经验矩阵。在阶段1515,可以将第一经验矩阵和第二经验矩阵存储在同一系统或装置中,并且第一经验矩阵和第二经验矩阵可以包含所述同一系统或装置的数据,例如来自不同时刻的数据。可以将第一经验矩阵和第二经验矩阵至少部分地存储在不同的系统或装置中,并且第一经验矩阵和第二经验矩阵可以包含至少部分不同的系统或装置的数据,例如,与不同的用户有关的数据。可以将经验矩阵存储在云或其他网络存储装置中,用于通过通信连接来下载或访问。
在阶段1520,可以通过通信连接从另一设备或系统接收第二矩阵。例如,第一经验矩阵可以是用户的经验矩阵,第二经验矩阵可以是已经通过组合除了第一矩阵之外的至少多个其他经验矩阵而形成的社交经验矩阵,例如,与社交网络服务中的用户的有社会关系的人的经验矩阵。第一矩阵可以在或不在要组合的矩阵的组中,即,社交经验矩阵可以包括当前用户的经验矩阵的信息,或者其也可以不包括。
在阶段1525,可以确定用于组合第一矩阵和第二矩阵的方法和参数。例如,可以根据组合权重来执行组合第一经验矩阵和第二经验矩阵,所述组合权重指示所述第一经验矩阵和所述第二经验矩阵在所述组合经验矩阵中的各个权重。可以例如通过例如使用用户界面上的滑动控制来从用户处接收权重来确定权重。
在阶段1530,可以接收来自用户的用于选择至少经验矩阵的选择,使得可以基于选择来执行组合。例如,用户可以选择经验矩阵要针对其而被组合的话题、和/或其经验矩阵要被使用的人员。选择可以在网络服务处从用户装置接收。基于选择,可以基于用户选择来确定要组合的经验矩阵。然后,可以基于选择来访问并且接收至少一个经验矩阵的至少一部分,以组合经验矩阵。
在阶段1535,使得第一经验矩阵的至少一部分和第二经验矩阵的至少一部分被组合。组合可以产生组合经验矩阵,组合经验矩阵具有两个原始矩阵的信息。组合可以如用图13a和图13b说明的那样发生。组合可以在执行其他处理的装置中发生,例如在用户设备中,或者组合可以在其他设备或系统处发生,并且通过第一设备来指令(引起)。组合可以包括组合两个、三个、四个或更多个经验矩阵与第一经验矩阵以获得组合经验矩阵。第一经验矩阵与第二经验矩阵的组合可以包括来自以下组的至少一个、两个、三个、四个、五个或六个操作:
-向经验矩阵添加稀疏矢量从而增加矢量的数目,
-级联稀疏矢量与对应的稀疏矢量从而增加矢量元素的数目,
-增加矢量和矢量元素
-向对应矢量逐元素地添加矢量
-将对应的经验矩阵元素中的元素进行加权求和,以及
-减去经验矩阵的对应元素。
在阶段1540,可以形成对应于另一经验矩阵的增量经验矩阵。增量经验矩阵可以包括至少一个系统或装置的具体数据。具体数据可以与受限情境相关,例如,在时间或主题的场景下,或者与矩阵相关的人员。例如,可以使用经验矩阵的备份或快照来形成增量经验矩阵,例如,通过从在后的经验矩阵中减去备份或快照经验矩阵,在后的经验矩阵为所述备份或快照经验矩阵的不同版本。
在阶段1545,可以通过通信连接接收或发送组合经验矩阵用于在除了形成所述组合经验矩阵之外的其他系统或装置中使用。
在阶段1550,可以将组合经验矩阵提供为在通信界面处可访问,例如,在网络服务中,使得其可以以另一方式被下载或访问。
在阶段1555,访问组合经验矩阵的至少一个稀疏矢量的至少一部分以形成预测输出。所得到的组合矩阵可以存储在与访问矩阵的装置相同的装置中,或者存储在其他设备中,例如在网络服务中。访问可以包括例如确定用于稀疏矢量的最近匹配、或者确定组合经验矩阵中的对应稀疏矢量。形成预测输出可以类似于早先针对普通经验矩阵所说明的那样发生。访问可以通过通信连接来发生。
例如,可以形成描述用户系统的至少当前情境的词语的集合,例如描述先前和当前被访问的网站。组合经验矩阵可以用于确定与词语的组合有关的网址的至少一个预测。作为另一示例,可以形成描述用户系统的至少当前情境的词语的集合,描述例如驻留于系统中的应用。可以使用组合经验矩阵用于确定与词语的集合相关的可执行应用的至少一个预测。
在阶段1560,可以响应于或通过使用来自阶段1555的预测输出来控制或支配系统。例如,可以通过使用预测输出来改变或控制系统的用户界面。用户界面可以是装置的用户界面或者网络服务的用户界面。还可以用其他方式来对系统进行控制或适配,例如,可以使用预测输出来向用户推荐网站(地址),使得用户可以从当前情境中的网站找到相关信息。还可以对系统进行适配,使得其找到或推荐要下载或安装至系统的相关应用。站点或应用的推荐还可以在用户设备或网络服务(服务器设备)处发生。
例如,可以通过显示所推荐的网站来向用户提供至少一个网址例如作为推荐。附加地或备选的,可以基于网址的预测在网络内容中创建或执行搜索引擎搜索。作为另一示例,可以通过显示推荐应用来向用户提供应用的至少一个预测作为例如推荐。可以基于可执行应用的所述预测来使得访问应用商店或提供访问以从应用商店下载或购买应用变为可能或者使其被执行。
在阶段1570,可以向app商店上传经验矩阵,或者从app商店下载经验矩阵。
可以使用基于经验矩阵的预测用于推荐网址。在这一实施例中,用户可以基于用户过去的活动、位置和时间来接收新闻、馈送或广告建议。基本上,在判定对于具体用户而言什么是相关时,可以使用在经验矩阵中作为词语被支持的方面作为参数。可以使用被存储至经验矩阵的数据来过滤相关信息。用户可能不需要搜索或遍及发送给他的/她的现有馈送以寻找他/她想要的。此外,用户可能不需要手动加入或输入任何内容。可以基于给定情境从经验矩阵中提取相关词语。
基于情境信息(位置、时间、传感器、先前访问的页面等),基于随机索引的算法来计算用于给定情境下的用户的最相关词语,如早先用图1至图12所说明的。这些词语被用作用于在服务器站点处搜索的过滤词语。客户端设备可以向网络服务器发送这些词语。服务器能够收集来自多个互联网来源的新闻和社交馈送。基于从客户端设备处接收的词语,服务器可以过滤新闻和社交馈送并且选择有限数目的新闻和馈送,这些新闻和馈送将被递送给客户端。
由于已经使用对于端用户而言相关的词语过滤了这些新闻和馈送,所以大多数新闻和馈送应当在端用户所处的情境中对于端用户而言是相关的。
客户端设备可以负责收集和维护经验矩阵中的情境数据。客户端设备可以能够从经验矩阵中提取用于给定情境的最相关的词语。这一关键词列表可以基于例如传感器数据(诸如运动)、某天的时间、位置等。
在客户端已经收集相关词语之后,其可以将这些词语发送给位于网络中的服务器。网络服务器被使用,是因为其可以具有带宽和处理能力。网络服务器可以从各种不同的网络来源如twitter、facebook、bbc.com、cnn.com等收集新闻和社交馈送。
当服务器从客户端接收词语列表时,其可以开始基于这些词语过滤新闻和社交馈送。其可以选择新闻和馈送,使得它们提供对于由客户端提供的词语列表的最佳配合。在服务器已经完成过滤之后,其可以向客户端返回已过滤新闻/社交馈送的列表。或者备选地,其可以将结果存储至具体的位置,从这一位置客户端可以取得这些结果。
类似地,用户可以自己添加/去除关键词语。用户对U1进行期望的变化,并且客户端将变化发送给服务器,服务器将其说明为关键词语之一。用户馈送关键词语在创建推荐时可以具有更大权重,或者它们可以被处理作为其他系统创建的关键词语。搜索和推荐可以在后台实时进行,或者可以在情境中的下一时间给出结果。
可以使用基于经验矩阵的预测用于推荐可下载或可安装应用。在这一实施例中,用户可以基于用户过去的活动、位置和时间来接收应用建议。过去的活动还包括现有应用的使用活动。被支持作为经验矩阵中的词语的方面可以在预测什么对于具体用户而言相关时用作参数。可以使用存储至经验矩阵的数据来过滤相关信息。用户可能不需要搜索或手动加入或输入任何内容。相关词语可以基于给定情境从经验矩阵来提取。
基于情境信息(位置、时间、传感器、先前使用的应用等),基于随机索引的算法可以预测给定情境中对于用户而言最相关的词语。所预测的词语可以用作用于服务器站点处的搜索的过滤词语。客户端设备可以将这些词语发送给网络服务器。服务器可以遍及来自所讨论的一个或多个应用商店以及其他来源(诸如应用回顾站点)的应用的描述或抽取。基于从客户端设备接收的词语,服务器可以过滤应用并且选择将被发送给客户端的有限数量的应用或至应用的链接。
由于已经使用对于端用户而言相关的词语过滤了这些新闻和馈送,所以应用应当在端用户所处的情境中对于端用户而言是相关的。此外,应用建议可以主动到达用户,而用户不必检查什么感兴趣的内容可用。备选地,系统还可以自动安装这些应用而没有用户介入。
例如,词语提取以及查找相关应用可以发生,如以上针对网址所描述的。
此外,如果用户想要区分具有较高等级的应用、或者朋友在其经验矩阵中所具有的应用的权限,则用户可以影响设置。此外,用户可以启用系统来自动安装所选应用。
可以在驻留于存储器中并且使得相关装置执行本发明的计算机程序代码的帮助下实现本发明的多种实施方式。例如,终端设备可以包括用于处理、接收和发送数据的电路装置和电子器件、存储器中的计算机程序代码、以及在运行计算机程序代码时使得终端设备执行实施方式的特征的处理器。此外,网络设备可以包括用于处理、接收和发送数据的电路装置和电子器件、存储器中的计算机程序代码、以及当运行计算机程序代码时使得网络设备执行实施方式的特征的处理器。数据结构可以被形成为使得当在计算机中与计算机程序一起使用数据结构用于控制计算机程序时,数据结构使得计算机程序和计算机能够根据数据结构和潜在的数据来操作。
很明显,本发明不仅限于以上呈现的实施方式,其可以在所附权利要求的范围内修改。
Claims (92)
1.一种用于电子设备的方法,包括:
-使第一经验矩阵的至少一部分与至少第二经验矩阵的至少一部分被组合以获得组合经验矩阵,所述经验矩阵包括稀疏矢量,并且所述经验矩阵包括至少一个系统的信息,
-访问所述组合经验矩阵的至少一个稀疏矢量的至少一部分,以形成预测输出,
-响应于所述预测输出而控制系统,以及
-形成与另一经验矩阵对应的增量经验矩阵,所述增量经验矩阵包括至少一个系统或装置的特定数据,所述特定数据与受限制的情境有关,所述限制是在时间或主题的意义上的。
2.根据权利要求1所述的方法,其中所述组合包括:组合两个、三个、四个或更多个经验矩阵与所述第一经验矩阵,以获得所述组合经验矩阵。
3.根据权利要求1所述的方法,其中所述第一经验矩阵为用户的经验矩阵,并且所述第二经验矩阵为已经通过组合多个其他经验矩阵而非所述第一经验矩阵而形成的社交经验矩阵。
4.根据权利要求3所述的方法,其中所述社交经验矩阵是社交网络服务中与所述用户处于社交关系的人们的经验矩阵。
5.根据权利要求1所述的方法,其中所述组合所述第一经验矩阵与所述第二经验矩阵根据组合权重而被执行,所述组合权重指示所述第一经验矩阵和所述第二经验矩阵在所述组合经验矩阵中的相应的权重。
6.根据权利要求1所述的方法,其中所述组合所述第一经验矩阵与所述第二经验矩阵包括来自以下组中的至少一个、两个、三个、四个、五个或六个操作:向经验矩阵添加稀疏矢量从而增加矢量的数目;级联稀疏矢量与对应的稀疏矢量从而增加矢量元素的数目;使矢量与矢量元素交织;向对应的矢量逐元素地添加矢量;将对应的经验矩阵元素中的元素进行加权求和;以及减去经验矩阵的对应元素。
7.根据权利要求1所述的方法,其中所述经验矩阵来自多个用户,并且所述组合基于所述多个用户之间的社交网络中的社交连接。
8.根据权利要求1所述的方法,包括:
-将所述第一经验矩阵和所述第二经验矩阵存储在相同的系统或装置中,其中所述第一经验矩阵和所述第二经验矩阵包含所述相同的系统或装置的数据,以及
-组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵。
9.根据权利要求1所述的方法,包括:
-将所述第一经验矩阵和所述第二经验矩阵至少部分地存储在不同的系统或装置中,其中所述第一经验矩阵和所述第二经验矩阵包含至少部分不同的系统或装置的数据,以及
-组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵。
10.根据权利要求1所述的方法,包括:
-通过通信连接从另一设备或系统接收至少所述第二经验矩阵。
11.根据权利要求1所述的方法,包括:
-通过通信连接接收或发送所述组合经验矩阵,以便在另一系统或装置中而非在形成所述组合经验矩阵的系统或装置中被使用。
12.根据权利要求1所述的方法,包括:
-通过通信连接访问所述组合经验矩阵。
13.根据权利要求1所述的方法,包括:
-形成经验矩阵的备份或快照,以及
-使用经验矩阵的所述备份或快照来形成增量经验矩阵。
14.根据权利要求13所述的方法,其中使用经验矩阵的所述备份或快照来形成增量经验矩阵包括使用经验矩阵的所述备份或快照来形成增量经验矩阵,通过从在后的经验矩阵中减去所述备份或快照经验矩阵,所述在后的经验矩阵是所述备份或快照经验矩阵的不同版本。
15.根据权利要求1所述的方法,包括:
-通过训练形成至少一个经验矩阵。
16.根据权利要求1所述的方法,包括:
-将经验矩阵存储在云或其他网络存储装置中,以用于通过通信连接来下载或访问。
17.根据权利要求1所述的方法,包括:
-提供所述组合经验矩阵,以使所述组合经验矩阵在通信接口处可访问。
18.根据权利要求1所述的方法,包括:
-从用户处接收用于选择至少一个经验矩阵的选择,
-基于所述选择来执行所述组合。
19.根据权利要求18所述的方法,包括:
-从网络服务处的用户装置接收所述选择,
-基于所述用户选择来确定所选经验矩阵,以及
-基于所述选择来访问至少一个经验矩阵的至少一部分,以将经验矩阵进行组合。
20.根据权利要求1所述的方法,包括:
-形成至少描述用户系统的当前情境的词语的集合,所述用户系统的当前情境是先前和当前访问的网站,
-使用所述组合经验矩阵用于确定与所述词语的集合有关的网址的至少一个预测,以及
-通过显示所推荐的网站来将所述至少一个网址提供给用户作为推荐。
21.根据权利要求20所述的方法,包括:
-基于网址的所述预测而执行或创建在网页内容中搜索的搜索引擎。
22.根据权利要求1所述的方法,包括:
-形成至少描述用户系统的当前情境的词语的集合,所述用户系统的当前情境是所述系统中驻留的应用,
-使用所述组合经验矩阵用于确定与所述词语的集合有关的可执行应用的至少一个预测,以及
-通过显示所推荐的应用来将应用的所述至少一个预测提供给用户作为推荐。
23.根据权利要求22所述的方法,包括:
-基于可执行应用的所述预测而访问应用商店或提供访问以从应用商店下载或购买应用。
24.根据权利要求1至23中任一项所述的方法,包括:
-向应用商店上传经验矩阵或者从应用商店下载经验矩阵。
25.一种用于电子设备的装置,包括:
-用于使第一经验矩阵的至少一部分与至少第二经验矩阵的至少一部分被组合以获得组合经验矩阵的部件,所述经验矩阵包括稀疏矢量,并且所述经验矩阵包括至少一个系统的信息,
-用于访问所述组合经验矩阵的至少一个稀疏矢量的至少一部分,以形成预测输出的部件,
-用于响应于所述预测输出而控制系统的部件,以及
-用于形成与另一经验矩阵对应的增量经验矩阵的部件,所述增量经验矩阵包括至少一个系统或装置的特定数据,所述特定数据与受限制的情境有关,所述限制是在时间或主题的意义上的。
26.根据权利要求25所述的装置,其中所述组合包括:组合两个、三个、四个或更多个经验矩阵与所述第一经验矩阵,以获得所述组合经验矩阵。
27.根据权利要求25所述的装置,其中所述第一经验矩阵为用户的经验矩阵,并且所述第二经验矩阵为已经通过组合多个其他经验矩阵而非所述第一经验矩阵而形成的社交经验矩阵。
28.根据权利要求27所述的装置,其中所述社交经验矩阵是社交网络服务中与所述用户处于社交关系的人们的经验矩阵。
29.根据权利要求25所述的装置,其中所述组合所述第一经验矩阵与所述第二经验矩阵根据组合权重而被执行,所述组合权重指示所述第一经验矩阵和所述第二经验矩阵在所述组合经验矩阵中的相应的权重。
30.根据权利要求25所述的装置,其中所述组合所述第一经验矩阵与所述第二经验矩阵包括来自以下组中的至少一个、两个、三个、四个、五个或六个操作:向经验矩阵添加稀疏矢量从而增加矢量的数目;级联稀疏矢量与对应的稀疏矢量从而增加矢量元素的数目;使矢量与矢量元素交织;向对应的矢量逐元素地添加矢量;将对应的经验矩阵元素中的元素进行加权求和;以及减去经验矩阵的对应元素。
31.根据权利要求25所述的装置,其中所述经验矩阵来自多个用户,并且所述组合基于所述多个用户之间的社交网络中的社交连接。
32.根据权利要求25所述的装置,包括:
-用于将所述第一经验矩阵和所述第二经验矩阵存储在相同的系统或装置中的部件,其中所述第一经验矩阵和所述第二经验矩阵包含所述相同的系统或装置的数据,以及
-用于组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵的部件。
33.根据权利要求25所述的装置,包括:
-用于将所述第一经验矩阵和所述第二经验矩阵至少部分地存储在不同的系统或装置中的部件,其中所述第一经验矩阵和所述第二经验矩阵包含至少部分不同的系统或装置的数据,以及
-用于组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵的部件。
34.根据权利要求25所述的装置,包括:
-用于通过通信连接从另一设备或系统接收至少所述第二经验矩阵的部件。
35.根据权利要求25所述的装置,包括:
-用于通过通信连接接收或发送所述组合经验矩阵,以便在另一系统或装置中而非在形成所述组合经验矩阵的系统或装置中被使用的部件。
36.根据权利要求25所述的装置,包括:
-用于通过通信连接访问所述组合经验矩阵的部件。
37.根据权利要求25所述的装置,包括:
-用于形成经验矩阵的备份或快照的部件,以及
-用于使用经验矩阵的所述备份或快照来形成增量经验矩阵的部件。
38.根据权利要求37所述的装置,其中用于使用经验矩阵的所述备份或快照来形成增量经验矩阵的部件包括:
用于使用经验矩阵的所述备份或快照来形成增量经验矩阵,通过从在后的经验矩阵中减去所述备份或快照经验矩阵的部件,所述在后的经验矩阵是所述备份或快照经验矩阵的不同版本。
39.根据权利要求25所述的装置,包括:
-用于通过训练形成至少一个经验矩阵的部件。
40.根据权利要求25所述的装置,包括:
-用于将经验矩阵存储在云或其他网络存储装置中,以用于通过通信连接来下载或访问的部件。
41.根据权利要求25所述的装置,包括:
-用于提供所述组合经验矩阵,以使所述组合经验矩阵在通信接口处可访问的部件。
42.根据权利要求25所述的装置,包括:
-用于从用户处接收用于选择至少一个经验矩阵的选择的部件,
-用于基于所述选择来执行所述组合的部件。
43.根据权利要求42所述的装置,包括:
-用于从网络服务处的用户装置接收所述选择的部件,
-用于基于所述用户选择来确定所选经验矩阵的部件,以及
-用于基于所述选择来访问至少一个经验矩阵的至少一部分,以将经验矩阵进行组合的部件。
44.根据权利要求25所述的装置,包括:
-用于形成至少描述用户系统的当前情境的词语的集合的部件,所述用户系统的当前情境是先前和当前访问的网站,
-用于使用所述组合经验矩阵用于确定与所述词语的集合有关的网址的至少一个预测的部件,以及
-用于通过显示所推荐的网站来将所述至少一个网址提供给用户的部件作为推荐。
45.根据权利要求44所述的装置,包括:
-用于基于网址的所述预测而执行或创建在网页内容中搜索的搜索引擎的部件。
46.根据权利要求25所述的装置,包括:
-用于形成至少描述用户系统的当前情境的词语的集合的部件,所述用户系统的当前情境是所述系统中驻留的应用,
-用于使用所述组合经验矩阵用于确定与所述词语的集合有关的可执行应用的至少一个预测的部件,以及
-用于通过显示所推荐的应用来将应用的所述至少一个预测提供给用户的部件作为推荐。
47.根据权利要求46所述的装置,包括:
-用于基于可执行应用的所述预测而访问应用商店或提供访问以从应用商店下载或购买应用的部件。
48.根据权利要求25至47中任一项所述的装置,包括:
-用于向应用商店上传经验矩阵或者从应用商店下载经验矩阵的部件。
49.一种非暂态计算机可读介质,其上存储一个或多个指令的一个或多个序列,所述一个或多个指令的一个或多个序列在由一个或多个处理器执行时使电子设备执行至少以下操作:
-使第一经验矩阵的至少一部分与至少第二经验矩阵的至少一部分被组合以获得组合经验矩阵,所述经验矩阵包括稀疏矢量,并且所述经验矩阵包括至少一个系统的信息,
-访问所述组合经验矩阵的至少一个稀疏矢量的至少一部分,以形成预测输出,
-响应于所述预测输出而控制系统,以及
-形成与另一经验矩阵对应的增量经验矩阵,所述增量经验矩阵包括至少一个系统或装置的特定数据,所述特定数据与受限制的情境有关,所述限制是在时间或主题的意义上的。
50.根据权利要求49所述的非暂态计算机可读介质,其上存储使电子设备执行以下操作的一个或多个指令的一个或多个序列:
-从用户处接收用于选择至少一个经验矩阵的选择,
-基于所述选择来执行所述组合。
51.根据权利要求49所述的非暂态计算机可读介质,其上存储使电子设备执行以下操作的一个或多个指令的一个或多个序列:
-形成至少描述用户系统的当前情境的词语的集合,所述用户系统的当前情境是所述系统中驻留的应用,
-使用所述组合经验矩阵用于确定与所述词语的集合有关的可执行应用的至少一个预测,以及
-通过显示所推荐的应用来将应用的所述至少一个预测提供给用户作为推荐。
52.根据权利要求49所述的非暂态计算机可读介质,其中所述第一经验矩阵为用户的经验矩阵,并且所述第二经验矩阵为已经通过组合多个其他经验矩阵而非所述第一经验矩阵而形成的社交经验矩阵。
53.根据权利要求52所述的非暂态计算机可读介质,其中所述社交经验矩阵是社交网络服务中与所述用户处于社交关系的人们的经验矩阵。
54.根据权利要求49至53中任一项所述的非暂态计算机可读介质,其中所述组合所述第一经验矩阵与所述第二经验矩阵根据组合权重而被执行,所述组合权重指示所述第一经验矩阵和所述第二经验矩阵在所述组合经验矩阵中的相应的权重。
55.一种电子装置,包括至少一个处理器、至少一个存储器,所述至少一个存储器包括用于一个或多个程序单元的计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置成与所述处理器一起使所述电子装置执行至少以下操作:
-使第一经验矩阵的至少一部分与至少第二经验矩阵的至少一部分被组合以获得组合经验矩阵,所述经验矩阵包括稀疏矢量,并且所述经验矩阵包括至少一个系统的信息,
-访问所述组合经验矩阵的至少一个稀疏矢量的至少一部分,以形成预测输出,
-响应于所述预测输出而控制系统,以及
-形成与另一经验矩阵对应的增量经验矩阵,所述增量经验矩阵包括至少一个系统或装置的特定数据,所述特定数据与受限制的情境有关,所述限制是在时间或主题的意义上的。
56.根据权利要求55所述的装置,其中所述组合包括:组合两个、三个、四个或更多个经验矩阵与所述第一经验矩阵,以获得所述组合经验矩阵。
57.根据权利要求55所述的装置,其中所述第一经验矩阵为用户的经验矩阵,并且所述第二经验矩阵为已经通过组合多个其他经验矩阵而非所述第一经验矩阵而形成的社交经验矩阵。
58.根据权利要求57所述的装置,其中所述社交经验矩阵是社交网络服务中与所述用户处于社交关系的人们的经验矩阵。
59.根据权利要求55所述的装置,其中所述组合所述第一经验矩阵与所述第二经验矩阵根据组合权重而被执行,所述组合权重指示所述第一经验矩阵和所述第二经验矩阵在所述组合经验矩阵中的相应的权重。
60.根据权利要求55所述的装置,其中所述组合所述第一经验矩阵与所述第二经验矩阵包括来自以下组中的至少一个、两个、三个、四个、五个或六个操作:向经验矩阵添加稀疏矢量从而增加矢量的数目;级联稀疏矢量与对应的稀疏矢量从而增加矢量元素的数目;使矢量与矢量元素交织;向对应的矢量逐元素地添加矢量;将对应的经验矩阵元素中的元素进行加权求和;以及减去经验矩阵的相应元素。
61.根据权利要求55所述的装置,其中所述经验矩阵来自多个用户,并且所述组合基于所述多个用户之间的社交网络中的社交连接。
62.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-将所述第一经验矩阵和所述第二经验矩阵存储在相同的系统或装置中,其中所述第一经验矩阵和所述第二经验矩阵包含所述相同的系统或装置的数据,以及
-组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵。
63.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-将所述第一经验矩阵和所述第二经验矩阵至少部分地存储在不同的系统或装置中,其中所述第一经验矩阵和所述第二经验矩阵包含至少部分不同的系统或装置的数据,以及
-组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵。
64.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-通过通信连接从另一设备或系统接收至少所述第二经验矩阵。
65.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-通过通信连接接收或发送所述组合经验矩阵,以便在另一系统或装置中而非在形成所述组合经验矩阵的系统或装置中被使用。
66.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-通过通信连接访问所述组合经验矩阵。
67.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-形成经验矩阵的备份或快照,以及
-使用经验矩阵的所述备份或快照来形成增量经验矩阵。
68.根据权利要求67所述的装置,包括用于以下操作的计算机程序代码:
使用经验矩阵的所述备份或快照来形成增量经验矩阵,通过从在后的经验矩阵中减去所述备份或快照经验矩阵,所述在后的经验矩阵是所述备份或快照经验矩阵的不同版本。
69.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-通过训练形成至少一个经验矩阵。
70.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-将经验矩阵存储在云或其他网络存储装置中,以用于通过通信连接来下载或访问。
71.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-提供所述组合经验矩阵,以使所述组合经验矩阵在通信接口处可访问。
72.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-从用户处接收用于选择至少一个经验矩阵的选择,
-基于所述选择来执行所述组合。
73.根据权利要求72所述的装置,包括用于以下操作的计算机程序代码:
-从网络服务处的用户装置接收所述选择,
-基于所述用户选择来确定所选经验矩阵,以及
-基于所述选择来访问至少一个经验矩阵的至少一部分,以将经验矩阵进行组合。
74.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-形成至少描述用户系统的当前情境的词语的集合,所述用户系统的当前情境是先前和当前访问的网站,
-使用所述组合经验矩阵用于确定与所述词语的集合有关的网址的至少一个预测,以及
-通过显示所推荐的网站来将所述至少一个网址提供给用户作为推荐。
75.根据权利要求74所述的装置,包括用于以下操作的计算机程序代码:
-基于网址的所述预测而执行或创建在网页内容中搜索的搜索引擎。
76.根据权利要求55所述的装置,包括用于以下操作的计算机程序代码:
-形成至少描述用户系统的当前情境的词语的集合,所述用户系统的当前情境是所述系统中驻留的应用,
-使用所述组合经验矩阵用于确定与所述词语的集合有关的可执行应用的至少一个预测,以及
-通过显示所推荐的应用来将应用的所述至少一个预测提供给用户作为推荐。
77.根据权利要求76所述的装置,包括用于以下操作的计算机程序代码:
-基于可执行应用的所述预测而访问应用商店或提供访问以从应用商店下载或购买应用。
78.根据权利要求55至77中任一项所述的装置,包括用于以下操作的计算机程序代码:
-向应用商店上传经验矩阵或者从应用商店下载经验矩阵。
79.一种用于电子设备的系统,包括至少一个处理器、至少一个存储器,所述至少一个存储器包括用于一个或多个程序单元的计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置成与所述处理器一起使所述系统执行至少以下操作:
-使第一经验矩阵的至少一部分与至少第二经验矩阵的至少一部分被组合以获得组合经验矩阵,所述经验矩阵包括稀疏矢量,并且所述经验矩阵包括至少一个系统的信息,
-访问所述组合经验矩阵的至少一个稀疏矢量的至少一部分,以形成预测输出,
-响应于所述预测输出而控制系统,以及
-形成与另一经验矩阵对应的增量经验矩阵,所述增量经验矩阵包括至少一个系统或装置的特定数据,所述特定数据与受限制的情境有关,所述限制是在时间或主题的意义上的。
80.根据权利要求79所述的系统,其中所述组合包括:组合两个、三个、四个或更多个经验矩阵与所述第一经验矩阵,以获得所述组合经验矩阵。
81.根据权利要求79所述的系统,其中所述第一经验矩阵为用户的经验矩阵,并且所述第二经验矩阵为已经通过组合多个其他经验矩阵而非所述第一经验矩阵而形成的社交经验矩阵。
82.根据权利要求81所述的系统,其中所述社交经验矩阵是社交网络服务中与所述用户处于社交关系的人们的经验矩阵。
83.根据权利要求79所述的系统,其中所述组合所述第一经验矩阵与所述第二经验矩阵根据组合权重而被执行,所述组合权重指示所述第一经验矩阵和所述第二经验矩阵在所述组合经验矩阵中的相应的权重。
84.根据权利要求79所述的系统,其中所述组合所述第一经验矩阵与所述第二经验矩阵包括来自以下组中的至少一个、两个、三个、四个、五个或六个操作:向经验矩阵添加稀疏矢量从而增加矢量的数目;级联稀疏矢量与对应的稀疏矢量从而增加矢量元素的数目;使矢量与矢量元素交织;向对应的矢量逐元素地添加矢量;将对应的经验矩阵元素中的元素进行加权求和;以及减去经验矩阵的对应元素。
85.根据权利要求79所述的系统,其中所述经验矩阵来自多个用户,并且所述组合基于所述多个用户之间的社交网络中的社交连接。
86.根据权利要求79所述的系统,包括用于以下操作的计算机程序代码:
-将所述第一经验矩阵和所述第二经验矩阵存储在相同的系统或装置中,其中所述第一经验矩阵和所述第二经验矩阵包含所述相同的系统或装置的数据,以及
-组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵。
87.根据权利要求79所述的系统,包括用于以下操作的计算机程序代码:
-将所述第一经验矩阵和所述第二经验矩阵至少部分地存储在不同的系统或装置中,其中所述第一经验矩阵和所述第二经验矩阵包含至少部分不同的系统或装置的数据,以及
-组合所述第一经验矩阵和所述第二经验矩阵以获得组合经验矩阵。
88.根据权利要求79所述的系统,包括用于以下操作的计算机程序代码:
-通过通信连接从另一设备或系统接收至少所述第二经验矩阵。
89.根据权利要求79所述的系统,包括用于以下操作的计算机程序代码:
-通过通信连接接收或发送所述组合经验矩阵,以便在另一系统或装置中而非在形成所述组合经验矩阵的系统或装置中被使用。
90.根据权利要求79所述的系统,包括用于以下操作的计算机程序代码:
-将经验矩阵存储在云或其他网络存储装置中,以用于通过通信连接来下载或访问。
91.根据权利要求79至90中任一项所述的系统,包括用于以下操作的计算机程序代码:
-形成至少描述用户系统的当前情境的词语的集合,所述用户系统的当前情境是所述系统中驻留的应用,
-使用所述组合经验矩阵用于确定与所述词语的集合有关的可执行应用的至少一个预测,以及
-通过显示所推荐的应用来将应用的所述至少一个预测提供给用户作为推荐。
92.根据权利要求91所述的系统,包括用于执行以下操作的计算机程序代码:
-基于可执行应用的所述预测而访问应用商店或提供访问以从应用商店下载或购买应用。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/FI2012/050179 WO2013124520A1 (en) | 2012-02-22 | 2012-02-22 | Adaptive system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104246758A CN104246758A (zh) | 2014-12-24 |
CN104246758B true CN104246758B (zh) | 2018-05-18 |
Family
ID=49005055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280072558.XA Active CN104246758B (zh) | 2012-02-22 | 2012-02-22 | 自适应系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9811585B2 (zh) |
EP (1) | EP2817737A4 (zh) |
JP (1) | JP5870217B2 (zh) |
CN (1) | CN104246758B (zh) |
WO (1) | WO2013124520A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2817737A4 (en) * | 2012-02-22 | 2015-10-07 | Nokia Technologies Oy | ADAPTIVE SYSTEM |
EP3114577A4 (en) * | 2014-03-04 | 2017-10-18 | Nokia Technologies OY | Method and apparatus for secured information storage |
RU2604999C2 (ru) * | 2014-05-29 | 2016-12-20 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и система выработки рекомендаций по приложениям для пользователя |
JP6212470B2 (ja) * | 2014-11-20 | 2017-10-11 | 日本電信電話株式会社 | 行動ネットワーク情報抽出装置、行動ネットワーク情報抽出方法及び行動ネットワーク情報抽出プログラム |
US10685331B2 (en) * | 2015-12-08 | 2020-06-16 | TCL Research America Inc. | Personalized FUNC sequence scheduling method and system |
CN106227723A (zh) * | 2016-01-25 | 2016-12-14 | 百度在线网络技术(北京)有限公司 | 用于推荐应用和呈现推荐应用的方法和装置 |
CN108475256B (zh) * | 2016-02-05 | 2022-04-08 | 谷歌有限责任公司 | 从同现矩阵生成特征嵌入 |
US10572221B2 (en) | 2016-10-20 | 2020-02-25 | Cortical.Io Ag | Methods and systems for identifying a level of similarity between a plurality of data representations |
US20180146062A1 (en) * | 2016-11-18 | 2018-05-24 | Futurewei Technologies, Inc. | Channel recommendation system and method |
US11734332B2 (en) | 2020-11-19 | 2023-08-22 | Cortical.Io Ag | Methods and systems for reuse of data item fingerprints in generation of semantic maps |
CN112562653B (zh) * | 2020-11-26 | 2023-05-26 | 睿云联(厦门)网络通讯技术有限公司 | 一种基于人类行为经验的离线语音识别学习方法 |
WO2024018541A1 (ja) * | 2022-07-19 | 2024-01-25 | 日本電信電話株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
CN117648570B (zh) * | 2024-01-30 | 2024-04-12 | 吉林大学 | 一种基于人工智能的心电监测与数据分析系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003043356A1 (en) * | 2001-11-13 | 2003-05-22 | Nokia Corporation | A method for controlling operation of a mobile device by detecting usage situations |
CN101470754A (zh) * | 2007-12-27 | 2009-07-01 | 国际商业机器公司 | 社区服务器系统和用于社区服务器系统的活动记录方法 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5926812A (en) | 1996-06-20 | 1999-07-20 | Mantra Technologies, Inc. | Document extraction and comparison method with applications to automatic personalized database searching |
GB0313385D0 (en) * | 2003-06-10 | 2003-07-16 | Symbian Ltd | Automatic behaviour modifications in symbian OS |
US8429184B2 (en) * | 2005-12-05 | 2013-04-23 | Collarity Inc. | Generation of refinement terms for search queries |
US8380726B2 (en) * | 2006-03-06 | 2013-02-19 | Veveo, Inc. | Methods and systems for selecting and presenting content based on a comparison of preference signatures from multiple users |
US7675414B2 (en) * | 2006-08-10 | 2010-03-09 | Qualcomm Incorporated | Methods and apparatus for an environmental and behavioral adaptive wireless communication device |
US7593935B2 (en) | 2006-10-19 | 2009-09-22 | Paxfire | Methods and systems for node ranking based on DNS session data |
US20080288440A1 (en) * | 2007-05-16 | 2008-11-20 | Nokia Corporation | Searching and indexing content in upnp devices |
US9021416B2 (en) | 2007-05-16 | 2015-04-28 | Accenture Global Service Limited | Recommended application evaluation system |
US8171035B2 (en) | 2007-10-22 | 2012-05-01 | Samsung Electronics Co., Ltd. | Situation-aware recommendation using correlation |
US20090172021A1 (en) | 2007-12-28 | 2009-07-02 | Kane Francis J | Recommendations based on actions performed on multiple remote servers |
US7605408B1 (en) * | 2008-04-25 | 2009-10-20 | Nokia Corporation | Apparatus, method and system for reconfigurable circuitry |
AU2009257386A1 (en) * | 2008-06-14 | 2009-12-17 | Veoh Networks, Inc. | Searching using patterns of usage |
JP2010067175A (ja) | 2008-09-12 | 2010-03-25 | Toshiba Corp | ハイブリッド型コンテンツ推薦サーバ、推薦システムおよび推薦方法 |
US8515211B2 (en) | 2008-12-19 | 2013-08-20 | Nokia Corporation | Methods, apparatuses, and computer program products for maintaining of security and integrity of image data |
US10984397B2 (en) * | 2009-03-31 | 2021-04-20 | Ebay Inc. | Application recommendation engine |
US8423508B2 (en) * | 2009-12-04 | 2013-04-16 | Qualcomm Incorporated | Apparatus and method of creating and utilizing a context |
EP2360581A1 (en) * | 2010-01-18 | 2011-08-24 | Thomson Licensing | Method, system and device for execution of a software application |
GB201003628D0 (en) * | 2010-03-04 | 2010-04-21 | Touchtype Ltd | System and method for inputting text into electronic devices |
US8879771B2 (en) * | 2010-04-08 | 2014-11-04 | Nokia Corporation | Apparatus and method for sound reproduction |
JP5457946B2 (ja) * | 2010-06-11 | 2014-04-02 | 日本電信電話株式会社 | 関連語計算装置、関連語計算方法及び関連語計算プログラム |
EP2395412A1 (en) * | 2010-06-11 | 2011-12-14 | Research In Motion Limited | Method and device for activation of components through prediction of device activity |
JP2012027845A (ja) | 2010-07-27 | 2012-02-09 | Sony Corp | 情報処理装置、関連文提供方法、及びプログラム |
JP5786210B2 (ja) | 2010-09-03 | 2015-09-30 | 株式会社タカゾノテクノロジー | ホッパー及びこれを備えた薬剤供給装置 |
US8516205B2 (en) * | 2010-10-29 | 2013-08-20 | Nokia Corporation | Method and apparatus for providing efficient context classification |
US10303340B2 (en) | 2011-03-16 | 2019-05-28 | Nokia Technologies Oy | Method, device and system for user interface adaptation |
US9471127B2 (en) | 2011-03-16 | 2016-10-18 | Nokia Technologies Oy | Method, device and system for energy management |
EP2817738B1 (en) * | 2012-02-22 | 2022-06-22 | Nokia Technologies Oy | Predictive service access |
US10108701B2 (en) * | 2012-02-22 | 2018-10-23 | Nokia Technologies Oy | System and method for determining context |
WO2013124523A1 (en) * | 2012-02-22 | 2013-08-29 | Nokia Corporation | A system, a data structure for controlling the system, and a method for updating the data structure |
WO2013124522A1 (en) * | 2012-02-22 | 2013-08-29 | Nokia Corporation | A system, and a method for providing a predition for controlling a system |
EP2817737A4 (en) * | 2012-02-22 | 2015-10-07 | Nokia Technologies Oy | ADAPTIVE SYSTEM |
US20130218876A1 (en) * | 2012-02-22 | 2013-08-22 | Nokia Corporation | Method and apparatus for enhancing context intelligence in random index based system |
-
2012
- 2012-02-22 EP EP12869086.4A patent/EP2817737A4/en not_active Withdrawn
- 2012-02-22 US US14/379,574 patent/US9811585B2/en active Active
- 2012-02-22 WO PCT/FI2012/050179 patent/WO2013124520A1/en active Application Filing
- 2012-02-22 JP JP2014558170A patent/JP5870217B2/ja active Active
- 2012-02-22 CN CN201280072558.XA patent/CN104246758B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003043356A1 (en) * | 2001-11-13 | 2003-05-22 | Nokia Corporation | A method for controlling operation of a mobile device by detecting usage situations |
CN101470754A (zh) * | 2007-12-27 | 2009-07-01 | 国际商业机器公司 | 社区服务器系统和用于社区服务器系统的活动记录方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2817737A1 (en) | 2014-12-31 |
EP2817737A4 (en) | 2015-10-07 |
JP2015509627A (ja) | 2015-03-30 |
US20150178378A1 (en) | 2015-06-25 |
CN104246758A (zh) | 2014-12-24 |
JP5870217B2 (ja) | 2016-02-24 |
WO2013124520A1 (en) | 2013-08-29 |
US9811585B2 (en) | 2017-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104246758B (zh) | 自适应系统 | |
CN104246757B (zh) | 预测性服务访问 | |
CN104246756B (zh) | 用于提供用于控制系统的预测的系统和方法 | |
US8386506B2 (en) | System and method for context enhanced messaging | |
US8966537B2 (en) | System, method, and article of manufacture for a user interface for a network media channel | |
CN107728874A (zh) | 提供用户快捷操作的方法、装置及设备 | |
US20100082427A1 (en) | System and Method for Context Enhanced Ad Creation | |
CN107729946B (zh) | 图片分类方法、装置、终端及存储介质 | |
CN107924545A (zh) | 信息处理系统和信息处理方法 | |
US8799283B2 (en) | Apparatus and method for playlist creation based on liking of person specified in an image | |
CN104246658B (zh) | 系统、用于控制系统的数据结构和用于更新数据结构的方法 | |
KR100880001B1 (ko) | 개인의 일상을 관리할 수 있는 모바일 디바이스 및 상기모바일 디바이스에서의 정보 검색 방법 | |
CN104137101A (zh) | 用于管理媒体文件的方法、装置和计算机程序产品 | |
Park et al. | A digital diary making system based on user life-log | |
CN116233754A (zh) | 经营地址的识别方法、装置、电子设备及存储介质 | |
Lee et al. | Automatic weblog generation using mobile context | |
CN106101106A (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: 20160202 Address after: Espoo, Finland Applicant after: Technology Co., Ltd. of Nokia Address before: Espoo, Finland Applicant before: Nokia Oyj |
|
GR01 | Patent grant | ||
GR01 | Patent grant |