具体实施方式
图1是基于通用计算机10的信息存储和检索系统的示意图,通用计算机10具有一个处理器单元20,后者包括了用于程序和数据的磁盘存储器30、连接到例如以太网或者因特网这样的网络50上的网络接口卡40,通用计算机还具有例如阴极射线管设备这样的显示设备60、键盘70和例如鼠标这样的用户输入设备80。该系统在程序控制下操作,程序被存储在磁盘存储器30上并且通过例如网络50、可移动磁盘(未显示)或者预先安装在磁盘存储器30上来提供。
该存储系统运行在两个普通的操作模式中。在第一个模式中,一系列信息项(例如文本信息项)被集合在磁盘存储器30上或者被集合在通过网络50连接的网络磁盘驱动器上,并且被分类和索引,准备用于搜索操作。操作的第二个模式是针对已被索引和分类的数据的实际搜索。
该实施例可应用于许多类型的信息项。合适的信息类型的非穷尽列表包括专利、视频材料、电子邮件、报告、因特网内容、广播内容、商业报告、音频材料、图形和图片(clipart)、照片等等,或者是这些类型的任意的组合或者混合。在本说明书中,将文本信息项或者至少具有文本内容或关联的信息项作为参考。因此,例如,像音频和/或视频材料这样的一条广播内容可能具有以文本项定义那个材料的关联的“元数据”。
信息项以传统的方式被装载到磁盘存储器30上。优选地,它们可以被存储作为允许更容易地进行项的检索和索引的数据库结构的一部分,但这不是必需的。一旦已经如此存储了信息和项,则在图2中示意性表示被用于排列它们以便进行搜索的过程。
将会理解,被索引的信息数据不必被存储在本地磁盘驱动器30上。数据可存储在经因特网50与系统10相连的远端驱动器上。可替代地,可以以分布的方式存储信息,例如存储在因特网的各种位置上。如果信息被存储在不同的因特网或者网络位置处,则信息存储器的第二级别将被用来在本地存储一条到该远程信息的“链接”(例如,URL),或许具有相关的概要、摘要或者与这个链接相关联的元数据。因此,远程持有的信息将不被访问,除非用户选择了相关链接(例如从将在下面描述的结果列表260中选择),尽管为了随后的技术描述的目的,该远程持有的信息或者该摘要/概要/元数据或者链接/URL可以被认为是“信息项”。
换句话说,“信息项”的正式定义是从中可以获得特征向量并且被处理(见下面)以便提供到SOM的映射的项。在结果列表260(见下面)中表示的数据可以是信息项自身(如果被保持在本地并且对于方便的显示足够短),或者是表示和/或者指向信息项的数据,例如一个或者多个元数据、URL、摘要、一组关键词、表示性的关键标记的图象等。在操作“列表”中这是固有的,操作“列表”虽然不总是但却经常包括列出表示一组项的数据。
在另一个实例中,能够跨越例如一个研究组或者合法公司这样的连网的工作组来存储信息项。一种混合方案可以包括一些本地存储的信息项和/或者一些通过局域网而被存储的信息项和/或者一些通过广域网而被存储的信息项。在这样的情况下,该系统对于例如在大型多国研究与开发组织中定位由其它人进行的相似工作非常有用,相似的研究工作将倾向于被映射到SOM中的相似输出节点上(见下文)。或者如果正在计划一个新的电视节目,则本技术能够被用于通过检测以前具有相似内容的节目来检查其原创性。
还应该理解,图1的系统10仅仅只是能够使用被索引的信息项的可能系统的一个实例。尽管可以想象,可以通过相当强大的计算机,很可能是通过非便携式计算机,来执行初期(编制索引)阶段,但是访问信息的后期阶段可以在例如“个人数字助理”(用于具有显示器和用户输入设备的数字处理设备的术语,通常适合放在一只手中)这样的便携式机器、例如膝上型电脑这样的便携式计算机或者甚至例如移动电话、视频编辑设备或者摄像机这样的设备上执行。通常地,具有显示器的任何设备实际上都能够用于操作的信息访问阶段。
该过程不受信息项的具体数目的限制。
现在将参考图2到6来描述生成信息项的自组织映射(SOM)表示的过程。图2是图解说明后随SOM映射过程的、被称作“特征提取”过程的示意性流程图。
特征提取是将未加工的数据转换成抽象表示的过程。这些抽象表示然后能被用于例如模式分类、聚集和识别这样的过程。在这个过程中,生成所谓的“特征向量”,它是在文件中所用的检索词的频率的抽象表示。
通过创建特征向量来形成显现的过程包括:
·生成检索词的“文件数据库字典”
·根据“文件数据库字典”为每个单独的文件生成“检索词频率直方图”
·利用随机映射来减少“检索词频率直方图”的维数
·创建信息空间的2维显现。
更详细地考虑这些步骤,依次打开每个文件(信息项)100。在步骤110处,从文件中去除全部的“无用词(stop word)”。无用词是在预先准备的列表上的那些非常普通的词,例如“一个”、“这”、“然而”、“关于”、“和”以及“该”等。因为这些词非常普通,所以它们平均起来可能在足够长度的全部文件中表现出相似的频率。因为这个原因,它们在尝试表征特定文件的内容时几乎不起作用,因此应该被删除。
在删除无用词以后,在步骤120处对剩余词提取词干(stem),这包括找到词的变体的共同词干。例如词“投掷器”(thrower)、“投掷”(throws)和“投掷运动”(throwing)具有共同的词干“投掷”(throw)。
维护由出现在文件(除去无用词)中的作为词干的词组成的“字典”。当重新遇到一个词的时候,它被增加到该字典中,并且还记录这个词已经在整个文件收集(信息项组)中出现的次数的游动(running)计数。
所得的结果是在文件组中用于全部文件的检索词列表,以及那些检索词出现的频率。出现频率太高或者太低的词被忽视,也就是说从字典中除去它们并且它们不参与随后的分析。具有太低频率的词可能是拼错的、虚构的或者与文件组所表示的领域不相关的。出现频率太高的词不适合在该组中区分文件。例如,在与广播有关的文件的测试文件组中大约全部文件的三分之一都使用了检索词“新闻”,而其中在测试文件组中只有大约2%的文件使用了词“足球”。因此能够设想和“新闻”相比,“足球”是用于表征文件内容的更好的检索词。相反的,词“fottball”(“足球”(football)的错误拼写)只在整个文件组中出现过一次,因此由于具有太低的出现机率而被删除。此类词可以被定义为那些具有比出现的平均频率低两个标准偏差或者比出现的平均频率高两个标准偏差的出现频率的词。
然后在步骤130中生成特征向量。
为了这样做,而为文件组中的每个文件生成一个检索词频率直方图。通过对存在于字典(与该文件组相关)中的词在单个文件中出现的次数计数来构建检索词频率直方图。在单个文件中,字典中的大部分检索词都不会出现,因此这些检索词将具有零频率。在图3a和3b中表示出用于两个不同文件的检索词频率直方图的示意性实例。
从这个实例中能够看出直方图是如何表征文件内容的。通过观察实例,能够看出文件1比文件2中出现更多的检索词“MPEG”和“视频”,而文件2自身出现了更多的检索词“元数据”。在该直方图中许多条目是零,因为相应的词没有出现在文件中。
在真实的例子中,实际的检索词频率直方图中具有比在实例中大得多的检索词数目。典型地,直方图可以绘制超过50000个不同检索词的频率,定出维数超过50000的直方图。如果要被用在SOM信息空间的建立中,则直方图的维数需要被相当大的缩减。
检索词频率直方图中的每个条目被用作为表示那个文件的特征向量中的对应值。这个过程的结果是一个(50000×1)向量,它包含对于文件收集中的每个文件该字典所规定的全部检索词的频率。该向量被称为稀疏向量,因为典型地大多数值都是零,而其他大多数值是例如1这样的非常低的数目。
在步骤140处减少特征向量的大小,从而减少检索词频率直方图的维数。建议了两种方法用于减少直方图的维数。
i)随机映射-一种借助其而使随机数矩阵乘以直方图的技术。这是计算花费比较低廉的过程。
ii)潜在语义索引-通过寻找在文件中具有很高的同时出现概率的检索词的组来减少直方图维数的技术。然后能够把这些词的组缩减成单一的参数。这是计算花费较高的过程。
在本实施例中被选择用于减少检索词频率直方图的维数的方法是“随机映射”,如在上面提及的Kaski论文中所详细说明的。随机映射通过用随机数的矩阵乘以直方图而成功地减少直方图的维数。
如上所述,“未加工的”特征向量(在图4a中示意性所表示的)是典型的稀疏向量,其大小在具有50000个值的区域中。它能够被减少到大约200(见示意图4b)并且仍然保持该特征向量的相关特性,即,例如与其他被类似处理的特征向量的相关角(向量点积)这样的相互关系。这样之所以行得通是因为尽管限制了特殊维数的正交向量数,但是接近正交的向量的数目非常大。
实际上随着向量维数的增加,任何给定的随机生成的向量组彼此几乎正交。这个特性意味着与这个随机数矩阵相乘的向量的相关方向将被保持。能够通过查看它们的点积而示出在随机映射之前和之后向量的相似性,由此证实这个性质。
能够用试验方式来表明:将稀疏向量从50000个值减少到200个值还可保持它们的相关的相似性。然而,这个映射并不完美,但是对于以简单紧凑的方式来表征文件内容的目的而言已经足够了。
一旦已经对于文件收集生成了特征向量,且因而也定义了该收集的信息空间,在步骤150处就将它们投射到二维SOM来生成语义映射。随后的部分说明了通过利用Kohonen自组织映射来群集该特征向量而映射到2维的过程。还要参考图5。
Kohonen自组织映射被用于群集和组织那些已经被生成用于每个文件的特征向量。
自组织映射由在节点的二维阵列或者网格(如二维平面185所图解说明的)中的输入节点170和输出节点180组成。输入节点的数目与被用于训练该映射的特征向量中的值的数目一样多。映射上的每个输出节点通过被加权的连接190(每个连接一个权重)连接到输入节点。
最初这些权重的每一个被设置成随机值,然后,通过迭代过程而“训练”权重。通过将每个特征向量呈现给映射的输入节点来训练映射。通过计算输入向量和每个输出节点的权重之间的欧几里德距离来计算最近的输出节点。
最近的节点被指定为“获胜者”并且通过轻微改变权重值来训练这个节点的权重以使它们移动得更靠近该输入向量。除了获胜节点以外,还训练该获胜节点邻近的节点,并且使其轻微移动得更靠近该输入向量。
这个训练过程,不只是训练单个节点的权重,而是训练映射上的节点区域的权重,这使得映射一旦被训练,就可以保存节点的2维映射中的输入空间的大部分拓扑结构。
一旦映射被训练,每个文件就能够被呈现在映射中以便观察哪个输出节点最靠近该文件的输入特征向量。权重与特征向量的等同是不大可能的,并且特征向量和它在映射上最近的节点之间的欧几里德距离被称为“量化误差”。
通过将用于每个文件的特征向量呈现在映射上以便观察它位于哪里,产生用于每个文件的x,y映射位置。当这些x,y位置随同文件ID一起被输入查找表中的时候,这些x,y位置能够被用于显现文件之间的关系。
最后,在步骤160处增加抖动部分,将在下面参考图6来描述它。
上述过程的潜在问题是两个相同或者基本上相同的信息项可以被映射到SOM的节点阵列中的相同节点上。这不会带来数据的操纵处理的困难,但是不利于在显示屏上数据的显现(将在下面描述)。尤其是,当在显示屏上显现数据的时候,已经认识到:多个非常相似的项在特定节点处的单个项上是可识别的将会非常有用。因此,在每个信息项映射到的节点位置处增加一个“抖动”部分。该抖动部分是最大可以到节点分隔的±1/2的随机加法。因此,参考图6,映射过程为之选择输出节点200的信息项具有被增加的抖动部分,以便于实际上它可以被映射到在图6中由虚线所限制的区域210中的任何节点位置上。
因此,信息项可以被认为是在不同于SOM过程的“输出节点”的节点位置处映射到图6的平面上的位置。
可替代的方法可以是在上述的SOM映射过程中使用更高密度的“输出节点”。这将不能在绝对相同的信息项之间提供任何区别,但是可以允许差不多相同、但不是完全相同的信息项映射到不同的但是十分接近地分开的输出节点上。
图7示意性图解说明了显示屏60上的显示,其中用图表来说明被分类进入SOM的数据以便在搜索操作中使用。显示器示出了搜索查询250、结果列表260和SOM显示区域270。
在操作中,用户将关键字搜索查询输入到查询区域250中。然后用户开始搜索,例如通过按下键盘70上的回车或者通过使用鼠标80选择屏幕“按钮”来开始搜索。然后,利用标准的关键字搜索技术来比较搜索查询框250中的关键字和数据库中的信息项。这样生成结果列表,在列表窗口260将每一个结果都作为相应条目280显示。同样地,每个结果在节点显示区域270上都具有对应的显示点。
因为用于生成SOM表示的分类过程倾向于在SOM中将互相类似的信息项集合到一起,所以搜索查询的结果一般倾向于落入像群集290这样的群集中。这里,注意到区域270上的每个点对应于SOM中与结果列表260中的一个结果相关的对应条目;并且在区域270中显示该点的位置对应于在节点阵列中那些节点的阵列位置。
图8示意性图解说明用于减少“命中”(结果列表中的结果)数目的技术。用户利用鼠标80围绕着对应于感兴趣的节点的一组显示点画出方框300。在结果列表区域260中,只显示与方框300中的点相对应的那些结果。如果对这些结果不再感兴趣,则用户可以围绕着不同组的显示点画出另一个方框。
注意到,对于在方框300中为之显示了显示点并且满足字搜索区域250中的搜索标准的那些结果,结果区域260为它们显示列表条目。方框300可以包含与位于该节点阵列中的节点相对应的其他显示位置,但是如果这些结果不满足搜索标准,则它们将不被显示并且不会形成在方框260中显示的结果的子集的一部分。
图9示意性图解说明用于在列表窗口260中检测条目的节点位置的技术。在使用图形用户界面领域中的标准技术,尤其在利用所谓的“Windows”TM操作系统的计算机中,用户可以在结果列表窗口中选择一个或者多个条目。在所示的实例中,通过用鼠标点击与相关结果相对应的“检查框”310来完成。然而,这同样可以通过点击以高亮显示整个结果,或者通过双击相关结果等来完成。因为选择了一个结果,所以那些表示节点阵列中的对应节点的相应显示点被用不同的方式显示。这通过对应于在结果区域260中所选结果330的两个显示点320来示意性地示出。
外观的改变可能是以更大尺寸显示该点,或者是以相同显示颜色的更强烈的版本显示该点,或者是以不同的显示颜色显示该点,或者是以这些变化属性的组合来显示该点。
在任何时候,通过遵循上述的步骤(也就是步骤110到140),能够将新的信息项增加到SOM,然后将产生的减少的特征向量应用到“预训练”SOM模型,即由映射的自组织准备所产生的一组SOM模型。因此,对于新增加的信息项,通常不“重新训练”该映射;而是对没有修改的全部SOM模型使用步骤150到160。每次增加新的信息项的时候来重新训练SOM需要昂贵的计算代价,并且有时候对用户还有一些不友善,用户可能要逐渐习惯于该映射中通常被访问的信息项的相对位置。
然而,可能会有一种情况,其中适合重新训练过程。例如,如果自首次生成SOM以来已经将新的检索词(可能是新的新闻项或者新的技术领域)输入到字典中,则它们可能不会非常好地映射到现有的输出节点组。在新接收的信息项被映射到现有的SOM期间,这可以被检测为在检测到的所谓“量化误差”中的增长。在本实施例中,该量化误差与阈值误差量相比较。如果它比该阈值量大,则或者(a)利用所有的原始信息项和自其生成以后被添加的任何项来自动重新训练SOM;或者(b)用户被提示在方便的时间启动重新训练过程。重新训练过程使用全部相关信息项的特征向量并且完全重新应用步骤150和160。
图10示意性图解说明作为视频捕获和/或处理设备实例的摄像机500,摄像机包括具有相关透镜520的图象捕获设备510;数字信号处理器530;磁带存储器540;磁盘或者其他随机存取存储器550;用户控制器560和具有目镜580的显示设备570。对于那些本领域技术人员来说传统摄像机的其他特征或者其他备选实施方式(例如不同的存储介质或者不同的显示屏幕设备)将是很显而易见的。在使用中,与捕获的视频材料相关的元数据可以被存储在存储器550,在显示设备570上观察与被存储数据相关的SOM,并且如上所述利用用户控制器560来控制它。
图11示意性图解说明个人数字助理(PDA)600,作为便携式数据处理设备的一个实例,它具有包括显示区域620和提供用户控制的触敏区域630的显示屏幕610;以及数据处理和存储(没有显示)。再次地,本领域的技术人员将很清楚替换的实施方式。该PDA可以如上所述地结合图1的系统来使用。